<?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>67698</bug_id>
          
          <creation_ts>2011-09-06 23:54:58 -0700</creation_ts>
          <short_desc>REGRESSION(r94627): It broke tests on GTK and Qt (Requested by Ossy on #webkit).</short_desc>
          <delta_ts>2011-09-07 00:00:43 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>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>
          
          <blocked>67420</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Review Bot">webkit.review.bot</reporter>
          <assigned_to name="WebKit Review Bot">webkit.review.bot</assigned_to>
          <cc>ggaren</cc>
    
    <cc>ossy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>463188</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-06 23:54:58 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/94627 broke the build:
It broke tests on GTK and Qt (Requested by Ossy on #webkit).

This is an automatic bug report generated by the sheriff-bot. If this bug
report was created because of a flaky test, please file a bug for the flaky
test (if we don&apos;t already have one on file) and dup this bug against that bug
so that we can track how often these flaky tests case pain.

&quot;Only you can prevent forest fires.&quot; -- Smokey the Bear</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>463190</commentid>
    <comment_count>1</comment_count>
      <attachid>106547</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-06 23:55:26 -0700</bug_when>
    <thetext>Created attachment 106547
ROLLOUT of r94627

Any committer can land this patch automatically by marking it commit-queue+.  The commit-queue will build and test the patch before landing to ensure that the rollout will be successful.  This process takes approximately 15 minutes.

If you would like to land the rollout faster, you can use the following command:

  webkit-patch land-attachment ATTACHMENT_ID --ignore-builders

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>463194</commentid>
    <comment_count>2</comment_count>
      <attachid>106547</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2011-09-07 00:00:35 -0700</bug_when>
    <thetext>Comment on attachment 106547
ROLLOUT of r94627

Clearing flags on attachment: 106547

Committed r94644: &lt;http://trac.webkit.org/changeset/94644&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>463195</commentid>
    <comment_count>3</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2011-09-07 00:00:43 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>106547</attachid>
            <date>2011-09-06 23:55:26 -0700</date>
            <delta_ts>2011-09-07 00:00:35 -0700</delta_ts>
            <desc>ROLLOUT of r94627</desc>
            <filename>bug-67698-20110907065429.patch</filename>
            <type>text/plain</type>
            <size>117112</size>
            <attacher name="WebKit Review Bot">webkit.review.bot</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTQ2NDMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9BUEkvSlNDYWxsYmFja0NvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9BUEkvSlNDYWxsYmFja0NvbnN0cnVjdG9yLmNwcAppbmRleCA2YTA5OTM0ZmNjYjYwYTM4ZmNm
YmQ0MmU5MzU2ZTkxZGI3OWY5YjdlLi45NTA0YWQ4MGQ4NTNmM2M2NTVmODQyOGQ3ZDE2YTY1ZmVj
YjgzMDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNr
Q29uc3RydWN0b3IuY3BwCkBAIC00Myw2ICs0Myw3IEBAIEpTQ2FsbGJhY2tDb25zdHJ1Y3Rvcjo6
SlNDYWxsYmFja0NvbnN0cnVjdG9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFN0cnVj
CiAgICAgLCBtX2NsYXNzKGpzQ2xhc3MpCiAgICAgLCBtX2NhbGxiYWNrKGNhbGxiYWNrKQogewor
ICAgIGZpbmlzaENyZWF0aW9uKGdsb2JhbE9iamVjdCwganNDbGFzcyk7CiB9CiAKIHZvaWQgSlND
YWxsYmFja0NvbnN0cnVjdG9yOjpmaW5pc2hDcmVhdGlvbihKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0LCBKU0NsYXNzUmVmIGpzQ2xhc3MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQVBJL0pTQ2FsbGJhY2tDb25zdHJ1Y3Rvci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0FQSS9KU0NhbGxiYWNrQ29uc3RydWN0b3IuaAppbmRleCAwNDE0YTllMjQwMWJjMzc0OTdlZDhh
ZWY1NzE3NDFkNjMwYmY1ZTUyLi41OWE1YzQ0MzAzOGQ3NjUzY2Y4NTMyMGQ4NzVmZGU5YzI5ZDQ3
OGYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tDb25z
dHJ1Y3Rvci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0NvbnN0
cnVjdG9yLmgKQEAgLTM3LDkgKzM3LDcgQEAgcHVibGljOgogCiAgICAgc3RhdGljIEpTQ2FsbGJh
Y2tDb25zdHJ1Y3RvciogY3JlYXRlKEV4ZWNTdGF0ZSogZXhlYywgSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTQ2xhc3NSZWYgY2xhc3NSZWYsIEpT
T2JqZWN0Q2FsbEFzQ29uc3RydWN0b3JDYWxsYmFjayBjYWxsYmFjaykgCiAgICAgewotICAgICAg
ICBKU0NhbGxiYWNrQ29uc3RydWN0b3IqIGNvbnN0cnVjdG9yID0gbmV3IChhbGxvY2F0ZUNlbGw8
SlNDYWxsYmFja0NvbnN0cnVjdG9yPigqZXhlYy0+aGVhcCgpKSkgSlNDYWxsYmFja0NvbnN0cnVj
dG9yKGdsb2JhbE9iamVjdCwgc3RydWN0dXJlLCBjbGFzc1JlZiwgY2FsbGJhY2spOwotICAgICAg
ICBjb25zdHJ1Y3Rvci0+ZmluaXNoQ3JlYXRpb24oZ2xvYmFsT2JqZWN0LCBjbGFzc1JlZik7Ci0g
ICAgICAgIHJldHVybiBjb25zdHJ1Y3RvcjsKKyAgICAgICAgcmV0dXJuIG5ldyAoYWxsb2NhdGVD
ZWxsPEpTQ2FsbGJhY2tDb25zdHJ1Y3Rvcj4oKmV4ZWMtPmhlYXAoKSkpIEpTQ2FsbGJhY2tDb25z
dHJ1Y3RvcihnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSwgY2xhc3NSZWYsIGNhbGxiYWNrKTsKICAg
ICB9CiAgICAgCiAgICAgdmlydHVhbCB+SlNDYWxsYmFja0NvbnN0cnVjdG9yKCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tGdW5jdGlvbi5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tGdW5jdGlvbi5jcHAKaW5kZXggY2M1
NTYxZmFmZDRiYTQzZWQyMTk5NTAxY2NkMWE1YWRiNDg4MjNiNi4uMjhiMzQxOTIzZGMzNTBlNDNm
ODhlYzk3MjBkY2U1YjM0M2RiYzRhNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0FQSS9KU0NhbGxiYWNrRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9B
UEkvSlNDYWxsYmFja0Z1bmN0aW9uLmNwcApAQCAtNDMsMTUgKzQzLDkgQEAgQVNTRVJUX0NMQVNT
X0ZJVFNfSU5fQ0VMTChKU0NhbGxiYWNrRnVuY3Rpb24pOwogY29uc3QgQ2xhc3NJbmZvIEpTQ2Fs
bGJhY2tGdW5jdGlvbjo6c19pbmZvID0geyAiQ2FsbGJhY2tGdW5jdGlvbiIsICZJbnRlcm5hbEZ1
bmN0aW9uOjpzX2luZm8sIDAsIDAgfTsKIAogSlNDYWxsYmFja0Z1bmN0aW9uOjpKU0NhbGxiYWNr
RnVuY3Rpb24oRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBK
U09iamVjdENhbGxBc0Z1bmN0aW9uQ2FsbGJhY2sgY2FsbGJhY2ssIGNvbnN0IElkZW50aWZpZXIm
IG5hbWUpCi0gICAgOiBJbnRlcm5hbEZ1bmN0aW9uKGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0
LT5jYWxsYmFja0Z1bmN0aW9uU3RydWN0dXJlKCkpCisgICAgOiBJbnRlcm5hbEZ1bmN0aW9uKCZl
eGVjLT5nbG9iYWxEYXRhKCksIGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5jYWxsYmFja0Z1
bmN0aW9uU3RydWN0dXJlKCksIG5hbWUpCiAgICAgLCBtX2NhbGxiYWNrKGNhbGxiYWNrKQogewot
ICAgIGZpbmlzaENyZWF0aW9uKGV4ZWMtPmdsb2JhbERhdGEoKSwgZ2xvYmFsT2JqZWN0LCBuYW1l
KTsKLX0KLQotdm9pZCBKU0NhbGxiYWNrRnVuY3Rpb246OmZpbmlzaENyZWF0aW9uKEpTR2xvYmFs
RGF0YSYgZ2xvYmFsRGF0YSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgSWRl
bnRpZmllciYgbmFtZSkKLXsKLSAgICBCYXNlOjpmaW5pc2hDcmVhdGlvbihnbG9iYWxEYXRhLCBn
bG9iYWxPYmplY3QsIG5hbWUpOwogICAgIEFTU0VSVChpbmhlcml0cygmc19pbmZvKSk7CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0Z1bmN0aW9u
LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tGdW5jdGlvbi5oCmluZGV4
IGYxY2U1Y2M1NWIxZGRjZmRkMDBiZmM2YzJlYzFjOTc4YzhhMzkxOGEuLjdlYmM3ODg1MTBiZDcy
MTQzNjZkMGYzNWUxMjA4MGVmMDYxMTcwZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9BUEkvSlNDYWxsYmFja0Z1bmN0aW9uLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0FQSS9KU0NhbGxiYWNrRnVuY3Rpb24uaApAQCAtMzQsNyArMzQsNiBAQCBuYW1lc3BhY2UgSlND
IHsKIGNsYXNzIEpTQ2FsbGJhY2tGdW5jdGlvbiA6IHB1YmxpYyBJbnRlcm5hbEZ1bmN0aW9uIHsK
IHByb3RlY3RlZDoKICAgICBKU0NhbGxiYWNrRnVuY3Rpb24oRXhlY1N0YXRlKiwgSlNHbG9iYWxP
YmplY3QqLCBKU09iamVjdENhbGxBc0Z1bmN0aW9uQ2FsbGJhY2ssIGNvbnN0IElkZW50aWZpZXIm
IG5hbWUpOwotICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oSlNHbG9iYWxEYXRhJiwgSlNHbG9iYWxP
YmplY3QqLCBjb25zdCBJZGVudGlmaWVyJiBuYW1lKTsKIAogcHVibGljOgogICAgIHR5cGVkZWYg
SW50ZXJuYWxGdW5jdGlvbiBCYXNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0NoYW5nZUxvZyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKaW5kZXggNTcwMDcy
MDY2NTFjZDhmYjBmZjg3OWNjMTFmNTFmNTQwOWY4NzZjNy4uMzZjZTZjNTczYjE4NGUzMmE1YTI2
M2ZkYjAwY2QyN2RiZmI5YTdhOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZworKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTM5IEBACisyMDExLTA5LTA2ICBTaGVyaWZmIEJvdCAgPHdlYmtpdC5yZXZpZXcuYm90QGdtYWls
LmNvbT4KKworICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByOTQ2MjcgYW5kIHI5NDYz
Mi4KKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvOTQ2MjcKKyAgICAg
ICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvOTQ2MzIKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY3Njk4CisKKyAgICAgICAgSXQgYnJv
a2UgdGVzdHMgb24gR1RLIGFuZCBRdCAoUmVxdWVzdGVkIGJ5IE9zc3kgb24gI3dlYmtpdCkuCisK
KyAgICAgICAgKiBBUEkvSlNDYWxsYmFja0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6
SlNDYWxsYmFja0NvbnN0cnVjdG9yOjpKU0NhbGxiYWNrQ29uc3RydWN0b3IpOgorICAgICAgICAq
IEFQSS9KU0NhbGxiYWNrQ29uc3RydWN0b3IuaDoKKyAgICAgICAgKEpTQzo6SlNDYWxsYmFja0Nv
bnN0cnVjdG9yOjpjcmVhdGUpOgorICAgICAgICAqIEFQSS9KU0NhbGxiYWNrRnVuY3Rpb24uY3Bw
OgorICAgICAgICAoSlNDOjpKU0NhbGxiYWNrRnVuY3Rpb246OkpTQ2FsbGJhY2tGdW5jdGlvbik6
CisgICAgICAgICogQVBJL0pTQ2FsbGJhY2tGdW5jdGlvbi5oOgorICAgICAgICAqIEphdmFTY3Jp
cHRDb3JlLmV4cDoKKyAgICAgICAgKiBKYXZhU2NyaXB0Q29yZS52Y3Byb2ovSmF2YVNjcmlwdENv
cmUvSmF2YVNjcmlwdENvcmUuZGVmOgorICAgICAgICAqIGRlYnVnZ2VyL0RlYnVnZ2VyQWN0aXZh
dGlvbi5jcHA6CisgICAgICAgIChKU0M6OkRlYnVnZ2VyQWN0aXZhdGlvbjo6Y3JlYXRlKToKKyAg
ICAgICAgKiBkZWJ1Z2dlci9EZWJ1Z2dlckFjdGl2YXRpb24uaDoKKyAgICAgICAgKiBqc2MuY3Bw
OgorICAgICAgICAoR2xvYmFsT2JqZWN0Ojpjb25zdHJ1Y3RvckJvZHkpOgorICAgICAgICAoR2xv
YmFsT2JqZWN0OjpHbG9iYWxPYmplY3QpOgorICAgICAgICAqIHJ1bnRpbWUvQXJyYXlDb25zdHJ1
Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OkFycmF5Q29uc3RydWN0b3I6OkFycmF5Q29uc3RydWN0
b3IpOgorICAgICAgICAqIHJ1bnRpbWUvQXJyYXlDb25zdHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1
bnRpbWUvQXJyYXlQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpBcnJheVByb3RvdHlwZTo6
QXJyYXlQcm90b3R5cGUpOgorICAgICAgICAqIHJ1bnRpbWUvQXJyYXlQcm90b3R5cGUuaDoKKyAg
ICAgICAgKEpTQzo6QXJyYXlQcm90b3R5cGU6OmNyZWF0ZSk6CisgICAgICAgICogcnVudGltZS9C
b29sZWFuQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpCb29sZWFuQ29uc3RydWN0b3I6
OkJvb2xlYW5Db25zdHJ1Y3Rvcik6CisgICAgICAgICogcnVudGltZS9Cb29sZWFuQ29uc3RydWN0
b3IuaDoKKyAgICAgICAgKiBydW50aW1lL0Jvb2xlYW5PYmplY3QuY3BwOgorICAgICAgICAoSlND
OjpCb29sZWFuT2JqZWN0OjpCb29sZWFuT2JqZWN0KToKKyAgICAgICAgKiBydW50aW1lL0Jvb2xl
YW5PYmplY3QuaDoKKyAgICAgICAgKEpTQzo6Qm9vbGVhbk9iamVjdDo6Y3JlYXRlKToKKyAgICAg
ICAgKiBydW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpCb29sZWFu
UHJvdG90eXBlOjpCb29sZWFuUHJvdG90eXBlKToKKyAgICAgICAgKiBydW50aW1lL0Jvb2xlYW5Q
cm90b3R5cGUuaDoKKyAgICAgICAgKiBydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6OkRhdGVDb25zdHJ1Y3Rvcjo6RGF0ZUNvbnN0cnVjdG9yKToKKyAgICAgICAgKiBy
dW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1bnRpbWUvRGF0ZUluc3RhbmNl
LmNwcDoKKyAgICAgICAgKEpTQzo6RGF0ZUluc3RhbmNlOjpEYXRlSW5zdGFuY2UpOgorICAgICAg
ICAqIHJ1bnRpbWUvRGF0ZUluc3RhbmNlLmg6CisgICAgICAgIChKU0M6OkRhdGVJbnN0YW5jZTo6
Y3JlYXRlKToKKyAgICAgICAgKiBydW50aW1lL0RhdGVQcm90b3R5cGUuY3BwOgorICAgICAgICAo
SlNDOjpEYXRlUHJvdG90eXBlOjpEYXRlUHJvdG90eXBlKToKKyAgICAgICAgKiBydW50aW1lL0Rh
dGVQcm90b3R5cGUuaDoKKyAgICAgICAgKiBydW50aW1lL0Vycm9yLmNwcDoKKyAgICAgICAgKEpT
Qzo6U3RyaWN0TW9kZVR5cGVFcnJvckZ1bmN0aW9uOjpTdHJpY3RNb2RlVHlwZUVycm9yRnVuY3Rp
b24pOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChK
U0M6OkVycm9yQ29uc3RydWN0b3I6OkVycm9yQ29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRp
bWUvRXJyb3JDb25zdHJ1Y3Rvci5oOgorICAgICAgICAoSlNDOjpFcnJvckNvbnN0cnVjdG9yOjpj
cmVhdGUpOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3JQcm90b3R5cGUuY3BwOgorICAgICAgICAo
SlNDOjpFcnJvclByb3RvdHlwZTo6RXJyb3JQcm90b3R5cGUpOgorICAgICAgICAqIHJ1bnRpbWUv
RXJyb3JQcm90b3R5cGUuaDoKKyAgICAgICAgKEpTQzo6RXJyb3JQcm90b3R5cGU6OmNyZWF0ZSk6
CisgICAgICAgICogcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpT
Qzo6RnVuY3Rpb25Db25zdHJ1Y3Rvcjo6RnVuY3Rpb25Db25zdHJ1Y3Rvcik6CisgICAgICAgICog
cnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmg6CisgICAgICAgICogcnVudGltZS9GdW5jdGlv
blByb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6OkZ1bmN0aW9uUHJvdG90eXBlOjpGdW5jdGlv
blByb3RvdHlwZSk6CisgICAgICAgICogcnVudGltZS9GdW5jdGlvblByb3RvdHlwZS5oOgorICAg
ICAgICAqIHJ1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHA6CisgICAgICAgIChKU0M6OkludGVy
bmFsRnVuY3Rpb246OkludGVybmFsRnVuY3Rpb24pOgorICAgICAgICAqIHJ1bnRpbWUvSW50ZXJu
YWxGdW5jdGlvbi5oOgorICAgICAgICAqIHJ1bnRpbWUvSlNBY3RpdmF0aW9uLmNwcDoKKyAgICAg
ICAgKEpTQzo6SlNBY3RpdmF0aW9uOjpKU0FjdGl2YXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUv
SlNBY3RpdmF0aW9uLmg6CisgICAgICAgIChKU0M6OkpTQWN0aXZhdGlvbjo6Y3JlYXRlKToKKyAg
ICAgICAgKiBydW50aW1lL0pTR2xvYmFsT2JqZWN0Lmg6CisgICAgICAgIChKU0M6OkpTR2xvYmFs
T2JqZWN0OjpjcmVhdGUpOgorICAgICAgICAoSlNDOjpKU0dsb2JhbE9iamVjdDo6SlNHbG9iYWxP
YmplY3QpOgorICAgICAgICAqIHJ1bnRpbWUvSlNPTk9iamVjdC5jcHA6CisgICAgICAgIChKU0M6
OkpTT05PYmplY3Q6OkpTT05PYmplY3QpOgorICAgICAgICAqIHJ1bnRpbWUvSlNPTk9iamVjdC5o
OgorICAgICAgICAoSlNDOjpKU09OT2JqZWN0OjpjcmVhdGUpOgorICAgICAgICAqIHJ1bnRpbWUv
SlNTdGF0aWNTY29wZU9iamVjdC5oOgorICAgICAgICAoSlNDOjpKU1N0YXRpY1Njb3BlT2JqZWN0
OjpjcmVhdGUpOgorICAgICAgICAoSlNDOjpKU1N0YXRpY1Njb3BlT2JqZWN0OjpKU1N0YXRpY1Nj
b3BlT2JqZWN0KToKKyAgICAgICAgKiBydW50aW1lL0pTU3RyaW5nLmNwcDoKKyAgICAgICAgKEpT
Qzo6U3RyaW5nT2JqZWN0OjpjcmVhdGUpOgorICAgICAgICAqIHJ1bnRpbWUvTWF0aE9iamVjdC5j
cHA6CisgICAgICAgIChKU0M6Ok1hdGhPYmplY3Q6Ok1hdGhPYmplY3QpOgorICAgICAgICAqIHJ1
bnRpbWUvTWF0aE9iamVjdC5oOgorICAgICAgICAoSlNDOjpNYXRoT2JqZWN0OjpjcmVhdGUpOgor
ICAgICAgICAqIHJ1bnRpbWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChK
U0M6Ok5hdGl2ZUVycm9yQ29uc3RydWN0b3I6Ok5hdGl2ZUVycm9yQ29uc3RydWN0b3IpOgorICAg
ICAgICAqIHJ1bnRpbWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5oOgorICAgICAgICAoSlNDOjpO
YXRpdmVFcnJvckNvbnN0cnVjdG9yOjpjb25zdHJ1Y3RvckJvZHkpOgorICAgICAgICAqIHJ1bnRp
bWUvTmF0aXZlRXJyb3JQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpOYXRpdmVFcnJvclBy
b3RvdHlwZTo6TmF0aXZlRXJyb3JQcm90b3R5cGUpOgorICAgICAgICAoSlNDOjpOYXRpdmVFcnJv
clByb3RvdHlwZTo6Y29uc3RydWN0b3JCb2R5KToKKyAgICAgICAgKiBydW50aW1lL05hdGl2ZUVy
cm9yUHJvdG90eXBlLmg6CisgICAgICAgICogcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgIChKU0M6Ok51bWJlckNvbnN0cnVjdG9yOjpOdW1iZXJDb25zdHJ1Y3Rvcik6Cisg
ICAgICAgICogcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1bnRpbWUv
TnVtYmVyT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6TnVtYmVyT2JqZWN0OjpOdW1iZXJPYmpl
Y3QpOgorICAgICAgICAqIHJ1bnRpbWUvTnVtYmVyT2JqZWN0Lmg6CisgICAgICAgIChKU0M6Ok51
bWJlck9iamVjdDo6Y3JlYXRlKToKKyAgICAgICAgKiBydW50aW1lL051bWJlclByb3RvdHlwZS5j
cHA6CisgICAgICAgIChKU0M6Ok51bWJlclByb3RvdHlwZTo6TnVtYmVyUHJvdG90eXBlKToKKyAg
ICAgICAgKiBydW50aW1lL051bWJlclByb3RvdHlwZS5oOgorICAgICAgICAqIHJ1bnRpbWUvT2Jq
ZWN0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpPYmplY3RDb25zdHJ1Y3Rvcjo6T2Jq
ZWN0Q29uc3RydWN0b3IpOgorICAgICAgICAqIHJ1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuaDoK
KyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6
UmVnRXhwQ29uc3RydWN0b3I6OlJlZ0V4cENvbnN0cnVjdG9yKToKKyAgICAgICAgKEpTQzo6UmVn
RXhwTWF0Y2hlc0FycmF5OjpSZWdFeHBNYXRjaGVzQXJyYXkpOgorICAgICAgICAqIHJ1bnRpbWUv
UmVnRXhwQ29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cE1hdGNoZXNBcnJh
eS5oOgorICAgICAgICAoSlNDOjpSZWdFeHBNYXRjaGVzQXJyYXk6OmNyZWF0ZSk6CisgICAgICAg
ICogcnVudGltZS9SZWdFeHBPYmplY3QuY3BwOgorICAgICAgICAoSlNDOjpSZWdFeHBPYmplY3Q6
OlJlZ0V4cE9iamVjdCk6CisgICAgICAgICogcnVudGltZS9SZWdFeHBPYmplY3QuaDoKKyAgICAg
ICAgKEpTQzo6UmVnRXhwT2JqZWN0OjpjcmVhdGUpOgorICAgICAgICAqIHJ1bnRpbWUvUmVnRXhw
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6UmVnRXhwUHJvdG90eXBlOjpSZWdFeHBQcm90
b3R5cGUpOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAoSlNDOjpTdHJpbmdDb25zdHJ1Y3Rvcjo6U3RyaW5nQ29uc3RydWN0b3IpOgorICAgICAgICAq
IHJ1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBydW50aW1lL1N0cmluZ09i
amVjdC5jcHA6CisgICAgICAgIChKU0M6OlN0cmluZ09iamVjdDo6U3RyaW5nT2JqZWN0KToKKyAg
ICAgICAgKiBydW50aW1lL1N0cmluZ09iamVjdC5oOgorICAgICAgICAoSlNDOjpTdHJpbmdPYmpl
Y3Q6OmNyZWF0ZSk6CisgICAgICAgICogcnVudGltZS9TdHJpbmdPYmplY3RUaGF0TWFzcXVlcmFk
ZXNBc1VuZGVmaW5lZC5oOgorICAgICAgICAoSlNDOjpTdHJpbmdPYmplY3RUaGF0TWFzcXVlcmFk
ZXNBc1VuZGVmaW5lZDo6U3RyaW5nT2JqZWN0VGhhdE1hc3F1ZXJhZGVzQXNVbmRlZmluZWQpOgor
ICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6U3Ry
aW5nUHJvdG90eXBlOjpTdHJpbmdQcm90b3R5cGUpOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5n
UHJvdG90eXBlLmg6CisKIDIwMTEtMDktMDYgIFhpYW56aHUgV2FuZyAgPHdhbmd4aWFuemh1QGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBSZXBsYWNlIHVzYWdlcyBvZiBWZWN0b3I8VUNoYXI+IHdp
dGggZXhpc3RpbmcgU3RyaW5nQnVpbGRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL0phdmFTY3JpcHRDb3JlLmV4cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0
Q29yZS5leHAKaW5kZXggNjI0NjVmY2ExYzMzNWZmZmNlMTA4N2UxMzlhNzUzNzIxNmRkZDkwZS4u
NTY4ZTQwZjAyMzY4MmY3NDJlNDYwNjJiYTM4Y2Q1MDRlYWI0OTU2NCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLmV4cAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvSmF2YVNjcmlwdENvcmUuZXhwCkBAIC0xMjMsOSArMTIzLDggQEAgX19aTjNKU0Mx
MVBhcnNlckFyZW5hNXJlc2V0RXYKIF9fWk4zSlNDMTFjaGVja1N5bnRheEVQTlNfOUV4ZWNTdGF0
ZUVSS05TXzEwU291cmNlQ29kZUUKIF9fWk4zSlNDMTFjcmVhdGVFcnJvckVQTlNfOUV4ZWNTdGF0
ZUVSS05TXzdVU3RyaW5nRQogX19aTjNKU0MxMXJlZ0V4cEZsYWdzRVJLTlNfN1VTdHJpbmdFCi1f
X1pOM0pTQzEyRGF0ZUluc3RhbmNlMTRmaW5pc2hDcmVhdGlvbkVSTlNfMTJKU0dsb2JhbERhdGFF
ZAogX19aTjNKU0MxMkRhdGVJbnN0YW5jZTZzX2luZm9FCi1fX1pOM0pTQzEyRGF0ZUluc3RhbmNl
QzFFUE5TXzlFeGVjU3RhdGVFUE5TXzlTdHJ1Y3R1cmVFCitfX1pOM0pTQzEyRGF0ZUluc3RhbmNl
QzFFUE5TXzlFeGVjU3RhdGVFUE5TXzlTdHJ1Y3R1cmVFZAogX19aTjNKU0MxMkpTR2xvYmFsRGF0
YTEwQ2xpZW50RGF0YUQyRXYKIF9fWk4zSlNDMTJKU0dsb2JhbERhdGExMWpzQXJyYXlWUHRyRQog
X19aTjNKU0MxMkpTR2xvYmFsRGF0YTEyY3JlYXRlTGVha2VkRU5TXzE1VGhyZWFkU3RhY2tUeXBl
RU5TXzhIZWFwU2l6ZUUKQEAgLTEzOSwyMSArMTM4LDE5IEBAIF9fWk4zSlNDMTJKU0dsb2JhbERh
dGExNWR1bXBSZWdFeHBUcmFjZUV2CiBfX1pOM0pTQzEySlNHbG9iYWxEYXRhMjJjbGVhckJ1aWx0
aW5TdHJ1Y3R1cmVzRXYKIF9fWk4zSlNDMTJKU0dsb2JhbERhdGE2Y3JlYXRlRU5TXzE1VGhyZWFk
U3RhY2tUeXBlRU5TXzhIZWFwU2l6ZUUKIF9fWk4zSlNDMTJKU0dsb2JhbERhdGFEMUV2Ci1fX1pO
M0pTQzEyUmVnRXhwT2JqZWN0MTRmaW5pc2hDcmVhdGlvbkVQTlNfMTRKU0dsb2JhbE9iamVjdEUK
IF9fWk4zSlNDMTJSZWdFeHBPYmplY3Q2c19pbmZvRQogX19aTjNKU0MxMlJlZ0V4cE9iamVjdEMx
RVBOU18xNEpTR2xvYmFsT2JqZWN0RVBOU185U3RydWN0dXJlRVBOU182UmVnRXhwRQogX19aTjNK
U0MxMlNhbXBsaW5nVG9vbDVzZXR1cEV2CiBfX1pOM0pTQzEyU21hbGxTdHJpbmdzMTdjcmVhdGVF
bXB0eVN0cmluZ0VQTlNfMTJKU0dsb2JhbERhdGFFCiBfX1pOM0pTQzEyU21hbGxTdHJpbmdzMjdj
cmVhdGVTaW5nbGVDaGFyYWN0ZXJTdHJpbmdFUE5TXzEySlNHbG9iYWxEYXRhRWgKIF9fWk4zSlND
MTJTdHJpbmdPYmplY3QxNGRlbGV0ZVByb3BlcnR5RVBOU185RXhlY1N0YXRlRVJLTlNfMTBJZGVu
dGlmaWVyRQotX19aTjNKU0MxMlN0cmluZ09iamVjdDE0ZmluaXNoQ3JlYXRpb25FUk5TXzEySlNH
bG9iYWxEYXRhRVBOU184SlNTdHJpbmdFCiBfX1pOM0pTQzEyU3RyaW5nT2JqZWN0MThnZXRPd25Q
cm9wZXJ0eVNsb3RFUE5TXzlFeGVjU3RhdGVFUktOU18xMElkZW50aWZpZXJFUk5TXzEyUHJvcGVy
dHlTbG90RQogX19aTjNKU0MxMlN0cmluZ09iamVjdDE4Z2V0T3duUHJvcGVydHlTbG90RVBOU185
RXhlY1N0YXRlRWpSTlNfMTJQcm9wZXJ0eVNsb3RFCiBfX1pOM0pTQzEyU3RyaW5nT2JqZWN0MTln
ZXRPd25Qcm9wZXJ0eU5hbWVzRVBOU185RXhlY1N0YXRlRVJOU18xN1Byb3BlcnR5TmFtZUFycmF5
RU5TXzE1RW51bWVyYXRpb25Nb2RlRQogX19aTjNKU0MxMlN0cmluZ09iamVjdDI0Z2V0T3duUHJv
cGVydHlEZXNjcmlwdG9yRVBOU185RXhlY1N0YXRlRVJLTlNfMTBJZGVudGlmaWVyRVJOU18xOFBy
b3BlcnR5RGVzY3JpcHRvckUKIF9fWk4zSlNDMTJTdHJpbmdPYmplY3QzcHV0RVBOU185RXhlY1N0
YXRlRVJLTlNfMTBJZGVudGlmaWVyRU5TXzdKU1ZhbHVlRVJOU18xNVB1dFByb3BlcnR5U2xvdEUK
IF9fWk4zSlNDMTJTdHJpbmdPYmplY3Q2c19pbmZvRQotX19aTjNKU0MxMlN0cmluZ09iamVjdEMy
RVJOU18xMkpTR2xvYmFsRGF0YUVQTlNfOVN0cnVjdHVyZUUKK19fWk4zSlNDMTJTdHJpbmdPYmpl
Y3RDMkVSTlNfMTJKU0dsb2JhbERhdGFFUE5TXzlTdHJ1Y3R1cmVFUE5TXzhKU1N0cmluZ0UKIF9f
Wk4zSlNDMTNTYW1wbGluZ0ZsYWdzNHN0b3BFdgogX19aTjNKU0MxM1NhbXBsaW5nRmxhZ3M1c3Rh
cnRFdgogX19aTjNKU0MxM1NhbXBsaW5nRmxhZ3M3c19mbGFnc0UKQEAgLTE4NCwxMCArMTgxLDkg
QEAgX19aTjNKU0MxNVdlYWtIYW5kbGVPd25lcjhmaW5hbGl6ZUVOU182SGFuZGxlSU5TXzdVbmtu
b3duRUVFUHYKIF9fWk4zSlNDMTVXZWFrSGFuZGxlT3duZXJEMkV2CiBfX1pOM0pTQzE1Y3JlYXRl
VHlwZUVycm9yRVBOU185RXhlY1N0YXRlRVJLTlNfN1VTdHJpbmdFCiBfX1pOM0pTQzE2SW50ZXJu
YWxGdW5jdGlvbjEydnRhYmxlQW5jaG9yRXYKLV9fWk4zSlNDMTZJbnRlcm5hbEZ1bmN0aW9uMTRm
aW5pc2hDcmVhdGlvbkVSTlNfMTJKU0dsb2JhbERhdGFFUE5TXzE0SlNHbG9iYWxPYmplY3RFUktO
U18xMElkZW50aWZpZXJFCiBfX1pOM0pTQzE2SW50ZXJuYWxGdW5jdGlvbjRuYW1lRVBOU185RXhl
Y1N0YXRlRQogX19aTjNKU0MxNkludGVybmFsRnVuY3Rpb242c19pbmZvRQotX19aTjNKU0MxNklu
dGVybmFsRnVuY3Rpb25DMkVQTlNfMTRKU0dsb2JhbE9iamVjdEVQTlNfOVN0cnVjdHVyZUUKK19f
Wk4zSlNDMTZJbnRlcm5hbEZ1bmN0aW9uQzJFUE5TXzEySlNHbG9iYWxEYXRhRVBOU18xNEpTR2xv
YmFsT2JqZWN0RVBOU185U3RydWN0dXJlRVJLTlNfMTBJZGVudGlmaWVyRQogX19aTjNKU0MxNkpT
VmFyaWFibGVPYmplY3QxNGRlbGV0ZVByb3BlcnR5RVBOU185RXhlY1N0YXRlRVJLTlNfMTBJZGVu
dGlmaWVyRQogX19aTjNKU0MxNkpTVmFyaWFibGVPYmplY3QxNHN5bWJvbFRhYmxlR2V0RVJLTlNf
MTBJZGVudGlmaWVyRVJOU18xOFByb3BlcnR5RGVzY3JpcHRvckUKIF9fWk4zSlNDMTZKU1Zhcmlh
YmxlT2JqZWN0MTlnZXRPd25Qcm9wZXJ0eU5hbWVzRVBOU185RXhlY1N0YXRlRVJOU18xN1Byb3Bl
cnR5TmFtZUFycmF5RU5TXzE1RW51bWVyYXRpb25Nb2RlRQpAQCAtMTk5LDggKzE5NSw3IEBAIF9f
Wk4zSlNDMTdCeXRlY29kZUdlbmVyYXRvcjIxc2V0RHVtcHNHZW5lcmF0ZWRDb2RlRWIKIF9fWk4z
SlNDMTdQcm9wZXJ0eU5hbWVBcnJheTNhZGRFUE4zV1RGMTBTdHJpbmdJbXBsRQogX19aTjNKU0Mx
N2NvbnN0cnVjdEZ1bmN0aW9uRVBOU185RXhlY1N0YXRlRVBOU18xNEpTR2xvYmFsT2JqZWN0RVJL
TlNfN0FyZ0xpc3RFUktOU18xMElkZW50aWZpZXJFUktOU183VVN0cmluZ0VpCiBfX1pOM0pTQzE3
Y3JlYXRlU3ludGF4RXJyb3JFUE5TXzlFeGVjU3RhdGVFUktOU183VVN0cmluZ0UKLV9fWk4zSlND
MThEZWJ1Z2dlckFjdGl2YXRpb24xNGZpbmlzaENyZWF0aW9uRVJOU18xMkpTR2xvYmFsRGF0YUVQ
TlNfOEpTT2JqZWN0RQotX19aTjNKU0MxOERlYnVnZ2VyQWN0aXZhdGlvbkMxRVJOU18xMkpTR2xv
YmFsRGF0YUUKK19fWk4zSlNDMThEZWJ1Z2dlckFjdGl2YXRpb242Y3JlYXRlRVJOU18xMkpTR2xv
YmFsRGF0YUVQTlNfOEpTT2JqZWN0RQogX19aTjNKU0MxOFByb3BlcnR5RGVzY3JpcHRvcjExc2V0
V3JpdGFibGVFYgogX19aTjNKU0MxOFByb3BlcnR5RGVzY3JpcHRvcjEyc2V0VW5kZWZpbmVkRXYK
IF9fWk4zSlNDMThQcm9wZXJ0eURlc2NyaXB0b3IxM3NldERlc2NyaXB0b3JFTlNfN0pTVmFsdWVF
agpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnZjcHJv
ai9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS5kZWYgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvSmF2YVNjcmlwdENvcmUudmNwcm9qL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLmRl
ZgppbmRleCA3MGZlMDRhM2Q0NTM4MjZjODViNjI5OGY2NmE4ZGFhZDVlNGE2ZmE1Li45MzY4MWI3
NWI2ZGNkMzMyNzkzMTA2ZTI5ZWY3MjBjZTBmMmVkMzNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUudmNwcm9qL0phdmFTY3JpcHRDb3JlL0phdmFTY3Jp
cHRDb3JlLmRlZgorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUudmNw
cm9qL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLmRlZgpAQCAtMywxMSArMywxMSBAQCBF
WFBPUlRTCiAgICAgPz8wQ1N0cmluZ0BXVEZAQFFBRUBQQkRAWgogICAgID8/MENTdHJpbmdAV1RG
QEBRQUVAUEJESUBaCiAgICAgPz8wQ29sbGF0b3JAV1RGQEBRQUVAUEJEQFoKLSAgICA/PzBEYXRl
SW5zdGFuY2VASlNDQEBJQUVAUEFWRXhlY1N0YXRlQDFAUEFWU3RydWN0dXJlQDFAQFoKKyAgICA/
PzBEYXRlSW5zdGFuY2VASlNDQEBJQUVAUEFWRXhlY1N0YXRlQDFAUEFWU3RydWN0dXJlQDFATkBa
CiAgICAgPz8wRGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFja0BKU0NAQFFBRUBQQVZIZWFwQDFAQFoK
ICAgICA/PzBEcm9wQWxsTG9ja3NASlNMb2NrQEpTQ0BAUUFFQFc0SlNMb2NrQmVoYXZpb3JAMkBA
WgotICAgID8/MER5bmFtaWNHbG9iYWxPYmplY3RTY29wZUBKU0NAQFFBRUBBQVZKU0dsb2JhbERh
dGFAMUBQQVZKU0dsb2JhbE9iamVjdEAxQEBaIAotICAgID8/MEludGVybmFsRnVuY3Rpb25ASlND
QEBJQUVAUEFWSlNHbG9iYWxPYmplY3RAMUBQQVZTdHJ1Y3R1cmVAMUBAWgorICAgID8/MER5bmFt
aWNHbG9iYWxPYmplY3RTY29wZUBKU0NAQFFBRUBBQVZKU0dsb2JhbERhdGFAMUBQQVZKU0dsb2Jh
bE9iamVjdEAxQEBaICAKKyAgICA/PzBJbnRlcm5hbEZ1bmN0aW9uQEpTQ0BASUFFQFBBVkpTR2xv
YmFsRGF0YUAxQFBBVkpTR2xvYmFsT2JqZWN0QDFAUEFWU3RydWN0dXJlQDFAQUJWSWRlbnRpZmll
ckAxQEBaCiAgICAgPz8wSlNBcnJheUBKU0NAQElBRUBBQVZKU0dsb2JhbERhdGFAMUBQQVZTdHJ1
Y3R1cmVAMUBAWgogICAgID8/MEpTQnl0ZUFycmF5QEpTQ0BAQUFFQFBBVkV4ZWNTdGF0ZUAxQFBB
VlN0cnVjdHVyZUAxQFBBVkJ5dGVBcnJheUBXVEZAQEBaCiAgICAgPz8wSlNGdW5jdGlvbkBKU0NA
QEFBRUBQQVZFeGVjU3RhdGVAMUBQQVZKU0dsb2JhbE9iamVjdEAxQFBBVlN0cnVjdHVyZUAxQEBa
CkBAIC0xOSw3ICsxOSw3IEBAIEVYUE9SVFMKICAgICA/PzBSZWZDb3VudGVkTGVha0NvdW50ZXJA
V1RGQEBRQUVAUEJEQFoKICAgICA/PzBSZWdFeHBPYmplY3RASlNDQEBJQUVAUEFWSlNHbG9iYWxP
YmplY3RAMUBQQVZTdHJ1Y3R1cmVAMUBQQVZSZWdFeHBAMUBAWgogICAgID8/MFNIQTFAV1RGQEBR
QUVAWFoKLSAgICA/PzBTdHJpbmdPYmplY3RASlNDQEBJQUVAQUFWSlNHbG9iYWxEYXRhQDFAUEFW
U3RydWN0dXJlQDFAQFoKKyAgICA/PzBTdHJpbmdPYmplY3RASlNDQEBJQUVAQUFWSlNHbG9iYWxE
YXRhQDFAUEFWU3RydWN0dXJlQDFAUEFWSlNTdHJpbmdAMUBAWgogICAgID8/MFN0cnVjdHVyZUBK
U0NAQEFBRUBBQVZKU0dsb2JhbERhdGFAMUBWSlNWYWx1ZUAxQEFCVlR5cGVJbmZvQDFASVBCVUNs
YXNzSW5mb0AxQEBaCiAgICAgPz8wVGhyZWFkQ29uZGl0aW9uQFdURkBAUUFFQFhaCiAgICAgPz8w
VVN0cmluZ0BKU0NAQFFBRUBQQkRAWgpAQCAtMTc1LDE0ICsxNzUsMTAgQEAgRVhQT1JUUwogICAg
ID9mYXN0WmVyb2VkTWFsbG9jQFdURkBAWUFQQVhJQFoKICAgICA/ZmlsbEdldHRlclByb3BlcnR5
U2xvdEBKU09iamVjdEBKU0NAQFFBRVhBQVZQcm9wZXJ0eVNsb3RAMkBQQVY/JFdyaXRlQmFycmll
ckJhc2VAVzRVbmtub3duQEpTQ0BAQDJAQFoKICAgICA/ZmluYWxpemVAV2Vha0hhbmRsZU93bmVy
QEpTQ0BAVUFFWFY/JEhhbmRsZUBXNFVua25vd25ASlNDQEBAMkBQQVhAWgotICAgID9maW5pc2hD
cmVhdGlvbkBEYXRlSW5zdGFuY2VASlNDQEBJQUVYQUFWSlNHbG9iYWxEYXRhQDJATkBaCi0gICAg
P2ZpbmlzaENyZWF0aW9uQEludGVybmFsRnVuY3Rpb25ASlNDQEBJQUVYQUFWSlNHbG9iYWxEYXRh
QDJAUEFWSlNHbG9iYWxPYmplY3RAMkBBQlZJZGVudGlmaWVyQDJAQFoKICAgICA/ZmluaXNoQ3Jl
YXRpb25ASlNBcnJheUBKU0NAQElBRVhBQVZKU0dsb2JhbERhdGFAMkBAWgogICAgID9maW5pc2hD
cmVhdGlvbkBKU0FycmF5QEpTQ0BASUFFWEFBVkpTR2xvYmFsRGF0YUAyQEFCVkFyZ0xpc3RAMkBA
WgogICAgID9maW5pc2hDcmVhdGlvbkBKU0Z1bmN0aW9uQEpTQ0BASUFFWFBBVkV4ZWNTdGF0ZUAy
QFBBVkpTR2xvYmFsT2JqZWN0QDJASEFCVklkZW50aWZpZXJAMkBQQVZFeGVjdXRhYmxlQmFzZUAy
QEBaCiAgICAgP2ZpbmlzaENyZWF0aW9uQEpTT2JqZWN0V2l0aEdsb2JhbE9iamVjdEBKU0NAQElB
RVhBQVZKU0dsb2JhbERhdGFAMkBQQVZKU0dsb2JhbE9iamVjdEAyQEBaCi0gICAgP2ZpbmlzaENy
ZWF0aW9uQFJlZ0V4cE9iamVjdEBKU0NAQElBRVhQQVZKU0dsb2JhbE9iamVjdEAyQEBaCi0gICAg
P2ZpbmlzaENyZWF0aW9uQFN0cmluZ09iamVjdEBKU0NAQElBRVhBQVZKU0dsb2JhbERhdGFAMkBQ
QVZKU1N0cmluZ0AyQEBaCiAgICAgP2ZvY3VzQFByb2ZpbGVASlNDQEBRQUVYUEJWUHJvZmlsZU5v
ZGVAMkBAWgogICAgID9mcm9tQElkZW50aWZpZXJASlNDQEBTQT9BVjEyQFBBVkV4ZWNTdGF0ZUAy
QEhAWgogICAgID9mcm9tQElkZW50aWZpZXJASlNDQEBTQT9BVjEyQFBBVkV4ZWNTdGF0ZUAyQElA
WgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyQWN0
aXZhdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJBY3Rp
dmF0aW9uLmNwcAppbmRleCBhZjZhNTZmOWJlMmE2MDQ3ODJjODUwYzMxZWY1OWQyZjQwY2RmNTBj
Li5hNzEwMWRjYjZiYWE0MGZmNGZlMGVmYTMyZDFkNTViNjhhOTQxNGU1IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJBY3RpdmF0aW9uLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJBY3RpdmF0aW9uLmNwcApA
QCAtMzUsNiArMzUsMTMgQEAgRGVidWdnZXJBY3RpdmF0aW9uOjpEZWJ1Z2dlckFjdGl2YXRpb24o
SlNHbG9iYWxEYXRhJiBnbG9iYWxEYXRhKQogewogfQogCitEZWJ1Z2dlckFjdGl2YXRpb24qIERl
YnVnZ2VyQWN0aXZhdGlvbjo6Y3JlYXRlKEpTR2xvYmFsRGF0YSYgZ2xvYmFsRGF0YSwgSlNPYmpl
Y3QqIG9iamVjdCkKK3sKKyAgICBEZWJ1Z2dlckFjdGl2YXRpb24qIGFjdGl2YXRpb24gPSBuZXcg
KGFsbG9jYXRlQ2VsbDxEZWJ1Z2dlckFjdGl2YXRpb24+KGdsb2JhbERhdGEuaGVhcCkpIERlYnVn
Z2VyQWN0aXZhdGlvbihnbG9iYWxEYXRhKTsKKyAgICBhY3RpdmF0aW9uLT5maW5pc2hDcmVhdGlv
bihnbG9iYWxEYXRhLCBvYmplY3QpOworICAgIHJldHVybiBhY3RpdmF0aW9uOworfQorCiB2b2lk
IERlYnVnZ2VyQWN0aXZhdGlvbjo6ZmluaXNoQ3JlYXRpb24oSlNHbG9iYWxEYXRhJiBnbG9iYWxE
YXRhLCBKU09iamVjdCogYWN0aXZhdGlvbikKIHsKICAgICBCYXNlOjpmaW5pc2hDcmVhdGlvbihn
bG9iYWxEYXRhKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9E
ZWJ1Z2dlckFjdGl2YXRpb24uaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1
Z2dlckFjdGl2YXRpb24uaAppbmRleCA0NGI2MjY3MjI3ZDdiZjQ1NGFmOGYwZmExYjY1MTI5ODlm
ODNhMGJjLi45MmE4YTBlYTYwNTQ5YzljOGU2Y2NjZmNlZWYzYmJiNTMzODgyNmEwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJBY3RpdmF0aW9uLmgK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyQWN0aXZhdGlvbi5o
CkBAIC0zNCwxMyArMzQsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICBwdWJsaWM6CiAgICAgICAg
IHR5cGVkZWYgSlNOb25GaW5hbE9iamVjdCBCYXNlOwogCi0gICAgICAgIHN0YXRpYyBEZWJ1Z2dl
ckFjdGl2YXRpb24qIGNyZWF0ZShKU0dsb2JhbERhdGEmIGdsb2JhbERhdGEsIEpTT2JqZWN0KiBv
YmplY3QpCi0gICAgICAgIHsKLSAgICAgICAgICAgIERlYnVnZ2VyQWN0aXZhdGlvbiogYWN0aXZh
dGlvbiA9IG5ldyAoYWxsb2NhdGVDZWxsPERlYnVnZ2VyQWN0aXZhdGlvbj4oZ2xvYmFsRGF0YS5o
ZWFwKSkgRGVidWdnZXJBY3RpdmF0aW9uKGdsb2JhbERhdGEpOwotICAgICAgICAgICAgYWN0aXZh
dGlvbi0+ZmluaXNoQ3JlYXRpb24oZ2xvYmFsRGF0YSwgb2JqZWN0KTsKLSAgICAgICAgICAgIHJl
dHVybiBhY3RpdmF0aW9uOwotICAgICAgICB9Ci0KKyAgICAgICAgc3RhdGljIERlYnVnZ2VyQWN0
aXZhdGlvbiogY3JlYXRlKEpTR2xvYmFsRGF0YSYsIEpTT2JqZWN0Kik7CiAgICAgICAgIHZpcnR1
YWwgdm9pZCB2aXNpdENoaWxkcmVuKFNsb3RWaXNpdG9yJik7CiAgICAgICAgIHZpcnR1YWwgVVN0
cmluZyBjbGFzc05hbWUoKSBjb25zdDsKICAgICAgICAgdmlydHVhbCBib29sIGdldE93blByb3Bl
cnR5U2xvdChFeGVjU3RhdGUqLCBjb25zdCBJZGVudGlmaWVyJiBwcm9wZXJ0eU5hbWUsIFByb3Bl
cnR5U2xvdCYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcAppbmRleCBlMTRmODA4NzIzM2QyMGFjOGE5Zjkz
NTIwNjgxODdmMzFlMGQ5NTAxLi5lMTAzNzA5MGJkOGNhMTI3MjRhNWE2ZjEwN2RiMzFiOTViMTMz
NmU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcApAQCAtMTU3LDkgKzE1Nyw4IEBAIHB1YmxpYzoKICAg
ICB2aXJ0dWFsIFVTdHJpbmcgY2xhc3NOYW1lKCkgY29uc3QgeyByZXR1cm4gImdsb2JhbCI7IH0K
IAogcHJvdGVjdGVkOgotICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oSlNHbG9iYWxEYXRhJiBnbG9i
YWxEYXRhLCBjb25zdCBWZWN0b3I8VVN0cmluZz4mIGFyZ3VtZW50cykKKyAgICB2b2lkIGNvbnN0
cnVjdG9yQm9keShjb25zdCBWZWN0b3I8VVN0cmluZz4mIGFyZ3VtZW50cykKICAgICB7Ci0gICAg
ICAgIEJhc2U6OmZpbmlzaENyZWF0aW9uKGdsb2JhbERhdGEsIHRoaXMpOwogICAgICAgICBwdXRE
aXJlY3RGdW5jdGlvbihnbG9iYWxFeGVjKCksIEpTRnVuY3Rpb246OmNyZWF0ZShnbG9iYWxFeGVj
KCksIHRoaXMsIGZ1bmN0aW9uU3RydWN0dXJlKCksIDEsIElkZW50aWZpZXIoZ2xvYmFsRXhlYygp
LCAiZGVidWciKSwgZnVuY3Rpb25EZWJ1ZykpOwogICAgICAgICBwdXREaXJlY3RGdW5jdGlvbihn
bG9iYWxFeGVjKCksIEpTRnVuY3Rpb246OmNyZWF0ZShnbG9iYWxFeGVjKCksIHRoaXMsIGZ1bmN0
aW9uU3RydWN0dXJlKCksIDEsIElkZW50aWZpZXIoZ2xvYmFsRXhlYygpLCAicHJpbnQiKSwgZnVu
Y3Rpb25QcmludCkpOwogICAgICAgICBwdXREaXJlY3RGdW5jdGlvbihnbG9iYWxFeGVjKCksIEpT
RnVuY3Rpb246OmNyZWF0ZShnbG9iYWxFeGVjKCksIHRoaXMsIGZ1bmN0aW9uU3RydWN0dXJlKCks
IDAsIElkZW50aWZpZXIoZ2xvYmFsRXhlYygpLCAicXVpdCIpLCBmdW5jdGlvblF1aXQpKTsKQEAg
LTE5MSw3ICsxOTAsNyBAQCBBU1NFUlRfQ0xBU1NfRklUU19JTl9DRUxMKEdsb2JhbE9iamVjdCk7
CiBHbG9iYWxPYmplY3Q6Okdsb2JhbE9iamVjdChKU0dsb2JhbERhdGEmIGdsb2JhbERhdGEsIFN0
cnVjdHVyZSogc3RydWN0dXJlLCBjb25zdCBWZWN0b3I8VVN0cmluZz4mIGFyZ3VtZW50cykKICAg
ICA6IEpTR2xvYmFsT2JqZWN0KGdsb2JhbERhdGEsIHN0cnVjdHVyZSkKIHsKLSAgICBmaW5pc2hD
cmVhdGlvbihnbG9iYWxEYXRhLCBhcmd1bWVudHMpOworICAgIGNvbnN0cnVjdG9yQm9keShhcmd1
bWVudHMpOwogfQogCiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGZ1bmN0aW9uUHJpbnQo
RXhlY1N0YXRlKiBleGVjKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQXJyYXlDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9B
cnJheUNvbnN0cnVjdG9yLmNwcAppbmRleCA1MjFmY2JiODg2MjgwNDAwYWNhNDQ1YjgxN2I3MDAz
NmI1OWY0MTU3Li5mZDllNzFkN2QyYzJhYzM4OTVhMjZlNDJiOWJiMDJmMjQzNzIyYmViIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNw
cApAQCAtNTIsMTQgKzUyLDggQEAgY29uc3QgQ2xhc3NJbmZvIEFycmF5Q29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW4KIEFTU0VSVF9DTEFT
U19GSVRTX0lOX0NFTEwoQXJyYXlDb25zdHJ1Y3Rvcik7CiAKIEFycmF5Q29uc3RydWN0b3I6OkFy
cmF5Q29uc3RydWN0b3IoRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgQXJyYXlQcm90b3R5cGUqIGFycmF5UHJvdG90eXBl
KQotICAgIDogSW50ZXJuYWxGdW5jdGlvbihnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSkKKyAgICA6
IEludGVybmFsRnVuY3Rpb24oJmV4ZWMtPmdsb2JhbERhdGEoKSwgZ2xvYmFsT2JqZWN0LCBzdHJ1
Y3R1cmUsIElkZW50aWZpZXIoZXhlYywgYXJyYXlQcm90b3R5cGUtPmNsYXNzSW5mbygpLT5jbGFz
c05hbWUpKQogewotICAgIGZpbmlzaENyZWF0aW9uKGV4ZWMsIGdsb2JhbE9iamVjdCwgYXJyYXlQ
cm90b3R5cGUpOwotfQotCi12b2lkIEFycmF5Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKEV4
ZWNTdGF0ZSogZXhlYywgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQXJyYXlQcm90b3R5
cGUqIGFycmF5UHJvdG90eXBlKQotewotICAgIEJhc2U6OmZpbmlzaENyZWF0aW9uKGV4ZWMtPmds
b2JhbERhdGEoKSwgZ2xvYmFsT2JqZWN0LCBJZGVudGlmaWVyKGV4ZWMsIGFycmF5UHJvdG90eXBl
LT5jbGFzc0luZm8oKS0+Y2xhc3NOYW1lKSk7CiAgICAgcHV0RGlyZWN0V2l0aG91dFRyYW5zaXRp
b24oZXhlYy0+Z2xvYmFsRGF0YSgpLCBleGVjLT5wcm9wZXJ0eU5hbWVzKCkucHJvdG90eXBlLCBh
cnJheVByb3RvdHlwZSwgRG9udEVudW0gfCBEb250RGVsZXRlIHwgUmVhZE9ubHkpOwogICAgIHB1
dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9uKGV4ZWMtPmdsb2JhbERhdGEoKSwgZXhlYy0+cHJvcGVy
dHlOYW1lcygpLmxlbmd0aCwganNOdW1iZXIoMSksIFJlYWRPbmx5IHwgRG9udEVudW0gfCBEb250
RGVsZXRlKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Fy
cmF5Q29uc3RydWN0b3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5Q29u
c3RydWN0b3IuaAppbmRleCAxODZhYjhlNTdjZTFjYmJlNGNmNDQ2N2NmNGFkZjFjMjJkNmZmMzIz
Li5kMThkMTJhYzA3NzQ1NTFhMjFlZThhMzg3YWM3OGQ4ZjFjNWUzMGUyIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlDb25zdHJ1Y3Rvci5oCkBAIC00NCw3ICs0
NCw2IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICB9CiAKICAgICBwcm90ZWN0ZWQ6Ci0gICAg
ICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiwgSlNHbG9iYWxPYmplY3QqLCBBcnJh
eVByb3RvdHlwZSopOwogICAgICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgU3RydWN0dXJlRmxh
Z3MgPSBPdmVycmlkZXNHZXRPd25Qcm9wZXJ0eVNsb3QgfCBJbnRlcm5hbEZ1bmN0aW9uOjpTdHJ1
Y3R1cmVGbGFnczsKIAogICAgIHByaXZhdGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9BcnJheVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9BcnJheVByb3RvdHlwZS5jcHAKaW5kZXggNDJmNDFhNjMxZDQ5Y2YzZGNlOWNhOGZk
N2U2YjZkYThkNTY0MzYwNS4uOTk2NzRiYjIzYjQ5ODE4YjJmM2EzNDg0YzI2NmUwMTM5ZDg2ZWY0
NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlQcm90b3R5
cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBl
LmNwcApAQCAtMTE3LDYgKzExNyw3IEBAIGNvbnN0IENsYXNzSW5mbyBBcnJheVByb3RvdHlwZTo6
c19pbmZvID0geyJBcnJheSIsICZKU0FycmF5OjpzX2luZm8sIDAsIEV4ZWNTdGF0CiBBcnJheVBy
b3RvdHlwZTo6QXJyYXlQcm90b3R5cGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU0FycmF5KGdsb2JhbE9iamVjdC0+Z2xvYmFsRGF0
YSgpLCBzdHJ1Y3R1cmUpCiB7CisgICAgZmluaXNoQ3JlYXRpb24oZ2xvYmFsT2JqZWN0KTsKIH0K
IAogdm9pZCBBcnJheVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Fy
cmF5UHJvdG90eXBlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheVByb3Rv
dHlwZS5oCmluZGV4IDc1ZTZlODBiYTcyZjdhMWFmMmExZTgyYzhjMTc3YjVlOGZhOGYxZjYuLjYw
NDFhNjJhZDUxMDU5MWM0YzMwYjdhN2ZhYTYzNDAwMDYwOWE0ODEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmgKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlQcm90b3R5cGUuaApAQCAtMzUsOSArMzUsNyBAQCBu
YW1lc3BhY2UgSlNDIHsKIAogICAgICAgICBzdGF0aWMgQXJyYXlQcm90b3R5cGUqIGNyZWF0ZShF
eGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZSog
c3RydWN0dXJlKQogICAgICAgICB7Ci0gICAgICAgICAgICBBcnJheVByb3RvdHlwZSogcHJvdG90
eXBlID0gbmV3IChhbGxvY2F0ZUNlbGw8QXJyYXlQcm90b3R5cGU+KCpleGVjLT5oZWFwKCkpKSBB
cnJheVByb3RvdHlwZShnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSk7Ci0gICAgICAgICAgICBwcm90
b3R5cGUtPmZpbmlzaENyZWF0aW9uKGdsb2JhbE9iamVjdCk7Ci0gICAgICAgICAgICByZXR1cm4g
cHJvdG90eXBlOworICAgICAgICAgICAgcmV0dXJuIG5ldyAoYWxsb2NhdGVDZWxsPEFycmF5UHJv
dG90eXBlPigqZXhlYy0+aGVhcCgpKSkgQXJyYXlQcm90b3R5cGUoZ2xvYmFsT2JqZWN0LCBzdHJ1
Y3R1cmUpOwogICAgICAgICB9CiAgICAgICAgIAogICAgICAgICBib29sIGdldE93blByb3BlcnR5
U2xvdChFeGVjU3RhdGUqLCBjb25zdCBJZGVudGlmaWVyJiwgUHJvcGVydHlTbG90Jik7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3Iu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNw
cAppbmRleCAyZGI0Mjg2NTcxODYzZjlmYWY2ZDg1ZTA0YWE2ODA3YzgxYTllNjNmLi5lZjYyNDBl
NzkyNWExNTc0Zjk0Y2U5OGY5ZTE5NTZlN2NkZjQ3ODBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAKQEAgLTI5LDE0ICsy
OSw4IEBAIG5hbWVzcGFjZSBKU0MgewogQVNTRVJUX0NMQVNTX0ZJVFNfSU5fQ0VMTChCb29sZWFu
Q29uc3RydWN0b3IpOwogCiBCb29sZWFuQ29uc3RydWN0b3I6OkJvb2xlYW5Db25zdHJ1Y3RvcihF
eGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZSog
c3RydWN0dXJlLCBCb29sZWFuUHJvdG90eXBlKiBib29sZWFuUHJvdG90eXBlKQotICAgIDogSW50
ZXJuYWxGdW5jdGlvbihnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSkKKyAgICA6IEludGVybmFsRnVu
Y3Rpb24oJmV4ZWMtPmdsb2JhbERhdGEoKSwgZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUsIElkZW50
aWZpZXIoZXhlYywgYm9vbGVhblByb3RvdHlwZS0+Y2xhc3NJbmZvKCktPmNsYXNzTmFtZSkpCiB7
Ci0gICAgZmluaXNoQ3JlYXRpb24oZXhlYywgZ2xvYmFsT2JqZWN0LCBib29sZWFuUHJvdG90eXBl
KTsKLX0KLQotdm9pZCBCb29sZWFuQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKEV4ZWNTdGF0
ZSogZXhlYywgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQm9vbGVhblByb3RvdHlwZSog
Ym9vbGVhblByb3RvdHlwZSkKLXsKLSAgICBCYXNlOjpmaW5pc2hDcmVhdGlvbihleGVjLT5nbG9i
YWxEYXRhKCksIGdsb2JhbE9iamVjdCwgSWRlbnRpZmllcihleGVjLCBib29sZWFuUHJvdG90eXBl
LT5jbGFzc0luZm8oKS0+Y2xhc3NOYW1lKSk7CiAgICAgcHV0RGlyZWN0V2l0aG91dFRyYW5zaXRp
b24oZXhlYy0+Z2xvYmFsRGF0YSgpLCBleGVjLT5wcm9wZXJ0eU5hbWVzKCkucHJvdG90eXBlLCBi
b29sZWFuUHJvdG90eXBlLCBEb250RW51bSB8IERvbnREZWxldGUgfCBSZWFkT25seSk7CiAKICAg
ICAvLyBuby4gb2YgYXJndW1lbnRzIGZvciBjb25zdHJ1Y3RvcgpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmggYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuaAppbmRleCBlOTczMTA5YTVm
YzE3MTNiNmYzZmE5ZTE1OGI1MjMxYjM1NDJkY2I4Li5lN2VhNTgzZDhjN2E1ZjQyY2RlYmE4ZWUz
YmViNjhhYTdlZDdhYjVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Cb29sZWFuQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Cb29sZWFuQ29uc3RydWN0b3IuaApAQCAtMzYsOSArMzYsNiBAQCBuYW1lc3BhY2UgSlNDIHsK
ICAgICAgICAgICAgIHJldHVybiBuZXcgKGFsbG9jYXRlQ2VsbDxCb29sZWFuQ29uc3RydWN0b3I+
KCpleGVjLT5oZWFwKCkpKSBCb29sZWFuQ29uc3RydWN0b3IoZXhlYywgZ2xvYmFsT2JqZWN0LCBz
dHJ1Y3R1cmUsIGJvb2xQcm90b3R5cGUpOwogICAgICAgICB9CiAKLSAgICBwcm90ZWN0ZWQ6Ci0g
ICAgICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiwgSlNHbG9iYWxPYmplY3QqLCBC
b29sZWFuUHJvdG90eXBlKik7Ci0KICAgICBwcml2YXRlOgogICAgICAgICBCb29sZWFuQ29uc3Ry
dWN0b3IoRXhlY1N0YXRlKiwgSlNHbG9iYWxPYmplY3QqLCBTdHJ1Y3R1cmUqLCBCb29sZWFuUHJv
dG90eXBlKik7CiAgICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRh
KENvbnN0cnVjdERhdGEmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0Jvb2xlYW5PYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9v
bGVhbk9iamVjdC5jcHAKaW5kZXggY2JkZGQwZTkyNDMzMDAyYjhhNWNmOWYzNWZmYTIxM2YwZDk1
MTljMS4uYjllMzNkYzQ4NDI5OGI2Y2VlNjc0ZTE4ZDU0YTg3ZjYyZGFkZmQ1NyAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbk9iamVjdC5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbk9iamVjdC5jcHAKQEAgLTMwLDYg
KzMwLDcgQEAgY29uc3QgQ2xhc3NJbmZvIEJvb2xlYW5PYmplY3Q6OnNfaW5mbyA9IHsgIkJvb2xl
YW4iLCAmSlNXcmFwcGVyT2JqZWN0OjpzX2luZm8sIDAKIEJvb2xlYW5PYmplY3Q6OkJvb2xlYW5P
YmplY3QoSlNHbG9iYWxEYXRhJiBnbG9iYWxEYXRhLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAg
ICA6IEpTV3JhcHBlck9iamVjdChnbG9iYWxEYXRhLCBzdHJ1Y3R1cmUpCiB7CisgICAgZmluaXNo
Q3JlYXRpb24oZ2xvYmFsRGF0YSk7CiB9CiAKIHZvaWQgQm9vbGVhbk9iamVjdDo6ZmluaXNoQ3Jl
YXRpb24oSlNHbG9iYWxEYXRhJiBnbG9iYWxEYXRhKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbk9iamVjdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQm9vbGVhbk9iamVjdC5oCmluZGV4IGNlZDFjZWIzOGE1ZjE1OWZhOTM4Mjk0NDg5
MzgwYzcyOWE4ZjkyYTcuLjBmZmE0MjVkMDFlOWQ1NDIzZWQ0MWExNWJkZDY4MDliYTZiOTIzODgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5PYmplY3Qu
aAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuT2JqZWN0LmgKQEAg
LTM1LDkgKzM1LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICAgICAgICAgc3RhdGljIEJvb2xlYW5P
YmplY3QqIGNyZWF0ZShKU0dsb2JhbERhdGEmIGdsb2JhbERhdGEsIFN0cnVjdHVyZSogc3RydWN0
dXJlKQogICAgICAgICB7Ci0gICAgICAgICAgICBCb29sZWFuT2JqZWN0KiBib29sZWFuID0gbmV3
IChhbGxvY2F0ZUNlbGw8Qm9vbGVhbk9iamVjdD4oZ2xvYmFsRGF0YS5oZWFwKSkgQm9vbGVhbk9i
amVjdChnbG9iYWxEYXRhLCBzdHJ1Y3R1cmUpOwotICAgICAgICAgICAgYm9vbGVhbi0+ZmluaXNo
Q3JlYXRpb24oZ2xvYmFsRGF0YSk7Ci0gICAgICAgICAgICByZXR1cm4gYm9vbGVhbjsKKyAgICAg
ICAgICAgIHJldHVybiBuZXcgKGFsbG9jYXRlQ2VsbDxCb29sZWFuT2JqZWN0PihnbG9iYWxEYXRh
LmhlYXApKSBCb29sZWFuT2JqZWN0KGdsb2JhbERhdGEsIHN0cnVjdHVyZSk7CiAgICAgICAgIH0K
ICAgICAgICAgCiAgICAgICAgIHN0YXRpYyBjb25zdCBDbGFzc0luZm8gc19pbmZvOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhblByb3RvdHlwZS5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuUHJvdG90eXBlLmNwcAppbmRl
eCA3MWRiOWM0NDFlZTVlMjliOWE4ZjFjZTQ5ODU3Y2Y2YWI5YTRlZWE3Li5kZDAxOTRmM2Y1ZDA5
MmIwOGVhYzI2NmVhOTY5OTVkNWI2MzEwZjFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Cb29sZWFuUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Cb29sZWFuUHJvdG90eXBlLmNwcApAQCAtNTIsMTIgKzUyLDYgQEAgQVNT
RVJUX0NMQVNTX0ZJVFNfSU5fQ0VMTChCb29sZWFuUHJvdG90eXBlKTsKIEJvb2xlYW5Qcm90b3R5
cGU6OkJvb2xlYW5Qcm90b3R5cGUoRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEJvb2xlYW5PYmplY3QoZXhl
Yy0+Z2xvYmFsRGF0YSgpLCBzdHJ1Y3R1cmUpCiB7Ci0gICAgZmluaXNoQ3JlYXRpb24oZXhlYywg
Z2xvYmFsT2JqZWN0KTsKLX0KLQotdm9pZCBCb29sZWFuUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlv
bihFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCi17Ci0gICAg
QmFzZTo6ZmluaXNoQ3JlYXRpb24oZXhlYy0+Z2xvYmFsRGF0YSgpKTsKICAgICBzZXRJbnRlcm5h
bFZhbHVlKGV4ZWMtPmdsb2JhbERhdGEoKSwganNCb29sZWFuKGZhbHNlKSk7CiAKICAgICBBU1NF
UlQoaW5oZXJpdHMoJnNfaW5mbykpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQm9vbGVhblByb3RvdHlwZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQm9vbGVhblByb3RvdHlwZS5oCmluZGV4IGI3MzdkZmY3Mjg4NTk2ZmViYmNjOGFhZDFiNmY4
ZGUxMmY2Y2EzZWMuLjE0YTE2MzhlMGIyZjYyNThhODU1YzVmOTE5NWRhZGExZDg4NDRkODMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUu
aAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuUHJvdG90eXBlLmgK
QEAgLTQyLDcgKzQyLDYgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIH0KIAogICAgIHByb3Rl
Y3RlZDoKLSAgICAgICAgdm9pZCBmaW5pc2hDcmVhdGlvbihFeGVjU3RhdGUqLCBKU0dsb2JhbE9i
amVjdCopOwogICAgICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3MgPSBP
dmVycmlkZXNHZXRPd25Qcm9wZXJ0eVNsb3QgfCBCb29sZWFuT2JqZWN0OjpTdHJ1Y3R1cmVGbGFn
czsKICAgICAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIEFub255bW91c1Nsb3RDb3VudCA9IEJv
b2xlYW5PYmplY3Q6OkFub255bW91c1Nsb3RDb3VudCArIDE7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0b3IuY3BwCmluZGV4IDI3ZDBhOWU0OWJi
ZTliNGM1OTA0ZjE1MGU2MmVjMmNmODk0NDJlMGQuLjk5NDZmZDM3ZGFmNDMxNmIwODAwOTNhMTUy
YmRiNzE3NTgyZjU1ZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0RhdGVDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
RGF0ZUNvbnN0cnVjdG9yLmNwcApAQCAtNzQsMTQgKzc0LDggQEAgY29uc3QgQ2xhc3NJbmZvIERh
dGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6
c19pbmYKIEFTU0VSVF9DTEFTU19GSVRTX0lOX0NFTEwoRGF0ZUNvbnN0cnVjdG9yKTsKIAogRGF0
ZUNvbnN0cnVjdG9yOjpEYXRlQ29uc3RydWN0b3IoRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgRGF0ZVByb3RvdHlwZSog
ZGF0ZVByb3RvdHlwZSkKLSAgICA6IEludGVybmFsRnVuY3Rpb24oZ2xvYmFsT2JqZWN0LCBzdHJ1
Y3R1cmUpIAorICAgIDogSW50ZXJuYWxGdW5jdGlvbigmZXhlYy0+Z2xvYmFsRGF0YSgpLCBnbG9i
YWxPYmplY3QsIHN0cnVjdHVyZSwgSWRlbnRpZmllcihleGVjLCBkYXRlUHJvdG90eXBlLT5jbGFz
c0luZm8oKS0+Y2xhc3NOYW1lKSkKIHsKLSAgICBmaW5pc2hDcmVhdGlvbihleGVjLCBnbG9iYWxP
YmplY3QsIGRhdGVQcm90b3R5cGUpOwotfQotCi12b2lkIERhdGVDb25zdHJ1Y3Rvcjo6ZmluaXNo
Q3JlYXRpb24oRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBE
YXRlUHJvdG90eXBlKiBkYXRlUHJvdG90eXBlKQotewotICAgIEJhc2U6OmZpbmlzaENyZWF0aW9u
KGV4ZWMtPmdsb2JhbERhdGEoKSwgZ2xvYmFsT2JqZWN0LCBJZGVudGlmaWVyKGV4ZWMsIGRhdGVQ
cm90b3R5cGUtPmNsYXNzSW5mbygpLT5jbGFzc05hbWUpKTsKICAgICBwdXREaXJlY3RXaXRob3V0
VHJhbnNpdGlvbihleGVjLT5nbG9iYWxEYXRhKCksIGV4ZWMtPnByb3BlcnR5TmFtZXMoKS5wcm90
b3R5cGUsIGRhdGVQcm90b3R5cGUsIERvbnRFbnVtIHwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KTsK
ICAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbihleGVjLT5nbG9iYWxEYXRhKCksIGV4ZWMt
PnByb3BlcnR5TmFtZXMoKS5sZW5ndGgsIGpzTnVtYmVyKDcpLCBSZWFkT25seSB8IERvbnRFbnVt
IHwgRG9udERlbGV0ZSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9EYXRlQ29uc3RydWN0b3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Rh
dGVDb25zdHJ1Y3Rvci5oCmluZGV4IDc1NDY1NzQwNjZkNzYwZDViMzJlZWNiNzY3ZjAzM2NjOTYw
MDcwN2MuLjFmZTc0Y2M1YmRmODhkZGU3NmRkZWVhMWQzZGU2NmYwODFhMzU4ODEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5oCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5oCkBAIC00NCw3
ICs0NCw2IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICB9CiAKICAgICBwcm90ZWN0ZWQ6Ci0g
ICAgICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiwgSlNHbG9iYWxPYmplY3QqLCBE
YXRlUHJvdG90eXBlKik7CiAgICAgICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBTdHJ1Y3R1cmVG
bGFncyA9IE92ZXJyaWRlc0dldE93blByb3BlcnR5U2xvdCB8IEludGVybmFsRnVuY3Rpb246OlN0
cnVjdHVyZUZsYWdzOwogCiAgICAgcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0RhdGVJbnN0YW5jZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9EYXRlSW5zdGFuY2UuY3BwCmluZGV4IDFiNGFkZDg4ZGYxMDE1YjIzMGE1ODM5YjEx
NTYyNzI1YWY0NDExZWUuLjZkZjMwZDcyMDE4ODE4NmRlMTIyMTAzZTBkODgwZTdmODJmZmYzNGUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVJbnN0YW5jZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUluc3RhbmNlLmNwcApA
QCAtMzcsNiArMzcsMTMgQEAgY29uc3QgQ2xhc3NJbmZvIERhdGVJbnN0YW5jZTo6c19pbmZvID0g
eyJEYXRlIiwgJkpTV3JhcHBlck9iamVjdDo6c19pbmZvLCAwLCAwfTsKIERhdGVJbnN0YW5jZTo6
RGF0ZUluc3RhbmNlKEV4ZWNTdGF0ZSogZXhlYywgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAg
OiBKU1dyYXBwZXJPYmplY3QoZXhlYy0+Z2xvYmFsRGF0YSgpLCBzdHJ1Y3R1cmUpCiB7CisgICAg
ZmluaXNoQ3JlYXRpb24oZXhlYy0+Z2xvYmFsRGF0YSgpKTsKK30KKworRGF0ZUluc3RhbmNlOjpE
YXRlSW5zdGFuY2UoRXhlY1N0YXRlKiBleGVjLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgZG91Ymxl
IHRpbWUpCisgICAgOiBKU1dyYXBwZXJPYmplY3QoZXhlYy0+Z2xvYmFsRGF0YSgpLCBzdHJ1Y3R1
cmUpCit7CisgICAgZmluaXNoQ3JlYXRpb24oZXhlYy0+Z2xvYmFsRGF0YSgpLCB0aW1lKTsKIH0K
IAogdm9pZCBEYXRlSW5zdGFuY2U6OmZpbmlzaENyZWF0aW9uKEpTR2xvYmFsRGF0YSYgZ2xvYmFs
RGF0YSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVJbnN0
YW5jZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUluc3RhbmNlLmgKaW5k
ZXggYmQzNmViNzMzYWVlZGVhYmIwM2I0MDkzOWVmMDJmNTgzZmJiY2ZlMy4uZWJjN2RiZmY5ZjYx
NDM3NDI2NzJhMzY5ZmRlYzBhZjRkM2FiNTJiNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRGF0ZUluc3RhbmNlLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvRGF0ZUluc3RhbmNlLmgKQEAgLTMxLDYgKzMxLDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAKICAgICBjbGFzcyBEYXRlSW5zdGFuY2UgOiBwdWJsaWMgSlNXcmFwcGVyT2JqZWN0IHsKICAg
ICBwcm90ZWN0ZWQ6CisgICAgICAgIERhdGVJbnN0YW5jZShFeGVjU3RhdGUqLCBTdHJ1Y3R1cmUq
LCBkb3VibGUpOwogICAgICAgICBEYXRlSW5zdGFuY2UoRXhlY1N0YXRlKiwgU3RydWN0dXJlKik7
CiAgICAgICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oSlNHbG9iYWxEYXRhJik7CiAgICAgICAgIHZv
aWQgZmluaXNoQ3JlYXRpb24oSlNHbG9iYWxEYXRhJiwgZG91YmxlKTsKQEAgLTQwLDE4ICs0MSwx
MyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogICAgICAgICBzdGF0aWMgRGF0ZUluc3RhbmNlKiBjcmVh
dGUoRXhlY1N0YXRlKiBleGVjLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgZG91YmxlIGRhdGUpCiAg
ICAgICAgIHsKLSAgICAgICAgICAgIERhdGVJbnN0YW5jZSogaW5zdGFuY2UgPSBuZXcgKGFsbG9j
YXRlQ2VsbDxEYXRlSW5zdGFuY2U+KCpleGVjLT5oZWFwKCkpKSBEYXRlSW5zdGFuY2UoZXhlYywg
c3RydWN0dXJlKTsKLSAgICAgICAgICAgIGluc3RhbmNlLT5maW5pc2hDcmVhdGlvbihleGVjLT5n
bG9iYWxEYXRhKCksIGRhdGUpOwotICAgICAgICAgICAgcmV0dXJuIGluc3RhbmNlOworICAgICAg
ICAgICAgcmV0dXJuIG5ldyAoYWxsb2NhdGVDZWxsPERhdGVJbnN0YW5jZT4oKmV4ZWMtPmhlYXAo
KSkpIERhdGVJbnN0YW5jZShleGVjLCBzdHJ1Y3R1cmUsIGRhdGUpOwogICAgICAgICB9Ci0KICAg
ICAgICAgc3RhdGljIERhdGVJbnN0YW5jZSogY3JlYXRlKEV4ZWNTdGF0ZSogZXhlYywgU3RydWN0
dXJlKiBzdHJ1Y3R1cmUpCiAgICAgICAgIHsKLSAgICAgICAgICAgIERhdGVJbnN0YW5jZSogaW5z
dGFuY2UgPSBuZXcgKGFsbG9jYXRlQ2VsbDxEYXRlSW5zdGFuY2U+KCpleGVjLT5oZWFwKCkpKSBE
YXRlSW5zdGFuY2UoZXhlYywgc3RydWN0dXJlKTsKLSAgICAgICAgICAgIGluc3RhbmNlLT5maW5p
c2hDcmVhdGlvbihleGVjLT5nbG9iYWxEYXRhKCkpOwotICAgICAgICAgICAgcmV0dXJuIGluc3Rh
bmNlOworICAgICAgICAgICAgcmV0dXJuIG5ldyAoYWxsb2NhdGVDZWxsPERhdGVJbnN0YW5jZT4o
KmV4ZWMtPmhlYXAoKSkpIERhdGVJbnN0YW5jZShleGVjLCBzdHJ1Y3R1cmUpOwogICAgICAgICB9
Ci0KKyAgICAgICAgCiAgICAgICAgIGRvdWJsZSBpbnRlcm5hbE51bWJlcigpIGNvbnN0IHsgcmV0
dXJuIGludGVybmFsVmFsdWUoKS51bmNoZWNrZWRHZXROdW1iZXIoKTsgfQogCiAgICAgICAgIHN0
YXRpYyBKU19FWFBPUlREQVRBIGNvbnN0IENsYXNzSW5mbyBzX2luZm87CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVQcm90b3R5cGUuY3BwCmluZGV4IDE3NmRjN2VlOTUz
YmZmN2VlYmU0NjgyMzQ4Njk1ZGI3YTM0NDY4MWUuLmRkYTI5NDE2Mzg0MWNkZWRjNTRmNzY5NTdk
NGFjODRlMzBmYTdlMjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0RhdGVQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Rh
dGVQcm90b3R5cGUuY3BwCkBAIC00MzIsMTIgKzQzMiw2IEBAIGNvbnN0IENsYXNzSW5mbyBEYXRl
UHJvdG90eXBlOjpzX2luZm8gPSB7IkRhdGUiLCAmRGF0ZUluc3RhbmNlOjpzX2luZm8sIDAsIEV4
ZWNTCiBEYXRlUHJvdG90eXBlOjpEYXRlUHJvdG90eXBlKEV4ZWNTdGF0ZSogZXhlYywgSlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBEYXRl
SW5zdGFuY2UoZXhlYywgc3RydWN0dXJlKQogewotICAgIGZpbmlzaENyZWF0aW9uKGV4ZWMsIGds
b2JhbE9iamVjdCk7Ci19Ci0KLXZvaWQgRGF0ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oRXhl
Y1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQotewotICAgIEJhc2U6
OmZpbmlzaENyZWF0aW9uKGV4ZWMtPmdsb2JhbERhdGEoKSwganNOYU4oKSk7CiAgICAgQVNTRVJU
KGluaGVyaXRzKCZzX2luZm8pKTsKIAogICAgIC8vIFRoZSBjb25zdHJ1Y3RvciB3aWxsIGJlIGFk
ZGVkIGxhdGVyLCBhZnRlciBEYXRlQ29uc3RydWN0b3IgaGFzIGJlZW4gYnVpbHQuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlUHJvdG90eXBlLmggYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlUHJvdG90eXBlLmgKaW5kZXggMTA2OTA4NTI4
MmFlMjVkNWFmY2M4OWI5YWM5MjMxNzMxM2UwMjI5Yy4uYjM0YzZiNmYyMThiYWZjMDM0ZjBkYzQy
YzY2MGRjYTdlYzEwNjkzOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvRGF0ZVByb3RvdHlwZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Rh
dGVQcm90b3R5cGUuaApAQCAtNDksNyArNDksNiBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAg
fQogCiAgICAgcHJvdGVjdGVkOgotICAgICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEV4ZWNTdGF0
ZSosIEpTR2xvYmFsT2JqZWN0Kik7CiAgICAgICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBTdHJ1
Y3R1cmVGbGFncyA9IE92ZXJyaWRlc0dldE93blByb3BlcnR5U2xvdCB8IERhdGVJbnN0YW5jZTo6
U3RydWN0dXJlRmxhZ3M7CiAKICAgICAgICAgQ09NUElMRV9BU1NFUlQoIURhdGVJbnN0YW5jZTo6
QW5vbnltb3VzU2xvdENvdW50LCBEYXRlUHJvdG90eXBlX3N0b21wc19vbl95b3VyX2Fub255bW91
c19zbG90KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9y
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yLmNwcAppbmRleCA1MGQ0
NDgzNjViZGFiMzcyY2Y0NWY5MmJlZDc4OTdkYmFkOGEyZGRkLi43ODY3NTBiZjJmZTBjYjExMzRi
MWEyYWY2NzEyMjUxMGRlNjM0NTdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9FcnJvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJy
b3IuY3BwCkBAIC0xNjgsMTAgKzE2OCw5IEBAIEpTT2JqZWN0KiB0aHJvd1N5bnRheEVycm9yKEV4
ZWNTdGF0ZSogZXhlYykKIGNsYXNzIFN0cmljdE1vZGVUeXBlRXJyb3JGdW5jdGlvbiA6IHB1Ymxp
YyBJbnRlcm5hbEZ1bmN0aW9uIHsKIHByaXZhdGU6CiAgICAgU3RyaWN0TW9kZVR5cGVFcnJvckZ1
bmN0aW9uKEV4ZWNTdGF0ZSogZXhlYywgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIGNvbnN0IFVTdHJpbmcmIG1lc3NhZ2UpCi0gICAgICAgIDogSW50
ZXJuYWxGdW5jdGlvbihnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSkKKyAgICAgICAgOiBJbnRlcm5h
bEZ1bmN0aW9uKCZleGVjLT5nbG9iYWxEYXRhKCksIGdsb2JhbE9iamVjdCwgc3RydWN0dXJlLCBl
eGVjLT5nbG9iYWxEYXRhKCkucHJvcGVydHlOYW1lcy0+ZW1wdHlJZGVudGlmaWVyKQogICAgICAg
ICAsIG1fbWVzc2FnZShtZXNzYWdlKQogICAgIHsKLSAgICAgICAgZmluaXNoQ3JlYXRpb24oZXhl
Yy0+Z2xvYmFsRGF0YSgpLCBnbG9iYWxPYmplY3QsIGV4ZWMtPmdsb2JhbERhdGEoKS5wcm9wZXJ0
eU5hbWVzLT5lbXB0eUlkZW50aWZpZXIpOwogICAgIH0KIAogcHVibGljOgpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAppbmRleCA5Mzhm
NDBhYzM2MjMzNzJiMDA1MjMzYjM3NmRkNWNjNGEyZWFmYWNiLi5kZjExMmRkMjIyMWY5Yzk4Zjdi
ZGU5MGJjMGJjOGU5MTMwMjRiZTExIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcApAQCAtMzAsMTQgKzMwLDggQEAgbmFtZXNwYWNl
IEpTQyB7CiBBU1NFUlRfQ0xBU1NfRklUU19JTl9DRUxMKEVycm9yQ29uc3RydWN0b3IpOwogCiBF
cnJvckNvbnN0cnVjdG9yOjpFcnJvckNvbnN0cnVjdG9yKEV4ZWNTdGF0ZSogZXhlYywgSlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEVycm9yUHJvdG90
eXBlKiBlcnJvclByb3RvdHlwZSkKLSAgICA6IEludGVybmFsRnVuY3Rpb24oZ2xvYmFsT2JqZWN0
LCBzdHJ1Y3R1cmUpCisgICAgOiBJbnRlcm5hbEZ1bmN0aW9uKCZleGVjLT5nbG9iYWxEYXRhKCks
IGdsb2JhbE9iamVjdCwgc3RydWN0dXJlLCBJZGVudGlmaWVyKGV4ZWMsIGVycm9yUHJvdG90eXBl
LT5jbGFzc0luZm8oKS0+Y2xhc3NOYW1lKSkKIHsKLSAgICBmaW5pc2hDcmVhdGlvbihleGVjLCBn
bG9iYWxPYmplY3QsIGVycm9yUHJvdG90eXBlKTsKLX0KLQotdm9pZCBFcnJvckNvbnN0cnVjdG9y
OjpmaW5pc2hDcmVhdGlvbihFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIEVycm9yUHJvdG90eXBlKiBlcnJvclByb3RvdHlwZSkKLXsKLSAgICBCYXNlOjpmaW5p
c2hDcmVhdGlvbihleGVjLT5nbG9iYWxEYXRhKCksIGdsb2JhbE9iamVjdCwgSWRlbnRpZmllcihl
eGVjLCBlcnJvclByb3RvdHlwZS0+Y2xhc3NJbmZvKCktPmNsYXNzTmFtZSkpOwogICAgIC8vIEVD
TUEgMTUuMTEuMy4xIEVycm9yLnByb3RvdHlwZQogICAgIHB1dERpcmVjdFdpdGhvdXRUcmFuc2l0
aW9uKGV4ZWMtPmdsb2JhbERhdGEoKSwgZXhlYy0+cHJvcGVydHlOYW1lcygpLnByb3RvdHlwZSwg
ZXJyb3JQcm90b3R5cGUsIERvbnRFbnVtIHwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KTsKICAgICBw
dXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbihleGVjLT5nbG9iYWxEYXRhKCksIGV4ZWMtPnByb3Bl
cnR5TmFtZXMoKS5sZW5ndGgsIGpzTnVtYmVyKDEpLCBEb250RGVsZXRlIHwgUmVhZE9ubHkgfCBE
b250RW51bSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJv
ckNvbnN0cnVjdG9yLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0
cnVjdG9yLmgKaW5kZXggOTQ0MjEzZjkyNTQyNWIwNjE0NzUzMWVmYjIzODUwNzUyODIzZDkwMi4u
Mzg3N2E2ZDExMDc4ODk5MzRhMWM0MTg4NjAzZjg2MDUxYTAwOWIyMSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5oCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3IuaApAQCAtMzYsOSArMzYs
NiBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgewogICAgICAgICAgICAgcmV0dXJuIG5ldyAo
YWxsb2NhdGVDZWxsPEVycm9yQ29uc3RydWN0b3I+KCpleGVjLT5oZWFwKCkpKSBFcnJvckNvbnN0
cnVjdG9yKGV4ZWMsIGdsb2JhbE9iamVjdCwgc3RydWN0dXJlLCBlcnJQcm90b3R5cGUpOwogICAg
ICAgICB9Ci0KLSAgICBwcm90ZWN0ZWQ6Ci0gICAgICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oRXhl
Y1N0YXRlKiwgSlNHbG9iYWxPYmplY3QqLCBFcnJvclByb3RvdHlwZSopOwogICAgICAgICAKICAg
ICBwcml2YXRlOgogICAgICAgICBFcnJvckNvbnN0cnVjdG9yKEV4ZWNTdGF0ZSosIEpTR2xvYmFs
T2JqZWN0KiwgU3RydWN0dXJlKiwgRXJyb3JQcm90b3R5cGUqKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yUHJvdG90eXBlLmNwcAppbmRleCAyYTliOWE5YjA0MGE1
NDUyODg1ZDg0MTVlZDAxYTJlYzFhZGM2MzAxLi42OTg2NzUyNGM0Y2U3ZWY1Yzc2M2I2YTUyNzJl
NzE2Y2U4NDk1NzljIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9F
cnJvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJy
b3JQcm90b3R5cGUuY3BwCkBAIC01MCw5ICs1MCwxMCBAQCBjb25zdCBDbGFzc0luZm8gRXJyb3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkVycm9yIiwgJkVycm9ySW5zdGFuY2U6OnNfaW5mbywgMCwg
RQogCiBBU1NFUlRfQ0xBU1NfRklUU19JTl9DRUxMKEVycm9yUHJvdG90eXBlKTsKIAotRXJyb3JQ
cm90b3R5cGU6OkVycm9yUHJvdG90eXBlKEV4ZWNTdGF0ZSogZXhlYywgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUpCitFcnJvclByb3RvdHlwZTo6RXJyb3JQcm90b3R5cGUoRXhlY1N0YXRlKiBleGVjLCBK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6
IEVycm9ySW5zdGFuY2UoZXhlYy0+Z2xvYmFsRGF0YSgpLCBzdHJ1Y3R1cmUpCiB7CisgICAgZmlu
aXNoQ3JlYXRpb24oZXhlYywgZ2xvYmFsT2JqZWN0KTsKIH0KIAogdm9pZCBFcnJvclByb3RvdHlw
ZTo6ZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JQ
cm90b3R5cGUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yUHJvdG90eXBl
LmgKaW5kZXggOTM0ODRjMjc0NjVlNGQ5MTU1NDlmMTVlMTA4NzNmZWM1OThkZGFjMC4uMGQwZmQz
MDc5NDA2YzU5NjI3NmI1NmRmMmZhNGY2NzBkZWYwNmQ2MyAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JQcm90b3R5cGUuaAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9FcnJvclByb3RvdHlwZS5oCkBAIC0zMyw5ICszMyw3IEBAIG5hbWVz
cGFjZSBKU0MgewogCiAgICAgICAgIHN0YXRpYyBFcnJvclByb3RvdHlwZSogY3JlYXRlKEV4ZWNT
dGF0ZSogZXhlYywgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUpCiAgICAgICAgIHsKLSAgICAgICAgICAgIEVycm9yUHJvdG90eXBlKiBwcm90b3R5cGUg
PSBuZXcgKGFsbG9jYXRlQ2VsbDxFcnJvclByb3RvdHlwZT4oKmV4ZWMtPmhlYXAoKSkpIEVycm9y
UHJvdG90eXBlKGV4ZWMsIHN0cnVjdHVyZSk7Ci0gICAgICAgICAgICBwcm90b3R5cGUtPmZpbmlz
aENyZWF0aW9uKGV4ZWMsIGdsb2JhbE9iamVjdCk7Ci0gICAgICAgICAgICByZXR1cm4gcHJvdG90
eXBlOworICAgICAgICAgICAgcmV0dXJuIG5ldyAoYWxsb2NhdGVDZWxsPEVycm9yUHJvdG90eXBl
PigqZXhlYy0+aGVhcCgpKSkgRXJyb3JQcm90b3R5cGUoZXhlYywgZ2xvYmFsT2JqZWN0LCBzdHJ1
Y3R1cmUpOwogICAgICAgICB9CiAgICAgICAgIAogICAgICAgICBzdGF0aWMgY29uc3QgQ2xhc3NJ
bmZvIHNfaW5mbzsKQEAgLTQ2LDcgKzQ0LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIH0K
IAogICAgIHByb3RlY3RlZDoKLSAgICAgICAgRXJyb3JQcm90b3R5cGUoRXhlY1N0YXRlKiwgU3Ry
dWN0dXJlKik7CisgICAgICAgIEVycm9yUHJvdG90eXBlKEV4ZWNTdGF0ZSosIEpTR2xvYmFsT2Jq
ZWN0KiwgU3RydWN0dXJlKik7CiAgICAgICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRl
KiwgSlNHbG9iYWxPYmplY3QqKTsKIAogICAgICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgU3Ry
dWN0dXJlRmxhZ3MgPSBPdmVycmlkZXNHZXRPd25Qcm9wZXJ0eVNsb3QgfCBFcnJvckluc3RhbmNl
OjpTdHJ1Y3R1cmVGbGFnczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKaW5kZXggOGNmMGQyYTY5YjkwNzk5ZDg3MzI0ZDk4
YWRhNzk1ODUyMTkzMTI0MC4uNTBkOWI1ZjdkYTZlZWMyMzNhMjlhZWNhYzBmOGJiMzZmMzQwMGM5
NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25z
dHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25D
b25zdHJ1Y3Rvci5jcHAKQEAgLTM4LDE0ICszOCw4IEBAIG5hbWVzcGFjZSBKU0MgewogQVNTRVJU
X0NMQVNTX0ZJVFNfSU5fQ0VMTChGdW5jdGlvbkNvbnN0cnVjdG9yKTsKIAogRnVuY3Rpb25Db25z
dHJ1Y3Rvcjo6RnVuY3Rpb25Db25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBGdW5jdGlvblByb3RvdHlw
ZSogZnVuY3Rpb25Qcm90b3R5cGUpCi0gICAgOiBJbnRlcm5hbEZ1bmN0aW9uKGdsb2JhbE9iamVj
dCwgc3RydWN0dXJlKQorICAgIDogSW50ZXJuYWxGdW5jdGlvbigmZXhlYy0+Z2xvYmFsRGF0YSgp
LCBnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSwgSWRlbnRpZmllcihleGVjLCBmdW5jdGlvblByb3Rv
dHlwZS0+Y2xhc3NJbmZvKCktPmNsYXNzTmFtZSkpCiB7Ci0gICAgZmluaXNoQ3JlYXRpb24oZXhl
YywgZ2xvYmFsT2JqZWN0LCBmdW5jdGlvblByb3RvdHlwZSk7Ci19Ci0KLXZvaWQgRnVuY3Rpb25D
b25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBGdW5jdGlvblByb3RvdHlwZSogZnVuY3Rpb25Qcm90b3R5cGUpCi17
Ci0gICAgQmFzZTo6ZmluaXNoQ3JlYXRpb24oZXhlYy0+Z2xvYmFsRGF0YSgpLCBnbG9iYWxPYmpl
Y3QsIElkZW50aWZpZXIoZXhlYywgZnVuY3Rpb25Qcm90b3R5cGUtPmNsYXNzSW5mbygpLT5jbGFz
c05hbWUpKTsKICAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbihleGVjLT5nbG9iYWxEYXRh
KCksIGV4ZWMtPnByb3BlcnR5TmFtZXMoKS5wcm90b3R5cGUsIGZ1bmN0aW9uUHJvdG90eXBlLCBE
b250RW51bSB8IERvbnREZWxldGUgfCBSZWFkT25seSk7CiAKICAgICAvLyBOdW1iZXIgb2YgYXJn
dW1lbnRzIGZvciBjb25zdHJ1Y3RvcgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5oCmluZGV4IGU5N2M1M2ZmZTc3ZDExMTJiZjRiMDc2
NTJjNTI4NmI0ZDA2MTUzNTQuLjljNTVkODg4OWQwZDlhYTQwNjlkODFlOGZjN2Q5MDZhNTE4MWIz
NWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29u
c3RydWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNv
bnN0cnVjdG9yLmgKQEAgLTM4LDcgKzM4LDYgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICAgICBwcml2
YXRlOgogICAgICAgICBGdW5jdGlvbkNvbnN0cnVjdG9yKEV4ZWNTdGF0ZSosIEpTR2xvYmFsT2Jq
ZWN0KiwgU3RydWN0dXJlKiwgRnVuY3Rpb25Qcm90b3R5cGUqKTsKLSAgICAgICAgdm9pZCBmaW5p
c2hDcmVhdGlvbihFeGVjU3RhdGUqLCBKU0dsb2JhbE9iamVjdCosIEZ1bmN0aW9uUHJvdG90eXBl
Kik7CiAgICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKENvbnN0
cnVjdERhdGEmKTsKICAgICAgICAgdmlydHVhbCBDYWxsVHlwZSBnZXRDYWxsRGF0YShDYWxsRGF0
YSYpOwogICAgIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9G
dW5jdGlvblByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5j
dGlvblByb3RvdHlwZS5jcHAKaW5kZXggMDBmOGIyNWVkZTNjY2M5MTI5M2RjNzMzNTllMTFiY2Nm
ZWZjMTg2MS4uOTZjZDY3NzNiY2VjNWE4MTFkY2I0MTc3NzU1MzQxMDJlMjUxYmRlMiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Qcm90b3R5cGUuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uUHJvdG90eXBlLmNw
cApAQCAtMzgsMTQgKzM4LDggQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwg
ZnVuY3Rpb25Qcm90b0Z1bmNBcHBseShFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGZ1bmN0aW9uUHJvdG9GdW5jQ2FsbChFeGVjU3RhdGUqKTsKIAogRnVu
Y3Rpb25Qcm90b3R5cGU6OkZ1bmN0aW9uUHJvdG90eXBlKEV4ZWNTdGF0ZSogZXhlYywgSlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCi0gICAgOiBJbnRl
cm5hbEZ1bmN0aW9uKGdsb2JhbE9iamVjdCwgc3RydWN0dXJlKQorICAgIDogSW50ZXJuYWxGdW5j
dGlvbigmZXhlYy0+Z2xvYmFsRGF0YSgpLCBnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSwgZXhlYy0+
cHJvcGVydHlOYW1lcygpLm51bGxJZGVudGlmaWVyKQogewotICAgIGZpbmlzaENyZWF0aW9uKGV4
ZWMsIGdsb2JhbE9iamVjdCwgZXhlYy0+cHJvcGVydHlOYW1lcygpLm51bGxJZGVudGlmaWVyKTsK
LX0KLQotdm9pZCBGdW5jdGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiBl
eGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjb25zdCBJZGVudGlmaWVyJiBuYW1l
KQotewotICAgIEJhc2U6OmZpbmlzaENyZWF0aW9uKGV4ZWMtPmdsb2JhbERhdGEoKSwgZ2xvYmFs
T2JqZWN0LCBuYW1lKTsKICAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbihleGVjLT5nbG9i
YWxEYXRhKCksIGV4ZWMtPnByb3BlcnR5TmFtZXMoKS5sZW5ndGgsIGpzTnVtYmVyKDApLCBEb250
RGVsZXRlIHwgUmVhZE9ubHkgfCBEb250RW51bSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uUHJvdG90eXBlLmggYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9GdW5jdGlvblByb3RvdHlwZS5oCmluZGV4IDk3MjZjOTg0NjQyMjI1
Mjc4YzZhMGVlN2Q2MDk3YTcwMTZjZTAxZTQuLmU3MDE4MmYzMTNhNzZjZDYyMDE3ZjQ5Y2U4YWU0
MDczMTM1ZGVlNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1
bmN0aW9uUHJvdG90eXBlLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVu
Y3Rpb25Qcm90b3R5cGUuaApAQCAtNDEsOSArNDEsNiBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAg
ICAgICAgIHJldHVybiBTdHJ1Y3R1cmU6OmNyZWF0ZShnbG9iYWxEYXRhLCBnbG9iYWxPYmplY3Qs
IHByb3RvLCBUeXBlSW5mbyhPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIEFub255bW91c1Ns
b3RDb3VudCwgJnNfaW5mbyk7CiAgICAgICAgIH0KIAotICAgIHByb3RlY3RlZDoKLSAgICAgICAg
dm9pZCBmaW5pc2hDcmVhdGlvbihFeGVjU3RhdGUqLCBKU0dsb2JhbE9iamVjdCosIGNvbnN0IElk
ZW50aWZpZXImIG5hbWUpOwotCiAgICAgcHJpdmF0ZToKICAgICAgICAgRnVuY3Rpb25Qcm90b3R5
cGUoRXhlY1N0YXRlKiwgSlNHbG9iYWxPYmplY3QqLCBTdHJ1Y3R1cmUqKTsKICAgICAgICAgdmly
dHVhbCBDYWxsVHlwZSBnZXRDYWxsRGF0YShDYWxsRGF0YSYpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcAppbmRleCA1ZTc2NDYxMTY4
ZmJiMGExMWIzOTZjMzEzNmUyNmM4YjUwMTE0Y2ViLi4wN2MwZjdmNWJmNjVhM2U3NTZiNTFjMjQw
MzdjYWNjMzNjNDJlNjIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcApAQCAtNDEsOSArNDEsMTAgQEAgSW50ZXJuYWxGdW5jdGlv
bjo6SW50ZXJuYWxGdW5jdGlvbihWUHRyU3RlYWxpbmdIYWNrVHlwZSkKIHsKIH0KIAotSW50ZXJu
YWxGdW5jdGlvbjo6SW50ZXJuYWxGdW5jdGlvbihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKK0ludGVybmFsRnVuY3Rpb246OkludGVybmFsRnVuY3Rp
b24oSlNHbG9iYWxEYXRhKiBnbG9iYWxEYXRhLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgY29uc3QgSWRlbnRpZmllciYgbmFtZSkKICAgICA6IEpT
T2JqZWN0V2l0aEdsb2JhbE9iamVjdChnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSkKIHsKKyAgICBm
aW5pc2hDcmVhdGlvbigqZ2xvYmFsRGF0YSwgZ2xvYmFsT2JqZWN0LCBuYW1lKTsKIH0KIAogdm9p
ZCBJbnRlcm5hbEZ1bmN0aW9uOjpmaW5pc2hDcmVhdGlvbihKU0dsb2JhbERhdGEmIGdsb2JhbERh
dGEsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0IElkZW50aWZpZXImIG5hbWUp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0
aW9uLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0aW9uLmgK
aW5kZXggMzMxNTY0MGQ4ZjFjNTE0YzUzYWEwMTZhNTYwZDIxZDI0YWM5N2E4ZS4uNzQ2MWU2NmNj
YjU0MDViNzBlM2I3NTZjNTU5MGIxNzAyZWI0NjgyOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGVybmFsRnVuY3Rpb24uaApAQCAtNTIsNyArNTIsNyBAQCBuYW1l
c3BhY2UgSlNDIHsKICAgICAgICAgLy8gT25seSB1c2VkIHRvIGFsbG93IHVzIHRvIGRldGVybWlu
ZSB0aGUgSlNGdW5jdGlvbiB2cHRyCiAgICAgICAgIEludGVybmFsRnVuY3Rpb24oVlB0clN0ZWFs
aW5nSGFja1R5cGUpOwogCi0gICAgICAgIEludGVybmFsRnVuY3Rpb24oSlNHbG9iYWxPYmplY3Qq
LCBTdHJ1Y3R1cmUqKTsKKyAgICAgICAgSW50ZXJuYWxGdW5jdGlvbihKU0dsb2JhbERhdGEqLCBK
U0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSosIGNvbnN0IElkZW50aWZpZXImKTsKIAogICAgICAg
ICB2b2lkIGZpbmlzaENyZWF0aW9uKEpTR2xvYmFsRGF0YSYsIEpTR2xvYmFsT2JqZWN0KiwgY29u
c3QgSWRlbnRpZmllciYgbmFtZSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQWN0aXZhdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0FjdGl2YXRpb24uY3BwCmluZGV4IGRiYzk2N2UwMzY3NmZhNzI0MDNlZWY2OTVkNTQ5NzFj
OGZiZDg4NWUuLjVjOTlkN2E2NTQzOGQxY2U3OWRjN2NiNTA1YTg1NzdhM2Y2OTdiZWIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQWN0aXZhdGlvbi5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBY3RpdmF0aW9uLmNwcApAQCAtNDYs
NiArNDYsNyBAQCBKU0FjdGl2YXRpb246OkpTQWN0aXZhdGlvbihDYWxsRnJhbWUqIGNhbGxGcmFt
ZSwgRnVuY3Rpb25FeGVjdXRhYmxlKiBmdW5jdGlvbkV4ZQogICAgICwgbV9yZXF1aXJlc0R5bmFt
aWNDaGVja3MoZnVuY3Rpb25FeGVjdXRhYmxlLT51c2VzRXZhbCgpKQogICAgICwgbV9hcmd1bWVu
dHNSZWdpc3RlcihmdW5jdGlvbkV4ZWN1dGFibGUtPmdlbmVyYXRlZEJ5dGVjb2RlKCkuYXJndW1l
bnRzUmVnaXN0ZXIoKSkKIHsKKyAgICBmaW5pc2hDcmVhdGlvbihjYWxsRnJhbWUpOwogfQogCiB2
b2lkIEpTQWN0aXZhdGlvbjo6ZmluaXNoQ3JlYXRpb24oQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FjdGl2YXRpb24uaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQWN0aXZhdGlvbi5oCmluZGV4IDcwMWUy
MThlYWFkOGViMDYzNGIwNWU5NzJiMTEyYzQyNDA3ODIwNWIuLjdlOGZkOTgyNmE5N2I3MjA1MjUx
NDMwODZkMmYxNDgyMzQ3YzA2MGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTQWN0aXZhdGlvbi5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTQWN0aXZhdGlvbi5oCkBAIC00OCw5ICs0OCw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiAgICAg
ICAgIHN0YXRpYyBKU0FjdGl2YXRpb24qIGNyZWF0ZShKU0dsb2JhbERhdGEmIGdsb2JhbERhdGEs
IENhbGxGcmFtZSogY2FsbEZyYW1lLCBGdW5jdGlvbkV4ZWN1dGFibGUqIGZ1bmNFeGVjKQogICAg
ICAgICB7Ci0gICAgICAgICAgICBKU0FjdGl2YXRpb24qIGFjdGl2YXRpb24gPSBuZXcgKGFsbG9j
YXRlQ2VsbDxKU0FjdGl2YXRpb24+KGdsb2JhbERhdGEuaGVhcCkpIEpTQWN0aXZhdGlvbihjYWxs
RnJhbWUsIGZ1bmNFeGVjKTsKLSAgICAgICAgICAgIGFjdGl2YXRpb24tPmZpbmlzaENyZWF0aW9u
KGNhbGxGcmFtZSk7Ci0gICAgICAgICAgICByZXR1cm4gYWN0aXZhdGlvbjsKKyAgICAgICAgICAg
IHJldHVybiBuZXcgKGFsbG9jYXRlQ2VsbDxKU0FjdGl2YXRpb24+KGdsb2JhbERhdGEuaGVhcCkp
IEpTQWN0aXZhdGlvbihjYWxsRnJhbWUsIGZ1bmNFeGVjKTsKICAgICAgICAgfQogCiAgICAgICAg
IHZpcnR1YWwgfkpTQWN0aXZhdGlvbigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTR2xvYmFsT2JqZWN0LmgKaW5kZXggZDBhODAyZWRlMDY2ZTY4ZjhlZjYxYTIxOTQ1YWVh
NGNlNDgxNzRjOC4uMzMwMTg3ZWVkNjk4MTVmM2RkMWQ3NTUxMzg0YTc1NzA1OWU2MzA0NyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuaAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5oCkBAIC0x
NDYsOSArMTQ2LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICAgICAgICAgc3RhdGljIEpTR2xvYmFs
T2JqZWN0KiBjcmVhdGUoSlNHbG9iYWxEYXRhJiBnbG9iYWxEYXRhLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSkKICAgICAgICAgewotICAgICAgICAgICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCA9IG5ldyAoYWxsb2NhdGVDZWxsPEpTR2xvYmFsT2JqZWN0PihnbG9iYWxEYXRhLmhlYXApKSBK
U0dsb2JhbE9iamVjdChnbG9iYWxEYXRhLCBzdHJ1Y3R1cmUpOwotICAgICAgICAgICAgZ2xvYmFs
T2JqZWN0LT5maW5pc2hDcmVhdGlvbihnbG9iYWxEYXRhLCBnbG9iYWxPYmplY3QpOwotICAgICAg
ICAgICAgcmV0dXJuIGdsb2JhbE9iamVjdDsKKyAgICAgICAgICAgIHJldHVybiBuZXcgKGFsbG9j
YXRlQ2VsbDxKU0dsb2JhbE9iamVjdD4oZ2xvYmFsRGF0YS5oZWFwKSkgSlNHbG9iYWxPYmplY3Qo
Z2xvYmFsRGF0YSwgc3RydWN0dXJlKTsKICAgICAgICAgfQogCiAgICAgICAgIHN0YXRpYyBKU19F
WFBPUlREQVRBIGNvbnN0IENsYXNzSW5mbyBzX2luZm87CkBAIC0xNjEsNiArMTU5LDE3IEBAIG5h
bWVzcGFjZSBKU0MgewogICAgICAgICAgICAgLCBtX3dlYWtSYW5kb20oc3RhdGljX2Nhc3Q8dW5z
aWduZWQ+KHJhbmRvbU51bWJlcigpICogKHN0ZDo6bnVtZXJpY19saW1pdHM8dW5zaWduZWQ+Ojpt
YXgoKSArIDEuMCkpKQogICAgICAgICAgICAgLCBtX2V2YWxFbmFibGVkKHRydWUpCiAgICAgICAg
IHsKKyAgICAgICAgICAgIGZpbmlzaENyZWF0aW9uKGdsb2JhbERhdGEsIHRoaXMpOworICAgICAg
ICB9CisKKyAgICAgICAgSlNHbG9iYWxPYmplY3QoSlNHbG9iYWxEYXRhJiBnbG9iYWxEYXRhLCBT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNPYmplY3QqIHRoaXNWYWx1ZSkKKyAgICAgICAgICAgIDog
SlNWYXJpYWJsZU9iamVjdChnbG9iYWxEYXRhLCBzdHJ1Y3R1cmUsICZtX3N5bWJvbFRhYmxlLCAw
KQorICAgICAgICAgICAgLCBtX3JlZ2lzdGVyQXJyYXlTaXplKDApCisgICAgICAgICAgICAsIG1f
Z2xvYmFsU2NvcGVDaGFpbigpCisgICAgICAgICAgICAsIG1fd2Vha1JhbmRvbShzdGF0aWNfY2Fz
dDx1bnNpZ25lZD4ocmFuZG9tTnVtYmVyKCkgKiAoc3RkOjpudW1lcmljX2xpbWl0czx1bnNpZ25l
ZD46Om1heCgpICsgMS4wKSkpCisgICAgICAgICAgICAsIG1fZXZhbEVuYWJsZWQodHJ1ZSkKKyAg
ICAgICAgeworICAgICAgICAgICAgZmluaXNoQ3JlYXRpb24oZ2xvYmFsRGF0YSwgdGhpc1ZhbHVl
KTsKICAgICAgICAgfQogCiAgICAgICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oSlNHbG9iYWxEYXRh
JiBnbG9iYWxEYXRhLCBKU09iamVjdCogdGhpc1ZhbHVlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPTk9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU09OT2JqZWN0LmNwcAppbmRleCAxMTIxNDY4MzdhZTJmZDBiY2E5YTYzN2U1
ZjE3ODU2NDNjMGM2NGM0Li4xNzMxNTJiMjkxOTNkZjIwMjQ1ODEyMzc2NzY4ZmJkODlkZTczNjBj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcApAQCAt
NTYsNiArNTYsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIEpTT05PYmplY3Q6OkpTT05PYmplY3QoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBK
U09iamVjdFdpdGhHbG9iYWxPYmplY3QoZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUpCiB7CisgICAg
ZmluaXNoQ3JlYXRpb24oZ2xvYmFsT2JqZWN0KTsKIH0KIAogdm9pZCBKU09OT2JqZWN0OjpmaW5p
c2hDcmVhdGlvbihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPTk9iamVjdC5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNPTk9iamVjdC5oCmluZGV4IGU2OWMzYmMwYjk0ZDk0MGNiNTdjZjFm
ZmI1MzQ3Yzg0NWU1YzRlMzQuLmMzNTUxNjkyY2E2NzAzYTYzMzJkZjQwZmNlZDdkYzNlMzAzMmVj
MzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT05PYmplY3Qu
aAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmgKQEAgLTM4
LDkgKzM4LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICAgICAgICAgc3RhdGljIEpTT05PYmplY3Qq
IGNyZWF0ZShFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFN0
cnVjdHVyZSogc3RydWN0dXJlKQogICAgICAgICB7Ci0gICAgICAgICAgICBKU09OT2JqZWN0KiBv
YmplY3QgPSBuZXcgKGFsbG9jYXRlQ2VsbDxKU09OT2JqZWN0PigqZXhlYy0+aGVhcCgpKSkgSlNP
Tk9iamVjdChnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSk7Ci0gICAgICAgICAgICBvYmplY3QtPmZp
bmlzaENyZWF0aW9uKGdsb2JhbE9iamVjdCk7Ci0gICAgICAgICAgICByZXR1cm4gb2JqZWN0Owor
ICAgICAgICAgICAgcmV0dXJuIG5ldyAoYWxsb2NhdGVDZWxsPEpTT05PYmplY3Q+KCpleGVjLT5o
ZWFwKCkpKSBKU09OT2JqZWN0KGdsb2JhbE9iamVjdCwgc3RydWN0dXJlKTsKICAgICAgICAgfQog
ICAgICAgICAKICAgICAgICAgc3RhdGljIFN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTR2xv
YmFsRGF0YSYgZ2xvYmFsRGF0YSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1
ZSBwcm90b3R5cGUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1N0YXRpY1Njb3BlT2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N0
YXRpY1Njb3BlT2JqZWN0LmgKaW5kZXggMjI1NjM4NjUxNzQwNTVkYzMwOWE1NDg3YWI2YzkxOWRi
ZDBkZjJjNC4uNmNmMzU3NWFiNjg4MGRkMTJlYmM2YTU2OWU4ZWIwOGViNDQ0MDVlNiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTdGF0aWNTY29wZU9iamVjdC5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RhdGljU2NvcGVPYmplY3Qu
aApAQCAtMzYsOSArMzYsNyBAQCBuYW1lc3BhY2UgSlNDewogCiAgICAgICAgIHN0YXRpYyBKU1N0
YXRpY1Njb3BlT2JqZWN0KiBjcmVhdGUoRXhlY1N0YXRlKiBleGVjLCBjb25zdCBJZGVudGlmaWVy
JiBpZGVudGlmaWVyLCBKU1ZhbHVlIHZhbHVlLCB1bnNpZ25lZCBhdHRyaWJ1dGVzKQogICAgICAg
ICB7Ci0gICAgICAgICAgICBKU1N0YXRpY1Njb3BlT2JqZWN0KiBzY29wZU9iamVjdCA9IG5ldyAo
YWxsb2NhdGVDZWxsPEpTU3RhdGljU2NvcGVPYmplY3Q+KCpleGVjLT5oZWFwKCkpKSBKU1N0YXRp
Y1Njb3BlT2JqZWN0KGV4ZWMpOwotICAgICAgICAgICAgc2NvcGVPYmplY3QtPmZpbmlzaENyZWF0
aW9uKGV4ZWMsIGlkZW50aWZpZXIsIHZhbHVlLCBhdHRyaWJ1dGVzKTsKLSAgICAgICAgICAgIHJl
dHVybiBzY29wZU9iamVjdDsKKyAgICAgICAgICAgIHJldHVybiBuZXcgKGFsbG9jYXRlQ2VsbDxK
U1N0YXRpY1Njb3BlT2JqZWN0PigqZXhlYy0+aGVhcCgpKSkgSlNTdGF0aWNTY29wZU9iamVjdChl
eGVjLCBpZGVudGlmaWVyLCB2YWx1ZSwgYXR0cmlidXRlcyk7CiAgICAgICAgIH0KIAogICAgICAg
ICB2aXJ0dWFsIHZvaWQgdmlzaXRDaGlsZHJlbihTbG90VmlzaXRvciYpOwpAQCAtNjEsOSArNTks
MTAgQEAgbmFtZXNwYWNlIEpTQ3sKICAgICAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIFN0cnVj
dHVyZUZsYWdzID0gSXNFbnZpcm9ubWVudFJlY29yZCB8IE92ZXJyaWRlc0dldE93blByb3BlcnR5
U2xvdCB8IE92ZXJyaWRlc1Zpc2l0Q2hpbGRyZW4gfCBPdmVycmlkZXNHZXRQcm9wZXJ0eU5hbWVz
IHwgSlNWYXJpYWJsZU9iamVjdDo6U3RydWN0dXJlRmxhZ3M7CiAKICAgICBwcml2YXRlOgotICAg
ICAgICBKU1N0YXRpY1Njb3BlT2JqZWN0KEV4ZWNTdGF0ZSogZXhlYykKKyAgICAgICAgSlNTdGF0
aWNTY29wZU9iamVjdChFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IElkZW50aWZpZXImIGlkZW50aWZp
ZXIsIEpTVmFsdWUgdmFsdWUsIHVuc2lnbmVkIGF0dHJpYnV0ZXMpCiAgICAgICAgICAgICA6IEpT
VmFyaWFibGVPYmplY3QoZXhlYy0+Z2xvYmFsRGF0YSgpLCBleGVjLT5nbG9iYWxEYXRhKCkuc3Rh
dGljU2NvcGVTdHJ1Y3R1cmUuZ2V0KCksICZtX3N5bWJvbFRhYmxlLCByZWludGVycHJldF9jYXN0
PFJlZ2lzdGVyKj4oJm1fcmVnaXN0ZXJTdG9yZSArIDEpKQogICAgICAgICB7CisgICAgICAgICAg
ICBmaW5pc2hDcmVhdGlvbihleGVjLCBpZGVudGlmaWVyLCB2YWx1ZSwgYXR0cmlidXRlcyk7CiAg
ICAgICAgIH0KICAgICAgICAgCiAgICAgICAgIFN5bWJvbFRhYmxlIG1fc3ltYm9sVGFibGU7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N0cmluZy5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N0cmluZy5jcHAKaW5kZXggNDdkYjFmZjgw
MzMwZjliZjJlZTUzZjQxYWEyNzRlN2JkM2Y0ZjE5OS4uYmQzNTVmNzY2YWI0ZTNiNjlmMzJjOWVk
MjgzZGZjMDlkOTNiYzE0OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNTdHJpbmcuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3Ry
aW5nLmNwcApAQCAtMjk4LDkgKzI5OCw3IEBAIFVTdHJpbmcgSlNTdHJpbmc6OnRvU3RyaW5nKEV4
ZWNTdGF0ZSogZXhlYykgY29uc3QKIAogaW5saW5lIFN0cmluZ09iamVjdCogU3RyaW5nT2JqZWN0
OjpjcmVhdGUoRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBK
U1N0cmluZyogc3RyaW5nKQogewotICAgIFN0cmluZ09iamVjdCogb2JqZWN0ID0gbmV3IChhbGxv
Y2F0ZUNlbGw8U3RyaW5nT2JqZWN0PigqZXhlYy0+aGVhcCgpKSkgU3RyaW5nT2JqZWN0KGV4ZWMt
Pmdsb2JhbERhdGEoKSwgZ2xvYmFsT2JqZWN0LT5zdHJpbmdPYmplY3RTdHJ1Y3R1cmUoKSk7Ci0g
ICAgb2JqZWN0LT5maW5pc2hDcmVhdGlvbihleGVjLT5nbG9iYWxEYXRhKCksIHN0cmluZyk7Ci0g
ICAgcmV0dXJuIG9iamVjdDsKKyAgICByZXR1cm4gbmV3IChhbGxvY2F0ZUNlbGw8U3RyaW5nT2Jq
ZWN0PigqZXhlYy0+aGVhcCgpKSkgU3RyaW5nT2JqZWN0KGV4ZWMtPmdsb2JhbERhdGEoKSwgZ2xv
YmFsT2JqZWN0LT5zdHJpbmdPYmplY3RTdHJ1Y3R1cmUoKSwgc3RyaW5nKTsKIH0KIAogSlNPYmpl
Y3QqIEpTU3RyaW5nOjp0b09iamVjdChFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9NYXRoT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hdGhP
YmplY3QuY3BwCmluZGV4IGE0ZTc1OTZmNzQzZTczNjk4Njg3NmRlYzA5ZDA1NzBhMGM0M2FlZTQu
LjVlYzU2YTM2ZTczNzU1OWEzMGRmYjEyMDhhMGMxM2NlYmE5ODdiNmQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hdGhPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL01hdGhPYmplY3QuY3BwCkBAIC04NCw5ICs4NCwxMCBAQCBj
b25zdCBDbGFzc0luZm8gTWF0aE9iamVjdDo6c19pbmZvID0geyAiTWF0aCIsICZKU09iamVjdFdp
dGhHbG9iYWxPYmplY3Q6OnNfaW5mbwogQGVuZAogKi8KIAotTWF0aE9iamVjdDo6TWF0aE9iamVj
dChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKK01h
dGhPYmplY3Q6Ok1hdGhPYmplY3QoRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEpTT2JqZWN0V2l0aEdsb2Jh
bE9iamVjdChnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSkKIHsKKyAgICBmaW5pc2hDcmVhdGlvbihl
eGVjLCBnbG9iYWxPYmplY3QpOwogfQogCiB2b2lkIE1hdGhPYmplY3Q6OmZpbmlzaENyZWF0aW9u
KEV4ZWNTdGF0ZSogZXhlYywgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hdGhPYmplY3QuaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL01hdGhPYmplY3QuaAppbmRleCA3OGI2MmIzZWVjMTA4Yzc1
MWFiNjM4MDdiZmY3NmJlNjc5MmU2ZjNiLi5lNDEwYTZlZTlhNzdmMGIwNzUzMmRmZDg4NGFmOWQz
ZjkwNDYyY2UzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXRo
T2JqZWN0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWF0aE9iamVjdC5o
CkBAIC0yNywxNiArMjcsMTQgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICAgICBjbGFzcyBNYXRoT2Jq
ZWN0IDogcHVibGljIEpTT2JqZWN0V2l0aEdsb2JhbE9iamVjdCB7CiAgICAgcHJpdmF0ZToKLSAg
ICAgICAgTWF0aE9iamVjdChKU0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSopOworICAgICAgICBN
YXRoT2JqZWN0KEV4ZWNTdGF0ZSosIEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0dXJlKik7CiAKICAg
ICBwdWJsaWM6CiAgICAgICAgIHR5cGVkZWYgSlNPYmplY3RXaXRoR2xvYmFsT2JqZWN0IEJhc2U7
CiAKICAgICAgICAgc3RhdGljIE1hdGhPYmplY3QqIGNyZWF0ZShFeGVjU3RhdGUqIGV4ZWMsIEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgICAg
ICB7Ci0gICAgICAgICAgICBNYXRoT2JqZWN0KiBvYmplY3QgPSBuZXcgKGFsbG9jYXRlQ2VsbDxN
YXRoT2JqZWN0PigqZXhlYy0+aGVhcCgpKSkgTWF0aE9iamVjdChnbG9iYWxPYmplY3QsIHN0cnVj
dHVyZSk7Ci0gICAgICAgICAgICBvYmplY3QtPmZpbmlzaENyZWF0aW9uKGV4ZWMsIGdsb2JhbE9i
amVjdCk7Ci0gICAgICAgICAgICByZXR1cm4gb2JqZWN0OworICAgICAgICAgICAgcmV0dXJuIG5l
dyAoYWxsb2NhdGVDZWxsPE1hdGhPYmplY3Q+KCpleGVjLT5oZWFwKCkpKSBNYXRoT2JqZWN0KGV4
ZWMsIGdsb2JhbE9iamVjdCwgc3RydWN0dXJlKTsKICAgICAgICAgfQogICAgICAgICB2aXJ0dWFs
IGJvb2wgZ2V0T3duUHJvcGVydHlTbG90KEV4ZWNTdGF0ZSosIGNvbnN0IElkZW50aWZpZXImLCBQ
cm9wZXJ0eVNsb3QmKTsKICAgICAgICAgdmlydHVhbCBib29sIGdldE93blByb3BlcnR5RGVzY3Jp
cHRvcihFeGVjU3RhdGUqLCBjb25zdCBJZGVudGlmaWVyJiwgUHJvcGVydHlEZXNjcmlwdG9yJik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNv
bnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9y
Q29uc3RydWN0b3IuY3BwCmluZGV4IDUzN2E0NTc2YzcwMjNjMDk3MDI1YTJiYzA4ZTZmYjRhM2Q5
ZjYwNjMuLjhjNjZmN2VhZjU1MmIyYzU2OWE2ZWJmZDYzYTAyNDE5NTQwYTJjN2QgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3Iu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3Ry
dWN0b3IuY3BwCkBAIC0zMyw5ICszMyw5IEBAIEFTU0VSVF9DTEFTU19GSVRTX0lOX0NFTEwoTmF0
aXZlRXJyb3JDb25zdHJ1Y3Rvcik7CiBjb25zdCBDbGFzc0luZm8gTmF0aXZlRXJyb3JDb25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAw
LCAwIH07CiAKIE5hdGl2ZUVycm9yQ29uc3RydWN0b3I6Ok5hdGl2ZUVycm9yQ29uc3RydWN0b3Io
RXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSwgU3RydWN0dXJlKiBwcm90b3R5cGVTdHJ1Y3R1cmUsIGNvbnN0IFVTdHJpbmcm
IG5hbWUpCi0gICAgOiBJbnRlcm5hbEZ1bmN0aW9uKGdsb2JhbE9iamVjdCwgc3RydWN0dXJlKQor
ICAgIDogSW50ZXJuYWxGdW5jdGlvbigmZXhlYy0+Z2xvYmFsRGF0YSgpLCBnbG9iYWxPYmplY3Qs
IHN0cnVjdHVyZSwgSWRlbnRpZmllcihleGVjLCBuYW1lKSkKIHsKLSAgICBmaW5pc2hDcmVhdGlv
bihleGVjLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZVN0cnVjdHVyZSwgbmFtZSk7CisgICAgY29u
c3RydWN0b3JCb2R5KGV4ZWMsIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlU3RydWN0dXJlLCBuYW1l
KTsKIH0KIAogdm9pZCBOYXRpdmVFcnJvckNvbnN0cnVjdG9yOjp2aXNpdENoaWxkcmVuKFNsb3RW
aXNpdG9yJiB2aXNpdG9yKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5oCmluZGV4IDFkNDk0MmQ2ODVjMjg4YWUzMjA2MDI3
MzNlMDdiNWRiODNiOWIzMWQuLmEzOWQ4MTRmYTNkZjNkNTQ0NzFlYzMzNTU0ZWJkYTJmOGQ1NWJh
ZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9y
Q29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVF
cnJvckNvbnN0cnVjdG9yLmgKQEAgLTQ5LDkgKzQ5LDggQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAg
ICAgIFN0cnVjdHVyZSogZXJyb3JTdHJ1Y3R1cmUoKSB7IHJldHVybiBtX2Vycm9yU3RydWN0dXJl
LmdldCgpOyB9CiAKICAgICBwcm90ZWN0ZWQ6Ci0gICAgICAgIHZvaWQgZmluaXNoQ3JlYXRpb24o
RXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUq
IHByb3RvdHlwZVN0cnVjdHVyZSwgY29uc3QgVVN0cmluZyYgbmFtZSkKKyAgICAgICAgdm9pZCBj
b25zdHJ1Y3RvckJvZHkoRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBTdHJ1Y3R1cmUqIHByb3RvdHlwZVN0cnVjdHVyZSwgY29uc3QgVVN0cmluZyYgbmFtZSkK
ICAgICAgICAgewotICAgICAgICAgICAgQmFzZTo6ZmluaXNoQ3JlYXRpb24oZXhlYy0+Z2xvYmFs
RGF0YSgpLCBnbG9iYWxPYmplY3QsIElkZW50aWZpZXIoZXhlYywgbmFtZSkpOwogICAgICAgICAg
ICAgQVNTRVJUKGluaGVyaXRzKCZzX2luZm8pKTsKIAogICAgICAgICAgICAgTmF0aXZlRXJyb3JQ
cm90b3R5cGUqIHByb3RvdHlwZSA9IE5hdGl2ZUVycm9yUHJvdG90eXBlOjpjcmVhdGUoZXhlYywg
Z2xvYmFsT2JqZWN0LCBwcm90b3R5cGVTdHJ1Y3R1cmUsIG5hbWUsIHRoaXMpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JQcm90b3R5cGUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JQcm90b3R5cGUuY3Bw
CmluZGV4IDhhMTUzMGI3ZDU3MWZjNjJlOWU3NGJmZTdjMDhlNDNiNDUzNjhhZmIuLmU1ZmU3Y2Mw
NTJmMDg2YTZjYTU1ZTVlZWE1OWFkOTQ5ODk1Y2I3OWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvclByb3RvdHlwZS5jcHAKQEAgLTMwLDE3
ICszMCwxNiBAQCBuYW1lc3BhY2UgSlNDIHsKIAogQVNTRVJUX0NMQVNTX0ZJVFNfSU5fQ0VMTChO
YXRpdmVFcnJvclByb3RvdHlwZSk7CiAKLU5hdGl2ZUVycm9yUHJvdG90eXBlOjpOYXRpdmVFcnJv
clByb3RvdHlwZShFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IFN0cnVjdHVyZSogc3RydWN0dXJlLCBjb25zdCBVU3RyaW5nJiBuYW1lQW5kTWVzc2FnZSwgTmF0
aXZlRXJyb3JDb25zdHJ1Y3RvciogY29uc3RydWN0b3IpCi0gICAgOiBFcnJvclByb3RvdHlwZShl
eGVjLCBzdHJ1Y3R1cmUpCitOYXRpdmVFcnJvclByb3RvdHlwZTo6TmF0aXZlRXJyb3JQcm90b3R5
cGUoRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgY29uc3QgVVN0cmluZyYgbmFtZSwgTmF0aXZlRXJyb3JDb25zdHJ1Y3Rv
ciogY29uc3RydWN0b3IpCisgICAgOiBFcnJvclByb3RvdHlwZShleGVjLCBnbG9iYWxPYmplY3Qs
IHN0cnVjdHVyZSkKIHsKLSAgICBmaW5pc2hDcmVhdGlvbihleGVjLCBnbG9iYWxPYmplY3QsIG5h
bWVBbmRNZXNzYWdlLCBjb25zdHJ1Y3Rvcik7CisgICAgY29uc3RydWN0b3JCb2R5KGV4ZWMsIG5h
bWUsIGNvbnN0cnVjdG9yKTsKIH0KIAotaW5saW5lIHZvaWQgTmF0aXZlRXJyb3JQcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKEV4ZWNTdGF0ZSogZXhlYywgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgY29uc3QgVVN0cmluZyYgbmFtZUFuZE1lc3NhZ2UsIE5hdGl2ZUVycm9yQ29uc3RydWN0
b3IqIGNvbnN0cnVjdG9yKQoraW5saW5lIHZvaWQgTmF0aXZlRXJyb3JQcm90b3R5cGU6OmNvbnN0
cnVjdG9yQm9keShFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IFVTdHJpbmcmIG5hbWUsIE5hdGl2ZUVy
cm9yQ29uc3RydWN0b3IqIGNvbnN0cnVjdG9yKQogewotICAgIEJhc2U6OmZpbmlzaENyZWF0aW9u
KGV4ZWMsIGdsb2JhbE9iamVjdCk7Ci0gICAgcHV0RGlyZWN0KGV4ZWMtPmdsb2JhbERhdGEoKSwg
ZXhlYy0+cHJvcGVydHlOYW1lcygpLm5hbWUsIGpzU3RyaW5nKGV4ZWMsIG5hbWVBbmRNZXNzYWdl
KSwgRG9udEVudW0pOwotICAgIHB1dERpcmVjdChleGVjLT5nbG9iYWxEYXRhKCksIGV4ZWMtPnBy
b3BlcnR5TmFtZXMoKS5tZXNzYWdlLCBqc1N0cmluZyhleGVjLCBuYW1lQW5kTWVzc2FnZSksIERv
bnRFbnVtKTsKKyAgICBwdXREaXJlY3QoZXhlYy0+Z2xvYmFsRGF0YSgpLCBleGVjLT5wcm9wZXJ0
eU5hbWVzKCkubmFtZSwganNTdHJpbmcoZXhlYywgbmFtZSksIERvbnRFbnVtKTsKKyAgICBwdXRE
aXJlY3QoZXhlYy0+Z2xvYmFsRGF0YSgpLCBleGVjLT5wcm9wZXJ0eU5hbWVzKCkubWVzc2FnZSwg
anNFbXB0eVN0cmluZyhleGVjKSwgRG9udEVudW0pOwogICAgIHB1dERpcmVjdChleGVjLT5nbG9i
YWxEYXRhKCksIGV4ZWMtPnByb3BlcnR5TmFtZXMoKS5jb25zdHJ1Y3RvciwgY29uc3RydWN0b3Is
IERvbnRFbnVtKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTmF0aXZlRXJyb3JQcm90b3R5cGUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L05hdGl2ZUVycm9yUHJvdG90eXBlLmgKaW5kZXggZDg5NGFiNGYzNTMwNmE4ZmE3OWJlYTlhYzRl
OTcxNzhmZjc1ZDA5Zi4uMzM0OTJiZDhkZjMyOTc1ZTFhOGY0N2ZkMWNhM2IwYmEwN2EyNDlhMiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JQcm90
b3R5cGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvclBy
b3RvdHlwZS5oCkBAIC0zOSw3ICszOSw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICB9CiAK
ICAgICBwcm90ZWN0ZWQ6Ci0gICAgICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiwg
SlNHbG9iYWxPYmplY3QqLCBjb25zdCBVU3RyaW5nJiBuYW1lQW5kTWVzc2FnZSwgTmF0aXZlRXJy
b3JDb25zdHJ1Y3RvciopOworICAgICAgICB2b2lkIGNvbnN0cnVjdG9yQm9keShFeGVjU3RhdGUq
LCBjb25zdCBVU3RyaW5nJiBuYW1lLCBOYXRpdmVFcnJvckNvbnN0cnVjdG9yKik7CiAgICAgfTsK
IAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZGRlNjQyNDA2YjIxZTdlYmRmMjNlYTll
MDI0YTU0NDNjNzUwM2UzYS4uNGI3ZjY4MzZmMWFmMzhlMzk0ODE1NmJkM2IxMGFhNTRiNDdiNjY5
MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3Ry
dWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0
cnVjdG9yLmNwcApAQCAtNTUsMTQgKzU1LDggQEAgY29uc3QgQ2xhc3NJbmZvIE51bWJlckNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2kKICov
CiAKIE51bWJlckNvbnN0cnVjdG9yOjpOdW1iZXJDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMs
IEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBOdW1i
ZXJQcm90b3R5cGUqIG51bWJlclByb3RvdHlwZSkKLSAgICA6IEludGVybmFsRnVuY3Rpb24oZ2xv
YmFsT2JqZWN0LCBzdHJ1Y3R1cmUpIAorICAgIDogSW50ZXJuYWxGdW5jdGlvbigmZXhlYy0+Z2xv
YmFsRGF0YSgpLCBnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSwgSWRlbnRpZmllcihleGVjLCBudW1i
ZXJQcm90b3R5cGUtPnNfaW5mby5jbGFzc05hbWUpKQogewotICAgIGZpbmlzaENyZWF0aW9uKGV4
ZWMsIGdsb2JhbE9iamVjdCwgbnVtYmVyUHJvdG90eXBlKTsKLX0KLQotdm9pZCBOdW1iZXJDb25z
dHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBOdW1iZXJQcm90b3R5cGUqIG51bWJlclByb3RvdHlwZSkKLXsKLSAgICBC
YXNlOjpmaW5pc2hDcmVhdGlvbihleGVjLT5nbG9iYWxEYXRhKCksIGdsb2JhbE9iamVjdCwgSWRl
bnRpZmllcihleGVjLCBudW1iZXJQcm90b3R5cGUtPnNfaW5mby5jbGFzc05hbWUpKTsKICAgICBB
U1NFUlQoaW5oZXJpdHMoJnNfaW5mbykpOwogCiAgICAgLy8gTnVtYmVyLlByb3RvdHlwZQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3Iu
aCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmgKaW5k
ZXggOTFlNTBmMjc1ODUzN2NiMmE5YWY1MjBkMzMwZTRhZjE4NWNiNGY2Ny4uNzVkMzM3YTMwMDY4
MmE5NDY5YjM4MTVmZmNlOWEwN2JiNGIxNTVjZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5oCkBAIC01MCw3ICs1MCw2IEBAIG5hbWVz
cGFjZSBKU0MgewogICAgICAgICBlbnVtIHsgTmFOVmFsdWUsIE5lZ0luZmluaXR5LCBQb3NJbmZp
bml0eSwgTWF4VmFsdWUsIE1pblZhbHVlIH07CiAKICAgICBwcm90ZWN0ZWQ6Ci0gICAgICAgIHZv
aWQgZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiwgSlNHbG9iYWxPYmplY3QqLCBOdW1iZXJQcm90
b3R5cGUqKTsKICAgICAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIFN0cnVjdHVyZUZsYWdzID0g
T3ZlcnJpZGVzR2V0T3duUHJvcGVydHlTbG90IHwgSW1wbGVtZW50c0hhc0luc3RhbmNlIHwgSW50
ZXJuYWxGdW5jdGlvbjo6U3RydWN0dXJlRmxhZ3M7CiAKICAgICBwcml2YXRlOgpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyT2JqZWN0LmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlck9iamVjdC5jcHAKaW5kZXggY2ZiYzIzYzYy
OTllMzljNmQ5OWQzN2U0MGY2YTIzNzcxYmI0YjZiZC4uMjI2NzZkMGZmYThjYzc0NmFkMTZkNmU0
MjhmM2JjOGNkNzBkNzYyZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTnVtYmVyT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9O
dW1iZXJPYmplY3QuY3BwCkBAIC0zNCw2ICszNCw3IEBAIGNvbnN0IENsYXNzSW5mbyBOdW1iZXJP
YmplY3Q6OnNfaW5mbyA9IHsgIk51bWJlciIsICZKU1dyYXBwZXJPYmplY3Q6OnNfaW5mbywgMCwK
IE51bWJlck9iamVjdDo6TnVtYmVyT2JqZWN0KEpTR2xvYmFsRGF0YSYgZ2xvYmFsRGF0YSwgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU1dyYXBwZXJPYmplY3QoZ2xvYmFsRGF0YSwgc3Ry
dWN0dXJlKQogeworICAgIGZpbmlzaENyZWF0aW9uKGdsb2JhbERhdGEpOwogfQogCiB2b2lkIE51
bWJlck9iamVjdDo6ZmluaXNoQ3JlYXRpb24oSlNHbG9iYWxEYXRhJiBnbG9iYWxEYXRhKQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyT2JqZWN0LmggYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJPYmplY3QuaAppbmRleCBlNmNkNGNm
MzgxY2M1OTI2NmMwNTU0NWM4YmEyNDQ5MWY1YWZjODY3Li45YTA1MTEzMWIyZjI5MDdiOGVmY2Q2
ZTNlYTUzNTBhNjRiYTY4ZjAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9OdW1iZXJPYmplY3QuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9O
dW1iZXJPYmplY3QuaApAQCAtMzUsOSArMzUsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogICAgICAg
ICBzdGF0aWMgTnVtYmVyT2JqZWN0KiBjcmVhdGUoSlNHbG9iYWxEYXRhJiBnbG9iYWxEYXRhLCBT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICAgICAgewotICAgICAgICAgICAgTnVtYmVyT2JqZWN0
KiBudW1iZXIgPSBuZXcgKGFsbG9jYXRlQ2VsbDxOdW1iZXJPYmplY3Q+KGdsb2JhbERhdGEuaGVh
cCkpIE51bWJlck9iamVjdChnbG9iYWxEYXRhLCBzdHJ1Y3R1cmUpOwotICAgICAgICAgICAgbnVt
YmVyLT5maW5pc2hDcmVhdGlvbihnbG9iYWxEYXRhKTsKLSAgICAgICAgICAgIHJldHVybiBudW1i
ZXI7CisgICAgICAgICAgICByZXR1cm4gbmV3IChhbGxvY2F0ZUNlbGw8TnVtYmVyT2JqZWN0Pihn
bG9iYWxEYXRhLmhlYXApKSBOdW1iZXJPYmplY3QoZ2xvYmFsRGF0YSwgc3RydWN0dXJlKTsKICAg
ICAgICAgfQogCiAgICAgICAgIHN0YXRpYyBjb25zdCBDbGFzc0luZm8gc19pbmZvOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyUHJvdG90eXBlLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlclByb3RvdHlwZS5jcHAKaW5kZXgg
NzUzMTJiMWVmYjQwZWY5NjgwMjQ4OTNjZDk5ZTcxMjZhMjk5ZDMwYi4uNmIzYTM3NjgzNTNhMjMx
MTM1MWZmNmYyMGY2YTI2YmY5ZDMwOGFlMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvTnVtYmVyUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9OdW1iZXJQcm90b3R5cGUuY3BwCkBAIC03MiwxMiArNzIsNiBAQCBBU1NFUlRf
Q0xBU1NfRklUU19JTl9DRUxMKE51bWJlclByb3RvdHlwZSk7CiBOdW1iZXJQcm90b3R5cGU6Ok51
bWJlclByb3RvdHlwZShFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogTnVtYmVyT2JqZWN0KGV4ZWMtPmdsb2Jh
bERhdGEoKSwgc3RydWN0dXJlKQogewotICAgIGZpbmlzaENyZWF0aW9uKGV4ZWMsIGdsb2JhbE9i
amVjdCk7Ci19Ci0KLXZvaWQgTnVtYmVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihFeGVjU3Rh
dGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCi17Ci0gICAgQmFzZTo6Zmlu
aXNoQ3JlYXRpb24oZXhlYy0+Z2xvYmFsRGF0YSgpKTsKICAgICBzZXRJbnRlcm5hbFZhbHVlKGV4
ZWMtPmdsb2JhbERhdGEoKSwganNOdW1iZXIoMCkpOwogCiAgICAgQVNTRVJUKGluaGVyaXRzKCZz
X2luZm8pKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJl
clByb3RvdHlwZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyUHJvdG90
eXBlLmgKaW5kZXggMjI1YjUxNTk2NzBiMGViMzA2ZTk5NjBjNjRhNzBiM2QyMTBkZTg2YS4uM2Vh
ZGU2YzY4OGU4NjAxZTJjZmE0NDlhZjQzNzJkNGI1MDM4ZGQxYiAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyUHJvdG90eXBlLmgKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyUHJvdG90eXBlLmgKQEAgLTQyLDcgKzQyLDYgQEAg
bmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIH0KIAogICAgIHByb3RlY3RlZDoKLSAgICAgICAgdm9p
ZCBmaW5pc2hDcmVhdGlvbihFeGVjU3RhdGUqLCBKU0dsb2JhbE9iamVjdCopOwogICAgICAgICBz
dGF0aWMgY29uc3QgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3MgPSBPdmVycmlkZXNHZXRPd25Qcm9w
ZXJ0eVNsb3QgfCBOdW1iZXJPYmplY3Q6OlN0cnVjdHVyZUZsYWdzOwogICAgICAgICBzdGF0aWMg
Y29uc3QgdW5zaWduZWQgQW5vbnltb3VzU2xvdENvdW50ID0gTnVtYmVyT2JqZWN0OjpBbm9ueW1v
dXNTbG90Q291bnQgKyAxOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZDQ3NDMwZWYyOTM3YzJkNGE3NDAwZTdiNTdi
YWEyMThhZjAzMjUwYi4uYzMyNWZhMDcwYjFmN2JiOTQ2MGMyMThiMjBiNjJlNzhiYmQ0YjhhNSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0
b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVj
dG9yLmNwcApAQCAtNzYsMTQgKzc2LDggQEAgY29uc3QgQ2xhc3NJbmZvIE9iamVjdENvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2kKICovCiAK
IE9iamVjdENvbnN0cnVjdG9yOjpPYmplY3RDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMsIEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBPYmplY3RQ
cm90b3R5cGUqIG9iamVjdFByb3RvdHlwZSkKLSAgICA6IEludGVybmFsRnVuY3Rpb24oZ2xvYmFs
T2JqZWN0LCBzdHJ1Y3R1cmUpCisgICAgOiBJbnRlcm5hbEZ1bmN0aW9uKCZleGVjLT5nbG9iYWxE
YXRhKCksIGdsb2JhbE9iamVjdCwgc3RydWN0dXJlLCBJZGVudGlmaWVyKGV4ZWMsICJPYmplY3Qi
KSkKIHsKLSAgICBmaW5pc2hDcmVhdGlvbihleGVjLCBnbG9iYWxPYmplY3QsIG9iamVjdFByb3Rv
dHlwZSk7Ci19Ci0KLXZvaWQgT2JqZWN0Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKEV4ZWNT
dGF0ZSogZXhlYywgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgT2JqZWN0UHJvdG90eXBl
KiBvYmplY3RQcm90b3R5cGUpCi17Ci0gICAgQmFzZTo6ZmluaXNoQ3JlYXRpb24oZXhlYy0+Z2xv
YmFsRGF0YSgpLCBnbG9iYWxPYmplY3QsIElkZW50aWZpZXIoZXhlYywgIk9iamVjdCIpKTsKICAg
ICAvLyBFQ01BIDE1LjIuMy4xCiAgICAgcHV0RGlyZWN0V2l0aG91dFRyYW5zaXRpb24oZXhlYy0+
Z2xvYmFsRGF0YSgpLCBleGVjLT5wcm9wZXJ0eU5hbWVzKCkucHJvdG90eXBlLCBvYmplY3RQcm90
b3R5cGUsIERvbnRFbnVtIHwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KTsKICAgICAvLyBuby4gb2Yg
YXJndW1lbnRzIGZvciBjb25zdHJ1Y3RvcgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL09iamVjdENvbnN0cnVjdG9yLmgKaW5kZXggOWZjN2EwNjk2MmMyMTA2YTA4ODQ3NDA1
NjA0MTY2YzE4ZDgzNDgzMy4uMzgzZjQwMjlmOTY0ODhkMmIxODMyYjlmMDQxOGJjMzBjYWZjZmQw
ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3Ry
dWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1
Y3Rvci5oCkBAIC00Nyw3ICs0Nyw2IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICB9CiAKICAg
ICBwcm90ZWN0ZWQ6Ci0gICAgICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiwgSlNH
bG9iYWxPYmplY3QqLCBPYmplY3RQcm90b3R5cGUqKTsKICAgICAgICAgc3RhdGljIGNvbnN0IHVu
c2lnbmVkIFN0cnVjdHVyZUZsYWdzID0gT3ZlcnJpZGVzR2V0T3duUHJvcGVydHlTbG90IHwgSW50
ZXJuYWxGdW5jdGlvbjo6U3RydWN0dXJlRmxhZ3M7CiAKICAgICBwcml2YXRlOgpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCmluZGV4
IDgyNTliNmU1MDhlMzY0NTQwYTBiMTQ4YWE0ZmY0Y2U0YzNkYWQ3ZGYuLmM4YTEzM2I0MjU2ODcz
MTVmZjZlODIxYzBiYTI3YTU3YTE1YTMzZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHAKQEAgLTk2LDE1ICs5Niw5IEBAIGNv
bnN0IENsYXNzSW5mbyBSZWdFeHBDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAm
SW50ZXJuYWxGdW5jdGlvbjo6c19pCiAqLwogCiBSZWdFeHBDb25zdHJ1Y3Rvcjo6UmVnRXhwQ29u
c3RydWN0b3IoRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVnRXhwUHJvdG90eXBlKiByZWdFeHBQcm90b3R5cGUpCi0g
ICAgOiBJbnRlcm5hbEZ1bmN0aW9uKGdsb2JhbE9iamVjdCwgc3RydWN0dXJlKQorICAgIDogSW50
ZXJuYWxGdW5jdGlvbigmZXhlYy0+Z2xvYmFsRGF0YSgpLCBnbG9iYWxPYmplY3QsIHN0cnVjdHVy
ZSwgSWRlbnRpZmllcihleGVjLCAiUmVnRXhwIikpCiAgICAgLCBkKGFkb3B0UHRyKG5ldyBSZWdF
eHBDb25zdHJ1Y3RvclByaXZhdGUpKQogewotICAgIGZpbmlzaENyZWF0aW9uKGV4ZWMsIGdsb2Jh
bE9iamVjdCwgcmVnRXhwUHJvdG90eXBlKTsKLX0KLQotdm9pZCBSZWdFeHBDb25zdHJ1Y3Rvcjo6
ZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBSZWdFeHBQcm90b3R5cGUqIHJlZ0V4cFByb3RvdHlwZSkKLXsKLSAgICBCYXNlOjpmaW5p
c2hDcmVhdGlvbihleGVjLT5nbG9iYWxEYXRhKCksIGdsb2JhbE9iamVjdCwgSWRlbnRpZmllcihl
eGVjLCAiUmVnRXhwIikpOwogICAgIEFTU0VSVChpbmhlcml0cygmc19pbmZvKSk7CiAKICAgICAv
LyBFQ01BIDE1LjEwLjUuMSBSZWdFeHAucHJvdG90eXBlCkBAIC0xMTQsOSArMTA4LDEwIEBAIHZv
aWQgUmVnRXhwQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKEV4ZWNTdGF0ZSogZXhlYywgSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iCiAgICAgcHV0RGlyZWN0V2l0aG91dFRyYW5zaXRpb24oZXhl
Yy0+Z2xvYmFsRGF0YSgpLCBleGVjLT5wcm9wZXJ0eU5hbWVzKCkubGVuZ3RoLCBqc051bWJlcigy
KSwgUmVhZE9ubHkgfCBEb250RGVsZXRlIHwgRG9udEVudW0pOwogfQogCi1SZWdFeHBNYXRjaGVz
QXJyYXk6OlJlZ0V4cE1hdGNoZXNBcnJheShFeGVjU3RhdGUqIGV4ZWMpCitSZWdFeHBNYXRjaGVz
QXJyYXk6OlJlZ0V4cE1hdGNoZXNBcnJheShFeGVjU3RhdGUqIGV4ZWMsIFJlZ0V4cENvbnN0cnVj
dG9yUHJpdmF0ZSogZGF0YSkKICAgICA6IEpTQXJyYXkoZXhlYy0+Z2xvYmFsRGF0YSgpLCBleGVj
LT5sZXhpY2FsR2xvYmFsT2JqZWN0KCktPnJlZ0V4cE1hdGNoZXNBcnJheVN0cnVjdHVyZSgpKQog
eworICAgIGZpbmlzaENyZWF0aW9uKGV4ZWMtPmdsb2JhbERhdGEoKSwgZGF0YSk7CiB9CiAKIHZv
aWQgUmVnRXhwTWF0Y2hlc0FycmF5OjpmaW5pc2hDcmVhdGlvbihKU0dsb2JhbERhdGEmIGdsb2Jh
bERhdGEsIFJlZ0V4cENvbnN0cnVjdG9yUHJpdmF0ZSogZGF0YSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmggYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5oCmluZGV4IDAyZjY0YzU2MTQy
YzNhYjkwZTQ4Mjk3ODJhODk4OTNkZjZiNDBjMzcuLmMwMmQwNmQ3YzJjNThmODljZTdlZGNhNzRm
YjE2NzVjN2FiMGFlOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1JlZ0V4cENvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
UmVnRXhwQ29uc3RydWN0b3IuaApAQCAtOTAsNyArOTAsNiBAQCBuYW1lc3BhY2UgSlNDIHsKICAg
ICAgICAgSlNWYWx1ZSBnZXRSaWdodENvbnRleHQoRXhlY1N0YXRlKikgY29uc3Q7CiAKICAgICBw
cm90ZWN0ZWQ6Ci0gICAgICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiwgSlNHbG9i
YWxPYmplY3QqLCBSZWdFeHBQcm90b3R5cGUqKTsKICAgICAgICAgc3RhdGljIGNvbnN0IHVuc2ln
bmVkIFN0cnVjdHVyZUZsYWdzID0gT3ZlcnJpZGVzR2V0T3duUHJvcGVydHlTbG90IHwgSW1wbGVt
ZW50c0hhc0luc3RhbmNlIHwgSW50ZXJuYWxGdW5jdGlvbjo6U3RydWN0dXJlRmxhZ3M7CiAKICAg
ICBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVn
RXhwTWF0Y2hlc0FycmF5LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBN
YXRjaGVzQXJyYXkuaAppbmRleCBhZDk0ZTA3ZGE3YzEzZjliMWIzYzRlNzBiNjZlNTY2YWZhN2E5
ZjhjLi44N2Q1OWM3MTRlYjU0ZGYyODE3M2RmZWRlYmRlZDU0NmY2NTFjM2FiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBNYXRjaGVzQXJyYXkuaAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBNYXRjaGVzQXJyYXkuaApAQCAt
MjYsMTYgKzI2LDE0IEBAIG5hbWVzcGFjZSBKU0MgewogCiAgICAgY2xhc3MgUmVnRXhwTWF0Y2hl
c0FycmF5IDogcHVibGljIEpTQXJyYXkgewogICAgIHByaXZhdGU6Ci0gICAgICAgIFJlZ0V4cE1h
dGNoZXNBcnJheShFeGVjU3RhdGUqKTsKKyAgICAgICAgUmVnRXhwTWF0Y2hlc0FycmF5KEV4ZWNT
dGF0ZSosIFJlZ0V4cENvbnN0cnVjdG9yUHJpdmF0ZSopOwogCiAgICAgcHVibGljOgogICAgICAg
ICB0eXBlZGVmIEpTQXJyYXkgQmFzZTsKIAogICAgICAgICBzdGF0aWMgUmVnRXhwTWF0Y2hlc0Fy
cmF5KiBjcmVhdGUoRXhlY1N0YXRlKiBleGVjLCBSZWdFeHBDb25zdHJ1Y3RvclByaXZhdGUqIGN0
b3JQcml2YXRlKQogICAgICAgICB7Ci0gICAgICAgICAgICBSZWdFeHBNYXRjaGVzQXJyYXkqIHJl
Z0V4cCA9IG5ldyAoYWxsb2NhdGVDZWxsPFJlZ0V4cE1hdGNoZXNBcnJheT4oKmV4ZWMtPmhlYXAo
KSkpIFJlZ0V4cE1hdGNoZXNBcnJheShleGVjKTsKLSAgICAgICAgICAgIHJlZ0V4cC0+ZmluaXNo
Q3JlYXRpb24oZXhlYy0+Z2xvYmFsRGF0YSgpLCBjdG9yUHJpdmF0ZSk7Ci0gICAgICAgICAgICBy
ZXR1cm4gcmVnRXhwOworICAgICAgICAgICAgcmV0dXJuIG5ldyAoYWxsb2NhdGVDZWxsPFJlZ0V4
cE1hdGNoZXNBcnJheT4oKmV4ZWMtPmhlYXAoKSkpIFJlZ0V4cE1hdGNoZXNBcnJheShleGVjLCBj
dG9yUHJpdmF0ZSk7CiAgICAgICAgIH0KICAgICAgICAgdmlydHVhbCB+UmVnRXhwTWF0Y2hlc0Fy
cmF5KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4
cE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBPYmplY3Qu
Y3BwCmluZGV4IGFhYTNlZTA3YzFiNmVjYTY3ZGNhODg0ODc4YTRjNTYyYWMyZDM2M2QuLjg0MWQ5
Mzk0MTE3YWIwOTExNzM4ZDBjNDg1ZTNmZTUwYjVhMWRkMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwT2JqZWN0LmNwcApAQCAtNjYsNiArNjYsNyBAQCBSZWdF
eHBPYmplY3Q6OlJlZ0V4cE9iamVjdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSwgUgogICAgIDogSlNPYmplY3RXaXRoR2xvYmFsT2JqZWN0KGdsb2Jh
bE9iamVjdCwgc3RydWN0dXJlKQogICAgICwgZChhZG9wdFB0cihuZXcgUmVnRXhwT2JqZWN0RGF0
YShnbG9iYWxPYmplY3QtPmdsb2JhbERhdGEoKSwgdGhpcywgcmVnRXhwKSkpCiB7CisgICAgZmlu
aXNoQ3JlYXRpb24oZ2xvYmFsT2JqZWN0KTsKIH0KIAogdm9pZCBSZWdFeHBPYmplY3Q6OmZpbmlz
aENyZWF0aW9uKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBPYmplY3QuaCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1JlZ0V4cE9iamVjdC5oCmluZGV4IDAzNDU2ZGI1MGY2OTFjMzBjMDQx
ZTlhNjRhOTlkZGEwMTZmNzUxZTUuLmUxMzFmYzVjNDc4NmFkOTQ3NmUzM2JlZDA1OTlmZDQ0ZDg3
NzI1ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cE9i
amVjdC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cE9iamVjdC5o
CkBAIC0zMiwxNiArMzIsMTIgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICAgICAgICAgc3RhdGljIFJl
Z0V4cE9iamVjdCogY3JlYXRlKEV4ZWNTdGF0ZSogZXhlYywgSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZ0V4cCogcmVnRXhwKQogICAgICAgICB7
Ci0gICAgICAgICAgICBSZWdFeHBPYmplY3QqIG9iamVjdCA9IG5ldyAoYWxsb2NhdGVDZWxsPFJl
Z0V4cE9iamVjdD4oKmV4ZWMtPmhlYXAoKSkpIFJlZ0V4cE9iamVjdChnbG9iYWxPYmplY3QsIHN0
cnVjdHVyZSwgcmVnRXhwKTsKLSAgICAgICAgICAgIG9iamVjdC0+ZmluaXNoQ3JlYXRpb24oZ2xv
YmFsT2JqZWN0KTsKLSAgICAgICAgICAgIHJldHVybiBvYmplY3Q7CisgICAgICAgICAgICByZXR1
cm4gbmV3IChhbGxvY2F0ZUNlbGw8UmVnRXhwT2JqZWN0PigqZXhlYy0+aGVhcCgpKSkgUmVnRXhw
T2JqZWN0KGdsb2JhbE9iamVjdCwgc3RydWN0dXJlLCByZWdFeHApOwogICAgICAgICB9CiAgICAg
ICAgIAogICAgICAgICBzdGF0aWMgUmVnRXhwT2JqZWN0KiBjcmVhdGUoSlNHbG9iYWxEYXRhJiBn
bG9iYWxEYXRhLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgUmVnRXhwKiByZWdFeHApCiAgICAgICAgIHsKLSAgICAgICAgICAgIFJlZ0V4cE9iamVj
dCogb2JqZWN0ID0gbmV3IChhbGxvY2F0ZUNlbGw8UmVnRXhwT2JqZWN0PihnbG9iYWxEYXRhLmhl
YXApKSBSZWdFeHBPYmplY3QoZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUsIHJlZ0V4cCk7Ci0gICAg
ICAgICAgICBvYmplY3QtPmZpbmlzaENyZWF0aW9uKGdsb2JhbE9iamVjdCk7Ci0gICAgICAgICAg
ICByZXR1cm4gb2JqZWN0OworICAgICAgICAgICAgcmV0dXJuIG5ldyAoYWxsb2NhdGVDZWxsPFJl
Z0V4cE9iamVjdD4oZ2xvYmFsRGF0YS5oZWFwKSkgUmVnRXhwT2JqZWN0KGdsb2JhbE9iamVjdCwg
c3RydWN0dXJlLCByZWdFeHApOwogICAgICAgICB9CiAKICAgICAgICAgdmlydHVhbCB+UmVnRXhw
T2JqZWN0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdF
eHBQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwUHJv
dG90eXBlLmNwcAppbmRleCA5MWI4ODY5N2YzZGI4Yjc4MDRhZmYyYjA4ZWFkOGQ4Mjc4NDkzZmU2
Li44YmZjOTlmNTQ1MDVhZWM0ZjJlMmNkOTYyNDc2ZTc4ODJjOTM4NjVmIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBQcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cFByb3RvdHlwZS5jcHAKQEAgLTY1LDcg
KzY1LDYgQEAgQVNTRVJUX0NMQVNTX0ZJVFNfSU5fQ0VMTChSZWdFeHBQcm90b3R5cGUpOwogUmVn
RXhwUHJvdG90eXBlOjpSZWdFeHBQcm90b3R5cGUoRXhlY1N0YXRlKiwgSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZ0V4cCogcmVnRXhwKQogICAg
IDogUmVnRXhwT2JqZWN0KGdsb2JhbE9iamVjdCwgc3RydWN0dXJlLCByZWdFeHApCiB7Ci0gICAg
ZmluaXNoQ3JlYXRpb24oZ2xvYmFsT2JqZWN0KTsKIH0KIAogYm9vbCBSZWdFeHBQcm90b3R5cGU6
OmdldE93blByb3BlcnR5U2xvdChFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IElkZW50aWZpZXImIHBy
b3BlcnR5TmFtZSwgUHJvcGVydHlTbG90ICZzbG90KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCmluZGV4IGFmOWFiZjVhNzBjMTk3
NDgyOWUwNzBjMzNmYjViODhjZjJmNzE2OWQuLjFkM2IxYzdhMWIyOTU3OTViNmQxNmE1OWJkMDJl
ZGEyMjYyZGVjN2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0
cmluZ0NvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9T
dHJpbmdDb25zdHJ1Y3Rvci5jcHAKQEAgLTQ4LDE0ICs0OCw4IEBAIGNvbnN0IENsYXNzSW5mbyBT
dHJpbmdDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlv
bjo6c19pCiBBU1NFUlRfQ0xBU1NfRklUU19JTl9DRUxMKFN0cmluZ0NvbnN0cnVjdG9yKTsKIAog
U3RyaW5nQ29uc3RydWN0b3I6OlN0cmluZ0NvbnN0cnVjdG9yKEV4ZWNTdGF0ZSogZXhlYywgSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFN0cmluZ1By
b3RvdHlwZSogc3RyaW5nUHJvdG90eXBlKQotICAgIDogSW50ZXJuYWxGdW5jdGlvbihnbG9iYWxP
YmplY3QsIHN0cnVjdHVyZSkKKyAgICA6IEludGVybmFsRnVuY3Rpb24oJmV4ZWMtPmdsb2JhbERh
dGEoKSwgZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUsIElkZW50aWZpZXIoZXhlYywgc3RyaW5nUHJv
dG90eXBlLT5jbGFzc0luZm8oKS0+Y2xhc3NOYW1lKSkKIHsKLSAgICBmaW5pc2hDcmVhdGlvbihl
eGVjLCBnbG9iYWxPYmplY3QsIHN0cmluZ1Byb3RvdHlwZSk7Ci19Ci0KLXZvaWQgU3RyaW5nQ29u
c3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKEV4ZWNTdGF0ZSogZXhlYywgSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgU3RyaW5nUHJvdG90eXBlKiBzdHJpbmdQcm90b3R5cGUpCi17Ci0gICAg
QmFzZTo6ZmluaXNoQ3JlYXRpb24oZXhlYy0+Z2xvYmFsRGF0YSgpLCBnbG9iYWxPYmplY3QsIElk
ZW50aWZpZXIoZXhlYywgc3RyaW5nUHJvdG90eXBlLT5jbGFzc0luZm8oKS0+Y2xhc3NOYW1lKSk7
CiAgICAgcHV0RGlyZWN0V2l0aG91dFRyYW5zaXRpb24oZXhlYy0+Z2xvYmFsRGF0YSgpLCBleGVj
LT5wcm9wZXJ0eU5hbWVzKCkucHJvdG90eXBlLCBzdHJpbmdQcm90b3R5cGUsIFJlYWRPbmx5IHwg
RG9udEVudW0gfCBEb250RGVsZXRlKTsKICAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbihl
eGVjLT5nbG9iYWxEYXRhKCksIGV4ZWMtPnByb3BlcnR5TmFtZXMoKS5sZW5ndGgsIGpzTnVtYmVy
KDEpLCBSZWFkT25seSB8IERvbnRFbnVtIHwgRG9udERlbGV0ZSk7CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuaAppbmRleCA2ZGNkODNk
MTFkOTY4MTA3OGFlYjExN2RiNTJkOTg1ZmM5MTVlMGFlLi5hOTQ0ZTU1YzY1NWNkM2FkNTE5NDEw
MWFjMjczOWVkOGM1ZDBiZTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmgKQEAgLTQ0LDcgKzQ0LDYgQEAgbmFtZXNwYWNlIEpTQyB7
CiAgICAgICAgIH0KIAogICAgIHByb3RlY3RlZDoKLSAgICAgICAgdm9pZCBmaW5pc2hDcmVhdGlv
bihFeGVjU3RhdGUqLCBKU0dsb2JhbE9iamVjdCosIFN0cmluZ1Byb3RvdHlwZSopOwogICAgICAg
ICBzdGF0aWMgY29uc3QgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3MgPSBPdmVycmlkZXNHZXRPd25Q
cm9wZXJ0eVNsb3QgfCBJbnRlcm5hbEZ1bmN0aW9uOjpTdHJ1Y3R1cmVGbGFnczsKIAogICAgIHBy
aXZhdGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdP
YmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nT2JqZWN0LmNw
cAppbmRleCBmNmQ2OWQxMDk1MjY0ZTYxOTFlNTdmNWM0MmM4MDc0NDRmNjAwNzdkLi5iOGZhZDll
NDk3Mzc3YWNhNzQ1NzAxM2NkYTM3MDNiOGYyNzA1OTMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1N0cmluZ09iamVjdC5jcHAKQEAgLTI5LDkgKzI5LDEwIEBAIEFTU0VS
VF9DTEFTU19GSVRTX0lOX0NFTEwoU3RyaW5nT2JqZWN0KTsKIAogY29uc3QgQ2xhc3NJbmZvIFN0
cmluZ09iamVjdDo6c19pbmZvID0geyAiU3RyaW5nIiwgJkpTV3JhcHBlck9iamVjdDo6c19pbmZv
LCAwLCAwIH07CiAKLVN0cmluZ09iamVjdDo6U3RyaW5nT2JqZWN0KEpTR2xvYmFsRGF0YSYgZ2xv
YmFsRGF0YSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCitTdHJpbmdPYmplY3Q6OlN0cmluZ09iamVj
dChKU0dsb2JhbERhdGEmIGdsb2JhbERhdGEsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU1N0cmlu
Zyogc3RyaW5nKQogICAgIDogSlNXcmFwcGVyT2JqZWN0KGdsb2JhbERhdGEsIHN0cnVjdHVyZSkK
IHsKKyAgICBmaW5pc2hDcmVhdGlvbihnbG9iYWxEYXRhLCBzdHJpbmcpOwogfQogCiB2b2lkIFN0
cmluZ09iamVjdDo6ZmluaXNoQ3JlYXRpb24oSlNHbG9iYWxEYXRhJiBnbG9iYWxEYXRhLCBKU1N0
cmluZyogc3RyaW5nKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RyaW5nT2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdPYmpl
Y3QuaAppbmRleCAxOGFmZTcyZGVkNGQ3OTFmMjY5MTAwYjY0ZmQ2NTIwZmRmYjc1OTRkLi5hNzc3
MjIwYzY2YzY0ZTUwOTQ2MWI1N2FjNTJhMzE5ZmM0Y2UyNDg2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdPYmplY3QuaAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TdHJpbmdPYmplY3QuaApAQCAtMzMsMTYgKzMzLDEyIEBAIG5hbWVz
cGFjZSBKU0MgewogICAgICAgICBzdGF0aWMgU3RyaW5nT2JqZWN0KiBjcmVhdGUoRXhlY1N0YXRl
KiBleGVjLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICAgICAgewogICAgICAgICAgICAgSlNT
dHJpbmcqIHN0cmluZyA9IGpzRW1wdHlTdHJpbmcoZXhlYyk7Ci0gICAgICAgICAgICBTdHJpbmdP
YmplY3QqIG9iamVjdCA9IG5ldyAoYWxsb2NhdGVDZWxsPFN0cmluZ09iamVjdD4oKmV4ZWMtPmhl
YXAoKSkpIFN0cmluZ09iamVjdChleGVjLT5nbG9iYWxEYXRhKCksIHN0cnVjdHVyZSk7ICAKLSAg
ICAgICAgICAgIG9iamVjdC0+ZmluaXNoQ3JlYXRpb24oZXhlYy0+Z2xvYmFsRGF0YSgpLCBzdHJp
bmcpOwotICAgICAgICAgICAgcmV0dXJuIG9iamVjdDsKKyAgICAgICAgICAgIHJldHVybiBuZXcg
KGFsbG9jYXRlQ2VsbDxTdHJpbmdPYmplY3Q+KCpleGVjLT5oZWFwKCkpKSBTdHJpbmdPYmplY3Qo
ZXhlYy0+Z2xvYmFsRGF0YSgpLCBzdHJ1Y3R1cmUsIHN0cmluZyk7ICAKICAgICAgICAgfQogICAg
ICAgICBzdGF0aWMgU3RyaW5nT2JqZWN0KiBjcmVhdGUoRXhlY1N0YXRlKiBleGVjLCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgY29uc3QgVVN0cmluZyYgc3RyKQogICAgICAgICB7CiAgICAgICAgICAg
ICBKU1N0cmluZyogc3RyaW5nID0ganNTdHJpbmcoZXhlYywgc3RyKTsKLSAgICAgICAgICAgIFN0
cmluZ09iamVjdCogb2JqZWN0ID0gbmV3IChhbGxvY2F0ZUNlbGw8U3RyaW5nT2JqZWN0PigqZXhl
Yy0+aGVhcCgpKSkgU3RyaW5nT2JqZWN0KGV4ZWMtPmdsb2JhbERhdGEoKSwgc3RydWN0dXJlKTsK
LSAgICAgICAgICAgIG9iamVjdC0+ZmluaXNoQ3JlYXRpb24oZXhlYy0+Z2xvYmFsRGF0YSgpLCBz
dHJpbmcpOwotICAgICAgICAgICAgcmV0dXJuIG9iamVjdDsKKyAgICAgICAgICAgIHJldHVybiBu
ZXcgKGFsbG9jYXRlQ2VsbDxTdHJpbmdPYmplY3Q+KCpleGVjLT5oZWFwKCkpKSBTdHJpbmdPYmpl
Y3QoZXhlYy0+Z2xvYmFsRGF0YSgpLCBzdHJ1Y3R1cmUsIHN0cmluZyk7CiAgICAgICAgIH0KICAg
ICAgICAgc3RhdGljIFN0cmluZ09iamVjdCogY3JlYXRlKEV4ZWNTdGF0ZSosIEpTR2xvYmFsT2Jq
ZWN0KiwgSlNTdHJpbmcqKTsKIApAQCAtNjYsNyArNjIsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAg
ICBwcm90ZWN0ZWQ6CiAgICAgICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oSlNHbG9iYWxEYXRhJiwg
SlNTdHJpbmcqKTsKICAgICAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIFN0cnVjdHVyZUZsYWdz
ID0gT3ZlcnJpZGVzR2V0T3duUHJvcGVydHlTbG90IHwgT3ZlcnJpZGVzR2V0UHJvcGVydHlOYW1l
cyB8IEpTV3JhcHBlck9iamVjdDo6U3RydWN0dXJlRmxhZ3M7Ci0gICAgICAgIFN0cmluZ09iamVj
dChKU0dsb2JhbERhdGEmLCBTdHJ1Y3R1cmUqKTsKKyAgICAgICAgU3RyaW5nT2JqZWN0KEpTR2xv
YmFsRGF0YSYsIFN0cnVjdHVyZSosIEpTU3RyaW5nKik7CiAgICAgfTsKIAogICAgIFN0cmluZ09i
amVjdCogYXNTdHJpbmdPYmplY3QoSlNWYWx1ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TdHJpbmdPYmplY3RUaGF0TWFzcXVlcmFkZXNBc1VuZGVmaW5lZC5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nT2JqZWN0VGhhdE1hc3F1ZXJh
ZGVzQXNVbmRlZmluZWQuaAppbmRleCBlMjFmOWExMDY2MDkxNmNmZWI1YTgxMjY5NjQxYWRmMDU0
ZWUxNWU2Li5hMDQ0NjRhNjA2MGZlZjQxNDYzZjI2MmVmZjI5NWJhODY1ZmFjOTUzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdPYmplY3RUaGF0TWFzcXVl
cmFkZXNBc1VuZGVmaW5lZC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0
cmluZ09iamVjdFRoYXRNYXNxdWVyYWRlc0FzVW5kZWZpbmVkLmgKQEAgLTQxLDkgKzQxLDggQEAg
bmFtZXNwYWNlIEpTQyB7CiAKICAgICBwcml2YXRlOgogICAgICAgICBTdHJpbmdPYmplY3RUaGF0
TWFzcXVlcmFkZXNBc1VuZGVmaW5lZChFeGVjU3RhdGUqIGV4ZWMsIFN0cnVjdHVyZSogc3RydWN0
dXJlLCBKU1N0cmluZyogc3RyaW5nKQotICAgICAgICAgICAgOiBTdHJpbmdPYmplY3QoZXhlYy0+
Z2xvYmFsRGF0YSgpLCBzdHJ1Y3R1cmUpCisgICAgICAgICAgICA6IFN0cmluZ09iamVjdChleGVj
LT5nbG9iYWxEYXRhKCksIHN0cnVjdHVyZSwgc3RyaW5nKQogICAgICAgICB7Ci0gICAgICAgICAg
ICBmaW5pc2hDcmVhdGlvbihleGVjLT5nbG9iYWxEYXRhKCksIHN0cmluZyk7CiAgICAgICAgIH0K
IAogICAgICAgICBzdGF0aWMgU3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNHbG9iYWxEYXRh
JiBnbG9iYWxEYXRhLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3Rv
KSAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3Rv
dHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGUu
Y3BwCmluZGV4IDU5MDM5MDliOTRkMmRlNDU4MWM0NzM0MGI0MDAyZGY2ODgwYWIzYTQuLmUxNGQ5
NzcyNjY5NTU2ODg5YTgzNzYzZDJhYmYyODkwNDI0MDM4YzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcApAQCAtMTMxLDE1ICsxMzEs
OSBAQCBjb25zdCBDbGFzc0luZm8gU3RyaW5nUHJvdG90eXBlOjpzX2luZm8gPSB7ICJTdHJpbmci
LCAmU3RyaW5nT2JqZWN0OjpzX2luZm8sIDAsCiAqLwogCiAvLyBFQ01BIDE1LjUuNAotU3RyaW5n
UHJvdG90eXBlOjpTdHJpbmdQcm90b3R5cGUoRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNTdHJpbmcqIG5hbWVBbmRN
ZXNzYWdlKQotICAgIDogU3RyaW5nT2JqZWN0KGV4ZWMtPmdsb2JhbERhdGEoKSwgc3RydWN0dXJl
KQorU3RyaW5nUHJvdG90eXBlOjpTdHJpbmdQcm90b3R5cGUoRXhlY1N0YXRlKiBleGVjLCBKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNTdHJpbmcq
IHN0cmluZykKKyAgICA6IFN0cmluZ09iamVjdChleGVjLT5nbG9iYWxEYXRhKCksIHN0cnVjdHVy
ZSwgc3RyaW5nKQogewotICAgIGZpbmlzaENyZWF0aW9uKGV4ZWMsIGdsb2JhbE9iamVjdCwgbmFt
ZUFuZE1lc3NhZ2UpOwotfQotCi12b2lkIFN0cmluZ1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
RXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1N0cmluZyog
bmFtZUFuZE1lc3NhZ2UpCi17Ci0gICAgQmFzZTo6ZmluaXNoQ3JlYXRpb24oZXhlYy0+Z2xvYmFs
RGF0YSgpLCBuYW1lQW5kTWVzc2FnZSk7CiAgICAgQVNTRVJUKGluaGVyaXRzKCZzX2luZm8pKTsK
IAogICAgIHB1dEFub255bW91c1ZhbHVlKGV4ZWMtPmdsb2JhbERhdGEoKSwgMCwgZ2xvYmFsT2Jq
ZWN0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1By
b3RvdHlwZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBl
LmgKaW5kZXggNjUxZjlhYzNkZDRmNTdkYWI3MjhiYjA1MjYxYzU3ODliMThjNjFkMS4uNmEwMzE1
ZmUyYjgyY2FlMTcyNDdjNmUxZTYzZTZmM2E4NDE0YjQ4NCAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmgKQEAgLTUwLDcgKzUwLDYgQEAgbmFt
ZXNwYWNlIEpTQyB7CiAgICAgICAgIHN0YXRpYyBjb25zdCBDbGFzc0luZm8gc19pbmZvOwogICAg
ICAgICAKICAgICBwcm90ZWN0ZWQ6Ci0gICAgICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oRXhlY1N0
YXRlKiwgSlNHbG9iYWxPYmplY3QqLCBKU1N0cmluZyopOwogICAgICAgICBzdGF0aWMgY29uc3Qg
dW5zaWduZWQgU3RydWN0dXJlRmxhZ3MgPSBPdmVycmlkZXNHZXRPd25Qcm9wZXJ0eVNsb3QgfCBT
dHJpbmdPYmplY3Q6OlN0cnVjdHVyZUZsYWdzOwogCiAgICAgICAgIENPTVBJTEVfQVNTRVJUKCFT
dHJpbmdPYmplY3Q6OkFub255bW91c1Nsb3RDb3VudCwgU3RyaW5nUHJvdG90eXBlX3N0b21wc19v
bl95b3VyX2Fub255bW91c19zbG90KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0R2x1
ZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2YVNjcmlwdEdsdWUvQ2hhbmdlTG9nCmluZGV4IDlkOGNl
YWNiYjEzZWUwNjU4YTM5N2JmOTZkYWRiYmU1ZTJiOGQxNTUuLjk0MzJiNTBkZjBjZmViZjYxZjg2
NTYwMTgxOWRkZmEwNTg2YWMzNjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0R2x1ZS9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRHbHVlL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE1IEBACisyMDExLTA5LTA2ICBTaGVyaWZmIEJvdCAgPHdlYmtpdC5yZXZpZXcuYm90QGdtYWls
LmNvbT4KKworICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByOTQ2MjcgYW5kIHI5NDYz
Mi4KKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvOTQ2MjcKKyAgICAg
ICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvOTQ2MzIKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY3Njk4CisKKyAgICAgICAgSXQgYnJv
a2UgdGVzdHMgb24gR1RLIGFuZCBRdCAoUmVxdWVzdGVkIGJ5IE9zc3kgb24gI3dlYmtpdCkuCisK
KyAgICAgICAgKiBKU1J1bi5jcHA6CisgICAgICAgIChKU0dsdWVHbG9iYWxPYmplY3Q6OkpTR2x1
ZUdsb2JhbE9iamVjdCk6CisKIDIwMTEtMDktMDYgIE1hcmsgSGFobmVuYmVyZyAgPG1oYWhuZW5i
ZXJnQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnppcCBpbml0aWFsaXphdGlvbiBsaXN0cyBhbmQg
Y29uc3RydWN0b3JzIGluIEpTQ2VsbCBoaWVyYXJjaHkgKDUvNykKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0R2x1ZS9KU1J1bi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdEdsdWUvSlNSdW4u
Y3BwCmluZGV4IGJmMjJjYmQxNjQxMWM0NjJiYmQzYTM3ZmQ5MDk2YWVlY2EyOWE3NjkuLjhjODhm
ODVmMzIwZTNlZTBjMjljMWQ5ZTI0NjEwYjE0MjYyZDM4MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0R2x1ZS9KU1J1bi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRHbHVlL0pTUnVu
LmNwcApAQCAtMzgsNyArMzgsNiBAQCBKU0dsdWVHbG9iYWxPYmplY3Q6OkpTR2x1ZUdsb2JhbE9i
amVjdChKU0dsb2JhbERhdGEmIGdsb2JhbERhdGEsIFN0cnVjdHVyZSogc3RydQogICAgICwgbV9m
bGFncyhmbGFncykKICAgICAsIG1fdXNlck9iamVjdFN0cnVjdHVyZShnbG9iYWxEYXRhLCB1c2Vy
T2JqZWN0U3RydWN0dXJlKQogewotICAgIGZpbmlzaENyZWF0aW9uKGdsb2JhbERhdGEsIHRoaXMp
OwogfQogCiBKU1J1bjo6SlNSdW4oQ0ZTdHJpbmdSZWYgc291cmNlLCBKU0ZsYWdzIGluRmxhZ3Mp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cKaW5kZXggZTIwMDZmOGM3MDRjYzg5NTg0YjUwN2Q3ODFmOGRmZTc1ZWM4MTM0Mi4u
NmNjMTI4YjA5MTgzYmI0NWI1NzI4OWQ5ZmY2Y2ViZmE3OGVhOTU3YSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDY1IEBACisyMDExLTA5LTA2ICBTaGVyaWZmIEJvdCAgPHdlYmtpdC5yZXZpZXcuYm90
QGdtYWlsLmNvbT4KKworICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByOTQ2MjcgYW5k
IHI5NDYzMi4KKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvOTQ2MjcK
KyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvOTQ2MzIKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY3Njk4CisKKyAgICAgICAg
SXQgYnJva2UgdGVzdHMgb24gR1RLIGFuZCBRdCAoUmVxdWVzdGVkIGJ5IE9zc3kgb24gI3dlYmtp
dCkuCisKKyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0RPTUJpbmRpbmcuaDoKKyAgICAgICAgKFdlYkNvcmU6OkRPTUNvbnN0cnVjdG9yT2JqZWN0OjpE
T01Db25zdHJ1Y3Rvck9iamVjdCk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01HbG9iYWxP
YmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNET01HbG9iYWxPYmplY3Q6OkpTRE9NR2xv
YmFsT2JqZWN0KToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5oOgor
ICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93U2hlbGwuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SlNET01XaW5kb3dTaGVsbDo6Y3JlYXRlKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0RPTVdpbmRvd1NoZWxsLmg6CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01XcmFwcGVyLmg6
CisgICAgICAgIChXZWJDb3JlOjpKU0RPTVdyYXBwZXI6OkpTRE9NV3JhcHBlcik6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChHZW5lcmF0
ZUltcGxlbWVudGF0aW9uKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0SW50ZXJmYWNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTVGVzdEludGVyZmFjZTo6SlNU
ZXN0SW50ZXJmYWNlKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TWVkaWFRdWVyeUxpc3RMaXN0ZW5lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU1Rlc3RNZWRp
YVF1ZXJ5TGlzdExpc3RlbmVyOjpKU1Rlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyKToKKyAgICAg
ICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkpTVGVzdE9iajo6SlNUZXN0T2JqKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZTo6SlNUZXN0
U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlKToKKyAgICAgICAgKiBicmlkZ2UvYy9DUnVu
dGltZU9iamVjdC5jcHA6CisgICAgICAgIChKU0M6OkJpbmRpbmdzOjpDUnVudGltZU9iamVjdDo6
Q1J1bnRpbWVPYmplY3QpOgorICAgICAgICAqIGJyaWRnZS9jL0NSdW50aW1lT2JqZWN0Lmg6Cisg
ICAgICAgICogYnJpZGdlL2puaS9qc2MvSmF2YVJ1bnRpbWVPYmplY3QuY3BwOgorICAgICAgICAo
SlNDOjpCaW5kaW5nczo6SmF2YVJ1bnRpbWVPYmplY3Q6OkphdmFSdW50aW1lT2JqZWN0KToKKyAg
ICAgICAgKiBicmlkZ2Uvam5pL2pzYy9KYXZhUnVudGltZU9iamVjdC5oOgorICAgICAgICAqIGJy
aWRnZS9vYmpjL09iakNSdW50aW1lT2JqZWN0Lmg6CisgICAgICAgICogYnJpZGdlL29iamMvT2Jq
Q1J1bnRpbWVPYmplY3QubW06CisgICAgICAgIChKU0M6OkJpbmRpbmdzOjpPYmpDUnVudGltZU9i
amVjdDo6T2JqQ1J1bnRpbWVPYmplY3QpOgorICAgICAgICAqIGJyaWRnZS9vYmpjL29iamNfcnVu
dGltZS5oOgorICAgICAgICAoSlNDOjpCaW5kaW5nczo6T2JqY0ZhbGxiYWNrT2JqZWN0SW1wOjpj
cmVhdGUpOgorICAgICAgICAqIGJyaWRnZS9vYmpjL29iamNfcnVudGltZS5tbToKKyAgICAgICAg
KEpTQzo6QmluZGluZ3M6Ok9iamNGYWxsYmFja09iamVjdEltcDo6T2JqY0ZhbGxiYWNrT2JqZWN0
SW1wKToKKyAgICAgICAgKiBicmlkZ2UvcXQvcXRfaW5zdGFuY2UuY3BwOgorICAgICAgICAoSlND
OjpCaW5kaW5nczo6UXRSdW50aW1lT2JqZWN0OjpRdFJ1bnRpbWVPYmplY3QpOgorICAgICAgICAq
IGJyaWRnZS9xdC9xdF9waXhtYXBydW50aW1lLmNwcDoKKyAgICAgICAgKEpTQzo6QmluZGluZ3M6
OlF0UGl4bWFwUnVudGltZU9iamVjdDo6UXRQaXhtYXBSdW50aW1lT2JqZWN0KToKKyAgICAgICAg
KiBicmlkZ2UvcXQvcXRfcnVudGltZS5jcHA6CisgICAgICAgIChKU0M6OkJpbmRpbmdzOjpRdFJ1
bnRpbWVNZXRob2Q6OlF0UnVudGltZU1ldGhvZCk6CisgICAgICAgICogYnJpZGdlL3F0L3F0X3J1
bnRpbWUuaDoKKyAgICAgICAgKiBicmlkZ2UvcnVudGltZV9hcnJheS5jcHA6CisgICAgICAgIChK
U0M6OlJ1bnRpbWVBcnJheTo6UnVudGltZUFycmF5KToKKyAgICAgICAgKiBicmlkZ2UvcnVudGlt
ZV9hcnJheS5oOgorICAgICAgICAoSlNDOjpSdW50aW1lQXJyYXk6OmNyZWF0ZSk6CisgICAgICAg
ICogYnJpZGdlL3J1bnRpbWVfbWV0aG9kLmNwcDoKKyAgICAgICAgKEpTQzo6UnVudGltZU1ldGhv
ZDo6UnVudGltZU1ldGhvZCk6CisgICAgICAgICogYnJpZGdlL3J1bnRpbWVfbWV0aG9kLmg6Cisg
ICAgICAgICogYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6QmluZGlu
Z3M6OlJ1bnRpbWVPYmplY3Q6OlJ1bnRpbWVPYmplY3QpOgorICAgICAgICAqIGJyaWRnZS9ydW50
aW1lX29iamVjdC5oOgorICAgICAgICAoSlNDOjpCaW5kaW5nczo6UnVudGltZU9iamVjdDo6Y3Jl
YXRlKToKKwogMjAxMS0wOC0zMSAgWXVyeSBTZW1pa2hhdHNreSAgPHl1cnlzQGNocm9taXVtLm9y
Zz4KIAogICAgICAgICBmYXN0L3dvcmtlcnMvd29ya2VyLXNjcmlwdC1lcnJvci5odG1sIGZhaWxz
IG9uIENocm9taXVtIGFmdGVyIHI5NDA2MQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS5leHAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCBkNTUxZTRk
MGU0Njc3Y2M3MTAyOTQ3NzY5ZDIxYWQ1NzM1ODcyZmNhLi5jOTY1YjBlZjUyYTI0Y2I2ZjU3YWY0
YWRlNGNmZTBjNDFjMzNhNjNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4
cC5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpAQCAtMTY0Niw3ICsxNjQ2
LDYgQEAgX19aTjNKU0MxM1J1bnRpbWVNZXRob2RDMkVQTlNfOUV4ZWNTdGF0ZUVQTlNfMTRKU0ds
b2JhbE9iamVjdEVQTlNfOVN0cnVjdHVyZUVSS04KIF9fWk4zSlNDOEJpbmRpbmdzMTBSb290T2Jq
ZWN0RDFFdgogX19aTjNKU0M4QmluZGluZ3MxM1J1bnRpbWVPYmplY3QxMWdldENhbGxEYXRhRVJO
U184Q2FsbERhdGFFCiBfX1pOM0pTQzhCaW5kaW5nczEzUnVudGltZU9iamVjdDE0ZGVsZXRlUHJv
cGVydHlFUE5TXzlFeGVjU3RhdGVFUktOU18xMElkZW50aWZpZXJFCi1fX1pOM0pTQzhCaW5kaW5n
czEzUnVudGltZU9iamVjdDE0ZmluaXNoQ3JlYXRpb25FUE5TXzE0SlNHbG9iYWxPYmplY3RFCiBf
X1pOM0pTQzhCaW5kaW5nczEzUnVudGltZU9iamVjdDE2Z2V0Q29uc3RydWN0RGF0YUVSTlNfMTND
b25zdHJ1Y3REYXRhRQogX19aTjNKU0M4QmluZGluZ3MxM1J1bnRpbWVPYmplY3QxOGdldE93blBy
b3BlcnR5U2xvdEVQTlNfOUV4ZWNTdGF0ZUVSS05TXzEwSWRlbnRpZmllckVSTlNfMTJQcm9wZXJ0
eVNsb3RFCiBfX1pOM0pTQzhCaW5kaW5nczEzUnVudGltZU9iamVjdDE5Z2V0T3duUHJvcGVydHlO
YW1lc0VQTlNfOUV4ZWNTdGF0ZUVSTlNfMTdQcm9wZXJ0eU5hbWVBcnJheUVOU18xNUVudW1lcmF0
aW9uTW9kZUUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmlu
ZGluZy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmgKaW5kZXgg
MDFkNTFmMGZlNDM4NjkzMzQzOTE4MTE0YjIxNTA3ZWQ1NjY1MDgzZi4uNDY1MzBjMzgxNTMwM2Ey
NWUzOThhMGJhYjMxMWYzOWYxNzdlNmFkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNET01CaW5kaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNET01CaW5kaW5nLmgKQEAgLTU1LDcgKzU1LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAg
ICAgICBET01Db25zdHJ1Y3Rvck9iamVjdChKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RP
TUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogICAgICAgICAgICAgOiBKU0RPTVdyYXBwZXIo
c3RydWN0dXJlLCBnbG9iYWxPYmplY3QpCiAgICAgICAgIHsKLSAgICAgICAgICAgIGZpbmlzaENy
ZWF0aW9uKGdsb2JhbE9iamVjdC0+Z2xvYmFsRGF0YSgpLCBnbG9iYWxPYmplY3QpOwogICAgICAg
ICB9CiAgICAgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNE
T01HbG9iYWxPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9i
YWxPYmplY3QuY3BwCmluZGV4IGY5ZWFmNmE0OWIxZTlmNGJjODU5N2UwYzkyMTU2OWYzMTQ4NjZj
MDQuLjRkYWZhNjhlMDQ1NmFlYTY3ZmUyNmVkMWZiYzEwZjFiYmY0NmNjNDggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5jcHAKQEAgLTQzLDE2
ICs0MywxMCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjb25zdCBDbGFzc0luZm8gSlNET01HbG9i
YWxPYmplY3Q6OnNfaW5mbyA9IHsgIkRPTUdsb2JhbE9iamVjdCIsICZKU0dsb2JhbE9iamVjdDo6
c19pbmZvLCAwLCAwIH07CiAKIEpTRE9NR2xvYmFsT2JqZWN0OjpKU0RPTUdsb2JhbE9iamVjdChK
U0dsb2JhbERhdGEmIGdsb2JhbERhdGEsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBQYXNzUmVmUHRy
PERPTVdyYXBwZXJXb3JsZD4gd29ybGQsIEpTT2JqZWN0KiB0aGlzVmFsdWUpCi0gICAgOiBKU0ds
b2JhbE9iamVjdChnbG9iYWxEYXRhLCBzdHJ1Y3R1cmUpCisgICAgOiBKU0dsb2JhbE9iamVjdChn
bG9iYWxEYXRhLCBzdHJ1Y3R1cmUsIHRoaXNWYWx1ZSkKICAgICAsIG1fY3VycmVudEV2ZW50KDAp
CiAgICAgLCBtX3dvcmxkKHdvcmxkKQogewotICAgIGZpbmlzaENyZWF0aW9uKGdsb2JhbERhdGEs
IHRoaXNWYWx1ZSk7Ci19Ci0KLXZvaWQgSlNET01HbG9iYWxPYmplY3Q6OmZpbmlzaENyZWF0aW9u
KEpTR2xvYmFsRGF0YSYgZ2xvYmFsRGF0YSwgSlNPYmplY3QqIHRoaXNWYWx1ZSkKLXsKLSAgICBC
YXNlOjpmaW5pc2hDcmVhdGlvbihnbG9iYWxEYXRhLCB0aGlzVmFsdWUpOwogICAgIEFTU0VSVChp
bmhlcml0cygmc19pbmZvKSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0RPTUdsb2JhbE9iamVjdC5oCmluZGV4IDlhODM4YmY5YTgzYzQ5YzFjNDFlM2NiMjc3NTEwOGFj
NDk3ZjAwODEuLmUwYTZhMDcyYWU4YjdlZDBjOTYzYzM1MzFhY2I2NjJiNzlkNGVmZTkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuaApAQCAtNDcs
NyArNDcsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHN0cnVjdCBKU0RPTUdsb2Jh
bE9iamVjdERhdGE7CiAKICAgICAgICAgSlNET01HbG9iYWxPYmplY3QoSlNDOjpKU0dsb2JhbERh
dGEmLCBKU0M6OlN0cnVjdHVyZSosIFBhc3NSZWZQdHI8RE9NV3JhcHBlcldvcmxkPiwgSlNDOjpK
U09iamVjdCogdGhpc1ZhbHVlKTsKLSAgICAgICAgdm9pZCBmaW5pc2hDcmVhdGlvbihKU0M6OkpT
R2xvYmFsRGF0YSYsIEpTQzo6SlNPYmplY3QqIHRoaXNWYWx1ZSk7CiAKICAgICBwdWJsaWM6CiAg
ICAgICAgIEpTRE9NU3RydWN0dXJlTWFwJiBzdHJ1Y3R1cmVzKCkgeyByZXR1cm4gbV9zdHJ1Y3R1
cmVzOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRv
d1NoZWxsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93U2hlbGwu
Y3BwCmluZGV4IGQzMTY5YjY2ZjM4MzgzNzAyNDZmNjA4ODg0MjFiNjAxOTM0MDRjM2EuLjQ5ZTFi
NGE0OTU4YWZhNzhiNTk2MWI3N2FmYjAyOTE3OWY1NWI3NGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93U2hlbGwuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93U2hlbGwuY3BwCkBAIC0xODEsNiArMTgxLDEzIEBA
IHZvaWQqIEpTRE9NV2luZG93U2hlbGw6Om9wZXJhdG9yIG5ldyhzaXplX3Qgc2l6ZSkKICAgICBy
ZXR1cm4gaGVhcC5hbGxvY2F0ZShzaXplKTsKIH0KIAorSlNET01XaW5kb3dTaGVsbCogSlNET01X
aW5kb3dTaGVsbDo6Y3JlYXRlKFBhc3NSZWZQdHI8RE9NV2luZG93PiB3aW5kb3csIEpTQzo6U3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIERPTVdyYXBwZXJXb3JsZCogd29ybGQpCit7CisgICAgSlNET01X
aW5kb3dTaGVsbCogc2hlbGwgPSBuZXcgSlNET01XaW5kb3dTaGVsbChzdHJ1Y3R1cmUsIHdvcmxk
KTsKKyAgICBzaGVsbC0+ZmluaXNoQ3JlYXRpb24oKndvcmxkLT5nbG9iYWxEYXRhKCksIHdpbmRv
dyk7CisgICAgcmV0dXJuIHNoZWxsOyAKK30KKwogLy8gLS0tLQogLy8gQ29udmVyc2lvbiBtZXRo
b2RzCiAvLyAtLS0tCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RP
TVdpbmRvd1NoZWxsLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd1No
ZWxsLmgKaW5kZXggODdkMDI2ZGJlMDU4Y2ZmYzE4NmU1OTUyNTAzYjgyNTkzMDU3M2Q0MC4uNTM0
ZWEyYWNmMjY2YjFjMDUxZTNkOTJlNWQzNTAyOGU5NzUyN2ViMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dTaGVsbC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93U2hlbGwuaApAQCAtNTUsMTIgKzU1LDcgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiAgICAgICAgIERPTVdpbmRvdyogaW1wbCgpIGNvbnN0OwogCi0g
ICAgICAgIHN0YXRpYyBKU0RPTVdpbmRvd1NoZWxsKiBjcmVhdGUoUGFzc1JlZlB0cjxET01XaW5k
b3c+IHdpbmRvdywgSlNDOjpTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgRE9NV3JhcHBlcldvcmxkKiB3
b3JsZCkgCi0gICAgICAgIHsKLSAgICAgICAgICAgIEpTRE9NV2luZG93U2hlbGwqIHNoZWxsID0g
bmV3IEpTRE9NV2luZG93U2hlbGwoc3RydWN0dXJlLCB3b3JsZCk7Ci0gICAgICAgICAgICBzaGVs
bC0+ZmluaXNoQ3JlYXRpb24oKndvcmxkLT5nbG9iYWxEYXRhKCksIHdpbmRvdyk7Ci0gICAgICAg
ICAgICByZXR1cm4gc2hlbGw7IAotICAgICAgICB9CisgICAgICAgIHN0YXRpYyBKU0RPTVdpbmRv
d1NoZWxsKiBjcmVhdGUoUGFzc1JlZlB0cjxET01XaW5kb3c+LCBKU0M6OlN0cnVjdHVyZSosIERP
TVdyYXBwZXJXb3JsZCopOwogCiAgICAgICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRl
U3RydWN0dXJlKEpTQzo6SlNHbG9iYWxEYXRhJiBnbG9iYWxEYXRhLCBKU0M6OkpTVmFsdWUgcHJv
dG90eXBlKSAKICAgICAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNET01XcmFwcGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdyYXBw
ZXIuaAppbmRleCAwMzZjY2JkN2Y0MDQwZWIxNTA2Y2ZlMGJhNDJjMGQ5MmE2OWRiNGQ4Li44ZjJj
MDhlMmIxODYwZDgwMjM0YmE4ZjczNTdmNmE4NGM3ZGI0ZWEzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdyYXBwZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0RPTVdyYXBwZXIuaApAQCAtNTksNiArNTksNyBAQCBwcm90ZWN0ZWQ6CiAg
ICAgICAgIC8vIG5ldyBKYXZhU2NyaXB0IG9iamVjdHMgb24gZGV0YWNoZWQgd2luZG93cyBkdWUg
dG8gRE9NV2luZG93Ojpkb2N1bWVudCgpCiAgICAgICAgIC8vIG5lZWRpbmcgdG8gcmVhY2ggdGhy
b3VnaCB0aGUgZnJhbWUgdG8gZ2V0IHRvIHRoZSBEb2N1bWVudCouICBTZWUgYnVnIDI3NjQwLgog
ICAgICAgICAvLyBBU1NFUlQoZ2xvYmFsT2JqZWN0LT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCkp
OworICAgICAgICBmaW5pc2hDcmVhdGlvbihnbG9iYWxPYmplY3QtPmdsb2JhbERhdGEoKSwgZ2xv
YmFsT2JqZWN0KTsKICAgICB9CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmluZGV4IDhmMmNmZDgwM2QwZmVkMTI1NjczODNj
ODg2YWQxMWNlMWM1ZWM5YzQuLjdhMTFhMDE0MWQzZjRhN2FiMzVhZjFiNWMwMmViODMyNDRkZWQw
OWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvckpTLnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvckpTLnBtCkBAIC0xNTE0LDI0ICsxNTE0LDIwIEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0
aW9uCiAgICAgICAgIEFkZEluY2x1ZGVzRm9yVHlwZUluSW1wbCgiSlNET01XaW5kb3dTaGVsbCIp
OwogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiR7Y2xhc3NOYW1lfTo6JGNsYXNzTmFtZShK
U0dsb2JhbERhdGEmIGdsb2JhbERhdGEsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBQYXNzUmVmUHRy
PCRpbXBsVHlwZT4gaW1wbCwgSlNET01XaW5kb3dTaGVsbCogc2hlbGwpXG4iKTsKICAgICAgICAg
cHVzaChAaW1wbENvbnRlbnQsICIgICAgOiAkcGFyZW50Q2xhc3NOYW1lKGdsb2JhbERhdGEsIHN0
cnVjdHVyZSwgaW1wbCwgc2hlbGwpXG4iKTsKLSAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ7
XG4iKTsKICAgICB9IGVsc2lmICgkZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJc1dv
cmtlckNvbnRleHQifSkgewogICAgICAgICBBZGRJbmNsdWRlc0ZvclR5cGVJbkltcGwoJGludGVy
ZmFjZU5hbWUpOwogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiR7Y2xhc3NOYW1lfTo6JGNs
YXNzTmFtZShKU0dsb2JhbERhdGEmIGdsb2JhbERhdGEsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBQ
YXNzUmVmUHRyPCRpbXBsVHlwZT4gaW1wbClcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29udGVu
dCwgIiAgICA6ICRwYXJlbnRDbGFzc05hbWUoZ2xvYmFsRGF0YSwgc3RydWN0dXJlLCBpbXBsKVxu
Iik7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50LCAie1xuIik7CiAgICAgfSBlbHNlIHsKICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIke2NsYXNzTmFtZX06OiRjbGFzc05hbWUoU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFBhc3NSZWZQ
dHI8JGltcGxUeXBlPiBpbXBsKVxuIik7CiAgICAgICAgIGlmICgkaGFzUGFyZW50KSB7CiAgICAg
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICA6ICRwYXJlbnRDbGFzc05hbWUoc3RydWN0
dXJlLCBnbG9iYWxPYmplY3QsIGltcGwpXG4iKTsKLSAgICAgICAgICAgIHB1c2goQGltcGxDb250
ZW50LCAie1xuIik7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29u
dGVudCwgIiAgICA6ICRwYXJlbnRDbGFzc05hbWUoc3RydWN0dXJlLCBnbG9iYWxPYmplY3QpXG4i
KTsKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICwgbV9pbXBsKGltcGwpXG4i
KTsKLSAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAie1xuIik7Ci0gICAgICAgICAgICBw
dXNoKEBpbXBsQ29udGVudCwgIiAgICBmaW5pc2hDcmVhdGlvbihnbG9iYWxPYmplY3QtPmdsb2Jh
bERhdGEoKSwgZ2xvYmFsT2JqZWN0KTtcbiIpOwogICAgICAgICB9CiAgICAgfQorICAgIHB1c2go
QGltcGxDb250ZW50LCAie1xuIik7CiAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgQVNTRVJU
KGluaGVyaXRzKCZzX2luZm8pKTtcbiIpOwogICAgIGlmICgkbnVtQ2FjaGVkQXR0cmlidXRlcyA+
IDApIHsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgZm9yICh1bnNpZ25lZCBpID0g
QmFzZTo6QW5vbnltb3VzU2xvdENvdW50OyBpIDwgQW5vbnltb3VzU2xvdENvdW50OyBpKyspXG4i
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RJbnRlcmZhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKaW5kZXggZjliYmQwYjAzZGE0YjFkZWEzMDcxZjVhNDNj
NTAxZTU4YjczOTZmMy4uYTBkZTIzZjQ2YWNlN2M1NjQ5ZDA5ZGY2ZGMyNzVlZjkzNjE1YzJlNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEludGVyZmFjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKQEAgLTE0Niw3ICsxNDYsNiBAQCBKU1Rlc3RJbnRlcmZh
Y2U6OkpTVGVzdEludGVyZmFjZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmpl
Y3QqIGdsb2JhbAogICAgIDogSlNET01XcmFwcGVyKHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0KQog
ICAgICwgbV9pbXBsKGltcGwpCiB7Ci0gICAgZmluaXNoQ3JlYXRpb24oZ2xvYmFsT2JqZWN0LT5n
bG9iYWxEYXRhKCksIGdsb2JhbE9iamVjdCk7CiAgICAgQVNTRVJUKGluaGVyaXRzKCZzX2luZm8p
KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXIuY3BwCmlu
ZGV4IDA1OTYwMWE5NWRkOWJkZWIyODAyMTRkMTljZDRiYTllMjI0ZjdiMTYuLjJjMWU3MmI1MGZl
ZjI0NzgyODY3MjdkMmI5NWUyMGM3YWMwYWZjMzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWVk
aWFRdWVyeUxpc3RMaXN0ZW5lci5jcHAKQEAgLTE0Miw3ICsxNDIsNiBAQCBKU1Rlc3RNZWRpYVF1
ZXJ5TGlzdExpc3RlbmVyOjpKU1Rlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyKFN0cnVjdHVyZSog
c3RydWN0dXJlLAogICAgIDogSlNET01XcmFwcGVyKHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0KQog
ICAgICwgbV9pbXBsKGltcGwpCiB7Ci0gICAgZmluaXNoQ3JlYXRpb24oZ2xvYmFsT2JqZWN0LT5n
bG9iYWxEYXRhKCksIGdsb2JhbE9iamVjdCk7CiAgICAgQVNTRVJUKGluaGVyaXRzKCZzX2luZm8p
KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE9iai5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0T2JqLmNwcAppbmRleCBkMzI1NmI3ZjkzNzU3NTIzODcyNTliN2E3NDQ1NTFmNWM5
YTc1MmVmLi4wZGIzZDg4YmExYTM3ZjNkMzc5ZmVmMjU1MWU2MWMzZmQ5OTliNjJlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2Jq
LmNwcApAQCAtMjk3LDcgKzI5Nyw2IEBAIEpTVGVzdE9iajo6SlNUZXN0T2JqKFN0cnVjdHVyZSog
c3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBQYXNzCiAgICAgOiBK
U0RPTVdyYXBwZXIoc3RydWN0dXJlLCBnbG9iYWxPYmplY3QpCiAgICAgLCBtX2ltcGwoaW1wbCkK
IHsKLSAgICBmaW5pc2hDcmVhdGlvbihnbG9iYWxPYmplY3QtPmdsb2JhbERhdGEoKSwgZ2xvYmFs
T2JqZWN0KTsKICAgICBBU1NFUlQoaW5oZXJpdHMoJnNfaW5mbykpOwogfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2VyaWFsaXpl
ZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UuY3BwCmluZGV4
IDRlNThmMjQxZjBhNDU5NDM2ODkwMGRmZDBkMjMzYjc4ZjhiMGU2N2UuLjc3ZjliZGQyN2U5NzU5
YzQxNDAzYjkyMGI5OWYzMDlmNjhlNWQzOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZh
Y2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UuY3BwCkBAIC0xMzIsNyArMTMyLDYgQEAg
SlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlOjpKU1Rlc3RTZXJpYWxpemVkU2Ny
aXB0VmFsdWVJbnRlcmZhY2UoU3RydWMKICAgICA6IEpTRE9NV3JhcHBlcihzdHJ1Y3R1cmUsIGds
b2JhbE9iamVjdCkKICAgICAsIG1faW1wbChpbXBsKQogewotICAgIGZpbmlzaENyZWF0aW9uKGds
b2JhbE9iamVjdC0+Z2xvYmFsRGF0YSgpLCBnbG9iYWxPYmplY3QpOwogICAgIEFTU0VSVChpbmhl
cml0cygmc19pbmZvKSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9j
L0NSdW50aW1lT2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9jL0NSdW50aW1lT2Jq
ZWN0LmNwcAppbmRleCBiNDYwYTkxNDUyZjY1NmIwMzM5NzgzNTc0Njg1YWNmMGRlMjFkMTQ5Li5j
NjNlNTg2ZDIxYzFlMmFjNjY3OTI2MzE4NjMzMmIwYzUwMTE1OGM2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9icmlkZ2UvYy9DUnVudGltZU9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYnJpZGdlL2MvQ1J1bnRpbWVPYmplY3QuY3BwCkBAIC00MCwxMiArNDAsNiBAQCBjb25zdCBD
bGFzc0luZm8gQ1J1bnRpbWVPYmplY3Q6OnNfaW5mbyA9IHsgIkNSdW50aW1lT2JqZWN0IiwgJlJ1
bnRpbWVPYmplY3Q6OnNfaQogQ1J1bnRpbWVPYmplY3Q6OkNSdW50aW1lT2JqZWN0KEV4ZWNTdGF0
ZSogZXhlYywgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIFBhc3NSZWZQdHI8Q0luc3RhbmNlPiBpbnN0YW5jZSkKICAgICA6IFJ1bnRpbWVPYmplY3Qo
ZXhlYywgZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUsIGluc3RhbmNlKQogewotICAgIGZpbmlzaENy
ZWF0aW9uKGdsb2JhbE9iamVjdCk7Ci19Ci0KLXZvaWQgQ1J1bnRpbWVPYmplY3Q6OmZpbmlzaENy
ZWF0aW9uKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCi17Ci0gICAgQmFzZTo6ZmluaXNo
Q3JlYXRpb24oZ2xvYmFsT2JqZWN0KTsKICAgICBBU1NFUlQoaW5oZXJpdHMoJnNfaW5mbykpOwog
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvYy9DUnVudGltZU9iamVjdC5o
IGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL2MvQ1J1bnRpbWVPYmplY3QuaAppbmRleCBlZjE5Yzhh
NmViMzJlMzRlODdhNjEwNzhiODQ1ZTBlNjAwZTdiMzM2Li42ZmU3ZGZhZjc3ZmMwZDE4YzBkMGMx
NTFjMTdmNWE3YTNmZGIzNzhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvYy9D
UnVudGltZU9iamVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9jL0NSdW50aW1lT2Jq
ZWN0LmgKQEAgLTYxLDcgKzYxLDYgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIENSdW50aW1l
T2JqZWN0KEV4ZWNTdGF0ZSosIEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0dXJlKiwgUGFzc1JlZlB0
cjxDSW5zdGFuY2U+KTsKLSAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEpTR2xvYmFsT2JqZWN0Kik7
CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvam5pL2pzYy9KYXZh
UnVudGltZU9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvam5pL2pzYy9KYXZhUnVu
dGltZU9iamVjdC5jcHAKaW5kZXggZDY4NGFiMDJlMzk3MDI5ZjExZjVhMjUxNGFjYjBhZDMxM2Ri
MGVlZC4uZmZmZTg1NmRhMGQ1ZTUxYjY4MjhmMjZmNWRhMTFlMTZhNzE1OGZkNCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL2puaS9qc2MvSmF2YVJ1bnRpbWVPYmplY3QuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9qbmkvanNjL0phdmFSdW50aW1lT2JqZWN0LmNwcApA
QCAtMzgsMTIgKzM4LDYgQEAgY29uc3QgQ2xhc3NJbmZvIEphdmFSdW50aW1lT2JqZWN0OjpzX2lu
Zm8gPSB7ICJKYXZhUnVudGltZU9iamVjdCIsICZSdW50aW1lT2JqZWMKIEphdmFSdW50aW1lT2Jq
ZWN0OjpKYXZhUnVudGltZU9iamVjdChFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBQYXNzUmVmUHRyPEphdmFJbnN0YW5j
ZT4gaW5zdGFuY2UpCiAgICAgOiBSdW50aW1lT2JqZWN0KGV4ZWMsIGdsb2JhbE9iamVjdCwgc3Ry
dWN0dXJlLCBpbnN0YW5jZSkKIHsKLSAgICBmaW5pc2hDcmVhdGlvbihnbG9iYWxPYmplY3QpOwot
fQotCi12b2lkIEphdmFSdW50aW1lT2JqZWN0OjpmaW5pc2hDcmVhdGlvbihKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0KQotewotICAgIEJhc2U6OmZpbmlzaENyZWF0aW9uKGdsb2JhbE9iamVj
dCk7CiAgICAgQVNTRVJUKGluaGVyaXRzKCZzX2luZm8pKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYnJpZGdlL2puaS9qc2MvSmF2YVJ1bnRpbWVPYmplY3QuaCBiL1NvdXJjZS9X
ZWJDb3JlL2JyaWRnZS9qbmkvanNjL0phdmFSdW50aW1lT2JqZWN0LmgKaW5kZXggYmIxNzkzODY0
YmEzMzUyMDFmZTgwMTM5ZWFmYWQzM2RmNzI3NjEzOC4uNzBhM2NlOTgxMjZlNjEzZTA2NGI2Mzgx
YWM3YjNkN2E3Njk5MzA3YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL2puaS9q
c2MvSmF2YVJ1bnRpbWVPYmplY3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvam5pL2pz
Yy9KYXZhUnVudGltZU9iamVjdC5oCkBAIC01OSw3ICs1OSw2IEBAIHB1YmxpYzoKIAogcHJpdmF0
ZToKICAgICBKYXZhUnVudGltZU9iamVjdChFeGVjU3RhdGUqLCBKU0dsb2JhbE9iamVjdCosIFN0
cnVjdHVyZSosIFBhc3NSZWZQdHI8SmF2YUluc3RhbmNlPik7Ci0gICAgdm9pZCBmaW5pc2hDcmVh
dGlvbihKU0dsb2JhbE9iamVjdCopOwogfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYnJpZGdlL29iamMvT2JqQ1J1bnRpbWVPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRn
ZS9vYmpjL09iakNSdW50aW1lT2JqZWN0LmgKaW5kZXggMDM0MGMwNTFiZTliMTBjZWIxNDhmNTg0
MDJmZmRjZmZiYjJiZDE5Yi4uYmZhMWY5MWMzYjgzNWEzOTQ2YTliYzlhMjlhN2ZlNmJmYzFiYzAy
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvT2JqQ1J1bnRpbWVPYmpl
Y3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9PYmpDUnVudGltZU9iamVjdC5o
CkBAIC01OCw3ICs1OCw2IEBAIHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBPYmpDUnVudGltZU9i
amVjdChFeGVjU3RhdGUqLCBKU0dsb2JhbE9iamVjdCosIFBhc3NSZWZQdHI8T2JqY0luc3RhbmNl
PiwgU3RydWN0dXJlKik7Ci0gICAgdm9pZCBmaW5pc2hDcmVhdGlvbihKU0dsb2JhbE9iamVjdCop
OwogfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvT2JqQ1J1
bnRpbWVPYmplY3QubW0gYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9PYmpDUnVudGltZU9i
amVjdC5tbQppbmRleCBjNTFiZDRkMjBjOTNiNmFjODA4OGRkY2RkYmEyOGNmMjBkODc4OTZkLi5l
YTg2MjYzMmRlYzRjZmU3YWVkZDYxZGU1ODRiYjJkNWMwZWI4ZmE5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9PYmpDUnVudGltZU9iamVjdC5tbQorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9icmlkZ2Uvb2JqYy9PYmpDUnVudGltZU9iamVjdC5tbQpAQCAtMzgsMTIgKzM4LDYg
QEAgY29uc3QgQ2xhc3NJbmZvIE9iakNSdW50aW1lT2JqZWN0OjpzX2luZm8gPSB7ICJPYmpDUnVu
dGltZU9iamVjdCIsICZSdW50aW1lT2JqZWMKIE9iakNSdW50aW1lT2JqZWN0OjpPYmpDUnVudGlt
ZU9iamVjdChFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFBh
c3NSZWZQdHI8T2JqY0luc3RhbmNlPiBpbnN0YW5jZSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAg
ICAgOiBSdW50aW1lT2JqZWN0KGV4ZWMsIGdsb2JhbE9iamVjdCwgc3RydWN0dXJlLCBpbnN0YW5j
ZSkKIHsKLSAgICBmaW5pc2hDcmVhdGlvbihnbG9iYWxPYmplY3QpOwotfQotCi12b2lkIE9iakNS
dW50aW1lT2JqZWN0OjpmaW5pc2hDcmVhdGlvbihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
KQotewotICAgIEJhc2U6OmZpbmlzaENyZWF0aW9uKGdsb2JhbE9iamVjdCk7CiAgICAgQVNTRVJU
KGluaGVyaXRzKCZzX2luZm8pKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJp
ZGdlL29iamMvb2JqY19ydW50aW1lLmggYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpj
X3J1bnRpbWUuaAppbmRleCBlNTcxYTU1MjUwMTUxN2Y2NzA4NjgyNzg4OTVlYzBiODU3MDE4OGEw
Li5hNWE2NzI1MmNmNTM2ZmNlNzYzNzI2MjZkNmIyMGMzYTJiYjc5ODI4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUuaApAQCAtOTksOSArOTksNyBAQCBwdWJsaWM6
CiAgICAgewogICAgICAgICAvLyBGSVhNRTogZGVwcmVjYXRlZEdldERPTVN0cnVjdHVyZSB1c2Vz
IHRoZSBwcm90b3R5cGUgb2ZmIG9mIHRoZSB3cm9uZyBnbG9iYWwgb2JqZWN0CiAgICAgICAgIFN0
cnVjdHVyZSogZG9tU3RydWN0dXJlID0gV2ViQ29yZTo6ZGVwcmVjYXRlZEdldERPTVN0cnVjdHVy
ZTxPYmpjRmFsbGJhY2tPYmplY3RJbXA+KGV4ZWMpOwotICAgICAgICBPYmpjRmFsbGJhY2tPYmpl
Y3RJbXAqIGZhbGxiYWNrT2JqZWN0ID0gbmV3IChhbGxvY2F0ZUNlbGw8T2JqY0ZhbGxiYWNrT2Jq
ZWN0SW1wPigqZXhlYy0+aGVhcCgpKSkgT2JqY0ZhbGxiYWNrT2JqZWN0SW1wKGdsb2JhbE9iamVj
dCwgZG9tU3RydWN0dXJlLCBpbnN0YW5jZSwgcHJvcGVydHlOYW1lKTsKLSAgICAgICAgZmFsbGJh
Y2tPYmplY3QtPmZpbmlzaENyZWF0aW9uKGdsb2JhbE9iamVjdCk7Ci0gICAgICAgIHJldHVybiBm
YWxsYmFja09iamVjdDsKKyAgICAgICAgcmV0dXJuIG5ldyAoYWxsb2NhdGVDZWxsPE9iamNGYWxs
YmFja09iamVjdEltcD4oKmV4ZWMtPmhlYXAoKSkpIE9iamNGYWxsYmFja09iamVjdEltcChnbG9i
YWxPYmplY3QsIGRvbVN0cnVjdHVyZSwgaW5zdGFuY2UsIHByb3BlcnR5TmFtZSk7CiAgICAgfQog
CiAgICAgc3RhdGljIGNvbnN0IENsYXNzSW5mbyBzX2luZm87CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUubW0gYi9Tb3VyY2UvV2ViQ29yZS9icmlk
Z2Uvb2JqYy9vYmpjX3J1bnRpbWUubW0KaW5kZXggYWNlMmJhNzU5YzQ2OGY3YjcwNzI5ZWU5MzFk
NjI3ZjRmNjE1M2U3MC4uZGYwZTcxYzdmZWNiNjJlMTZmNzVkYTkxMjAzMWZhOTZiMWEyYTdjNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLm1tCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfcnVudGltZS5tbQpAQCAtMjAxLDYg
KzIwMSw3IEBAIE9iamNGYWxsYmFja09iamVjdEltcDo6T2JqY0ZhbGxiYWNrT2JqZWN0SW1wKEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFN0cnVjCiAgICAgLCBfaW5zdGFuY2UoaSkKICAg
ICAsIF9pdGVtKHByb3BlcnR5TmFtZSkKIHsKKyAgICBmaW5pc2hDcmVhdGlvbihnbG9iYWxPYmpl
Y3QpOwogfQogCiB2b2lkIE9iamNGYWxsYmFja09iamVjdEltcDo6ZmluaXNoQ3JlYXRpb24oSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jy
aWRnZS9xdC9xdF9pbnN0YW5jZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfaW5z
dGFuY2UuY3BwCmluZGV4IGZjMWEzNDYzYzgwNDFmZDM5ODBjZjRjODVlYmU1MWFhNjNhYmE0NmQu
Ljk4OTkxNjBkMTgxMDU0OWZhODU0MWM3NmU4NWRhNjg1NmU5ZGQwMDEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9pbnN0YW5jZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYnJpZGdlL3F0L3F0X2luc3RhbmNlLmNwcApAQCAtODUsNyArODUsNiBAQCBjb25zdCBDbGFz
c0luZm8gUXRSdW50aW1lT2JqZWN0OjpzX2luZm8gPSB7ICJRdFJ1bnRpbWVPYmplY3QiLCAmUnVu
dGltZU9iamVjdDo6cwogUXRSdW50aW1lT2JqZWN0OjpRdFJ1bnRpbWVPYmplY3QoRXhlY1N0YXRl
KiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgUGFzc1JlZlB0cjxJbnN0YW5jZT4gaW5zdGFuY2UpCiAgICAgOiBSdW50aW1lT2JqZWN0KGV4
ZWMsIGdsb2JhbE9iamVjdCwgc3RydWN0dXJlLCBpbnN0YW5jZSkKIHsKLSAgICBmaW5pc2hDcmVh
dGlvbihnbG9iYWxPYmplY3QpOwogfQogCiAvLyBRdEluc3RhbmNlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfcGl4bWFwcnVudGltZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9icmlkZ2UvcXQvcXRfcGl4bWFwcnVudGltZS5jcHAKaW5kZXggNjg3NDFiNDliZGQ4NWEyOTM5
ZWRlYzMzM2Y0Njg4NjQwZTkxNTZjYS4uODc5YWM3ZDdlYTIwMWU4ZjU5NDM2NDc1ZmE4ZGQ1MmY2
NWViNjE5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3F0L3F0X3BpeG1hcHJ1
bnRpbWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9waXhtYXBydW50aW1l
LmNwcApAQCAtMjI0LDcgKzIyNCw2IEBAIHByaXZhdGU6CiBRdFBpeG1hcFJ1bnRpbWVPYmplY3Q6
OlF0UGl4bWFwUnVudGltZU9iamVjdChFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBQYXNzUmVmUHRyPEluc3RhbmNlPiBp
bnN0YW5jZSkKICAgICA6IFJ1bnRpbWVPYmplY3QoZXhlYywgZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1
cmUsIGluc3RhbmNlKQogewotICAgIGZpbmlzaENyZWF0aW9uKGdsb2JhbE9iamVjdCk7CiB9CiAK
IGNvbnN0IENsYXNzSW5mbyBRdFBpeG1hcFJ1bnRpbWVPYmplY3Q6OnNfaW5mbyA9IHsgIlF0UGl4
bWFwUnVudGltZU9iamVjdCIsICZSdW50aW1lT2JqZWN0OjpzX2luZm8sIDAsIDAgfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9ydW50aW1lLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JyaWRnZS9xdC9xdF9ydW50aW1lLmNwcAppbmRleCA1M2UzMDFmMjU2NDVlOWUzNmM5
YTViNWNkNmJkOGJiMmU0NDEzMmEwLi5kNjY1YjYxY2Y5NjdhM2ZlN2Y3MzMzN2E1ZTAzN2YyOGI2
ZTU5ZTkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfcnVudGltZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3F0L3F0X3J1bnRpbWUuY3BwCkBAIC0xMDA2
LDE4ICsxMDA2LDEyIEBAIEpTVmFsdWUgY29udmVydFFWYXJpYW50VG9WYWx1ZShFeGVjU3RhdGUq
IGV4ZWMsIFBhc3NSZWZQdHI8Um9vdE9iamVjdD4gcm9vdCwgY29uCiAKIGNvbnN0IENsYXNzSW5m
byBRdFJ1bnRpbWVNZXRob2Q6OnNfaW5mbyA9IHsgIlF0UnVudGltZU1ldGhvZCIsICZJbnRlcm5h
bEZ1bmN0aW9uOjpzX2luZm8sIDAsIDAgfTsKIAotUXRSdW50aW1lTWV0aG9kOjpRdFJ1bnRpbWVN
ZXRob2QoUXRSdW50aW1lTWV0aG9kRGF0YSogZGQsIEV4ZWNTdGF0ZSogZXhlYywgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIGNvbnN0IElkZW50aWZpZXImIGlkZW50aWZpZXIsIFBhc3NSZWZQdHI8UXRJ
bnN0YW5jZT4gaW5zdGFuY2UpCi0gICAgOiBJbnRlcm5hbEZ1bmN0aW9uKGV4ZWMtPmxleGljYWxH
bG9iYWxPYmplY3QoKSwgc3RydWN0dXJlKQorUXRSdW50aW1lTWV0aG9kOjpRdFJ1bnRpbWVNZXRo
b2QoUXRSdW50aW1lTWV0aG9kRGF0YSogZGQsIEV4ZWNTdGF0ZSogZXhlYywgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIGNvbnN0IElkZW50aWZpZXImIGlkZW50LCBQYXNzUmVmUHRyPFF0SW5zdGFuY2U+
IGluc3QpCisgICAgOiBJbnRlcm5hbEZ1bmN0aW9uKCZleGVjLT5nbG9iYWxEYXRhKCksIGV4ZWMt
PmxleGljYWxHbG9iYWxPYmplY3QoKSwgc3RydWN0dXJlLCBpZGVudCkKICAgICAsIGRfcHRyKGRk
KQogewotICAgIGZpbmlzaENyZWF0aW9uKGV4ZWMsIGlkZW50aWZpZXIsIGluc3RhbmNlKTsKLX0K
LQotdm9pZCBRdFJ1bnRpbWVNZXRob2Q6OmZpbmlzaENyZWF0aW9uKEV4ZWNTdGF0ZSogZXhlYywg
Y29uc3QgSWRlbnRpZmllciYgaWRlbnRpZmllciwgUGFzc1JlZlB0cjxRdEluc3RhbmNlPiBpbnN0
YW5jZSkKLXsKLSAgICBCYXNlOjpmaW5pc2hDcmVhdGlvbihleGVjLT5nbG9iYWxEYXRhKCksIGV4
ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSwgaWRlbnRpZmllcik7CiAgICAgUVdfRChRdFJ1bnRp
bWVNZXRob2QpOwotICAgIGQtPm1faW5zdGFuY2UgPSBpbnN0YW5jZTsKKyAgICBkLT5tX2luc3Rh
bmNlID0gaW5zdDsKICAgICBkLT5tX2ZpbmFsaXplci5zZXQoZXhlYy0+Z2xvYmFsRGF0YSgpLCB0
aGlzLCBkKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3F0L3F0X3J1
bnRpbWUuaCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9ydW50aW1lLmgKaW5kZXggOGI2
ZjAzNGRjMzFmNTBkOTliZDFlMmQ4ZTNmZWM4NmE2MjJmMWViZC4uZGVhNjdkM2RlY2UzNWQ1NWVm
OTgxYTMwNjgzOGRkZWM2MGQ4NzhlMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdl
L3F0L3F0X3J1bnRpbWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfcnVudGlt
ZS5oCkBAIC0xNDQsNyArMTQ0LDYgQEAgcHVibGljOgogICAgIH0KIAogcHJvdGVjdGVkOgotICAg
IHZvaWQgZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiwgY29uc3QgSWRlbnRpZmllciYsIFBhc3NS
ZWZQdHI8UXRJbnN0YW5jZT4pOwogICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBTdHJ1Y3R1cmVG
bGFncyA9IE92ZXJyaWRlc0dldE93blByb3BlcnR5U2xvdCB8IE92ZXJyaWRlc0dldFByb3BlcnR5
TmFtZXMgfCBJbnRlcm5hbEZ1bmN0aW9uOjpTdHJ1Y3R1cmVGbGFncyB8IE92ZXJyaWRlc1Zpc2l0
Q2hpbGRyZW47CiAKICAgICBRdFJ1bnRpbWVNZXRob2REYXRhICpkX2Z1bmMoKSBjb25zdCB7cmV0
dXJuIGRfcHRyO30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX2Fy
cmF5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX2FycmF5LmNwcAppbmRleCA4
YTAzN2Y5MjRkY2FhODIwOWM3MTgxNzJlMWE4YzhkYzc0NTNjMzNlLi5lMDFhMTVmMzdjYzkxYzQ1
OGVkYTE0MWM3NDg2ZDhjMjY5YzZkY2IwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlk
Z2UvcnVudGltZV9hcnJheS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVf
YXJyYXkuY3BwCkBAIC0zNyw5ICszNywxMCBAQCBuYW1lc3BhY2UgSlNDIHsKIAogY29uc3QgQ2xh
c3NJbmZvIFJ1bnRpbWVBcnJheTo6c19pbmZvID0geyAiUnVudGltZUFycmF5IiwgJkpTQXJyYXk6
OnNfaW5mbywgMCwgMCB9OwogCi1SdW50aW1lQXJyYXk6OlJ1bnRpbWVBcnJheShFeGVjU3RhdGUq
IGV4ZWMsIFN0cnVjdHVyZSogc3RydWN0dXJlKQorUnVudGltZUFycmF5OjpSdW50aW1lQXJyYXko
RXhlY1N0YXRlKiBleGVjLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgQmluZGluZ3M6OkFycmF5KiBh
cnJheSkKICAgICA6IEpTQXJyYXkoZXhlYy0+Z2xvYmFsRGF0YSgpLCBzdHJ1Y3R1cmUpCiB7Cisg
ICAgZmluaXNoQ3JlYXRpb24oZXhlYy0+Z2xvYmFsRGF0YSgpLCBhcnJheSk7CiB9CiAKIHZvaWQg
UnVudGltZUFycmF5OjpmaW5pc2hDcmVhdGlvbihKU0dsb2JhbERhdGEmIGdsb2JhbERhdGEsIEJp
bmRpbmdzOjpBcnJheSogYXJyYXkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uv
cnVudGltZV9hcnJheS5oIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfYXJyYXkuaApp
bmRleCA2Y2I4ZWIzM2Q3ZGM2NWIwZDQzNmEwYWJjZmEwZmZhZDhmYWM4ODVkLi4xMDIxZTdkMjA2
M2QwZTZmMzU5Y2NlOGZiN2Q4ZTU5Yjg2NWE4YjIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9icmlkZ2UvcnVudGltZV9hcnJheS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50
aW1lX2FycmF5LmgKQEAgLTQxLDkgKzQxLDcgQEAgcHVibGljOgogICAgICAgICAvLyBGSVhNRTog
ZGVwcmVjYXRlZEdldERPTVN0cnVjdHVyZSB1c2VzIHRoZSBwcm90b3R5cGUgb2ZmIG9mIHRoZSB3
cm9uZyBnbG9iYWwgb2JqZWN0CiAgICAgICAgIC8vIFdlIG5lZWQgdG8gcGFzcyBpbiB0aGUgcmln
aHQgZ2xvYmFsIG9iamVjdCBmb3IgImFycmF5Ii4KICAgICAgICAgU3RydWN0dXJlKiBkb21TdHJ1
Y3R1cmUgPSBXZWJDb3JlOjpkZXByZWNhdGVkR2V0RE9NU3RydWN0dXJlPFJ1bnRpbWVBcnJheT4o
ZXhlYyk7Ci0gICAgICAgIFJ1bnRpbWVBcnJheSogcnVudGltZUFycmF5ID0gbmV3IChhbGxvY2F0
ZUNlbGw8UnVudGltZUFycmF5PigqZXhlYy0+aGVhcCgpKSkgUnVudGltZUFycmF5KGV4ZWMsIGRv
bVN0cnVjdHVyZSk7Ci0gICAgICAgIHJ1bnRpbWVBcnJheS0+ZmluaXNoQ3JlYXRpb24oZXhlYy0+
Z2xvYmFsRGF0YSgpLCBhcnJheSk7Ci0gICAgICAgIHJldHVybiBydW50aW1lQXJyYXk7CisgICAg
ICAgIHJldHVybiBuZXcgKGFsbG9jYXRlQ2VsbDxSdW50aW1lQXJyYXk+KCpleGVjLT5oZWFwKCkp
KSBSdW50aW1lQXJyYXkoZXhlYywgZG9tU3RydWN0dXJlLCBhcnJheSk7CiAgICAgfQogCiAgICAg
dHlwZWRlZiBCaW5kaW5nczo6QXJyYXkgQmluZGluZ3NBcnJheTsKQEAgLTgxLDcgKzc5LDcgQEAg
cHJvdGVjdGVkOgogICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBTdHJ1Y3R1cmVGbGFncyA9IE92
ZXJyaWRlc0dldE93blByb3BlcnR5U2xvdCB8IE92ZXJyaWRlc0dldFByb3BlcnR5TmFtZXMgfCBK
U0FycmF5OjpTdHJ1Y3R1cmVGbGFnczsKIAogcHJpdmF0ZToKLSAgICBSdW50aW1lQXJyYXkoRXhl
Y1N0YXRlKiwgU3RydWN0dXJlKik7CisgICAgUnVudGltZUFycmF5KEV4ZWNTdGF0ZSosIFN0cnVj
dHVyZSosIEJpbmRpbmdzOjpBcnJheSopOwogICAgIHN0YXRpYyBKU1ZhbHVlIGxlbmd0aEdldHRl
cihFeGVjU3RhdGUqLCBKU1ZhbHVlLCBjb25zdCBJZGVudGlmaWVyJik7CiAgICAgc3RhdGljIEpT
VmFsdWUgaW5kZXhHZXR0ZXIoRXhlY1N0YXRlKiwgSlNWYWx1ZSwgdW5zaWduZWQpOwogfTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX21ldGhvZC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9tZXRob2QuY3BwCmluZGV4IGQxNGY1NGYxOGYxY2Uy
NTU0YWNlNWI0NmU3MmRmYzY4YjgyMWM5NGMuLjI4ZmJkM2Y5YzBkOTE4MDYxZTY5ZmIxNDRhZGJl
OWJiNTg0ZjEzOWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX21l
dGhvZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfbWV0aG9kLmNwcApA
QCAtNDUsMTUgKzQ1LDkgQEAgY29uc3QgQ2xhc3NJbmZvIFJ1bnRpbWVNZXRob2Q6OnNfaW5mbyA9
IHsgIlJ1bnRpbWVNZXRob2QiLCAmSW50ZXJuYWxGdW5jdGlvbjo6c18KIAogUnVudGltZU1ldGhv
ZDo6UnVudGltZU1ldGhvZChFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBjb25zdCBJZGVudGlmaWVyJiBpZGVudCwgQmlu
ZGluZ3M6Ok1ldGhvZExpc3QmIG0pCiAgICAgLy8gQ2FsbGVycyB3aWxsIG5lZWQgdG8gcGFzcyBp
biB0aGUgcmlnaHQgZ2xvYmFsIG9iamVjdCBjb3JyZXNwb25kaW5nIHRvIHRoaXMgbmF0aXZlIG9i
amVjdCAibSIuCi0gICAgOiBJbnRlcm5hbEZ1bmN0aW9uKGdsb2JhbE9iamVjdCwgc3RydWN0dXJl
KQorICAgIDogSW50ZXJuYWxGdW5jdGlvbigmZXhlYy0+Z2xvYmFsRGF0YSgpLCBnbG9iYWxPYmpl
Y3QsIHN0cnVjdHVyZSwgaWRlbnQpCiAgICAgLCBfbWV0aG9kTGlzdChhZG9wdFB0cihuZXcgTWV0
aG9kTGlzdChtKSkpCiB7Ci0gICAgZmluaXNoQ3JlYXRpb24oZXhlYy0+Z2xvYmFsRGF0YSgpLCBn
bG9iYWxPYmplY3QsIGlkZW50KTsKLX0KLQotdm9pZCBSdW50aW1lTWV0aG9kOjpmaW5pc2hDcmVh
dGlvbihKU0dsb2JhbERhdGEmIGdsb2JhbERhdGEsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIGNvbnN0IElkZW50aWZpZXImIGlkZW50KQotewotICAgIEJhc2U6OmZpbmlzaENyZWF0aW9u
KGdsb2JhbERhdGEsIGdsb2JhbE9iamVjdCwgaWRlbnQpOwogICAgIEFTU0VSVChpbmhlcml0cygm
c19pbmZvKSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1l
X21ldGhvZC5oIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfbWV0aG9kLmgKaW5kZXgg
YjQ0ZTc5NjhkNjE1OGY0MjIzNjU2MjAzNGE2ZTQzYjlmN2RlZGJiNS4uY2Y4MjA3M2RlYTdiMGUy
NGU2ZTAxZDBjMjczMTkwOTE0MWY3MTE3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJp
ZGdlL3J1bnRpbWVfbWV0aG9kLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVf
bWV0aG9kLmgKQEAgLTU4LDcgKzU4LDYgQEAgcHVibGljOgogCiBwcm90ZWN0ZWQ6CiAgICAgUnVu
dGltZU1ldGhvZChFeGVjU3RhdGUqLCBKU0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSosIGNvbnN0
IElkZW50aWZpZXImIG5hbWUsIEJpbmRpbmdzOjpNZXRob2RMaXN0Jik7Ci0gICAgdm9pZCBmaW5p
c2hDcmVhdGlvbihKU0dsb2JhbERhdGEmLCBKU0dsb2JhbE9iamVjdCosIGNvbnN0IElkZW50aWZp
ZXImKTsKICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3MgPSBPdmVycmlk
ZXNHZXRPd25Qcm9wZXJ0eVNsb3QgfCBJbnRlcm5hbEZ1bmN0aW9uOjpTdHJ1Y3R1cmVGbGFnczsK
IAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX29i
amVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9vYmplY3QuY3BwCmluZGV4
IDliZmU0Njc5YmMwYmVjZjcwOTZkZWI1NjQwNDBmMjM5NzI3NDk0NjguLjk2NjQwZjAwOGZhYzFh
YzQ3MTc2NGZmODVlM2I4ZjY0NWI5MmJmMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jy
aWRnZS9ydW50aW1lX29iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRp
bWVfb2JqZWN0LmNwcApAQCAtNDEsNiArNDEsNyBAQCBSdW50aW1lT2JqZWN0OjpSdW50aW1lT2Jq
ZWN0KEV4ZWNTdGF0ZSosIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZQog
ICAgIDogSlNPYmplY3RXaXRoR2xvYmFsT2JqZWN0KGdsb2JhbE9iamVjdCwgc3RydWN0dXJlKQog
ICAgICwgbV9pbnN0YW5jZShpbnN0YW5jZSkKIHsKKyAgICBmaW5pc2hDcmVhdGlvbihnbG9iYWxP
YmplY3QpOwogfQogCiB2b2lkIFJ1bnRpbWVPYmplY3Q6OmZpbmlzaENyZWF0aW9uKEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uv
cnVudGltZV9vYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX29iamVjdC5o
CmluZGV4IDYyMGQ5MGNkMTYxYWEzYzFmMzMzM2M1NGIxOGEwYTFkNGRhNGNlN2EuLmQ4ZTAwZmMz
NDc3YTk5NzdlOGFiNDA3OWRhYWNlNDI5ZjhhM2ZmNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JyaWRnZS9ydW50aW1lX29iamVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9y
dW50aW1lX29iamVjdC5oCkBAIC0zOSw5ICszOSw3IEBAIHB1YmxpYzoKIAogICAgIHN0YXRpYyBS
dW50aW1lT2JqZWN0KiBjcmVhdGUoRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUGFzc1JlZlB0cjxJbnN0YW5jZT4gaW5z
dGFuY2UpCiAgICAgewotICAgICAgICBSdW50aW1lT2JqZWN0KiBvYmplY3QgPSBuZXcgKGFsbG9j
YXRlQ2VsbDxSdW50aW1lT2JqZWN0PigqZXhlYy0+aGVhcCgpKSkgUnVudGltZU9iamVjdChleGVj
LCBnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSwgaW5zdGFuY2UpOwotICAgICAgICBvYmplY3QtPmZp
bmlzaENyZWF0aW9uKGdsb2JhbE9iamVjdCk7Ci0gICAgICAgIHJldHVybiBvYmplY3Q7CisgICAg
ICAgIHJldHVybiBuZXcgKGFsbG9jYXRlQ2VsbDxSdW50aW1lT2JqZWN0PigqZXhlYy0+aGVhcCgp
KSkgUnVudGltZU9iamVjdChleGVjLCBnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSwgaW5zdGFuY2Up
OwogICAgIH0KIAogICAgIHZpcnR1YWwgflJ1bnRpbWVPYmplY3QoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpp
bmRleCAwNTJjNmViZmY2ODQ4N2I1YTI4YzcwYzI3ZWM1N2Y2OTRiMTAyZTM0Li44ZjAwZDM2MTU3
ZjllYWUxMGQ1M2VlOWMxMjljZTA4NDUxNzhmNGVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L21hYy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTYgQEAKKzIwMTEtMDktMDYgIFNoZXJpZmYgQm90ICA8d2Via2l0LnJldmlldy5ib3RAZ21h
aWwuY29tPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHI5NDYyNyBhbmQgcjk0
NjMyLgorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC85NDYyNworICAg
ICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC85NDYzMgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njc2OTgKKworICAgICAgICBJdCBi
cm9rZSB0ZXN0cyBvbiBHVEsgYW5kIFF0IChSZXF1ZXN0ZWQgYnkgT3NzeSBvbiAjd2Via2l0KS4K
KworICAgICAgICAqIFBsdWdpbnMvSG9zdGVkL1Byb3h5UnVudGltZU9iamVjdC5oOgorICAgICAg
ICAqIFBsdWdpbnMvSG9zdGVkL1Byb3h5UnVudGltZU9iamVjdC5tbToKKyAgICAgICAgKFdlYktp
dDo6UHJveHlSdW50aW1lT2JqZWN0OjpQcm94eVJ1bnRpbWVPYmplY3QpOgorCiAyMDExLTA5LTA2
ICBNYXJrIEhhaG5lbmJlcmcgIDxtaGFobmVuYmVyZ0BhcHBsZS5jb20+CiAKICAgICAgICAgVW56
aXAgaW5pdGlhbGl6YXRpb24gbGlzdHMgYW5kIGNvbnN0cnVjdG9ycyBpbiBKU0NlbGwgaGllcmFy
Y2h5ICg1LzcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9Q
cm94eVJ1bnRpbWVPYmplY3QuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL1By
b3h5UnVudGltZU9iamVjdC5oCmluZGV4IDVhZTk4Mzg1MDQwNGY1MWM2NDZlODJmYjcyODZjNzVh
OTVkZDczNTAuLjMxMzcxNWFlYTRiNDNlY2YwMGVkZWRlY2VhMmQ5ZjY0OTVjMzk1YjAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL1Byb3h5UnVudGltZU9iamVj
dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL1Byb3h5UnVudGltZU9i
amVjdC5oCkBAIC01OSw3ICs1OSw2IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgY29uc3QgSlNDOjpD
bGFzc0luZm8gc19pbmZvOwogcHJpdmF0ZToKICAgICBQcm94eVJ1bnRpbWVPYmplY3QoSlNDOjpF
eGVjU3RhdGUqLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiwgSlNDOjpTdHJ1Y3R1cmUqLCBQYXNzUmVm
UHRyPFByb3h5SW5zdGFuY2U+KTsKLSAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEpTQzo6SlNHbG9i
YWxPYmplY3QqKTsKIH07CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdp
bnMvSG9zdGVkL1Byb3h5UnVudGltZU9iamVjdC5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdp
bnMvSG9zdGVkL1Byb3h5UnVudGltZU9iamVjdC5tbQppbmRleCA1Y2IyNzQ5YzkyODgzOWE4NTNh
NDFiZDk1NDA1Mzg1NDVmYWU1ODFkLi44YTY0ODFlM2Q0NTJjYjNmYjZmODFiMWVmMDM1NjkzMDFi
YjMwYzRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9Qcm94
eVJ1bnRpbWVPYmplY3QubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQv
UHJveHlSdW50aW1lT2JqZWN0Lm1tCkBAIC0zOSwxMiArMzksNiBAQCBjb25zdCBDbGFzc0luZm8g
UHJveHlSdW50aW1lT2JqZWN0OjpzX2luZm8gPSB7ICJQcm94eVJ1bnRpbWVPYmplY3QiLCAmUnVu
dGltZU9iagogUHJveHlSdW50aW1lT2JqZWN0OjpQcm94eVJ1bnRpbWVPYmplY3QoRXhlY1N0YXRl
KiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgUGFzc1JlZlB0cjxQcm94eUluc3RhbmNlPiBpbnN0YW5jZSkKICAgICA6IFJ1bnRpbWVPYmpl
Y3QoZXhlYywgZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUsIGluc3RhbmNlKQogewotICAgIGZpbmlz
aENyZWF0aW9uKGdsb2JhbE9iamVjdCk7Ci19Ci0KLXZvaWQgUHJveHlSdW50aW1lT2JqZWN0Ojpm
aW5pc2hDcmVhdGlvbihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQotewotICAgIEJhc2U6
OmZpbmlzaENyZWF0aW9uKGdsb2JhbE9iamVjdCk7CiAgICAgQVNTRVJUKGluaGVyaXRzKCZzX2lu
Zm8pKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDY4YWFhNDhjNjBhNDkwOGZiMDNkZDljNTQyZTg4NGQ2
NjEwMWVkYTcuLjUxMDlhMmRlOWI5MzIzMjQ2NjM4NmJiMDkzNDA2MWQ3ZmI3Y2E3NjggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAxMS0wOS0wNiAgU2hlcmlmZiBCb3QgIDx3ZWJraXQu
cmV2aWV3LmJvdEBnbWFpbC5jb20+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQg
cjk0NjI3IGFuZCByOTQ2MzIuCisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdl
c2V0Lzk0NjI3CisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0Lzk0NjMy
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzY5OAor
CisgICAgICAgIEl0IGJyb2tlIHRlc3RzIG9uIEdUSyBhbmQgUXQgKFJlcXVlc3RlZCBieSBPc3N5
IG9uICN3ZWJraXQpLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pT
TlBNZXRob2QuY3BwOgorICAgICAgICAoV2ViS2l0OjpKU05QTWV0aG9kOjpKU05QTWV0aG9kKToK
KyAgICAgICAgKFdlYktpdDo6SlNOUE1ldGhvZDo6Y3JlYXRlKToKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNOUE1ldGhvZC5oOgorICAgICAgICAqIFdlYlByb2Nlc3Mv
UGx1Z2lucy9OZXRzY2FwZS9KU05QT2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYktpdDo6SlNOUE9i
amVjdDo6SlNOUE9iamVjdCk6CisgICAgICAgIChXZWJLaXQ6OkpTTlBPYmplY3Q6OmNyZWF0ZSk6
CisgICAgICAgICogV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3QuaDoKKwog
MjAxMS0wOS0wNiAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBm
YXN0L2Zvcm1zL3N1Z2dlc3RlZC12YWx1ZS1jcmFzaC5odG1sIGNyYXNoZXMgb24gV2luZG93cwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pT
TlBNZXRob2QuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBl
L0pTTlBNZXRob2QuY3BwCmluZGV4IDA2NTg2ZDk3NGYxMTgzM2ViMjJjZmE1NjJkY2EwMzA1NGEx
MDIwOWQuLjhiYjU5NjlmMTA3NjhkYjM1ZjlhZDBkYjk0NzljZjhhNjZlZmE1YTMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9KU05QTWV0aG9k
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNO
UE1ldGhvZC5jcHAKQEAgLTMwLDcgKzMwLDYgQEAKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9F
cnJvci5oPgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0Z1bmN0aW9uUHJvdG90eXBlLmg+CiAj
aW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNHbG9iYWxPYmplY3QuaD4KLSNpbmNsdWRlIDxKYXZh
U2NyaXB0Q29yZS9KU09iamVjdC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvSlNIVE1MRWxlbWVudC5o
PgogI2luY2x1ZGUgPFdlYkNvcmUvSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25zLmg+CiAjaW5jbHVk
ZSA8V2ViQ29yZS9Ob3RJbXBsZW1lbnRlZC5oPgpAQCAtNDIsMTYgKzQxLDE3IEBAIG5hbWVzcGFj
ZSBXZWJLaXQgewogCiBjb25zdCBDbGFzc0luZm8gSlNOUE1ldGhvZDo6c19pbmZvID0geyAiTlBN
ZXRob2QiLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAwLCAwIH07CiAKLUpTTlBNZXRob2Q6
OkpTTlBNZXRob2QoRXhlY1N0YXRlKiBleGVjLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgY29uc3QgSWRlbnRpZmllciYgbmFtZSwgTlBJZGVudGlm
aWVyIG5wSWRlbnRpZmllcikKLSAgICA6IEludGVybmFsRnVuY3Rpb24oZ2xvYmFsT2JqZWN0LCBz
dHJ1Y3R1cmUpCitKU05QTWV0aG9kOjpKU05QTWV0aG9kKEV4ZWNTdGF0ZSogZXhlYywgSlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgSWRlbnRpZmllciYgbmFtZSwgTlBJZGVudGlm
aWVyIG5wSWRlbnRpZmllciwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCisgICAgOiBJbnRlcm5hbEZ1
bmN0aW9uKCZleGVjLT5nbG9iYWxEYXRhKCksIGdsb2JhbE9iamVjdCwgc3RydWN0dXJlLCBuYW1l
KQorICAgICwgbV9ucElkZW50aWZpZXIobnBJZGVudGlmaWVyKQogewotICAgIGZpbmlzaENyZWF0
aW9uKGV4ZWMtPmdsb2JhbERhdGEoKSwgZ2xvYmFsT2JqZWN0LCBuYW1lKTsKKyAgICBBU1NFUlQo
aW5oZXJpdHMoJnNfaW5mbykpOwogfQogCi12b2lkIEpTTlBNZXRob2Q6OmZpbmlzaENyZWF0aW9u
KEpTR2xvYmFsRGF0YSYgZ2xvYmFsRGF0YSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
Y29uc3QgSWRlbnRpZmllciYgbmFtZSkKK0pTTlBNZXRob2QqIEpTTlBNZXRob2Q6OmNyZWF0ZShF
eGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0IElkZW50
aWZpZXImIGlkZW50LCBOUElkZW50aWZpZXIgbnBJZGVudCkKIHsKLSAgICBCYXNlOjpmaW5pc2hD
cmVhdGlvbihnbG9iYWxEYXRhLCBnbG9iYWxPYmplY3QsIG5hbWUpOwotICAgIEFTU0VSVChpbmhl
cml0cygmc19pbmZvKSk7CisgICAgSlNDOjpTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IGNyZWF0ZVN0
cnVjdHVyZShleGVjLT5nbG9iYWxEYXRhKCksIGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5m
dW5jdGlvblByb3RvdHlwZSgpKTsKKyAgICByZXR1cm4gbmV3IChKU0M6OmFsbG9jYXRlQ2VsbDxK
U05QTWV0aG9kPigqZXhlYy0+aGVhcCgpKSkgSlNOUE1ldGhvZChleGVjLCBnbG9iYWxPYmplY3Qs
IGlkZW50LCBucElkZW50LCBzdHJ1Y3R1cmUpOwogfQogCiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBjYWxsTWV0aG9kKEV4ZWNTdGF0ZSogZXhlYykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9KU05QTWV0aG9kLmggYi9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNOUE1ldGhvZC5oCmlu
ZGV4IGQxZGE4YzI2NmUyOTM0YjFhMTcxNTA2ODBjODU0MmQzMDM4ZThjOWEuLmVmOWNlOTQ1ZGM5
NWIzNzNkMTkwYTE5YTUxYTI4YmUwYjQwNjM5N2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9KU05QTWV0aG9kLmgKKysrIGIvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBNZXRob2QuaApAQCAtMjYsNyAr
MjYsNiBAQAogI2lmbmRlZiBKU05QTWV0aG9kX2gKICNkZWZpbmUgSlNOUE1ldGhvZF9oCiAKLSNp
bmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9GdW5jdGlvblByb3RvdHlwZS5oPgogI2luY2x1ZGUgPEph
dmFTY3JpcHRDb3JlL0ludGVybmFsRnVuY3Rpb24uaD4KIAogdHlwZWRlZiB2b2lkKiBOUElkZW50
aWZpZXI7CkBAIC0zOCwyMSArMzcsMTQgQEAgY2xhc3MgSlNOUE1ldGhvZCA6IHB1YmxpYyBKU0M6
OkludGVybmFsRnVuY3Rpb24gewogcHVibGljOgogICAgIHR5cGVkZWYgSlNDOjpJbnRlcm5hbEZ1
bmN0aW9uIEJhc2U7CiAKLSAgICBzdGF0aWMgSlNOUE1ldGhvZCogY3JlYXRlKEpTQzo6RXhlY1N0
YXRlKiBleGVjLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0IEpTQzo6
SWRlbnRpZmllciYgaWRlbnQsIE5QSWRlbnRpZmllciBucElkZW50KQotICAgIHsKLSAgICAgICAg
SlNDOjpTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IGNyZWF0ZVN0cnVjdHVyZShleGVjLT5nbG9iYWxE
YXRhKCksIGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5mdW5jdGlvblByb3RvdHlwZSgpKTsK
LSAgICAgICAgcmV0dXJuIG5ldyAoSlNDOjphbGxvY2F0ZUNlbGw8SlNOUE1ldGhvZD4oKmV4ZWMt
PmhlYXAoKSkpIEpTTlBNZXRob2QoZXhlYywgZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUsIGlkZW50
LCBucElkZW50KTsKLSAgICB9CisgICAgc3RhdGljIEpTTlBNZXRob2QqIGNyZWF0ZShKU0M6OkV4
ZWNTdGF0ZSosIEpTQzo6SlNHbG9iYWxPYmplY3QqLCBjb25zdCBKU0M6OklkZW50aWZpZXImLCBO
UElkZW50aWZpZXIpOwogCiAgICAgc3RhdGljIGNvbnN0IEpTQzo6Q2xhc3NJbmZvIHNfaW5mbzsK
IAogICAgIE5QSWRlbnRpZmllciBucElkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX25wSWRl
bnRpZmllcjsgfQogCi1wcm90ZWN0ZWQ6Ci0gICAgdm9pZCBmaW5pc2hDcmVhdGlvbihKU0M6OkpT
R2xvYmFsRGF0YSYsIEpTQzo6SlNHbG9iYWxPYmplY3QqLCBjb25zdCBKU0M6OklkZW50aWZpZXIm
IG5hbWUpOwotCiBwcml2YXRlOiAgICAKLSAgICBKU05QTWV0aG9kKEpTQzo6RXhlY1N0YXRlKiwg
SlNDOjpKU0dsb2JhbE9iamVjdCosIEpTQzo6U3RydWN0dXJlKiwgY29uc3QgSlNDOjpJZGVudGlm
aWVyJiwgTlBJZGVudGlmaWVyKTsKKyAgICBKU05QTWV0aG9kKEpTQzo6RXhlY1N0YXRlKiwgSlND
OjpKU0dsb2JhbE9iamVjdCosIGNvbnN0IEpTQzo6SWRlbnRpZmllciYsIE5QSWRlbnRpZmllciwg
SlNDOjpTdHJ1Y3R1cmUqKTsKIAogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3Ry
dWN0dXJlKEpTQzo6SlNHbG9iYWxEYXRhJiBnbG9iYWxEYXRhLCBKU0M6OkpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3Qu
Y3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmpl
Y3QuY3BwCmluZGV4IDk5YTNiODg3ZWFiZmE1ZjFmNWQyMTRkNTk0ZjMzNDNmMTY4ZTkwOTUuLjZl
ZDY5YTE5YzYwOWMwYTYzODdhMGFlMDQyM2NkMGY1ZGU1OTVmMzQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9KU05QT2JqZWN0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNOUE9iamVjdC5j
cHAKQEAgLTUwLDExICs1MCwxMiBAQCBzdGF0aWMgTlBJZGVudGlmaWVyIG5wSWRlbnRpZmllckZy
b21JZGVudGlmaWVyKGNvbnN0IElkZW50aWZpZXImIGlkZW50aWZpZXIpCiAKIGNvbnN0IENsYXNz
SW5mbyBKU05QT2JqZWN0OjpzX2luZm8gPSB7ICJOUE9iamVjdCIsICZKU09iamVjdFdpdGhHbG9i
YWxPYmplY3Q6OnNfaW5mbywgMCwgMCB9OwogCi1KU05QT2JqZWN0OjpKU05QT2JqZWN0KEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBOUFJ1bnRpbWVP
YmplY3RNYXAqIG9iamVjdE1hcCwgTlBPYmplY3QqIG5wT2JqZWN0KQorSlNOUE9iamVjdDo6SlNO
UE9iamVjdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBOUFJ1bnRpbWVPYmplY3RNYXAq
IG9iamVjdE1hcCwgTlBPYmplY3QqIG5wT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAg
ICA6IEpTT2JqZWN0V2l0aEdsb2JhbE9iamVjdChnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSkKICAg
ICAsIG1fb2JqZWN0TWFwKG9iamVjdE1hcCkKICAgICAsIG1fbnBPYmplY3QobnBPYmplY3QpCiB7
CisgICAgZmluaXNoQ3JlYXRpb24oZ2xvYmFsT2JqZWN0KTsKIH0KIAogdm9pZCBKU05QT2JqZWN0
OjpmaW5pc2hDcmVhdGlvbihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQpAQCAtNjgsNiAr
NjksMTIgQEAgdm9pZCBKU05QT2JqZWN0OjpmaW5pc2hDcmVhdGlvbihKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0KQogICAgIHJldGFpbk5QT2JqZWN0KG1fbnBPYmplY3QpOwogfQogCitKU05Q
T2JqZWN0KiBKU05QT2JqZWN0OjpjcmVhdGUoSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBOUFJ1bnRpbWVPYmplY3RNYXAqIG9iamVjdE1hcCwgTlBPYmplY3QqIG5wT2JqZWN0KQor
eworICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0gY3JlYXRlU3RydWN0dXJlKGdsb2JhbE9iamVj
dC0+Z2xvYmFsRGF0YSgpLCBnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+b2JqZWN0UHJvdG90
eXBlKCkpOworICAgIHJldHVybiBuZXcgKEpTQzo6YWxsb2NhdGVDZWxsPEpTTlBPYmplY3Q+KGds
b2JhbE9iamVjdC0+Z2xvYmFsRGF0YSgpLmhlYXApKSBKU05QT2JqZWN0KGdsb2JhbE9iamVjdCwg
b2JqZWN0TWFwLCBucE9iamVjdCwgc3RydWN0dXJlKTsKK30KKwogSlNOUE9iamVjdDo6fkpTTlBP
YmplY3QoKQogewogICAgIEFTU0VSVCghbV9ucE9iamVjdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNOUE9iamVjdC5oIGIvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3QuaAppbmRleCBj
MDc0YThjMjY4MDVlM2U4OWY4MjhkZDU5Y2RhMDJhNjIzY2M1NjljLi4wYmJkNWI1NjI5ZDdiOWRi
YzA4Mjk2NTdiZjQyZDhiZDU5ZGYyNzcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNOUE9iamVjdC5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9KU05QT2JqZWN0LmgKQEAgLTI3LDcgKzI3LDYg
QEAKICNkZWZpbmUgSlNOUE9iamVjdF9oCiAKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU09i
amVjdFdpdGhHbG9iYWxPYmplY3QuaD4KLSNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9PYmplY3RQ
cm90b3R5cGUuaD4KIAogdHlwZWRlZiB2b2lkKiBOUElkZW50aWZpZXI7CiBzdHJ1Y3QgTlBPYmpl
Y3Q7CkBAIC00MiwxNCArNDEsNyBAQCBjbGFzcyBKU05QT2JqZWN0IDogcHVibGljIEpTQzo6SlNP
YmplY3RXaXRoR2xvYmFsT2JqZWN0IHsKIHB1YmxpYzoKICAgICB0eXBlZGVmIEpTQzo6SlNPYmpl
Y3RXaXRoR2xvYmFsT2JqZWN0IEJhc2U7CiAKLSAgICBzdGF0aWMgSlNOUE9iamVjdCogY3JlYXRl
KEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgTlBSdW50aW1lT2JqZWN0TWFwKiBv
YmplY3RNYXAsIE5QT2JqZWN0KiBucE9iamVjdCkKLSAgICB7Ci0gICAgICAgIEpTQzo6U3RydWN0
dXJlKiBzdHJ1Y3R1cmUgPSBjcmVhdGVTdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LT5nbG9iYWxEYXRh
KCksIGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5vYmplY3RQcm90b3R5cGUoKSk7Ci0gICAg
ICAgIEpTTlBPYmplY3QqIG9iamVjdCA9IG5ldyAoSlNDOjphbGxvY2F0ZUNlbGw8SlNOUE9iamVj
dD4oZ2xvYmFsT2JqZWN0LT5nbG9iYWxEYXRhKCkuaGVhcCkpIEpTTlBPYmplY3QoZ2xvYmFsT2Jq
ZWN0LCBzdHJ1Y3R1cmUsIG9iamVjdE1hcCwgbnBPYmplY3QpOwotICAgICAgICBvYmplY3QtPmZp
bmlzaENyZWF0aW9uKGdsb2JhbE9iamVjdCk7Ci0gICAgICAgIHJldHVybiBvYmplY3Q7Ci0gICAg
fQotCisgICAgc3RhdGljIEpTTlBPYmplY3QqIGNyZWF0ZShKU0M6OkpTR2xvYmFsT2JqZWN0Kiwg
TlBSdW50aW1lT2JqZWN0TWFwKiwgTlBPYmplY3QqKTsKICAgICB+SlNOUE9iamVjdCgpOwogCiAg
ICAgdm9pZCBpbnZhbGlkYXRlKCk7CkBAIC02OSw3ICs2MSw3IEBAIHByb3RlY3RlZDoKICAgICB2
b2lkIGZpbmlzaENyZWF0aW9uKEpTQzo6SlNHbG9iYWxPYmplY3QqKTsKIAogcHJpdmF0ZToKLSAg
ICBKU05QT2JqZWN0KEpTQzo6SlNHbG9iYWxPYmplY3QqLCBKU0M6OlN0cnVjdHVyZSosIE5QUnVu
dGltZU9iamVjdE1hcCosIE5QT2JqZWN0Kik7CisgICAgSlNOUE9iamVjdChKU0M6OkpTR2xvYmFs
T2JqZWN0KiwgTlBSdW50aW1lT2JqZWN0TWFwKiwgTlBPYmplY3QqLCBKU0M6OlN0cnVjdHVyZSop
OwogCiAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIFN0cnVjdHVyZUZsYWdzID0gSlNDOjpPdmVy
cmlkZXNHZXRPd25Qcm9wZXJ0eVNsb3QgfCBKU0M6Ok92ZXJyaWRlc0dldFByb3BlcnR5TmFtZXMg
fCBKU09iamVjdDo6U3RydWN0dXJlRmxhZ3M7CiAgICAgCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>