<?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>190593</bug_id>
          
          <creation_ts>2018-10-15 11:39:19 -0700</creation_ts>
          <short_desc>REGRESSION(r237054): &quot;this regressed JetStream 2 by 6% on iOS&quot; (Requested by saamyjoon on #webkit).</short_desc>
          <delta_ts>2018-10-15 11:43:28 -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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>190340</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>mark.lam</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1469349</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-10-15 11:39:19 -0700</bug_when>
    <thetext>https://trac.webkit.org/changeset/237054 broke the build:
&quot;this regressed JetStream 2 by 6% on iOS&quot; (Requested by saamyjoon on #webkit).

This is an automatic bug report generated by webkitbot. 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 fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1469351</commentid>
    <comment_count>1</comment_count>
      <attachid>352351</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-10-15 11:39:34 -0700</bug_when>
    <thetext>Created attachment 352351
ROLLOUT of r237054

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

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1469353</commentid>
    <comment_count>2</comment_count>
      <attachid>352351</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-10-15 11:42:52 -0700</bug_when>
    <thetext>Comment on attachment 352351
ROLLOUT of r237054

Clearing flags on attachment: 352351

Committed r237128: &lt;https://trac.webkit.org/changeset/237128&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1469354</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-10-15 11:42:53 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1469355</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-10-15 11:43:28 -0700</bug_when>
    <thetext>&lt;rdar://problem/45279021&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>352351</attachid>
            <date>2018-10-15 11:39:34 -0700</date>
            <delta_ts>2018-10-15 11:42:52 -0700</delta_ts>
            <desc>ROLLOUT of r237054</desc>
            <filename>bug-190593-20181015143933.patch</filename>
            <type>text/plain</type>
            <size>58723</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM3MTI3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAy
ZTllNjMyOGJjOGQ1MWIzZjMxNjQ4ZGE4NjQ2MTY3MjMzYmZhOTkxLi4wYmJlYzhmNzhkNDRhYWYz
MThlZDc0MDY5NzZmMzcyYzkxMzYyMTJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOCBAQAorMjAxOC0xMC0xNSAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtp
dC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjIzNzA1NC4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDU5MworCisgICAg
ICAgICJ0aGlzIHJlZ3Jlc3NlZCBKZXRTdHJlYW0gMiBieSA2JSBvbiBpT1MiIChSZXF1ZXN0ZWQg
YnkKKyAgICAgICAgc2FhbXlqb29uIG9uICN3ZWJraXQpLgorCisgICAgICAgIFJldmVydGVkIGNo
YW5nZXNldDoKKworICAgICAgICAiW0pTQ10gSlNDIHNob3VsZCBoYXZlICJwYXJzZUZ1bmN0aW9u
IiB0byBvcHRpbWl6ZSBGdW5jdGlvbgorICAgICAgICBjb25zdHJ1Y3RvciIKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDM0MAorICAgICAgICBodHRw
czovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMjM3MDU0CisKIDIwMTgtMTAtMTQgIERhdmlk
IEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjM3
MDg0KTogSmF2YVNjcmlwdENvcmUgZmFpbHMgdG8gYnVpbGQgb24gTGludXgKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJs
ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRGdW5jdGlvbkV4
ZWN1dGFibGUuY3BwCmluZGV4IDcxYjEzNzQ4ZGVlMDFhNWQ4ZDk2OTljOWY2ZjgxY2U1YmEzZjFh
MjcuLmU1NDBhMjQwZDhmM2I5YWM3MjU5ZjAxMGNkMmUzNDVkMzQwMTUzOTEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJs
ZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRnVuY3Rp
b25FeGVjdXRhYmxlLmNwcApAQCAtMTc0LDE0ICsxNzQsMTQgQEAgRnVuY3Rpb25FeGVjdXRhYmxl
KiBVbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZTo6bGluayhWTSYgdm0sIGNvbnN0IFNvdXJjZUNv
ZGUmIHAKIAogVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUqIFVubGlua2VkRnVuY3Rpb25FeGVj
dXRhYmxlOjpmcm9tR2xvYmFsQ29kZSgKICAgICBjb25zdCBJZGVudGlmaWVyJiBuYW1lLCBFeGVj
U3RhdGUmIGV4ZWMsIGNvbnN0IFNvdXJjZUNvZGUmIHNvdXJjZSwgCi0gICAgSlNPYmplY3QqJiBl
eGNlcHRpb24sIGludCBvdmVycmlkZUxpbmVOdW1iZXIsIHN0ZDo6b3B0aW9uYWw8aW50PiBmdW5j
dGlvbkNvbnN0cnVjdG9yUGFyYW1ldGVyc0VuZFBvc2l0aW9uKQorICAgIEpTT2JqZWN0KiYgZXhj
ZXB0aW9uLCBpbnQgb3ZlcnJpZGVMaW5lTnVtYmVyKQogewogICAgIFBhcnNlckVycm9yIGVycm9y
OwogICAgIFZNJiB2bSA9IGV4ZWMudm0oKTsKICAgICBhdXRvJiBnbG9iYWxPYmplY3QgPSAqZXhl
Yy5sZXhpY2FsR2xvYmFsT2JqZWN0KCk7CiAgICAgQ29kZUNhY2hlKiBjb2RlQ2FjaGUgPSB2bS5j
b2RlQ2FjaGUoKTsKICAgICBEZWJ1Z2dlck1vZGUgZGVidWdnZXJNb2RlID0gZ2xvYmFsT2JqZWN0
Lmhhc0ludGVyYWN0aXZlRGVidWdnZXIoKSA/IERlYnVnZ2VyT24gOiBEZWJ1Z2dlck9mZjsKLSAg
ICBVbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZSogZXhlY3V0YWJsZSA9IGNvZGVDYWNoZS0+Z2V0
VW5saW5rZWRHbG9iYWxGdW5jdGlvbkV4ZWN1dGFibGUodm0sIG5hbWUsIHNvdXJjZSwgZGVidWdn
ZXJNb2RlLCBmdW5jdGlvbkNvbnN0cnVjdG9yUGFyYW1ldGVyc0VuZFBvc2l0aW9uLCBlcnJvcik7
CisgICAgVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUqIGV4ZWN1dGFibGUgPSBjb2RlQ2FjaGUt
PmdldFVubGlua2VkR2xvYmFsRnVuY3Rpb25FeGVjdXRhYmxlKHZtLCBuYW1lLCBzb3VyY2UsIGRl
YnVnZ2VyTW9kZSwgZXJyb3IpOwogCiAgICAgaWYgKGdsb2JhbE9iamVjdC5oYXNEZWJ1Z2dlcigp
KQogICAgICAgICBnbG9iYWxPYmplY3QuZGVidWdnZXIoKS0+c291cmNlUGFyc2VkKCZleGVjLCBz
b3VyY2UucHJvdmlkZXIoKSwgZXJyb3IubGluZSgpLCBlcnJvci5tZXNzYWdlKCkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25FeGVj
dXRhYmxlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRGdW5jdGlv
bkV4ZWN1dGFibGUuaAppbmRleCAzMTNkNjY2MDk0MzlkN2JjMDBkZWIyMTMxNjRiMjkxMzZjZDYy
ZDE2Li5mOWU4OTM5OTkzMTE0NGMzZDU2YzA1OGI5MTI3MmUyZDliZDg5MjYwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFi
bGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRGdW5jdGlv
bkV4ZWN1dGFibGUuaApAQCAtMTA3LDcgKzEwNyw3IEBAIHB1YmxpYzoKIAogICAgIHN0YXRpYyBV
bmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZSogZnJvbUdsb2JhbENvZGUoCiAgICAgICAgIGNvbnN0
IElkZW50aWZpZXImLCBFeGVjU3RhdGUmLCBjb25zdCBTb3VyY2VDb2RlJiwgSlNPYmplY3QqJiBl
eGNlcHRpb24sIAotICAgICAgICBpbnQgb3ZlcnJpZGVMaW5lTnVtYmVyLCBzdGQ6Om9wdGlvbmFs
PGludD4gZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQb3NpdGlvbik7CisgICAgICAg
IGludCBvdmVycmlkZUxpbmVOdW1iZXIpOwogCiAgICAgSlNfRVhQT1JUX1BSSVZBVEUgRnVuY3Rp
b25FeGVjdXRhYmxlKiBsaW5rKFZNJiwgY29uc3QgU291cmNlQ29kZSYgcGFyZW50U291cmNlLCBz
dGQ6Om9wdGlvbmFsPGludD4gb3ZlcnJpZGVMaW5lTnVtYmVyID0gc3RkOjpudWxsb3B0LCBJbnRy
aW5zaWMgPSBOb0ludHJpbnNpYyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9wYXJzZXIvUGFyc2VyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2Vy
LmNwcAppbmRleCA5MzVhZDNmM2Y4YjlhOGZiZGY1MGY0ODgxMGZiOTNkYzQ4ZmZlMGI0Li40Mzk1
ZGMyZGVjNzAyODVlNDkzNWE0ZmQyZWQ2OWU1ZGM0ZDVhZWIwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3BhcnNlci9QYXJzZXIuY3BwCkBAIC0xOTQsNyArMTk0LDcgQEAgUGFyc2VyPExleGVyVHlw
ZT46On5QYXJzZXIoKQogfQogCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgTGV4ZXJUeXBlPgotU3RyaW5n
IFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZUlubmVyKGNvbnN0IElkZW50aWZpZXImIGNhbGxlZU5h
bWUsIFNvdXJjZVBhcnNlTW9kZSBwYXJzZU1vZGUsIFBhcnNpbmdDb250ZXh0IHBhcnNpbmdDb250
ZXh0LCBzdGQ6Om9wdGlvbmFsPGludD4gZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQ
b3NpdGlvbikKK1N0cmluZyBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VJbm5lcihjb25zdCBJZGVu
dGlmaWVyJiBjYWxsZWVOYW1lLCBTb3VyY2VQYXJzZU1vZGUgcGFyc2VNb2RlKQogewogICAgIFN0
cmluZyBwYXJzZUVycm9yID0gU3RyaW5nKCk7CiAKQEAgLTIzOCw4ICsyMzgsNiBAQCBTdHJpbmcg
UGFyc2VyPExleGVyVHlwZT46OnBhcnNlSW5uZXIoY29uc3QgSWRlbnRpZmllciYgY2FsbGVlTmFt
ZSwgU291cmNlUGFyc2VNbwogICAgICAgICAgICAgc291cmNlRWxlbWVudHMgPSBwYXJzZUdlbmVy
YXRvckZ1bmN0aW9uU291cmNlRWxlbWVudHMoY29udGV4dCwgY2FsbGVlTmFtZSwgQ2hlY2tGb3JT
dHJpY3RNb2RlKTsKICAgICAgICAgZWxzZSBpZiAoaXNBc3luY0dlbmVyYXRvcldyYXBwZXJQYXJz
ZU1vZGUocGFyc2VNb2RlKSkKICAgICAgICAgICAgIHNvdXJjZUVsZW1lbnRzID0gcGFyc2VBc3lu
Y0dlbmVyYXRvckZ1bmN0aW9uU291cmNlRWxlbWVudHMoY29udGV4dCwgcGFyc2VNb2RlLCBpc0Fy
cm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbiwgQ2hlY2tGb3JTdHJpY3RNb2RlKTsKLSAgICAgICAg
ZWxzZSBpZiAocGFyc2luZ0NvbnRleHQgPT0gUGFyc2luZ0NvbnRleHQ6OkZ1bmN0aW9uQ29uc3Ry
dWN0b3IpCi0gICAgICAgICAgICBzb3VyY2VFbGVtZW50cyA9IHBhcnNlU2luZ2xlRnVuY3Rpb24o
Y29udGV4dCwgZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQb3NpdGlvbik7CiAgICAg
ICAgIGVsc2UKICAgICAgICAgICAgIHNvdXJjZUVsZW1lbnRzID0gcGFyc2VTb3VyY2VFbGVtZW50
cyhjb250ZXh0LCBDaGVja0ZvclN0cmljdE1vZGUpOwogICAgIH0KQEAgLTYxMiwzOCArNjEwLDYg
QEAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlU291cmNlRWxlbWVudHMgUGFyc2Vy
PExleGVyVHlwZT46OnBhcnNlQXN5bmNHZW4KICAgICAgICAgCiAgICAgcmV0dXJuIHNvdXJjZUVs
ZW1lbnRzOwogfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgTGV4ZXJUeXBlPgotdGVtcGxhdGUgPGNs
YXNzIFRyZWVCdWlsZGVyPiBUcmVlU291cmNlRWxlbWVudHMgUGFyc2VyPExleGVyVHlwZT46OnBh
cnNlU2luZ2xlRnVuY3Rpb24oVHJlZUJ1aWxkZXImIGNvbnRleHQsIHN0ZDo6b3B0aW9uYWw8aW50
PiBmdW5jdGlvbkNvbnN0cnVjdG9yUGFyYW1ldGVyc0VuZFBvc2l0aW9uKQotewotICAgIFRyZWVT
b3VyY2VFbGVtZW50cyBzb3VyY2VFbGVtZW50cyA9IGNvbnRleHQuY3JlYXRlU291cmNlRWxlbWVu
dHMoKTsKLSAgICBUcmVlU3RhdGVtZW50IHN0YXRlbWVudCA9IDA7Ci0gICAgc3dpdGNoIChtX3Rv
a2VuLm1fdHlwZSkgewotICAgIGNhc2UgRlVOQ1RJT046Ci0gICAgICAgIHN0YXRlbWVudCA9IHBh
cnNlRnVuY3Rpb25EZWNsYXJhdGlvbihjb250ZXh0LCBFeHBvcnRUeXBlOjpOb3RFeHBvcnRlZCwg
RGVjbGFyYXRpb25EZWZhdWx0Q29udGV4dDo6U3RhbmRhcmQsIGZ1bmN0aW9uQ29uc3RydWN0b3JQ
YXJhbWV0ZXJzRW5kUG9zaXRpb24pOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIElERU5UOgot
ICAgICAgICBpZiAoKm1fdG9rZW4ubV9kYXRhLmlkZW50ID09IG1fdm0tPnByb3BlcnR5TmFtZXMt
PmFzeW5jICYmICFtX3Rva2VuLm1fZGF0YS5lc2NhcGVkKSB7Ci0gICAgICAgICAgICBuZXh0KCk7
Ci0gICAgICAgICAgICBmYWlsSWZGYWxzZShtYXRjaChGVU5DVElPTikgJiYgIW1fbGV4ZXItPnBy
ZXZUZXJtaW5hdG9yKCksICJDYW5ub3QgcGFyc2UgdGhlIGFzeW5jIGZ1bmN0aW9uIik7Ci0gICAg
ICAgICAgICBzdGF0ZW1lbnQgPSBwYXJzZUFzeW5jRnVuY3Rpb25EZWNsYXJhdGlvbihjb250ZXh0
LCBFeHBvcnRUeXBlOjpOb3RFeHBvcnRlZCwgRGVjbGFyYXRpb25EZWZhdWx0Q29udGV4dDo6U3Rh
bmRhcmQsIGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJzRW5kUG9zaXRpb24pOwotICAgICAg
ICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSAgICAgICAgRkFMTFRIUk9VR0g7Ci0gICAgZGVmYXVs
dDoKLSAgICAgICAgZmFpbER1ZVRvVW5leHBlY3RlZFRva2VuKCk7Ci0gICAgICAgIGJyZWFrOwot
ICAgIH0KLQotICAgIGlmIChzdGF0ZW1lbnQpIHsKLSAgICAgICAgY29udGV4dC5zZXRFbmRPZmZz
ZXQoc3RhdGVtZW50LCBtX2xhc3RUb2tlbkVuZFBvc2l0aW9uLm9mZnNldCk7Ci0gICAgICAgIGNv
bnRleHQuYXBwZW5kU3RhdGVtZW50KHNvdXJjZUVsZW1lbnRzLCBzdGF0ZW1lbnQpOwotICAgIH0K
LQotICAgIHByb3BhZ2F0ZUVycm9yKCk7Ci0gICAgcmV0dXJuIHNvdXJjZUVsZW1lbnRzOwotfQot
CiAgICAgCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgTGV4ZXJUeXBlPgogdGVtcGxhdGUgPGNsYXNzIFRy
ZWVCdWlsZGVyPiBUcmVlU3RhdGVtZW50IFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZVN0YXRlbWVu
dExpc3RJdGVtKFRyZWVCdWlsZGVyJiBjb250ZXh0LCBjb25zdCBJZGVudGlmaWVyKiYgZGlyZWN0
aXZlLCB1bnNpZ25lZCogZGlyZWN0aXZlTGl0ZXJhbExlbmd0aCkKQEAgLTIyOTcsNyArMjI2Myw3
IEBAIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gdHlwZW5hbWUgVHJlZUJ1aWxkZXI6OkZv
cm1hbFBhcmFtZXRlckxpc3QgUGFyc2VyPExlCiB9CiAKIHRlbXBsYXRlIDx0eXBlbmFtZSBMZXhl
clR5cGU+Ci10ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IGJvb2wgUGFyc2VyPExleGVyVHlw
ZT46OnBhcnNlRnVuY3Rpb25JbmZvKFRyZWVCdWlsZGVyJiBjb250ZXh0LCBGdW5jdGlvbk5hbWVS
ZXF1aXJlbWVudHMgcmVxdWlyZW1lbnRzLCBTb3VyY2VQYXJzZU1vZGUgbW9kZSwgYm9vbCBuYW1l
SXNJbkNvbnRhaW5pbmdTY29wZSwgQ29uc3RydWN0b3JLaW5kIGNvbnN0cnVjdG9yS2luZCwgU3Vw
ZXJCaW5kaW5nIGV4cGVjdGVkU3VwZXJCaW5kaW5nLCBpbnQgZnVuY3Rpb25LZXl3b3JkU3RhcnQs
IFBhcnNlckZ1bmN0aW9uSW5mbzxUcmVlQnVpbGRlcj4mIGZ1bmN0aW9uSW5mbywgRnVuY3Rpb25E
ZWZpbml0aW9uVHlwZSBmdW5jdGlvbkRlZmluaXRpb25UeXBlLCBzdGQ6Om9wdGlvbmFsPGludD4g
ZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQb3NpdGlvbikKK3RlbXBsYXRlIDxjbGFz
cyBUcmVlQnVpbGRlcj4gYm9vbCBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VGdW5jdGlvbkluZm8o
VHJlZUJ1aWxkZXImIGNvbnRleHQsIEZ1bmN0aW9uTmFtZVJlcXVpcmVtZW50cyByZXF1aXJlbWVu
dHMsIFNvdXJjZVBhcnNlTW9kZSBtb2RlLCBib29sIG5hbWVJc0luQ29udGFpbmluZ1Njb3BlLCBD
b25zdHJ1Y3RvcktpbmQgY29uc3RydWN0b3JLaW5kLCBTdXBlckJpbmRpbmcgZXhwZWN0ZWRTdXBl
ckJpbmRpbmcsIGludCBmdW5jdGlvbktleXdvcmRTdGFydCwgUGFyc2VyRnVuY3Rpb25JbmZvPFRy
ZWVCdWlsZGVyPiYgZnVuY3Rpb25JbmZvLCBGdW5jdGlvbkRlZmluaXRpb25UeXBlIGZ1bmN0aW9u
RGVmaW5pdGlvblR5cGUpCiB7CiAgICAgUkVMRUFTRV9BU1NFUlQoaXNGdW5jdGlvblBhcnNlTW9k
ZShtb2RlKSk7CiAKQEAgLTI0OTMsMTAgKzI0NTksNiBAQCB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1
aWxkZXI+IGJvb2wgUGFyc2VyPExleGVyVHlwZT46OnBhcnNlRnVuY3Rpb25JbmZvKFRyZWVCdWls
ZAogICAgICAgICB9CiAgICAgICAgIAogICAgICAgICBtYXRjaE9yRmFpbChPUEVOQlJBQ0UsICJF
eHBlY3RlZCBhbiBvcGVuaW5nICd7JyBhdCB0aGUgc3RhcnQgb2YgYSAiLCBzdHJpbmdGb3JGdW5j
dGlvbk1vZGUobW9kZSksICIgYm9keSIpOwotCi0gICAgICAgIC8vIElmIHRoZSBjb2RlIGlzIGlu
dm9rZWQgZnJvbSBmdW5jdGlvbiBjb25zdHJ1Y3Rvciwgd2UgbmVlZCB0byBlbnN1cmUgdGhhdCBw
YXJhbWV0ZXJzIGFyZSBvbmx5IGNvbXBvc2VkIGJ5IHRoZSBzdHJpbmcgb2ZmZXJlZCBhcyBwYXJh
bWV0ZXJzLgotICAgICAgICBpZiAoZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQb3Np
dGlvbikKLSAgICAgICAgICAgIHNlbWFudGljRmFpbElmRmFsc2UobGFzdFRva2VuRW5kUG9zaXRp
b24oKS5vZmZzZXQgPT0gKmZ1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJzRW5kUG9zaXRpb24s
ICJQYXJhbWV0ZXJzIHNob3VsZCBtYXRjaCBhcmd1bWVudHMgb2ZmZXJlZCBhcyBwYXJhbWV0ZXJz
IGluIEZ1bmN0aW9uIGNvbnN0cnVjdG9yIik7CiAgICAgICAgIAogICAgICAgICAvLyBCeXRlY29k
ZUdlbmVyYXRvciBlbWl0cyBjb2RlIHRvIHRocm93IFR5cGVFcnJvciB3aGVuIGEgY2xhc3MgY29u
c3RydWN0b3IgaXMgImNhbGwiZWQuCiAgICAgICAgIC8vIFNldCBDb25zdHJ1Y3RvcktpbmQgdG8g
Tm9uZSBmb3Igbm9uLWNvbnN0cnVjdG9yIG1ldGhvZHMgb2YgY2xhc3Nlcy4KQEAgLTI2MzEsNyAr
MjU5Myw3IEBAIHN0YXRpYyBOT19SRVRVUk5fRFVFX1RPX0NSQVNIIEZ1bmN0aW9uTWV0YWRhdGFO
b2RlKiBnZXRNZXRhZGF0YShQYXJzZXJGdW5jdGlvbkluCiBzdGF0aWMgRnVuY3Rpb25NZXRhZGF0
YU5vZGUqIGdldE1ldGFkYXRhKFBhcnNlckZ1bmN0aW9uSW5mbzxBU1RCdWlsZGVyPiYgaW5mbykg
eyByZXR1cm4gaW5mby5ib2R5OyB9CiAKIHRlbXBsYXRlIDx0eXBlbmFtZSBMZXhlclR5cGU+Ci10
ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRyZWVTdGF0ZW1lbnQgUGFyc2VyPExleGVyVHlw
ZT46OnBhcnNlRnVuY3Rpb25EZWNsYXJhdGlvbihUcmVlQnVpbGRlciYgY29udGV4dCwgRXhwb3J0
VHlwZSBleHBvcnRUeXBlLCBEZWNsYXJhdGlvbkRlZmF1bHRDb250ZXh0IGRlY2xhcmF0aW9uRGVm
YXVsdENvbnRleHQsIHN0ZDo6b3B0aW9uYWw8aW50PiBmdW5jdGlvbkNvbnN0cnVjdG9yUGFyYW1l
dGVyc0VuZFBvc2l0aW9uKQordGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlU3RhdGVt
ZW50IFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZUZ1bmN0aW9uRGVjbGFyYXRpb24oVHJlZUJ1aWxk
ZXImIGNvbnRleHQsIEV4cG9ydFR5cGUgZXhwb3J0VHlwZSwgRGVjbGFyYXRpb25EZWZhdWx0Q29u
dGV4dCBkZWNsYXJhdGlvbkRlZmF1bHRDb250ZXh0KQogewogICAgIEFTU0VSVChtYXRjaChGVU5D
VElPTikpOwogICAgIEpTVG9rZW5Mb2NhdGlvbiBsb2NhdGlvbih0b2tlbkxvY2F0aW9uKCkpOwpA
QCAtMjY2OCw3ICsyNjMwLDcgQEAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlU3Rh
dGVtZW50IFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZUZ1bmN0aW9uRGVjbGEKICAgICAgICAgZnVu
Y3Rpb25JbmZvLm5hbWUgPSAmbV92bS0+cHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuc3Rh
ckRlZmF1bHRQcml2YXRlTmFtZSgpOwogICAgIH0KIAotICAgIGZhaWxJZkZhbHNlKChwYXJzZUZ1
bmN0aW9uSW5mbyhjb250ZXh0LCByZXF1aXJlbWVudHMsIHBhcnNlTW9kZSwgdHJ1ZSwgQ29uc3Ry
dWN0b3JLaW5kOjpOb25lLCBTdXBlckJpbmRpbmc6Ok5vdE5lZWRlZCwgZnVuY3Rpb25LZXl3b3Jk
U3RhcnQsIGZ1bmN0aW9uSW5mbywgRnVuY3Rpb25EZWZpbml0aW9uVHlwZTo6RGVjbGFyYXRpb24s
IGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJzRW5kUG9zaXRpb24pKSwgIkNhbm5vdCBwYXJz
ZSB0aGlzIGZ1bmN0aW9uIik7CisgICAgZmFpbElmRmFsc2UoKHBhcnNlRnVuY3Rpb25JbmZvKGNv
bnRleHQsIHJlcXVpcmVtZW50cywgcGFyc2VNb2RlLCB0cnVlLCBDb25zdHJ1Y3RvcktpbmQ6Ok5v
bmUsIFN1cGVyQmluZGluZzo6Tm90TmVlZGVkLCBmdW5jdGlvbktleXdvcmRTdGFydCwgZnVuY3Rp
b25JbmZvLCBGdW5jdGlvbkRlZmluaXRpb25UeXBlOjpEZWNsYXJhdGlvbikpLCAiQ2Fubm90IHBh
cnNlIHRoaXMgZnVuY3Rpb24iKTsKICAgICBBU1NFUlQoZnVuY3Rpb25JbmZvLm5hbWUpOwogCiAg
ICAgc3RkOjpwYWlyPERlY2xhcmF0aW9uUmVzdWx0TWFzaywgU2NvcGVSZWY+IGZ1bmN0aW9uRGVj
bGFyYXRpb24gPSBkZWNsYXJlRnVuY3Rpb24oZnVuY3Rpb25JbmZvLm5hbWUpOwpAQCAtMjY4OSw3
ICsyNjUxLDcgQEAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlU3RhdGVtZW50IFBh
cnNlcjxMZXhlclR5cGU+OjpwYXJzZUZ1bmN0aW9uRGVjbGEKIH0KIAogdGVtcGxhdGUgPHR5cGVu
YW1lIExleGVyVHlwZT4KLXRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZVN0YXRlbWVu
dCBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VBc3luY0Z1bmN0aW9uRGVjbGFyYXRpb24oVHJlZUJ1
aWxkZXImIGNvbnRleHQsIEV4cG9ydFR5cGUgZXhwb3J0VHlwZSwgRGVjbGFyYXRpb25EZWZhdWx0
Q29udGV4dCBkZWNsYXJhdGlvbkRlZmF1bHRDb250ZXh0LCBzdGQ6Om9wdGlvbmFsPGludD4gZnVu
Y3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQb3NpdGlvbikKK3RlbXBsYXRlIDxjbGFzcyBU
cmVlQnVpbGRlcj4gVHJlZVN0YXRlbWVudCBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VBc3luY0Z1
bmN0aW9uRGVjbGFyYXRpb24oVHJlZUJ1aWxkZXImIGNvbnRleHQsIEV4cG9ydFR5cGUgZXhwb3J0
VHlwZSwgRGVjbGFyYXRpb25EZWZhdWx0Q29udGV4dCBkZWNsYXJhdGlvbkRlZmF1bHRDb250ZXh0
KQogewogICAgIEFTU0VSVChtYXRjaChGVU5DVElPTikpOwogICAgIEpTVG9rZW5Mb2NhdGlvbiBs
b2NhdGlvbih0b2tlbkxvY2F0aW9uKCkpOwpAQCAtMjcyNiw3ICsyNjg4LDcgQEAgdGVtcGxhdGUg
PGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlU3RhdGVtZW50IFBhcnNlcjxMZXhlclR5cGU+OjpwYXJz
ZUFzeW5jRnVuY3Rpb24KICAgICAgICAgZnVuY3Rpb25JbmZvLm5hbWUgPSAmbV92bS0+cHJvcGVy
dHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuc3RhckRlZmF1bHRQcml2YXRlTmFtZSgpOwogICAgIH0K
IAotICAgIGZhaWxJZkZhbHNlKChwYXJzZUZ1bmN0aW9uSW5mbyhjb250ZXh0LCByZXF1aXJlbWVu
dHMsIHBhcnNlTW9kZSwgdHJ1ZSwgQ29uc3RydWN0b3JLaW5kOjpOb25lLCBTdXBlckJpbmRpbmc6
Ok5vdE5lZWRlZCwgZnVuY3Rpb25LZXl3b3JkU3RhcnQsIGZ1bmN0aW9uSW5mbywgRnVuY3Rpb25E
ZWZpbml0aW9uVHlwZTo6RGVjbGFyYXRpb24sIGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJz
RW5kUG9zaXRpb24pKSwgIkNhbm5vdCBwYXJzZSB0aGlzIGFzeW5jIGZ1bmN0aW9uIik7CisgICAg
ZmFpbElmRmFsc2UoKHBhcnNlRnVuY3Rpb25JbmZvKGNvbnRleHQsIHJlcXVpcmVtZW50cywgcGFy
c2VNb2RlLCB0cnVlLCBDb25zdHJ1Y3RvcktpbmQ6Ok5vbmUsIFN1cGVyQmluZGluZzo6Tm90TmVl
ZGVkLCBmdW5jdGlvbktleXdvcmRTdGFydCwgZnVuY3Rpb25JbmZvLCBGdW5jdGlvbkRlZmluaXRp
b25UeXBlOjpEZWNsYXJhdGlvbikpLCAiQ2Fubm90IHBhcnNlIHRoaXMgYXN5bmMgZnVuY3Rpb24i
KTsKICAgICBmYWlsSWZGYWxzZShmdW5jdGlvbkluZm8ubmFtZSwgIkFzeW5jIGZ1bmN0aW9uIHN0
YXRlbWVudHMgbXVzdCBoYXZlIGEgbmFtZSIpOwogCiAgICAgc3RkOjpwYWlyPERlY2xhcmF0aW9u
UmVzdWx0TWFzaywgU2NvcGVSZWY+IGZ1bmN0aW9uRGVjbGFyYXRpb24gPSBkZWNsYXJlRnVuY3Rp
b24oZnVuY3Rpb25JbmZvLm5hbWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3BhcnNlci9QYXJzZXIuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmgK
aW5kZXggNjUzM2VmOWJlODYxNzllZWI5YTVjNTgxYWRiYTdlMDZiZjY0MDg5Mi4uNGE2ZWUyNTlj
OTU4YTIxYmY1NDk2NGU1YjRlOWRhN2NiNGFiYmMyZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFy
c2VyL1BhcnNlci5oCkBAIC04NTksOCArODU5LDEwIEBAIHByaXZhdGU6CiAgICAgdW5zaWduZWQg
bV9pbmRleDsKIH07CiAKLWVudW0gY2xhc3MgQXJndW1lbnRUeXBlIHsgTm9ybWFsLCBTcHJlYWQg
fTsKLWVudW0gY2xhc3MgUGFyc2luZ0NvbnRleHQgeyBQcm9ncmFtLCBGdW5jdGlvbkNvbnN0cnVj
dG9yLCBFdmFsIH07CitlbnVtIGNsYXNzIEFyZ3VtZW50VHlwZSB7CisgICAgTm9ybWFsLAorICAg
IFNwcmVhZAorfTsKIAogdGVtcGxhdGUgPHR5cGVuYW1lIExleGVyVHlwZT4KIGNsYXNzIFBhcnNl
ciB7CkBAIC04NzIsNyArODc0LDcgQEAgcHVibGljOgogICAgIH5QYXJzZXIoKTsKIAogICAgIHRl
bXBsYXRlIDxjbGFzcyBQYXJzZWROb2RlPgotICAgIHN0ZDo6dW5pcXVlX3B0cjxQYXJzZWROb2Rl
PiBwYXJzZShQYXJzZXJFcnJvciYsIGNvbnN0IElkZW50aWZpZXImLCBTb3VyY2VQYXJzZU1vZGUs
IFBhcnNpbmdDb250ZXh0LCBzdGQ6Om9wdGlvbmFsPGludD4gZnVuY3Rpb25Db25zdHJ1Y3RvclBh
cmFtZXRlcnNFbmRQb3NpdGlvbiA9IHN0ZDo6bnVsbG9wdCk7CisgICAgc3RkOjp1bmlxdWVfcHRy
PFBhcnNlZE5vZGU+IHBhcnNlKFBhcnNlckVycm9yJiwgY29uc3QgSWRlbnRpZmllciYsIFNvdXJj
ZVBhcnNlTW9kZSk7CiAKICAgICBKU1RleHRQb3NpdGlvbiBwb3NpdGlvbkJlZm9yZUxhc3ROZXds
aW5lKCkgY29uc3QgeyByZXR1cm4gbV9sZXhlci0+cG9zaXRpb25CZWZvcmVMYXN0TmV3bGluZSgp
OyB9CiAgICAgSlNUb2tlbkxvY2F0aW9uIGxvY2F0aW9uQmVmb3JlTGFzdFRva2VuKCkgY29uc3Qg
eyByZXR1cm4gbV9sZXhlci0+bGFzdFRva2VuTG9jYXRpb24oKTsgfQpAQCAtMTMxMCw4ICsxMzEy
LDcgQEAgcHJpdmF0ZToKICAgICB9CiAKICAgICBQYXJzZXIoKTsKLQotICAgIFN0cmluZyBwYXJz
ZUlubmVyKGNvbnN0IElkZW50aWZpZXImLCBTb3VyY2VQYXJzZU1vZGUsIFBhcnNpbmdDb250ZXh0
LCBzdGQ6Om9wdGlvbmFsPGludD4gZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQb3Np
dGlvbiA9IHN0ZDo6bnVsbG9wdCk7CisgICAgU3RyaW5nIHBhcnNlSW5uZXIoY29uc3QgSWRlbnRp
ZmllciYsIFNvdXJjZVBhcnNlTW9kZSk7CiAKICAgICB2b2lkIGRpZEZpbmlzaFBhcnNpbmcoU291
cmNlRWxlbWVudHMqLCBEZWNsYXJhdGlvblN0YWNrczo6RnVuY3Rpb25TdGFjayYmLCBWYXJpYWJs
ZUVudmlyb25tZW50JiwgVW5pcXVlZFN0cmluZ0ltcGxQdHJTZXQmJiwgQ29kZUZlYXR1cmVzLCBp
bnQpOwogCkBAIC0xNTIzLDE0ICsxNTI0LDEzIEBAIHByaXZhdGU6CiAgICAgdGVtcGxhdGUgPGNs
YXNzIFRyZWVCdWlsZGVyPiBUcmVlU291cmNlRWxlbWVudHMgcGFyc2VHZW5lcmF0b3JGdW5jdGlv
blNvdXJjZUVsZW1lbnRzKFRyZWVCdWlsZGVyJiwgY29uc3QgSWRlbnRpZmllciYgbmFtZSwgU291
cmNlRWxlbWVudHNNb2RlKTsKICAgICB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRyZWVT
b3VyY2VFbGVtZW50cyBwYXJzZUFzeW5jRnVuY3Rpb25Tb3VyY2VFbGVtZW50cyhUcmVlQnVpbGRl
ciYsIFNvdXJjZVBhcnNlTW9kZSwgYm9vbCBpc0Fycm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbiwg
U291cmNlRWxlbWVudHNNb2RlKTsKICAgICB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRy
ZWVTb3VyY2VFbGVtZW50cyBwYXJzZUFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Tb3VyY2VFbGVtZW50
cyhUcmVlQnVpbGRlciYsIFNvdXJjZVBhcnNlTW9kZSwgYm9vbCBpc0Fycm93RnVuY3Rpb25Cb2R5
RXhwcmVzc2lvbiwgU291cmNlRWxlbWVudHNNb2RlKTsKLSAgICB0ZW1wbGF0ZSA8Y2xhc3MgVHJl
ZUJ1aWxkZXI+IFRyZWVTb3VyY2VFbGVtZW50cyBwYXJzZVNpbmdsZUZ1bmN0aW9uKFRyZWVCdWls
ZGVyJiwgc3RkOjpvcHRpb25hbDxpbnQ+IGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJzRW5k
UG9zaXRpb24pOwogICAgIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZVN0YXRlbWVu
dCBwYXJzZVN0YXRlbWVudExpc3RJdGVtKFRyZWVCdWlsZGVyJiwgY29uc3QgSWRlbnRpZmllciom
IGRpcmVjdGl2ZSwgdW5zaWduZWQqIGRpcmVjdGl2ZUxpdGVyYWxMZW5ndGgpOwogICAgIHRlbXBs
YXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZVN0YXRlbWVudCBwYXJzZVN0YXRlbWVudChUcmVl
QnVpbGRlciYsIGNvbnN0IElkZW50aWZpZXIqJiBkaXJlY3RpdmUsIHVuc2lnbmVkKiBkaXJlY3Rp
dmVMaXRlcmFsTGVuZ3RoID0gMCk7CiAgICAgZW51bSBjbGFzcyBFeHBvcnRUeXBlIHsgRXhwb3J0
ZWQsIE5vdEV4cG9ydGVkIH07CiAgICAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVl
U3RhdGVtZW50IHBhcnNlQ2xhc3NEZWNsYXJhdGlvbihUcmVlQnVpbGRlciYsIEV4cG9ydFR5cGUg
PSBFeHBvcnRUeXBlOjpOb3RFeHBvcnRlZCwgRGVjbGFyYXRpb25EZWZhdWx0Q29udGV4dCA9IERl
Y2xhcmF0aW9uRGVmYXVsdENvbnRleHQ6OlN0YW5kYXJkKTsKLSAgICB0ZW1wbGF0ZSA8Y2xhc3Mg
VHJlZUJ1aWxkZXI+IFRyZWVTdGF0ZW1lbnQgcGFyc2VGdW5jdGlvbkRlY2xhcmF0aW9uKFRyZWVC
dWlsZGVyJiwgRXhwb3J0VHlwZSA9IEV4cG9ydFR5cGU6Ok5vdEV4cG9ydGVkLCBEZWNsYXJhdGlv
bkRlZmF1bHRDb250ZXh0ID0gRGVjbGFyYXRpb25EZWZhdWx0Q29udGV4dDo6U3RhbmRhcmQsIHN0
ZDo6b3B0aW9uYWw8aW50PiBmdW5jdGlvbkNvbnN0cnVjdG9yUGFyYW1ldGVyc0VuZFBvc2l0aW9u
ID0gc3RkOjpudWxsb3B0KTsKKyAgICB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRyZWVT
dGF0ZW1lbnQgcGFyc2VGdW5jdGlvbkRlY2xhcmF0aW9uKFRyZWVCdWlsZGVyJiwgRXhwb3J0VHlw
ZSA9IEV4cG9ydFR5cGU6Ok5vdEV4cG9ydGVkLCBEZWNsYXJhdGlvbkRlZmF1bHRDb250ZXh0ID0g
RGVjbGFyYXRpb25EZWZhdWx0Q29udGV4dDo6U3RhbmRhcmQpOwogICAgIHRlbXBsYXRlIDxjbGFz
cyBUcmVlQnVpbGRlcj4gVHJlZVN0YXRlbWVudCBwYXJzZUZ1bmN0aW9uRGVjbGFyYXRpb25TdGF0
ZW1lbnQoVHJlZUJ1aWxkZXImLCBib29sIGlzQXN5bmMsIGJvb2wgcGFyZW50QWxsb3dzRnVuY3Rp
b25EZWNsYXJhdGlvbkFzU3RhdGVtZW50KTsKLSAgICB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxk
ZXI+IFRyZWVTdGF0ZW1lbnQgcGFyc2VBc3luY0Z1bmN0aW9uRGVjbGFyYXRpb24oVHJlZUJ1aWxk
ZXImLCBFeHBvcnRUeXBlID0gRXhwb3J0VHlwZTo6Tm90RXhwb3J0ZWQsIERlY2xhcmF0aW9uRGVm
YXVsdENvbnRleHQgPSBEZWNsYXJhdGlvbkRlZmF1bHRDb250ZXh0OjpTdGFuZGFyZCwgc3RkOjpv
cHRpb25hbDxpbnQ+IGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJzRW5kUG9zaXRpb24gPSBz
dGQ6Om51bGxvcHQpOworICAgIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZVN0YXRl
bWVudCBwYXJzZUFzeW5jRnVuY3Rpb25EZWNsYXJhdGlvbihUcmVlQnVpbGRlciYsIEV4cG9ydFR5
cGUgPSBFeHBvcnRUeXBlOjpOb3RFeHBvcnRlZCwgRGVjbGFyYXRpb25EZWZhdWx0Q29udGV4dCA9
IERlY2xhcmF0aW9uRGVmYXVsdENvbnRleHQ6OlN0YW5kYXJkKTsKICAgICB0ZW1wbGF0ZSA8Y2xh
c3MgVHJlZUJ1aWxkZXI+IE5FVkVSX0lOTElORSBib29sIG1heWJlUGFyc2VBc3luY0Z1bmN0aW9u
RGVjbGFyYXRpb25TdGF0ZW1lbnQoVHJlZUJ1aWxkZXImIGNvbnRleHQsIFRyZWVTdGF0ZW1lbnQm
IHJlc3VsdCwgYm9vbCBwYXJlbnRBbGxvd3NGdW5jdGlvbkRlY2xhcmF0aW9uQXNTdGF0ZW1lbnQp
OwogICAgIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZVN0YXRlbWVudCBwYXJzZVZh
cmlhYmxlRGVjbGFyYXRpb24oVHJlZUJ1aWxkZXImLCBEZWNsYXJhdGlvblR5cGUsIEV4cG9ydFR5
cGUgPSBFeHBvcnRUeXBlOjpOb3RFeHBvcnRlZCk7CiAgICAgdGVtcGxhdGUgPGNsYXNzIFRyZWVC
dWlsZGVyPiBUcmVlU3RhdGVtZW50IHBhcnNlRG9XaGlsZVN0YXRlbWVudChUcmVlQnVpbGRlciYp
OwpAQCAtMTU5OSw3ICsxNTk5LDcgQEAgcHJpdmF0ZToKICAgICB0ZW1wbGF0ZSA8Y2xhc3MgVHJl
ZUJ1aWxkZXI+IEFMV0FZU19JTkxJTkUgVHJlZUV4cHJlc3Npb24gY3JlYXRlUmVzb2x2ZUFuZFVz
ZVZhcmlhYmxlKFRyZWVCdWlsZGVyJiwgY29uc3QgSWRlbnRpZmllciosIGJvb2wgaXNFdmFsLCBj
b25zdCBKU1RleHRQb3NpdGlvbiYsIGNvbnN0IEpTVG9rZW5Mb2NhdGlvbiYpOwogCiAgICAgZW51
bSBjbGFzcyBGdW5jdGlvbkRlZmluaXRpb25UeXBlIHsgRXhwcmVzc2lvbiwgRGVjbGFyYXRpb24s
IE1ldGhvZCB9OwotICAgIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gTkVWRVJfSU5MSU5F
IGJvb2wgcGFyc2VGdW5jdGlvbkluZm8oVHJlZUJ1aWxkZXImLCBGdW5jdGlvbk5hbWVSZXF1aXJl
bWVudHMsIFNvdXJjZVBhcnNlTW9kZSwgYm9vbCBuYW1lSXNJbkNvbnRhaW5pbmdTY29wZSwgQ29u
c3RydWN0b3JLaW5kLCBTdXBlckJpbmRpbmcsIGludCBmdW5jdGlvbktleXdvcmRTdGFydCwgUGFy
c2VyRnVuY3Rpb25JbmZvPFRyZWVCdWlsZGVyPiYsIEZ1bmN0aW9uRGVmaW5pdGlvblR5cGUsIHN0
ZDo6b3B0aW9uYWw8aW50PiBmdW5jdGlvbkNvbnN0cnVjdG9yUGFyYW1ldGVyc0VuZFBvc2l0aW9u
ID0gc3RkOjpudWxsb3B0KTsKKyAgICB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IE5FVkVS
X0lOTElORSBib29sIHBhcnNlRnVuY3Rpb25JbmZvKFRyZWVCdWlsZGVyJiwgRnVuY3Rpb25OYW1l
UmVxdWlyZW1lbnRzLCBTb3VyY2VQYXJzZU1vZGUsIGJvb2wgbmFtZUlzSW5Db250YWluaW5nU2Nv
cGUsIENvbnN0cnVjdG9yS2luZCwgU3VwZXJCaW5kaW5nLCBpbnQgZnVuY3Rpb25LZXl3b3JkU3Rh
cnQsIFBhcnNlckZ1bmN0aW9uSW5mbzxUcmVlQnVpbGRlcj4mLCBGdW5jdGlvbkRlZmluaXRpb25U
eXBlKTsKICAgICAKICAgICBBTFdBWVNfSU5MSU5FIGJvb2wgaXNBcnJvd0Z1bmN0aW9uUGFyYW1l
dGVycygpOwogICAgIApAQCAtMTg0Nyw3ICsxODQ3LDcgQEAgcHJpdmF0ZToKIAogdGVtcGxhdGUg
PHR5cGVuYW1lIExleGVyVHlwZT4KIHRlbXBsYXRlIDxjbGFzcyBQYXJzZWROb2RlPgotc3RkOjp1
bmlxdWVfcHRyPFBhcnNlZE5vZGU+IFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZShQYXJzZXJFcnJv
ciYgZXJyb3IsIGNvbnN0IElkZW50aWZpZXImIGNhbGxlZU5hbWUsIFNvdXJjZVBhcnNlTW9kZSBw
YXJzZU1vZGUsIFBhcnNpbmdDb250ZXh0IHBhcnNpbmdDb250ZXh0LCBzdGQ6Om9wdGlvbmFsPGlu
dD4gZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQb3NpdGlvbikKK3N0ZDo6dW5pcXVl
X3B0cjxQYXJzZWROb2RlPiBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2UoUGFyc2VyRXJyb3ImIGVy
cm9yLCBjb25zdCBJZGVudGlmaWVyJiBjYWxsZWVOYW1lLCBTb3VyY2VQYXJzZU1vZGUgcGFyc2VN
b2RlKQogewogICAgIGludCBlcnJMaW5lOwogICAgIFN0cmluZyBlcnJNc2c7CkBAIC0xODY0LDcg
KzE4NjQsNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8UGFyc2VkTm9kZT4gUGFyc2VyPExleGVyVHlwZT46
OnBhcnNlKFBhcnNlckVycm9yJiBlcnJvciwgY29uc3QgSQogICAgIEFTU0VSVChtX3NvdXJjZS0+
c3RhcnRDb2x1bW4oKSA+IE9yZGluYWxOdW1iZXI6OmJlZm9yZUZpcnN0KCkpOwogICAgIHVuc2ln
bmVkIHN0YXJ0Q29sdW1uID0gbV9zb3VyY2UtPnN0YXJ0Q29sdW1uKCkuemVyb0Jhc2VkSW50KCk7
CiAKLSAgICBTdHJpbmcgcGFyc2VFcnJvciA9IHBhcnNlSW5uZXIoY2FsbGVlTmFtZSwgcGFyc2VN
b2RlLCBwYXJzaW5nQ29udGV4dCwgZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQb3Np
dGlvbik7CisgICAgU3RyaW5nIHBhcnNlRXJyb3IgPSBwYXJzZUlubmVyKGNhbGxlZU5hbWUsIHBh
cnNlTW9kZSk7CiAKICAgICBpbnQgbGluZU51bWJlciA9IG1fbGV4ZXItPmxpbmVOdW1iZXIoKTsK
ICAgICBib29sIGxleEVycm9yID0gbV9sZXhlci0+c2F3RXJyb3IoKTsKQEAgLTE5NTksNyArMTk1
OSw3IEBAIHN0ZDo6dW5pcXVlX3B0cjxQYXJzZWROb2RlPiBwYXJzZSgKICAgICBzdGQ6OnVuaXF1
ZV9wdHI8UGFyc2VkTm9kZT4gcmVzdWx0OwogICAgIGlmIChzb3VyY2UucHJvdmlkZXIoKS0+c291
cmNlKCkuaXM4Qml0KCkpIHsKICAgICAgICAgUGFyc2VyPExleGVyPExDaGFyPj4gcGFyc2VyKHZt
LCBzb3VyY2UsIGJ1aWx0aW5Nb2RlLCBzdHJpY3RNb2RlLCBzY3JpcHRNb2RlLCBwYXJzZU1vZGUs
IHN1cGVyQmluZGluZywgZGVmYXVsdENvbnN0cnVjdG9yS2luZCwgZGVyaXZlZENvbnRleHRUeXBl
LCBpc0V2YWxOb2RlPFBhcnNlZE5vZGU+KCksIGV2YWxDb250ZXh0VHlwZSwgZGVidWdnZXJQYXJz
ZURhdGEpOwotICAgICAgICByZXN1bHQgPSBwYXJzZXIucGFyc2U8UGFyc2VkTm9kZT4oZXJyb3Is
IG5hbWUsIHBhcnNlTW9kZSwgaXNFdmFsTm9kZTxQYXJzZWROb2RlPigpID8gUGFyc2luZ0NvbnRl
eHQ6OkV2YWwgOiBQYXJzaW5nQ29udGV4dDo6UHJvZ3JhbSk7CisgICAgICAgIHJlc3VsdCA9IHBh
cnNlci5wYXJzZTxQYXJzZWROb2RlPihlcnJvciwgbmFtZSwgcGFyc2VNb2RlKTsKICAgICAgICAg
aWYgKHBvc2l0aW9uQmVmb3JlTGFzdE5ld2xpbmUpCiAgICAgICAgICAgICAqcG9zaXRpb25CZWZv
cmVMYXN0TmV3bGluZSA9IHBhcnNlci5wb3NpdGlvbkJlZm9yZUxhc3ROZXdsaW5lKCk7CiAgICAg
ICAgIGlmIChidWlsdGluTW9kZSA9PSBKU1BhcnNlckJ1aWx0aW5Nb2RlOjpCdWlsdGluKSB7CkBA
IC0xOTcyLDcgKzE5NzIsNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8UGFyc2VkTm9kZT4gcGFyc2UoCiAg
ICAgfSBlbHNlIHsKICAgICAgICAgQVNTRVJUX1dJVEhfTUVTU0FHRShkZWZhdWx0Q29uc3RydWN0
b3JLaW5kID09IENvbnN0cnVjdG9yS2luZDo6Tm9uZSwgIkJ1aWx0aW5FeGVjdXRhYmxlczo6Y3Jl
YXRlRGVmYXVsdENvbnN0cnVjdG9yIHNob3VsZCBhbHdheXMgdXNlIGEgOC1iaXQgc3RyaW5nIik7
CiAgICAgICAgIFBhcnNlcjxMZXhlcjxVQ2hhcj4+IHBhcnNlcih2bSwgc291cmNlLCBidWlsdGlu
TW9kZSwgc3RyaWN0TW9kZSwgc2NyaXB0TW9kZSwgcGFyc2VNb2RlLCBzdXBlckJpbmRpbmcsIGRl
ZmF1bHRDb25zdHJ1Y3RvcktpbmQsIGRlcml2ZWRDb250ZXh0VHlwZSwgaXNFdmFsTm9kZTxQYXJz
ZWROb2RlPigpLCBldmFsQ29udGV4dFR5cGUsIGRlYnVnZ2VyUGFyc2VEYXRhKTsKLSAgICAgICAg
cmVzdWx0ID0gcGFyc2VyLnBhcnNlPFBhcnNlZE5vZGU+KGVycm9yLCBuYW1lLCBwYXJzZU1vZGUs
IGlzRXZhbE5vZGU8UGFyc2VkTm9kZT4oKSA/IFBhcnNpbmdDb250ZXh0OjpFdmFsIDogUGFyc2lu
Z0NvbnRleHQ6OlByb2dyYW0pOworICAgICAgICByZXN1bHQgPSBwYXJzZXIucGFyc2U8UGFyc2Vk
Tm9kZT4oZXJyb3IsIG5hbWUsIHBhcnNlTW9kZSk7CiAgICAgICAgIGlmIChwb3NpdGlvbkJlZm9y
ZUxhc3ROZXdsaW5lKQogICAgICAgICAgICAgKnBvc2l0aW9uQmVmb3JlTGFzdE5ld2xpbmUgPSBw
YXJzZXIucG9zaXRpb25CZWZvcmVMYXN0TmV3bGluZSgpOwogICAgIH0KQEAgLTE5ODYsMzcgKzE5
ODYsNCBAQCBzdGQ6OnVuaXF1ZV9wdHI8UGFyc2VkTm9kZT4gcGFyc2UoCiAgICAgcmV0dXJuIHJl
c3VsdDsKIH0KIAotaW5saW5lIHN0ZDo6dW5pcXVlX3B0cjxQcm9ncmFtTm9kZT4gcGFyc2VGdW5j
dGlvbkZvckZ1bmN0aW9uQ29uc3RydWN0b3IoVk0mIHZtLCBjb25zdCBTb3VyY2VDb2RlJiBzb3Vy
Y2UsIFBhcnNlckVycm9yJiBlcnJvciwgSlNUZXh0UG9zaXRpb24qIHBvc2l0aW9uQmVmb3JlTGFz
dE5ld2xpbmUsIHN0ZDo6b3B0aW9uYWw8aW50PiBmdW5jdGlvbkNvbnN0cnVjdG9yUGFyYW1ldGVy
c0VuZFBvc2l0aW9uKQotewotICAgIEFTU0VSVCghc291cmNlLnByb3ZpZGVyKCktPnNvdXJjZSgp
LmlzTnVsbCgpKTsKLQotICAgIE1vbm90b25pY1RpbWUgYmVmb3JlOwotICAgIGlmIChVTkxJS0VM
WShPcHRpb25zOjpyZXBvcnRQYXJzZVRpbWVzKCkpKQotICAgICAgICBiZWZvcmUgPSBNb25vdG9u
aWNUaW1lOjpub3coKTsKLQotICAgIElkZW50aWZpZXIgbmFtZTsKLSAgICBib29sIGlzRXZhbE5v
ZGUgPSBmYWxzZTsKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8UHJvZ3JhbU5vZGU+IHJlc3VsdDsKLSAg
ICBpZiAoc291cmNlLnByb3ZpZGVyKCktPnNvdXJjZSgpLmlzOEJpdCgpKSB7Ci0gICAgICAgIFBh
cnNlcjxMZXhlcjxMQ2hhcj4+IHBhcnNlcigmdm0sIHNvdXJjZSwgSlNQYXJzZXJCdWlsdGluTW9k
ZTo6Tm90QnVpbHRpbiwgSlNQYXJzZXJTdHJpY3RNb2RlOjpOb3RTdHJpY3QsIEpTUGFyc2VyU2Ny
aXB0TW9kZTo6Q2xhc3NpYywgU291cmNlUGFyc2VNb2RlOjpQcm9ncmFtTW9kZSwgU3VwZXJCaW5k
aW5nOjpOb3ROZWVkZWQsIENvbnN0cnVjdG9yS2luZDo6Tm9uZSwgRGVyaXZlZENvbnRleHRUeXBl
OjpOb25lLCBpc0V2YWxOb2RlLCBFdmFsQ29udGV4dFR5cGU6Ok5vbmUsIG51bGxwdHIpOwotICAg
ICAgICByZXN1bHQgPSBwYXJzZXIucGFyc2U8UHJvZ3JhbU5vZGU+KGVycm9yLCBuYW1lLCBTb3Vy
Y2VQYXJzZU1vZGU6OlByb2dyYW1Nb2RlLCBQYXJzaW5nQ29udGV4dDo6RnVuY3Rpb25Db25zdHJ1
Y3RvciwgZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQb3NpdGlvbik7Ci0gICAgICAg
IGlmIChwb3NpdGlvbkJlZm9yZUxhc3ROZXdsaW5lKQotICAgICAgICAgICAgKnBvc2l0aW9uQmVm
b3JlTGFzdE5ld2xpbmUgPSBwYXJzZXIucG9zaXRpb25CZWZvcmVMYXN0TmV3bGluZSgpOwotICAg
IH0gZWxzZSB7Ci0gICAgICAgIFBhcnNlcjxMZXhlcjxVQ2hhcj4+IHBhcnNlcigmdm0sIHNvdXJj
ZSwgSlNQYXJzZXJCdWlsdGluTW9kZTo6Tm90QnVpbHRpbiwgSlNQYXJzZXJTdHJpY3RNb2RlOjpO
b3RTdHJpY3QsIEpTUGFyc2VyU2NyaXB0TW9kZTo6Q2xhc3NpYywgU291cmNlUGFyc2VNb2RlOjpQ
cm9ncmFtTW9kZSwgU3VwZXJCaW5kaW5nOjpOb3ROZWVkZWQsIENvbnN0cnVjdG9yS2luZDo6Tm9u
ZSwgRGVyaXZlZENvbnRleHRUeXBlOjpOb25lLCBpc0V2YWxOb2RlLCBFdmFsQ29udGV4dFR5cGU6
Ok5vbmUsIG51bGxwdHIpOwotICAgICAgICByZXN1bHQgPSBwYXJzZXIucGFyc2U8UHJvZ3JhbU5v
ZGU+KGVycm9yLCBuYW1lLCBTb3VyY2VQYXJzZU1vZGU6OlByb2dyYW1Nb2RlLCBQYXJzaW5nQ29u
dGV4dDo6RnVuY3Rpb25Db25zdHJ1Y3RvciwgZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNF
bmRQb3NpdGlvbik7Ci0gICAgICAgIGlmIChwb3NpdGlvbkJlZm9yZUxhc3ROZXdsaW5lKQotICAg
ICAgICAgICAgKnBvc2l0aW9uQmVmb3JlTGFzdE5ld2xpbmUgPSBwYXJzZXIucG9zaXRpb25CZWZv
cmVMYXN0TmV3bGluZSgpOwotICAgIH0KLQotICAgIGlmIChVTkxJS0VMWShPcHRpb25zOjpyZXBv
cnRQYXJzZVRpbWVzKCkpKSB7Ci0gICAgICAgIE1vbm90b25pY1RpbWUgYWZ0ZXIgPSBNb25vdG9u
aWNUaW1lOjpub3coKTsKLSAgICAgICAgUGFyc2VIYXNoIGhhc2goc291cmNlKTsKLSAgICAgICAg
ZGF0YUxvZ0xuKHJlc3VsdCA/ICJQYXJzZWQgIyIgOiAiRmFpbGVkIHRvIHBhcnNlICMiLCBoYXNo
Lmhhc2hGb3JDYWxsKCksICIvIyIsIGhhc2guaGFzaEZvckNvbnN0cnVjdCgpLCAiIGluICIsIChh
ZnRlciAtIGJlZm9yZSkubWlsbGlzZWNvbmRzKCksICIgbXMuIik7Ci0gICAgfQotCi0gICAgcmV0
dXJuIHJlc3VsdDsKLX0KLQotCiB9IC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXJNb2Rlcy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3BhcnNlci9QYXJzZXJNb2Rlcy5oCmluZGV4IDllNjM3YzRhYTA5NTM3YTQ1NmViN2FkMzBkODA1
NDdiM2EyYWEwMDIuLjY5NjBlNTE1MmNmMWNlOWNlZjAzZmI0MDVmMGRkMDcwMWY3OTdjMTQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyTW9kZXMuaAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlck1vZGVzLmgKQEAgLTMzLDYgKzMz
LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiBlbnVtIGNsYXNzIEpTUGFyc2VyU3RyaWN0TW9kZSB7IE5v
dFN0cmljdCwgU3RyaWN0IH07CiBlbnVtIGNsYXNzIEpTUGFyc2VyQnVpbHRpbk1vZGUgeyBOb3RC
dWlsdGluLCBCdWlsdGluIH07CiBlbnVtIGNsYXNzIEpTUGFyc2VyU2NyaXB0TW9kZSB7IENsYXNz
aWMsIE1vZHVsZSB9OworZW51bSBjbGFzcyBKU1BhcnNlckNvZGVUeXBlIHsgUHJvZ3JhbSwgRnVu
Y3Rpb24sIE1vZHVsZSB9OwogCiBlbnVtIGNsYXNzIENvbnN0cnVjdG9yS2luZCB7IE5vbmUsIEJh
c2UsIEV4dGVuZHMgfTsKIGVudW0gY2xhc3MgU3VwZXJCaW5kaW5nIHsgTmVlZGVkLCBOb3ROZWVk
ZWQgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyVG9r
ZW5zLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlclRva2Vucy5oCmluZGV4
IDU5Y2IwZmI0Yzg2OGRlMGNjZmMyZGE4M2Y1OTQ5MjUyMzU2MGZlMDIuLjg2OTI2MDM2YjNlM2Qw
OGQ2MTgwMTAwYjlmNTQ0MTc5MTMxMzZlZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9wYXJzZXIvUGFyc2VyVG9rZW5zLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Bh
cnNlci9QYXJzZXJUb2tlbnMuaApAQCAtMTkzLDYgKzE5Myw3IEBAIGVudW0gSlNUb2tlblR5cGUg
ewogc3RydWN0IEpTVGV4dFBvc2l0aW9uIHsKICAgICBKU1RleHRQb3NpdGlvbigpID0gZGVmYXVs
dDsKICAgICBKU1RleHRQb3NpdGlvbihpbnQgX2xpbmUsIGludCBfb2Zmc2V0LCBpbnQgX2xpbmVT
dGFydE9mZnNldCkgOiBsaW5lKF9saW5lKSwgb2Zmc2V0KF9vZmZzZXQpLCBsaW5lU3RhcnRPZmZz
ZXQoX2xpbmVTdGFydE9mZnNldCkgeyB9CisgICAgSlNUZXh0UG9zaXRpb24oY29uc3QgSlNUZXh0
UG9zaXRpb24mIG90aGVyKSA6IGxpbmUob3RoZXIubGluZSksIG9mZnNldChvdGhlci5vZmZzZXQp
LCBsaW5lU3RhcnRPZmZzZXQob3RoZXIubGluZVN0YXJ0T2Zmc2V0KSB7IH0KIAogICAgIEpTVGV4
dFBvc2l0aW9uIG9wZXJhdG9yKyhpbnQgYWRqdXN0bWVudCkgY29uc3QgeyByZXR1cm4gSlNUZXh0
UG9zaXRpb24obGluZSwgb2Zmc2V0ICsgYWRqdXN0bWVudCwgbGluZVN0YXJ0T2Zmc2V0KTsgfQog
ICAgIEpTVGV4dFBvc2l0aW9uIG9wZXJhdG9yKyh1bnNpZ25lZCBhZGp1c3RtZW50KSBjb25zdCB7
IHJldHVybiAqdGhpcyArIHN0YXRpY19jYXN0PGludD4oYWRqdXN0bWVudCk7IH0KQEAgLTI0NSw2
ICsyNDYsMTMgQEAgdW5pb24gSlNUb2tlbkRhdGEgewogCiBzdHJ1Y3QgSlNUb2tlbkxvY2F0aW9u
IHsKICAgICBKU1Rva2VuTG9jYXRpb24oKSA9IGRlZmF1bHQ7CisgICAgSlNUb2tlbkxvY2F0aW9u
KGNvbnN0IEpTVG9rZW5Mb2NhdGlvbiYgbG9jYXRpb24pCisgICAgeworICAgICAgICBsaW5lID0g
bG9jYXRpb24ubGluZTsKKyAgICAgICAgbGluZVN0YXJ0T2Zmc2V0ID0gbG9jYXRpb24ubGluZVN0
YXJ0T2Zmc2V0OworICAgICAgICBzdGFydE9mZnNldCA9IGxvY2F0aW9uLnN0YXJ0T2Zmc2V0Owor
ICAgICAgICBlbmRPZmZzZXQgPSBsb2NhdGlvbi5lbmRPZmZzZXQ7CisgICAgfQogCiAgICAgaW50
IGxpbmUgeyAwIH07CiAgICAgdW5zaWduZWQgbGluZVN0YXJ0T2Zmc2V0IHsgMCB9OwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Tb3VyY2VDb2RlS2V5LmggYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1NvdXJjZUNvZGVLZXkuaAppbmRleCBiMGYwNTc1MDM5
Y2U3ZGE4NGI2MDlkNTI1NzU5MGVmNzE4ZmQxNjJmLi5hYmU0MTgxMmQ5OWQyN2NmOTMyZTNhMzBk
MmZlZmMwNmE1NGZmOTQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2Vy
L1NvdXJjZUNvZGVLZXkuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1NvdXJj
ZUNvZGVLZXkuaApAQCAtMjksNyArMjksNiBAQAogI2luY2x1ZGUgIlBhcnNlck1vZGVzLmgiCiAj
aW5jbHVkZSAiVW5saW5rZWRTb3VyY2VDb2RlLmgiCiAjaW5jbHVkZSA8d3RmL0hhc2hUcmFpdHMu
aD4KLSNpbmNsdWRlIDx3dGYvSGFzaGVyLmg+CiAKIG5hbWVzcGFjZSBKU0MgewogCkBAIC03Miwx
NyArNzEsMTggQEAgcHJpdmF0ZToKIAogY2xhc3MgU291cmNlQ29kZUtleSB7CiBwdWJsaWM6Ci0g
ICAgU291cmNlQ29kZUtleSgpID0gZGVmYXVsdDsKKyAgICBTb3VyY2VDb2RlS2V5KCkKKyAgICB7
CisgICAgfQogCiAgICAgU291cmNlQ29kZUtleSgKICAgICAgICAgY29uc3QgVW5saW5rZWRTb3Vy
Y2VDb2RlJiBzb3VyY2VDb2RlLCBjb25zdCBTdHJpbmcmIG5hbWUsIFNvdXJjZUNvZGVUeXBlIGNv
ZGVUeXBlLCBKU1BhcnNlclN0cmljdE1vZGUgc3RyaWN0TW9kZSwgCiAgICAgICAgIEpTUGFyc2Vy
U2NyaXB0TW9kZSBzY3JpcHRNb2RlLCBEZXJpdmVkQ29udGV4dFR5cGUgZGVyaXZlZENvbnRleHRU
eXBlLCBFdmFsQ29udGV4dFR5cGUgZXZhbENvbnRleHRUeXBlLCBib29sIGlzQXJyb3dGdW5jdGlv
bkNvbnRleHQsCi0gICAgICAgIERlYnVnZ2VyTW9kZSBkZWJ1Z2dlck1vZGUsIFR5cGVQcm9maWxl
ckVuYWJsZWQgdHlwZVByb2ZpbGVyRW5hYmxlZCwgQ29udHJvbEZsb3dQcm9maWxlckVuYWJsZWQg
Y29udHJvbEZsb3dQcm9maWxlckVuYWJsZWQsIHN0ZDo6b3B0aW9uYWw8aW50PiBmdW5jdGlvbkNv
bnN0cnVjdG9yUGFyYW1ldGVyc0VuZFBvc2l0aW9uKQorICAgICAgICBEZWJ1Z2dlck1vZGUgZGVi
dWdnZXJNb2RlLCBUeXBlUHJvZmlsZXJFbmFibGVkIHR5cGVQcm9maWxlckVuYWJsZWQsIENvbnRy
b2xGbG93UHJvZmlsZXJFbmFibGVkIGNvbnRyb2xGbG93UHJvZmlsZXJFbmFibGVkKQogICAgICAg
ICAgICAgOiBtX3NvdXJjZUNvZGUoc291cmNlQ29kZSkKICAgICAgICAgICAgICwgbV9uYW1lKG5h
bWUpCiAgICAgICAgICAgICAsIG1fZmxhZ3MoY29kZVR5cGUsIHN0cmljdE1vZGUsIHNjcmlwdE1v
ZGUsIGRlcml2ZWRDb250ZXh0VHlwZSwgZXZhbENvbnRleHRUeXBlLCBpc0Fycm93RnVuY3Rpb25D
b250ZXh0LCBkZWJ1Z2dlck1vZGUsIHR5cGVQcm9maWxlckVuYWJsZWQsIGNvbnRyb2xGbG93UHJv
ZmlsZXJFbmFibGVkKQotICAgICAgICAgICAgLCBtX2Z1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0
ZXJzRW5kUG9zaXRpb24oZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQb3NpdGlvbi52
YWx1ZV9vcigtMSkpCi0gICAgICAgICAgICAsIG1faGFzaChzb3VyY2VDb2RlLmhhc2goKSBeIGNv
bXB1dGVIYXNoKG1fZmxhZ3MuYml0cygpLCBtX2Z1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJz
RW5kUG9zaXRpb24pKQorICAgICAgICAgICAgLCBtX2hhc2goc291cmNlQ29kZS5oYXNoKCkgXiBt
X2ZsYWdzLmJpdHMoKSkKICAgICB7CiAgICAgfQogCkBAIC0xMDgsNyArMTA4LDYgQEAgcHVibGlj
OgogICAgICAgICByZXR1cm4gbV9oYXNoID09IG90aGVyLm1faGFzaAogICAgICAgICAgICAgJiYg
bGVuZ3RoKCkgPT0gb3RoZXIubGVuZ3RoKCkKICAgICAgICAgICAgICYmIG1fZmxhZ3MgPT0gb3Ro
ZXIubV9mbGFncwotICAgICAgICAgICAgJiYgbV9mdW5jdGlvbkNvbnN0cnVjdG9yUGFyYW1ldGVy
c0VuZFBvc2l0aW9uID09IG90aGVyLm1fZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQ
b3NpdGlvbgogICAgICAgICAgICAgJiYgbV9uYW1lID09IG90aGVyLm1fbmFtZQogICAgICAgICAg
ICAgJiYgc3RyaW5nKCkgPT0gb3RoZXIuc3RyaW5nKCk7CiAgICAgfQpAQCAtMTI4LDggKzEyNyw3
IEBAIHByaXZhdGU6CiAgICAgVW5saW5rZWRTb3VyY2VDb2RlIG1fc291cmNlQ29kZTsKICAgICBT
dHJpbmcgbV9uYW1lOwogICAgIFNvdXJjZUNvZGVGbGFncyBtX2ZsYWdzOwotICAgIGludCBtX2Z1
bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJzRW5kUG9zaXRpb24geyAtMSB9OwotICAgIHVuc2ln
bmVkIG1faGFzaCB7IDAgfTsKKyAgICB1bnNpZ25lZCBtX2hhc2g7CiB9OwogCiB9IC8vIG5hbWVz
cGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvZGVD
YWNoZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db2RlQ2FjaGUuY3BwCmlu
ZGV4IGZhYWZiNzJiMmE5OWI5Y2FiOGU3OTVmMDE4MzdiYWNlZmJjNWZhNWIuLjAwYTgyN2E5ODZh
Y2Q5OTM1NmZmYWQxZWMxMTM2ZDgxNmQxMGFhMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0NvZGVDYWNoZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQ29kZUNhY2hlLmNwcApAQCAtNTcsOCArNTcsNyBAQCBVbmxpbmtlZENvZGVCbG9j
a1R5cGUqIENvZGVDYWNoZTo6Z2V0VW5saW5rZWRHbG9iYWxDb2RlQmxvY2soVk0mIHZtLCBFeGVj
dXRhYmxlVAogICAgICAgICBzb3VyY2UsIFN0cmluZygpLCBDYWNoZVR5cGVzPFVubGlua2VkQ29k
ZUJsb2NrVHlwZT46OmNvZGVUeXBlLCBzdHJpY3RNb2RlLCBzY3JpcHRNb2RlLCAKICAgICAgICAg
ZGVyaXZlZENvbnRleHRUeXBlLCBldmFsQ29udGV4dFR5cGUsIGlzQXJyb3dGdW5jdGlvbkNvbnRl
eHQsIGRlYnVnZ2VyTW9kZSwgCiAgICAgICAgIHZtLnR5cGVQcm9maWxlcigpID8gVHlwZVByb2Zp
bGVyRW5hYmxlZDo6WWVzIDogVHlwZVByb2ZpbGVyRW5hYmxlZDo6Tm8sIAotICAgICAgICB2bS5j
b250cm9sRmxvd1Byb2ZpbGVyKCkgPyBDb250cm9sRmxvd1Byb2ZpbGVyRW5hYmxlZDo6WWVzIDog
Q29udHJvbEZsb3dQcm9maWxlckVuYWJsZWQ6Ok5vLAotICAgICAgICBzdGQ6Om51bGxvcHQpOwor
ICAgICAgICB2bS5jb250cm9sRmxvd1Byb2ZpbGVyKCkgPyBDb250cm9sRmxvd1Byb2ZpbGVyRW5h
YmxlZDo6WWVzIDogQ29udHJvbEZsb3dQcm9maWxlckVuYWJsZWQ6Ok5vKTsKICAgICBTb3VyY2VD
b2RlVmFsdWUqIGNhY2hlID0gbV9zb3VyY2VDb2RlLmZpbmRDYWNoZUFuZFVwZGF0ZUFnZShrZXkp
OwogICAgIGlmIChjYWNoZSAmJiBPcHRpb25zOjp1c2VDb2RlQ2FjaGUoKSkgewogICAgICAgICBV
bmxpbmtlZENvZGVCbG9ja1R5cGUqIHVubGlua2VkQ29kZUJsb2NrID0ganNDYXN0PFVubGlua2Vk
Q29kZUJsb2NrVHlwZSo+KGNhY2hlLT5jZWxsLmdldCgpKTsKQEAgLTk2LDcgKzk1LDcgQEAgVW5s
aW5rZWRNb2R1bGVQcm9ncmFtQ29kZUJsb2NrKiBDb2RlQ2FjaGU6OmdldFVubGlua2VkTW9kdWxl
UHJvZ3JhbUNvZGVCbG9jayhWTSYKICAgICByZXR1cm4gZ2V0VW5saW5rZWRHbG9iYWxDb2RlQmxv
Y2s8VW5saW5rZWRNb2R1bGVQcm9ncmFtQ29kZUJsb2NrPih2bSwgZXhlY3V0YWJsZSwgc291cmNl
LCBKU1BhcnNlclN0cmljdE1vZGU6OlN0cmljdCwgSlNQYXJzZXJTY3JpcHRNb2RlOjpNb2R1bGUs
IGRlYnVnZ2VyTW9kZSwgZXJyb3IsIEV2YWxDb250ZXh0VHlwZTo6Tm9uZSk7CiB9CiAKLVVubGlu
a2VkRnVuY3Rpb25FeGVjdXRhYmxlKiBDb2RlQ2FjaGU6OmdldFVubGlua2VkR2xvYmFsRnVuY3Rp
b25FeGVjdXRhYmxlKFZNJiB2bSwgY29uc3QgSWRlbnRpZmllciYgbmFtZSwgY29uc3QgU291cmNl
Q29kZSYgc291cmNlLCBEZWJ1Z2dlck1vZGUgZGVidWdnZXJNb2RlLCBzdGQ6Om9wdGlvbmFsPGlu
dD4gZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQb3NpdGlvbiwgUGFyc2VyRXJyb3Im
IGVycm9yKQorVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUqIENvZGVDYWNoZTo6Z2V0VW5saW5r
ZWRHbG9iYWxGdW5jdGlvbkV4ZWN1dGFibGUoVk0mIHZtLCBjb25zdCBJZGVudGlmaWVyJiBuYW1l
LCBjb25zdCBTb3VyY2VDb2RlJiBzb3VyY2UsIERlYnVnZ2VyTW9kZSBkZWJ1Z2dlck1vZGUsIFBh
cnNlckVycm9yJiBlcnJvcikKIHsKICAgICBib29sIGlzQXJyb3dGdW5jdGlvbkNvbnRleHQgPSBm
YWxzZTsKICAgICBTb3VyY2VDb2RlS2V5IGtleSgKQEAgLTEwOCw4ICsxMDcsNyBAQCBVbmxpbmtl
ZEZ1bmN0aW9uRXhlY3V0YWJsZSogQ29kZUNhY2hlOjpnZXRVbmxpbmtlZEdsb2JhbEZ1bmN0aW9u
RXhlY3V0YWJsZShWTSYgdgogICAgICAgICBpc0Fycm93RnVuY3Rpb25Db250ZXh0LAogICAgICAg
ICBkZWJ1Z2dlck1vZGUsIAogICAgICAgICB2bS50eXBlUHJvZmlsZXIoKSA/IFR5cGVQcm9maWxl
ckVuYWJsZWQ6OlllcyA6IFR5cGVQcm9maWxlckVuYWJsZWQ6Ok5vLCAKLSAgICAgICAgdm0uY29u
dHJvbEZsb3dQcm9maWxlcigpID8gQ29udHJvbEZsb3dQcm9maWxlckVuYWJsZWQ6OlllcyA6IENv
bnRyb2xGbG93UHJvZmlsZXJFbmFibGVkOjpObywKLSAgICAgICAgZnVuY3Rpb25Db25zdHJ1Y3Rv
clBhcmFtZXRlcnNFbmRQb3NpdGlvbik7CisgICAgICAgIHZtLmNvbnRyb2xGbG93UHJvZmlsZXIo
KSA/IENvbnRyb2xGbG93UHJvZmlsZXJFbmFibGVkOjpZZXMgOiBDb250cm9sRmxvd1Byb2ZpbGVy
RW5hYmxlZDo6Tm8pOwogICAgIFNvdXJjZUNvZGVWYWx1ZSogY2FjaGUgPSBtX3NvdXJjZUNvZGUu
ZmluZENhY2hlQW5kVXBkYXRlQWdlKGtleSk7CiAgICAgaWYgKGNhY2hlICYmIE9wdGlvbnM6OnVz
ZUNvZGVDYWNoZSgpKSB7CiAgICAgICAgIFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlKiBleGVj
dXRhYmxlID0ganNDYXN0PFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlKj4oY2FjaGUtPmNlbGwu
Z2V0KCkpOwpAQCAtMTE5LDE0ICsxMTcsMjUgQEAgVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUq
IENvZGVDYWNoZTo6Z2V0VW5saW5rZWRHbG9iYWxGdW5jdGlvbkV4ZWN1dGFibGUoVk0mIHYKICAg
ICB9CiAKICAgICBKU1RleHRQb3NpdGlvbiBwb3NpdGlvbkJlZm9yZUxhc3ROZXdsaW5lOwotICAg
IHN0ZDo6dW5pcXVlX3B0cjxQcm9ncmFtTm9kZT4gcHJvZ3JhbSA9IHBhcnNlRnVuY3Rpb25Gb3JG
dW5jdGlvbkNvbnN0cnVjdG9yKHZtLCBzb3VyY2UsIGVycm9yLCAmcG9zaXRpb25CZWZvcmVMYXN0
TmV3bGluZSwgZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQb3NpdGlvbik7CisgICAg
c3RkOjp1bmlxdWVfcHRyPFByb2dyYW1Ob2RlPiBwcm9ncmFtID0gcGFyc2U8UHJvZ3JhbU5vZGU+
KAorICAgICAgICAmdm0sIHNvdXJjZSwgSWRlbnRpZmllcigpLCBKU1BhcnNlckJ1aWx0aW5Nb2Rl
OjpOb3RCdWlsdGluLAorICAgICAgICBKU1BhcnNlclN0cmljdE1vZGU6Ok5vdFN0cmljdCwgSlNQ
YXJzZXJTY3JpcHRNb2RlOjpDbGFzc2ljLCBTb3VyY2VQYXJzZU1vZGU6OlByb2dyYW1Nb2RlLCBT
dXBlckJpbmRpbmc6Ok5vdE5lZWRlZCwKKyAgICAgICAgZXJyb3IsICZwb3NpdGlvbkJlZm9yZUxh
c3ROZXdsaW5lKTsKICAgICBpZiAoIXByb2dyYW0pIHsKICAgICAgICAgUkVMRUFTRV9BU1NFUlQo
ZXJyb3IuaXNWYWxpZCgpKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogCiAgICAg
Ly8gVGhpcyBmdW5jdGlvbiBhc3N1bWVzIGFuIGlucHV0IHN0cmluZyB0aGF0IHdvdWxkIHJlc3Vs
dCBpbiBhIHNpbmdsZSBmdW5jdGlvbiBkZWNsYXJhdGlvbi4KLSAgICBTdGF0ZW1lbnROb2RlKiBm
dW5jRGVjbCA9IHByb2dyYW0tPnNpbmdsZVN0YXRlbWVudCgpOworICAgIFN0YXRlbWVudE5vZGUq
IHN0YXRlbWVudCA9IHByb2dyYW0tPnNpbmdsZVN0YXRlbWVudCgpOworICAgIGlmIChVTkxJS0VM
WSghc3RhdGVtZW50KSkgeworICAgICAgICBKU1Rva2VuIHRva2VuOworICAgICAgICBlcnJvciA9
IFBhcnNlckVycm9yKFBhcnNlckVycm9yOjpTeW50YXhFcnJvciwgUGFyc2VyRXJyb3I6OlN5bnRh
eEVycm9ySXJyZWNvdmVyYWJsZSwgdG9rZW4sICJQYXJzZXIgZXJyb3IiLCAtMSk7CisgICAgICAg
IHJldHVybiBudWxscHRyOworICAgIH0KKyAgICBBU1NFUlQoc3RhdGVtZW50LT5pc0Jsb2NrKCkp
OworCisgICAgU3RhdGVtZW50Tm9kZSogZnVuY0RlY2wgPSBzdGF0aWNfY2FzdDxCbG9ja05vZGUq
PihzdGF0ZW1lbnQpLT5zaW5nbGVTdGF0ZW1lbnQoKTsKICAgICBpZiAoVU5MSUtFTFkoIWZ1bmNE
ZWNsKSkgewogICAgICAgICBKU1Rva2VuIHRva2VuOwogICAgICAgICBlcnJvciA9IFBhcnNlckVy
cm9yKFBhcnNlckVycm9yOjpTeW50YXhFcnJvciwgUGFyc2VyRXJyb3I6OlN5bnRheEVycm9ySXJy
ZWNvdmVyYWJsZSwgdG9rZW4sICJQYXJzZXIgZXJyb3IiLCAtMSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db2RlQ2FjaGUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0NvZGVDYWNoZS5oCmluZGV4IDUzZTNmZGE1MWUyZTM3ZDdlMGRkMDkyYzBm
ZGE5NTc5ZmJhYzczZDQuLmFiNzBiNjUzOTdmYjMzNWQyYTEyM2IyYTZiM2FlM2FlNjNjODFkOWEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvZGVDYWNoZS5oCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvZGVDYWNoZS5oCkBAIC0xOTQsNyAr
MTk0LDcgQEAgcHVibGljOgogICAgIFVubGlua2VkUHJvZ3JhbUNvZGVCbG9jayogZ2V0VW5saW5r
ZWRQcm9ncmFtQ29kZUJsb2NrKFZNJiwgUHJvZ3JhbUV4ZWN1dGFibGUqLCBjb25zdCBTb3VyY2VD
b2RlJiwgSlNQYXJzZXJTdHJpY3RNb2RlLCBEZWJ1Z2dlck1vZGUsIFBhcnNlckVycm9yJik7CiAg
ICAgVW5saW5rZWRFdmFsQ29kZUJsb2NrKiBnZXRVbmxpbmtlZEV2YWxDb2RlQmxvY2soVk0mLCBJ
bmRpcmVjdEV2YWxFeGVjdXRhYmxlKiwgY29uc3QgU291cmNlQ29kZSYsIEpTUGFyc2VyU3RyaWN0
TW9kZSwgRGVidWdnZXJNb2RlLCBQYXJzZXJFcnJvciYsIEV2YWxDb250ZXh0VHlwZSk7CiAgICAg
VW5saW5rZWRNb2R1bGVQcm9ncmFtQ29kZUJsb2NrKiBnZXRVbmxpbmtlZE1vZHVsZVByb2dyYW1D
b2RlQmxvY2soVk0mLCBNb2R1bGVQcm9ncmFtRXhlY3V0YWJsZSosIGNvbnN0IFNvdXJjZUNvZGUm
LCBEZWJ1Z2dlck1vZGUsIFBhcnNlckVycm9yJik7Ci0gICAgVW5saW5rZWRGdW5jdGlvbkV4ZWN1
dGFibGUqIGdldFVubGlua2VkR2xvYmFsRnVuY3Rpb25FeGVjdXRhYmxlKFZNJiwgY29uc3QgSWRl
bnRpZmllciYsIGNvbnN0IFNvdXJjZUNvZGUmLCBEZWJ1Z2dlck1vZGUsIHN0ZDo6b3B0aW9uYWw8
aW50PiBmdW5jdGlvbkNvbnN0cnVjdG9yUGFyYW1ldGVyc0VuZFBvc2l0aW9uLCBQYXJzZXJFcnJv
ciYpOworICAgIFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlKiBnZXRVbmxpbmtlZEdsb2JhbEZ1
bmN0aW9uRXhlY3V0YWJsZShWTSYsIGNvbnN0IElkZW50aWZpZXImLCBjb25zdCBTb3VyY2VDb2Rl
JiwgRGVidWdnZXJNb2RlLCBQYXJzZXJFcnJvciYpOwogCiAgICAgdm9pZCBjbGVhcigpIHsgbV9z
b3VyY2VDb2RlLmNsZWFyKCk7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAppbmRleCA5YjNkMzVkZDIyMTY3MTg0OGEw
YjRiYTc1NjE2NTg4Y2Q5MWU4OTdjLi4yNjUwNDlmOTk0MDE4YTczOWEyYmZlOTA3ZmVkNGQxOTVl
Y2ZlMzkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlv
bkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5j
dGlvbkNvbnN0cnVjdG9yLmNwcApAQCAtOTQsNDggKzk0LDgyIEBAIEpTT2JqZWN0KiBjb25zdHJ1
Y3RGdW5jdGlvblNraXBwaW5nRXZhbEVuYWJsZWRDaGVjaygKICAgICAgICAgcHJlZml4ID0gImFz
eW5jIGZ1bmN0aW9uICI7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgRnVuY3Rpb25Db25zdHJ1
Y3Rpb25Nb2RlOjpBc3luY0dlbmVyYXRvcjoKLSAgICAgICAgcHJlZml4ID0gImFzeW5jIGZ1bmN0
aW9uKiI7CisgICAgICAgIHByZWZpeCA9ICJ7YXN5bmMgZnVuY3Rpb24qIjsKICAgICAgICAgYnJl
YWs7CiAgICAgfQogCisgICAgYXV0byBjaGVja0JvZHkgPSBbJl0gKGNvbnN0IFN0cmluZyYgYm9k
eSkgeworICAgICAgICAvLyBUaGUgc3BlYyBtYW5kYXRlcyB0aGF0IHRoZSBib2R5IHBhcnNlcyBh
IHZhbGlkIGZ1bmN0aW9uIGJvZHkgaW5kZXBlbmRlbnQKKyAgICAgICAgLy8gb2YgdGhlIHBhcmFt
ZXRlcnMuCisgICAgICAgIFN0cmluZyBwcm9ncmFtID0gbWFrZVN0cmluZygiKCIsIHByZWZpeCwg
Iigpe1xuIiwgYm9keSwgIlxufSkiKTsKKyAgICAgICAgU291cmNlQ29kZSBzb3VyY2UgPSBtYWtl
U291cmNlKHByb2dyYW0sIHNvdXJjZU9yaWdpbiwgc291cmNlVVJMLCBwb3NpdGlvbik7CisgICAg
ICAgIEpTVmFsdWUgZXhjZXB0aW9uOworICAgICAgICBjaGVja1N5bnRheChleGVjLCBzb3VyY2Us
ICZleGNlcHRpb24pOworICAgICAgICBpZiAoZXhjZXB0aW9uKSB7CisgICAgICAgICAgICBzY29w
ZS50aHJvd0V4Y2VwdGlvbihleGVjLCBleGNlcHRpb24pOworICAgICAgICAgICAgcmV0dXJuOwor
ICAgICAgICB9CisgICAgfTsKKwogICAgIC8vIEhvdyB3ZSBzdHJpbmdpZnkgZnVuY3Rpb25zIGlz
IHNvbWV0aW1lcyBpbXBvcnRhbnQgZm9yIHdlYiBjb21wYXRpYmlsaXR5LgogICAgIC8vIFNlZSBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjQzNTAuCiAgICAgU3RyaW5n
IHByb2dyYW07Ci0gICAgc3RkOjpvcHRpb25hbDxpbnQ+IGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJh
bWV0ZXJzRW5kUG9zaXRpb24gPSBzdGQ6Om51bGxvcHQ7CiAgICAgaWYgKGFyZ3MuaXNFbXB0eSgp
KQotICAgICAgICBwcm9ncmFtID0gbWFrZVN0cmluZyhwcmVmaXgsIGZ1bmN0aW9uTmFtZS5zdHJp
bmcoKSwgIigpIHtcblxufSIpOworICAgICAgICBwcm9ncmFtID0gbWFrZVN0cmluZygieyIsIHBy
ZWZpeCwgZnVuY3Rpb25OYW1lLnN0cmluZygpLCAiKCkge1xuXG59fSIpOwogICAgIGVsc2UgaWYg
KGFyZ3Muc2l6ZSgpID09IDEpIHsKICAgICAgICAgYXV0byBib2R5ID0gYXJncy5hdCgwKS50b1dU
RlN0cmluZyhleGVjKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0
cik7Ci0gICAgICAgIHByb2dyYW0gPSBtYWtlU3RyaW5nKHByZWZpeCwgZnVuY3Rpb25OYW1lLnN0
cmluZygpLCAiKCkge1xuIiwgYm9keSwgIlxufSIpOworICAgICAgICBjaGVja0JvZHkoYm9keSk7
CisgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOworICAgICAgICBw
cm9ncmFtID0gbWFrZVN0cmluZygieyIsIHByZWZpeCwgZnVuY3Rpb25OYW1lLnN0cmluZygpLCAi
KCkge1xuIiwgYm9keSwgIlxufX0iKTsKICAgICB9IGVsc2UgewogICAgICAgICBTdHJpbmdCdWls
ZGVyIGJ1aWxkZXI7CisgICAgICAgIGJ1aWxkZXIuYXBwZW5kKCd7Jyk7CiAgICAgICAgIGJ1aWxk
ZXIuYXBwZW5kKHByZWZpeCk7CiAgICAgICAgIGJ1aWxkZXIuYXBwZW5kKGZ1bmN0aW9uTmFtZS5z
dHJpbmcoKSk7Ci0KICAgICAgICAgYnVpbGRlci5hcHBlbmQoJygnKTsKKyAgICAgICAgU3RyaW5n
QnVpbGRlciBwYXJhbWV0ZXJCdWlsZGVyOwogICAgICAgICBhdXRvIHZpZXdXaXRoU3RyaW5nID0g
YXJncy5hdCgwKS50b1N0cmluZyhleGVjKS0+dmlld1dpdGhVbmRlcmx5aW5nU3RyaW5nKGV4ZWMp
OwogICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKLSAgICAgICAg
YnVpbGRlci5hcHBlbmQodmlld1dpdGhTdHJpbmcudmlldyk7CisgICAgICAgIHBhcmFtZXRlckJ1
aWxkZXIuYXBwZW5kKHZpZXdXaXRoU3RyaW5nLnZpZXcpOwogICAgICAgICBmb3IgKHNpemVfdCBp
ID0gMTsgaSA8IGFyZ3Muc2l6ZSgpIC0gMTsgaSsrKSB7Ci0gICAgICAgICAgICBidWlsZGVyLmFw
cGVuZExpdGVyYWwoIiwgIik7CisgICAgICAgICAgICBwYXJhbWV0ZXJCdWlsZGVyLmFwcGVuZExp
dGVyYWwoIiwgIik7CiAgICAgICAgICAgICBhdXRvIHZpZXdXaXRoU3RyaW5nID0gYXJncy5hdChp
KS50b1N0cmluZyhleGVjKS0+dmlld1dpdGhVbmRlcmx5aW5nU3RyaW5nKGV4ZWMpOwogICAgICAg
ICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7Ci0gICAgICAgICAgICBi
dWlsZGVyLmFwcGVuZCh2aWV3V2l0aFN0cmluZy52aWV3KTsKKyAgICAgICAgICAgIHBhcmFtZXRl
ckJ1aWxkZXIuYXBwZW5kKHZpZXdXaXRoU3RyaW5nLnZpZXcpOworICAgICAgICB9CisgICAgICAg
IGF1dG8gYm9keSA9IGFyZ3MuYXQoYXJncy5zaXplKCkgLSAxKS50b1dURlN0cmluZyhleGVjKTsK
KyAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CisKKyAgICAgICAg
eworICAgICAgICAgICAgLy8gVGhlIHNwZWMgbWFuZGF0ZXMgdGhhdCB0aGUgcGFyYW1ldGVycyBw
YXJzZSBhcyBhIHZhbGlkIHBhcmFtZXRlciBsaXN0CisgICAgICAgICAgICAvLyBpbmRlcGVuZGVu
dCBvZiB0aGUgZnVuY3Rpb24gYm9keS4KKyAgICAgICAgICAgIFN0cmluZyBwcm9ncmFtID0gdHJ5
TWFrZVN0cmluZygiKCIsIHByZWZpeCwgIigiLCBwYXJhbWV0ZXJCdWlsZGVyLnRvU3RyaW5nKCks
ICIpe1xuXG59KSIpOworICAgICAgICAgICAgaWYgKFVOTElLRUxZKCFwcm9ncmFtKSkgeworICAg
ICAgICAgICAgICAgIHRocm93T3V0T2ZNZW1vcnlFcnJvcihleGVjLCBzY29wZSk7CisgICAgICAg
ICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBTb3Vy
Y2VDb2RlIHNvdXJjZSA9IG1ha2VTb3VyY2UocHJvZ3JhbSwgc291cmNlT3JpZ2luLCBzb3VyY2VV
UkwsIHBvc2l0aW9uKTsKKyAgICAgICAgICAgIEpTVmFsdWUgZXhjZXB0aW9uOworICAgICAgICAg
ICAgY2hlY2tTeW50YXgoZXhlYywgc291cmNlLCAmZXhjZXB0aW9uKTsKKyAgICAgICAgICAgIGlm
IChleGNlcHRpb24pIHsKKyAgICAgICAgICAgICAgICBzY29wZS50aHJvd0V4Y2VwdGlvbihleGVj
LCBleGNlcHRpb24pOworICAgICAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICAg
ICAgfQogICAgICAgICB9Ci0gICAgICAgIGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJzRW5k
UG9zaXRpb24gPSBidWlsZGVyLmxlbmd0aCgpICsgMTsKLSAgICAgICAgYnVpbGRlci5hcHBlbmRM
aXRlcmFsKCIpIHtcbiIpOwogCi0gICAgICAgIGF1dG8gYm9keSA9IGFyZ3MuYXQoYXJncy5zaXpl
KCkgLSAxKS50b1N0cmluZyhleGVjKS0+dmlld1dpdGhVbmRlcmx5aW5nU3RyaW5nKGV4ZWMpOwor
ICAgICAgICBidWlsZGVyLmFwcGVuZChwYXJhbWV0ZXJCdWlsZGVyKTsKKyAgICAgICAgYnVpbGRl
ci5hcHBlbmRMaXRlcmFsKCIpIHtcbiIpOworICAgICAgICBjaGVja0JvZHkoYm9keSk7CiAgICAg
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwotICAgICAgICBidWlsZGVy
LmFwcGVuZChib2R5LnZpZXcpOwotICAgICAgICBidWlsZGVyLmFwcGVuZExpdGVyYWwoIlxufSIp
OworICAgICAgICBidWlsZGVyLmFwcGVuZChib2R5KTsKKyAgICAgICAgYnVpbGRlci5hcHBlbmRM
aXRlcmFsKCJcbn19Iik7CiAgICAgICAgIHByb2dyYW0gPSBidWlsZGVyLnRvU3RyaW5nKCk7CiAg
ICAgfQogCiAgICAgU291cmNlQ29kZSBzb3VyY2UgPSBtYWtlU291cmNlKHByb2dyYW0sIHNvdXJj
ZU9yaWdpbiwgc291cmNlVVJMLCBwb3NpdGlvbik7CiAgICAgSlNPYmplY3QqIGV4Y2VwdGlvbiA9
IG51bGxwdHI7Ci0gICAgRnVuY3Rpb25FeGVjdXRhYmxlKiBmdW5jdGlvbiA9IEZ1bmN0aW9uRXhl
Y3V0YWJsZTo6ZnJvbUdsb2JhbENvZGUoZnVuY3Rpb25OYW1lLCAqZXhlYywgc291cmNlLCBleGNl
cHRpb24sIG92ZXJyaWRlTGluZU51bWJlciwgZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNF
bmRQb3NpdGlvbik7CisgICAgRnVuY3Rpb25FeGVjdXRhYmxlKiBmdW5jdGlvbiA9IEZ1bmN0aW9u
RXhlY3V0YWJsZTo6ZnJvbUdsb2JhbENvZGUoZnVuY3Rpb25OYW1lLCAqZXhlYywgc291cmNlLCBl
eGNlcHRpb24sIG92ZXJyaWRlTGluZU51bWJlcik7CiAgICAgaWYgKCFmdW5jdGlvbikgewogICAg
ICAgICBBU1NFUlQoZXhjZXB0aW9uKTsKICAgICAgICAgcmV0dXJuIHRocm93RXhjZXB0aW9uKGV4
ZWMsIHNjb3BlLCBleGNlcHRpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvRnVuY3Rpb25FeGVjdXRhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0Z1bmN0aW9uRXhlY3V0YWJsZS5jcHAKaW5kZXggZWVkM2MyMTZjYTNiYjc5NjlmYTZm
ODg4NThkYzY5NWQ2NmU1ZDExNC4uZDU3NzBkNGEwNjQ5YzUwZDIwOTRiN2YxNmFlODk4ZmFiOTc3
ODQ3MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25F
eGVjdXRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlv
bkV4ZWN1dGFibGUuY3BwCkBAIC05NCwxMSArOTQsMTEgQEAgdm9pZCBGdW5jdGlvbkV4ZWN1dGFi
bGU6OnZpc2l0Q2hpbGRyZW4oSlNDZWxsKiBjZWxsLCBTbG90VmlzaXRvciYgdmlzaXRvcikKIAog
RnVuY3Rpb25FeGVjdXRhYmxlKiBGdW5jdGlvbkV4ZWN1dGFibGU6OmZyb21HbG9iYWxDb2RlKAog
ICAgIGNvbnN0IElkZW50aWZpZXImIG5hbWUsIEV4ZWNTdGF0ZSYgZXhlYywgY29uc3QgU291cmNl
Q29kZSYgc291cmNlLCAKLSAgICBKU09iamVjdComIGV4Y2VwdGlvbiwgaW50IG92ZXJyaWRlTGlu
ZU51bWJlciwgc3RkOjpvcHRpb25hbDxpbnQ+IGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJz
RW5kUG9zaXRpb24pCisgICAgSlNPYmplY3QqJiBleGNlcHRpb24sIGludCBvdmVycmlkZUxpbmVO
dW1iZXIpCiB7CiAgICAgVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUqIHVubGlua2VkRXhlY3V0
YWJsZSA9IAogICAgICAgICBVbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZTo6ZnJvbUdsb2JhbENv
ZGUoCi0gICAgICAgICAgICBuYW1lLCBleGVjLCBzb3VyY2UsIGV4Y2VwdGlvbiwgb3ZlcnJpZGVM
aW5lTnVtYmVyLCBmdW5jdGlvbkNvbnN0cnVjdG9yUGFyYW1ldGVyc0VuZFBvc2l0aW9uKTsKKyAg
ICAgICAgICAgIG5hbWUsIGV4ZWMsIHNvdXJjZSwgZXhjZXB0aW9uLCBvdmVycmlkZUxpbmVOdW1i
ZXIpOwogICAgIGlmICghdW5saW5rZWRFeGVjdXRhYmxlKQogICAgICAgICByZXR1cm4gbnVsbHB0
cjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25F
eGVjdXRhYmxlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkV4ZWN1
dGFibGUuaAppbmRleCA2YmE4NWExNTJjNzc0ZTMxYzcxYzcxMmUyYjI2YjVlYWQzMGJmOTVlLi4z
YTkzYjU4NjcyNTA3ZTE0YWRjZWI0NjI1MDM3NTMyNmIyODY5NjljIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkV4ZWN1dGFibGUuaAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkV4ZWN1dGFibGUuaApAQCAtNTUsNyAr
NTUsNyBAQCBwdWJsaWM6CiAgICAgfQogICAgIHN0YXRpYyBGdW5jdGlvbkV4ZWN1dGFibGUqIGZy
b21HbG9iYWxDb2RlKAogICAgICAgICBjb25zdCBJZGVudGlmaWVyJiBuYW1lLCBFeGVjU3RhdGUm
LCBjb25zdCBTb3VyY2VDb2RlJiwgCi0gICAgICAgIEpTT2JqZWN0KiYgZXhjZXB0aW9uLCBpbnQg
b3ZlcnJpZGVMaW5lTnVtYmVyLCBzdGQ6Om9wdGlvbmFsPGludD4gZnVuY3Rpb25Db25zdHJ1Y3Rv
clBhcmFtZXRlcnNFbmRQb3NpdGlvbik7CisgICAgICAgIEpTT2JqZWN0KiYgZXhjZXB0aW9uLCBp
bnQgb3ZlcnJpZGVMaW5lTnVtYmVyKTsKIAogICAgIHN0YXRpYyB2b2lkIGRlc3Ryb3koSlNDZWxs
Kik7CiAgICAgICAgIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGM3ZGE3ZDJkNDA1MGY4MjI5Y2FiNWFmMWI1MzA2MjI4ZWVl
NjNhNzguLmUzMTNhMjM3MTllNzM2ZDc5YWE3NjAyYTk0YTk2YjI4ZjJlN2RhZTEgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxOCBAQAorMjAxOC0xMC0xNSAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdl
YmtpdC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjIzNzA1NC4KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDU5MworCisg
ICAgICAgICJ0aGlzIHJlZ3Jlc3NlZCBKZXRTdHJlYW0gMiBieSA2JSBvbiBpT1MiIChSZXF1ZXN0
ZWQgYnkKKyAgICAgICAgc2FhbXlqb29uIG9uICN3ZWJraXQpLgorCisgICAgICAgIFJldmVydGVk
IGNoYW5nZXNldDoKKworICAgICAgICAiW0pTQ10gSlNDIHNob3VsZCBoYXZlICJwYXJzZUZ1bmN0
aW9uIiB0byBvcHRpbWl6ZSBGdW5jdGlvbgorICAgICAgICBjb25zdHJ1Y3RvciIKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDM0MAorICAgICAgICBo
dHRwczovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMjM3MDU0CisKIDIwMTgtMTAtMTUgIFdl
bnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgQ2hhbmdpbmcg
dmlldyBzY2FsZSBzaG91bGQgem9vbSB0byBpbml0aWFsIHNjYWxlIGlmIHRoZSBwYWdlIGlzIGFs
cmVhZHkgYXQgaW5pdGlhbCBzY2FsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXgg
MjJjNzY2MDRjZDAyODFkMTUzZGUwM2MyN2VmNzdiMjRmNzhiNzdmZi4uNjQ0OTVjMjExZTU1NjI3
ZWUzOWQ4NzM4MzdhYTUzZDE5NjZiNjgyMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTggQEAKKzIwMTgtMTAtMTUgIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1
ZUB3ZWJraXQub3JnPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyMzcwNTQu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA1OTMK
KworICAgICAgICAidGhpcyByZWdyZXNzZWQgSmV0U3RyZWFtIDIgYnkgNiUgb24gaU9TIiAoUmVx
dWVzdGVkIGJ5CisgICAgICAgIHNhYW15am9vbiBvbiAjd2Via2l0KS4KKworICAgICAgICBSZXZl
cnRlZCBjaGFuZ2VzZXQ6CisKKyAgICAgICAgIltKU0NdIEpTQyBzaG91bGQgaGF2ZSAicGFyc2VG
dW5jdGlvbiIgdG8gb3B0aW1pemUgRnVuY3Rpb24KKyAgICAgICAgY29uc3RydWN0b3IiCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTAzNDAKKyAgICAg
ICAgaHR0cHM6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzIzNzA1NAorCiAyMDE4LTEwLTE1
ICBZVUhBTiBXVSAgPHl1aGFuX3d1QGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1lbnQgZXJy
b3IgaGFuZGxlciBvZiBNZWRpYVJlY29yZGVyCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9hdHRyaWJ1dGUtZXZlbnQtbGlzdGVuZXItZXJyb3JzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL2F0dHJpYnV0ZS1ldmVudC1saXN0ZW5lci1lcnJvcnMtZXhwZWN0ZWQu
dHh0CmluZGV4IDQyMzY3NjcxOGZiYjQ2MjZhYjVkMTAwZWEwMjM1MDVmMTIwYmNjOWEuLjFkZjkz
OTc1NzRiNDQ1MmU0MGEwZjZjNjAzNjFkZGUxZDViN2MyNDkgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvZG9tL2F0dHJpYnV0ZS1ldmVudC1saXN0ZW5lci1lcnJvcnMtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL2F0dHJpYnV0ZS1ldmVudC1saXN0ZW5lci1lcnJv
cnMtZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAogQ09OU09MRSBNRVNTQUdFOiBsaW5lIDQ6
IFJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBlcnJvcgotQ09OU09MRSBNRVNT
QUdFOiBsaW5lIDU6IFN5bnRheEVycm9yOiBJbnZhbGlkIGNoYXJhY3RlcjogJ0AnCitDT05TT0xF
IE1FU1NBR0U6IGxpbmUgOTogU3ludGF4RXJyb3I6IEludmFsaWQgY2hhcmFjdGVyOiAnQCcKIFRo
aXMgdGVzdCB2ZXJpZmllcyB0aGF0IGFuIGF0dHJpYnV0ZSBldmVudCBsaXN0ZW5lciBlcnJvciBz
aG93cyB0aGUgcmlnaHQgbGluZSBudW1iZXIgZXZlbiBpZiB0aGUgYXR0cmlidXRlIGNvbnRhaW5z
IG5ld2xpbmVzLgogICAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2F0dHJp
YnV0ZS1saXN0ZW5lci1kZWxldGlvbi1jcmFzaC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L2V2ZW50cy9hdHRyaWJ1dGUtbGlzdGVuZXItZGVsZXRpb24tY3Jhc2gtZXhwZWN0ZWQudHh0
CmluZGV4IDU4MjRiYWFkYzQ0MjFiNDE3NmZhMDYwZWY4NTZjYmQ3YTE5NTRlNDcuLjBkYjc3Mjhj
YjcxYjZmNWRjNGRmNDY3OWQ4NGVlODIwNDYxZWUwNTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvZXZlbnRzL2F0dHJpYnV0ZS1saXN0ZW5lci1kZWxldGlvbi1jcmFzaC1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvYXR0cmlidXRlLWxpc3RlbmVyLWRlbGV0
aW9uLWNyYXNoLWV4cGVjdGVkLnR4dApAQCAtMSwyMSArMSwyMSBAQAotQ09OU09MRSBNRVNTQUdF
OiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNT
QUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBN
RVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09M
RSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09O
U09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8Jwot
Q09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8
JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2Vu
ICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRv
a2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVk
IHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVj
dGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4
cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBV
bmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9y
OiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVy
cm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRh
eEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5
bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6
IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5l
IDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBs
aW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdF
OiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNT
QUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBN
RVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09M
RSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09O
U09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8Jwor
Q09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8
JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2Vu
ICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRv
a2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVk
IHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVj
dGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4
cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBV
bmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9y
OiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVy
cm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRh
eEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5
bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6
IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5l
IDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBs
aW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdF
OiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNT
QUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwogUEFTUwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvd2luZG93LW9uZXJyb3Itc3ludGF4LWVy
cm9yLWluLWF0dHItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvd2luZG93
LW9uZXJyb3Itc3ludGF4LWVycm9yLWluLWF0dHItZXhwZWN0ZWQudHh0CmluZGV4IDY4ZWRkMDE3
ZjFjY2M3ZGYwYzFmMTE2YWIyMGI3ZGRmNmNhMTE0MzUuLjVhYzk1MDE1ZmQyMzVjYWU5MzNlZWRm
NWM1ZmM4NGJiMDZlZjEwYWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3dp
bmRvdy1vbmVycm9yLXN5bnRheC1lcnJvci1pbi1hdHRyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2V2ZW50cy93aW5kb3ctb25lcnJvci1zeW50YXgtZXJyb3ItaW4tYXR0ci1l
eHBlY3RlZC50eHQKQEAgLTEsNiArMSw2IEBACiBUZXN0IHRoYXQgd2luZG93Lm9uZXJyb3IgaXMg
Y2FsbGVkIG9uIHdpbmRvdyBvYmplY3Qgd2hlbiB0aGVyZSBpcyBhIHN5bnRheCBlcnJvciBpbiBh
dHRyaWJ1dGUgaGFuZGxlci4gQnVnIDcwOTkxLgogCi1NYWluIGZyYW1lIHdpbmRvdy5vbmVycm9y
OiBTeW50YXhFcnJvcjogVW5leHBlY3RlZCB0b2tlbiAnJScgYXQgd2luZG93LW9uZXJyb3Itc3lu
dGF4LWVycm9yLWluLWF0dHIuaHRtbDoxMDozOCBTeW50YXhFcnJvcjogVW5leHBlY3RlZCB0b2tl
biAnJScKLU1haW4gZnJhbWUgd2luZG93Lm9uZXJyb3I6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVk
IHRva2VuICclJyBhdCB3aW5kb3ctb25lcnJvci1zeW50YXgtZXJyb3ItaW4tYXR0ci5odG1sOjM2
OjM4IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICclJwotTWFpbiBmcmFtZSB3aW5kb3cu
b25lcnJvcjogU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJyUnIGF0IHdpbmRvdy1vbmVy
cm9yLXN5bnRheC1lcnJvci1pbi1hdHRyLmh0bWw6MzY6MTQgU3ludGF4RXJyb3I6IFVuZXhwZWN0
ZWQgdG9rZW4gJyUnCitNYWluIGZyYW1lIHdpbmRvdy5vbmVycm9yOiBTeW50YXhFcnJvcjogVW5l
eHBlY3RlZCB0b2tlbiAnJScgYXQgd2luZG93LW9uZXJyb3Itc3ludGF4LWVycm9yLWluLWF0dHIu
aHRtbDoxMTozOCBTeW50YXhFcnJvcjogVW5leHBlY3RlZCB0b2tlbiAnJScKK01haW4gZnJhbWUg
d2luZG93Lm9uZXJyb3I6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICclJyBhdCB3aW5k
b3ctb25lcnJvci1zeW50YXgtZXJyb3ItaW4tYXR0ci5odG1sOjM3OjM4IFN5bnRheEVycm9yOiBV
bmV4cGVjdGVkIHRva2VuICclJworTWFpbiBmcmFtZSB3aW5kb3cub25lcnJvcjogU3ludGF4RXJy
b3I6IFVuZXhwZWN0ZWQgdG9rZW4gJyUnIGF0IHdpbmRvdy1vbmVycm9yLXN5bnRheC1lcnJvci1p
bi1hdHRyLmh0bWw6Mzc6MTQgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJyUnCiBCdXR0
b24gMSBCdXR0b24gMiBCdXR0b24gMwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3dlYmFwcGFwaXMvc2NyaXB0aW5nL2V2ZW50cy9p
bmxpbmUtZXZlbnQtaGFuZGxlci1vcmRlcmluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvd2ViYXBwYXBpcy9zY3JpcHRpbmcv
ZXZlbnRzL2lubGluZS1ldmVudC1oYW5kbGVyLW9yZGVyaW5nLWV4cGVjdGVkLnR4dAppbmRleCA0
MzA5NWEzYmVlYTk2ZmRmM2FiYWJlN2U0MjY0NTJiZjg3NjkwZDlkLi42MTk5Y2RlYzBlY2Q5YjZl
ZGI1Mzg3Nzc4OTgxNDI4MjRiNjEwZmIxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvd2ViYXBwYXBpcy9zY3JpcHRpbmcvZXZlbnRz
L2lubGluZS1ldmVudC1oYW5kbGVyLW9yZGVyaW5nLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvd2ViYXBwYXBpcy9zY3Jp
cHRpbmcvZXZlbnRzL2lubGluZS1ldmVudC1oYW5kbGVyLW9yZGVyaW5nLWV4cGVjdGVkLnR4dApA
QCAtMSw1ICsxLDUgQEAKIENPTlNPTEUgTUVTU0FHRTogbGluZSAxOTogU3ludGF4RXJyb3I6IFVu
ZXhwZWN0ZWQgdG9rZW4gJ30nCi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgNTI6IFN5bnRheEVycm9y
OiBVbmV4cGVjdGVkIHRva2VuICd9JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDU0OiBTeW50YXhF
cnJvcjogVW5leHBlY3RlZCB0b2tlbiAnfScKIAogUEFTUyBJbmxpbmUgZXZlbnQgaGFuZGxlcnMg
cmV0YWluIHRoZWlyIG9yZGVyaW5nIHdoZW4gaW52YWxpZCBhbmQgZm9yY2UtY29tcGlsZWQgCiBQ
QVNTIElubGluZSBldmVudCBoYW5kbGVycyByZXRhaW4gdGhlaXIgb3JkZXJpbmcgd2hlbiBpbnZh
bGlkIGFuZCBmb3JjZS1jb21waWxlZCB2aWEgZGlzcGF0Y2ggCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvd2ViYXBwYXBpcy9zY3Jp
cHRpbmcvZXZlbnRzL2ludmFsaWQtdW5jb21waWxlZC1yYXctaGFuZGxlci1jb21waWxlZC1sYXRl
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC93ZWJhcHBhcGlzL3NjcmlwdGluZy9ldmVudHMvaW52YWxpZC11bmNvbXBpbGVkLXJh
dy1oYW5kbGVyLWNvbXBpbGVkLWxhdGUtZXhwZWN0ZWQudHh0CmluZGV4IDlhZDVhYzY3YjAwZTk2
Y2U5NTg0MTdiOThiNDdjNjFlM2M0ZjVjNDUuLmE4NmUwNjRiYTBkMDdjZDVhNTRiZDA4NzU3ZWZm
MTUwOGVlNzkyY2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC93ZWJhcHBhcGlzL3NjcmlwdGluZy9ldmVudHMvaW52YWxpZC11bmNv
bXBpbGVkLXJhdy1oYW5kbGVyLWNvbXBpbGVkLWxhdGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC93ZWJhcHBhcGlzL3Nj
cmlwdGluZy9ldmVudHMvaW52YWxpZC11bmNvbXBpbGVkLXJhdy1oYW5kbGVyLWNvbXBpbGVkLWxh
dGUtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI0
OiBTeW50YXhFcnJvcjogUGFyc2VyIGVycm9yCi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMjE6IFN5
bnRheEVycm9yOiBQYXJzZXIgZXJyb3IKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyNjogU3ludGF4
RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJ30nLiBFeHBlY3RlZCAnKScgdG8gZW5kIGEgY29tcG91
bmQgZXhwcmVzc2lvbi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyMTogU3ludGF4RXJyb3I6IFVu
ZXhwZWN0ZWQgdG9rZW4gJ30nLiBFeHBlY3RlZCAnKScgdG8gZW5kIGEgY29tcG91bmQgZXhwcmVz
c2lvbi4KIAogRkFJTCBJbnZhbGlkIHVuY29tcGlsZWQgcmF3IGhhbmRsZXJzIHNob3VsZCBvbmx5
IGJlIGNvbXBpbGVkIHdoZW4gYWJvdXQgdG8gY2FsbCB0aGVtLiBhc3NlcnRfYXJyYXlfZXF1YWxz
OiBsZW5ndGhzIGRpZmZlciwgZXhwZWN0ZWQgMyBnb3QgNAogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvd2ViYXBwYXBpcy9zY3Jp
cHRpbmcvcHJvY2Vzc2luZy1tb2RlbC0yL2NvbXBpbGUtZXJyb3ItaW4tYXR0cmlidXRlLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC93ZWJhcHBhcGlzL3NjcmlwdGluZy9wcm9jZXNzaW5nLW1vZGVsLTIvY29tcGlsZS1lcnJvci1p
bi1hdHRyaWJ1dGUtZXhwZWN0ZWQudHh0CmluZGV4IDI2ZjlkOWRhMjUxNDBmY2UwZWVjNTNhNGQ4
Njk0N2M5YzFlZTJjNWQuLjFmODQ0MWQyYjkwNWNmZWRhNmFhYWRlYzEyMWJhZDY0NWFkZGQwYzgg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC93ZWJhcHBhcGlzL3NjcmlwdGluZy9wcm9jZXNzaW5nLW1vZGVsLTIvY29tcGlsZS1lcnJv
ci1pbi1hdHRyaWJ1dGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC93ZWJhcHBhcGlzL3NjcmlwdGluZy9wcm9jZXNzaW5n
LW1vZGVsLTIvY29tcGlsZS1lcnJvci1pbi1hdHRyaWJ1dGUtZXhwZWN0ZWQudHh0CkBAIC0xLDQg
KzEsNCBAQAotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI0OiBTeW50YXhFcnJvcjogVW5leHBlY3Rl
ZCBlbmQgb2Ygc2NyaXB0CitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjY6IFN5bnRheEVycm9yOiBV
bmV4cGVjdGVkIHRva2VuICcpJwogCiBQQVNTIHdpbmRvdy5vbmVycm9yIC0gY29tcGlsZSBlcnJv
ciBpbiBhdHRyaWJ1dGUgCiBQQVNTIHdpbmRvdy5vbmVycm9yIC0gY29tcGlsZSBlcnJvciBpbiBh
dHRyaWJ1dGUgKGNvbHVtbikgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvd2ViYXBwYXBpcy9zY3JpcHRpbmcvcHJvY2Vzc2luZy1t
b2RlbC0yL2NvbXBpbGUtZXJyb3ItaW4tYm9keS1vbmVycm9yLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC93ZWJhcHBhcGlzL3Nj
cmlwdGluZy9wcm9jZXNzaW5nLW1vZGVsLTIvY29tcGlsZS1lcnJvci1pbi1ib2R5LW9uZXJyb3It
ZXhwZWN0ZWQudHh0CmluZGV4IDMxNGZmMTU3OWM1MjU5YjE2Mjk5MWNkNDdhZmEyZWU4OTg0NzY2
YjAuLmExZGFlODk0MDZmYmMwZWVhNjdhMDJlNmZiZTYwYzRkNjE1NDhlZDcgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC93ZWJhcHBh
cGlzL3NjcmlwdGluZy9wcm9jZXNzaW5nLW1vZGVsLTIvY29tcGlsZS1lcnJvci1pbi1ib2R5LW9u
ZXJyb3ItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC93ZWJhcHBhcGlzL3NjcmlwdGluZy9wcm9jZXNzaW5nLW1vZGVsLTIv
Y29tcGlsZS1lcnJvci1pbi1ib2R5LW9uZXJyb3ItZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBA
QAogQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE5OiBTeW50YXhFcnJvcjogVW5leHBlY3RlZCB0b2tl
biAnKScKLUNPTlNPTEUgTUVTU0FHRTogbGluZSAxNjogU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQg
ZW5kIG9mIHNjcmlwdAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE4OiBTeW50YXhFcnJvcjogVW5l
eHBlY3RlZCB0b2tlbiAnKScKIAogUEFTUyB3aW5kb3cub25lcnJvciAtIGNvbXBpbGUgZXJyb3Ig
aW4gPGJvZHkgb25lcnJvcj4gCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2pzL2RvbS9pbnZh
bGlkLXN5bnRheC1mb3ItZnVuY3Rpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvanMvZG9t
L2ludmFsaWQtc3ludGF4LWZvci1mdW5jdGlvbi1leHBlY3RlZC50eHQKaW5kZXggZjUwZmNlN2U0
ZTY3YmMxZjhmOTFkYjA2ODgwMGY3OWZhNDM1MTJmZi4uMzI5YTQxNzMxOTBjZDA4OWRmMGQ2M2Uz
NDllZmE4NDdlZDhkM2Y0ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvanMvZG9tL2ludmFsaWQt
c3ludGF4LWZvci1mdW5jdGlvbi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvanMvZG9t
L2ludmFsaWQtc3ludGF4LWZvci1mdW5jdGlvbi1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBA
Ci1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMTogU3ludGF4RXJyb3I6IEludmFsaWQgY2hhcmFjdGVy
OiAnIycKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyOiBTeW50YXhFcnJvcjogSW52YWxpZCBjaGFy
YWN0ZXI6ICcjJwogVGhpcyB0ZXN0IGVuc3VyZXMgd2UgZG9uJ3QgY3Jhc2ggd2hlbiB3ZSBhcmUg
Z2l2ZW4gZ2FyYmFnZSBmb3IgYW4gYXR0cmlidXRlIGV4cGVjdGluZyBhIGZ1bmN0aW9uLgogaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDI1CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9qcy9kb20vc2NyaXB0LXN0YXJ0LWVuZC1sb2NhdGlvbnMtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvanMvZG9tL3NjcmlwdC1zdGFydC1lbmQtbG9jYXRpb25zLWV4cGVjdGVk
LnR4dAppbmRleCAzMmVjMDdmMmI3YTA0MTZmZThkNTdmYjE3N2JiYzc1ZTFkMDJhODNkLi5jYTk1
NWQzYmZhNzRkYzE4NDlkNWE3MDIzOTk0ZGZkMzAzOGFiMjhhIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9qcy9kb20vc2NyaXB0LXN0YXJ0LWVuZC1sb2NhdGlvbnMtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2pzL2RvbS9zY3JpcHQtc3RhcnQtZW5kLWxvY2F0aW9ucy1leHBlY3RlZC50
eHQKQEAgLTI0MywzMiArMjQzLDMyIEBAIGZ1bmN0aW9uICJleGkyYiIgeyAxOjEzOCAtIDE6MjIx
IH0KIGV2YWwgeyAxOjEgLSAxOjU2IH0KIAogICBuZXcgRnVuY3Rpb24gT2JqZWN0OgotZnVuY3Rp
b24gImFub255bW91cyIgeyAxOjE5IC0gMjoyMjggfQorZnVuY3Rpb24gImFub255bW91cyIgeyAx
OjIwIC0gMjoyMjggfQogZnVuY3Rpb24gIm5mMWEiIHsgMjo1NyAtIDI6MjE5IH0KIGZ1bmN0aW9u
ICJuZjFiIiB7IDI6ODcgLSAyOjIwOSB9CiBmdW5jdGlvbiAibmYxYyIgeyAyOjExNyAtIDI6MTk5
IH0KIGV2YWwgeyAxOjEgLSAxOjU2IH0KLWZ1bmN0aW9uICJhbm9ueW1vdXMiIHsgMToxOSAtIDE4
OjggfQorZnVuY3Rpb24gImFub255bW91cyIgeyAxOjIwIC0gMTg6OCB9CiBmdW5jdGlvbiAibmYy
YSIgeyA1OjE4IC0gMTY6NSB9CiBmdW5jdGlvbiAibmYyYiIgeyA3OjIyIC0gMTQ6OSB9CiBmdW5j
dGlvbiAibmYyYyIgeyA5OjI2IC0gMTI6MTMgfQogZXZhbCB7IDE6MSAtIDE6NTYgfQotZnVuY3Rp
b24gImFub255bW91cyIgeyAxOjE5IC0gMjoyMjggfQorZnVuY3Rpb24gImFub255bW91cyIgeyAx
OjIwIC0gMjoyMjggfQogZnVuY3Rpb24gIm5mMWEiIHsgMjo1NyAtIDI6MjE5IH0KIGZ1bmN0aW9u
ICJuZjFiIiB7IDI6ODcgLSAyOjIwOSB9CiBmdW5jdGlvbiAibmYxYyIgeyAyOjExNyAtIDI6MTk5
IH0KIGV2YWwgeyAxOjEgLSAxOjU2IH0KLWZ1bmN0aW9uICJhbm9ueW1vdXMiIHsgMToxOSAtIDI6
MjM3IH0KK2Z1bmN0aW9uICJhbm9ueW1vdXMiIHsgMToyMCAtIDI6MjM3IH0KIGZ1bmN0aW9uICJu
ZmkxYSIgeyAyOjU4IC0gMjoyMjcgfQogZnVuY3Rpb24gIm5maTFiIiB7IDI6OTAgLSAyOjIxNiB9
CiBmdW5jdGlvbiAibmZpMWMiIHsgMjoxMjIgLSAyOjIwNSB9CiBldmFsIHsgMToxIC0gMTo1NiB9
Ci1mdW5jdGlvbiAiYW5vbnltb3VzIiB7IDE6MTkgLSAxODo4IH0KK2Z1bmN0aW9uICJhbm9ueW1v
dXMiIHsgMToyMCAtIDE4OjggfQogZnVuY3Rpb24gIm5mMmEiIHsgNToxOCAtIDE2OjUgfQogZnVu
Y3Rpb24gIm5mMmIiIHsgNzoyMiAtIDE0OjkgfQogZnVuY3Rpb24gIm5mMmMiIHsgOToyNiAtIDEy
OjEzIH0KIGV2YWwgeyAxOjEgLSAxOjU2IH0KLWZ1bmN0aW9uICJhbm9ueW1vdXMiIHsgMToxOSAt
IDE4OjkgfQorZnVuY3Rpb24gImFub255bW91cyIgeyAxOjIwIC0gMTg6OSB9CiBmdW5jdGlvbiAi
bmZpMmEiIHsgNToxOSAtIDE2OjUgfQogZnVuY3Rpb24gIm5maTJiIiB7IDc6MjMgLSAxNDo5IH0K
IGZ1bmN0aW9uICJuZmkyYyIgeyA5OjI3IC0gMTI6MTMgfQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9D
aGFrcmFDb3JlL3Rlc3QvRnVuY3Rpb24vRnVuY0JvZHlFUzUuYmFzZWxpbmUtanNjIGIvSlNUZXN0
cy9DaGFrcmFDb3JlL3Rlc3QvRnVuY3Rpb24vRnVuY0JvZHlFUzUuYmFzZWxpbmUtanNjCmluZGV4
IDM4MjQ4ZDdkYzU4YjkwNzJmYzgxODQyMGQxYzc0MjZiYzczYmE0ZTEuLjM2ZjJhMjA1MTgwY2I4
MTE2ZTY2ZDA5Zjk4MGY4NWFlNjg1Y2ExZTYgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvQ2hha3JhQ29y
ZS90ZXN0L0Z1bmN0aW9uL0Z1bmNCb2R5RVM1LmJhc2VsaW5lLWpzYworKysgYi9KU1Rlc3RzL0No
YWtyYUNvcmUvdGVzdC9GdW5jdGlvbi9GdW5jQm9keUVTNS5iYXNlbGluZS1qc2MKQEAgLTksMTMg
KzksMTMgQEAgUEFTUzogNzogbmV3IEZ1bmN0aW9uIHN1Y2NlZWRlZCBhcyBleHBlY3RlZAogUEFT
UzogODogbmV3IEZ1bmN0aW9uIHN1Y2NlZWRlZCBhcyBleHBlY3RlZAogUEFTUzogOTogbmV3IEZ1
bmN0aW9uIHN1Y2NlZWRlZCBhcyBleHBlY3RlZAogUEFTUzogMTA6IG5ldyBGdW5jdGlvbiBzdWNj
ZWVkZWQgYXMgZXhwZWN0ZWQKLVBBU1M6IDEwMDogbmV3IEZ1bmN0aW9uIGZhaWxlZCBhcyBleHBl
Y3RlZC4gU3ludGF4RXJyb3I6IFBhcnNlciBlcnJvcgotUEFTUzogMTAwOiBuZXcgRnVuY3Rpb24g
ZmFpbGVkIGFzIGV4cGVjdGVkLiBTeW50YXhFcnJvcjogUGFyc2VyIGVycm9yCi1QQVNTOiAxMDE6
IG5ldyBGdW5jdGlvbiBmYWlsZWQgYXMgZXhwZWN0ZWQuIFN5bnRheEVycm9yOiBQYXJzZXIgZXJy
b3IKLVBBU1M6IDEwMjogbmV3IEZ1bmN0aW9uIGZhaWxlZCBhcyBleHBlY3RlZC4gU3ludGF4RXJy
b3I6IFBhcmFtZXRlcnMgc2hvdWxkIG1hdGNoIGFyZ3VtZW50cyBvZmZlcmVkIGFzIHBhcmFtZXRl
cnMgaW4gRnVuY3Rpb24gY29uc3RydWN0b3IuCi1QQVNTOiAxMDM6IG5ldyBGdW5jdGlvbiBmYWls
ZWQgYXMgZXhwZWN0ZWQuIFN5bnRheEVycm9yOiBQYXJzZXIgZXJyb3IKLVBBU1M6IDEwNDogbmV3
IEZ1bmN0aW9uIGZhaWxlZCBhcyBleHBlY3RlZC4gU3ludGF4RXJyb3I6IFBhcmFtZXRlcnMgc2hv
dWxkIG1hdGNoIGFyZ3VtZW50cyBvZmZlcmVkIGFzIHBhcmFtZXRlcnMgaW4gRnVuY3Rpb24gY29u
c3RydWN0b3IuCi1QQVNTOiAxMDU6IG5ldyBGdW5jdGlvbiBmYWlsZWQgYXMgZXhwZWN0ZWQuIFN5
bnRheEVycm9yOiBQYXJzZXIgZXJyb3IKK1BBU1M6IDEwMDogbmV3IEZ1bmN0aW9uIGZhaWxlZCBh
cyBleHBlY3RlZC4gU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJ3snLiBFeHBlY3RlZCAn
KScgdG8gZW5kIGEgY29tcG91bmQgZXhwcmVzc2lvbi4KK1BBU1M6IDEwMDogbmV3IEZ1bmN0aW9u
IGZhaWxlZCBhcyBleHBlY3RlZC4gU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJ3snLiBF
eHBlY3RlZCAnKScgdG8gZW5kIGEgY29tcG91bmQgZXhwcmVzc2lvbi4KK1BBU1M6IDEwMTogbmV3
IEZ1bmN0aW9uIGZhaWxlZCBhcyBleHBlY3RlZC4gU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQga2V5
d29yZCAnZnVuY3Rpb24nLiBFeHBlY3RlZCAnKScgdG8gZW5kIGEgY29tcG91bmQgZXhwcmVzc2lv
bi4KK1BBU1M6IDEwMjogbmV3IEZ1bmN0aW9uIGZhaWxlZCBhcyBleHBlY3RlZC4gU3ludGF4RXJy
b3I6IFVuZXhwZWN0ZWQga2V5d29yZCAnZnVuY3Rpb24nLiBFeHBlY3RlZCAnKScgdG8gZW5kIGEg
Y29tcG91bmQgZXhwcmVzc2lvbi4KK1BBU1M6IDEwMzogbmV3IEZ1bmN0aW9uIGZhaWxlZCBhcyBl
eHBlY3RlZC4gU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQga2V5d29yZCAnZnVuY3Rpb24nLiBFeHBl
Y3RlZCAnKScgdG8gZW5kIGEgY29tcG91bmQgZXhwcmVzc2lvbi4KK1BBU1M6IDEwNDogbmV3IEZ1
bmN0aW9uIGZhaWxlZCBhcyBleHBlY3RlZC4gU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4g
JzsnLiBFeHBlY3RlZCAnKScgdG8gZW5kIGEgY29tcG91bmQgZXhwcmVzc2lvbi4KK1BBU1M6IDEw
NTogbmV3IEZ1bmN0aW9uIGZhaWxlZCBhcyBleHBlY3RlZC4gU3ludGF4RXJyb3I6IFVuZXhwZWN0
ZWQgdG9rZW4gJzsnLiBFeHBlY3RlZCAnKScgdG8gZW5kIGEgY29tcG91bmQgZXhwcmVzc2lvbi4K
IFBBU1M6IDIwMDogbmV3IEZ1bmN0aW9uIGZhaWxlZCBhcyBleHBlY3RlZC4gU3ludGF4RXJyb3I6
IFVuZXhwZWN0ZWQgdG9rZW4gJywnLiBFeHBlY3RlZCBhIHBhcmFtZXRlciBwYXR0ZXJuIG9yIGEg
JyknIGluIHBhcmFtZXRlciBsaXN0LgogUEFTUzogMjAwOiBuZXcgRnVuY3Rpb24gZmFpbGVkIGFz
IGV4cGVjdGVkLiBTeW50YXhFcnJvcjogVW5leHBlY3RlZCB0b2tlbiAnLCcuIEV4cGVjdGVkIGEg
cGFyYW1ldGVyIHBhdHRlcm4gb3IgYSAnKScgaW4gcGFyYW1ldGVyIGxpc3QuCiBQQVNTOiAyMDE6
IG5ldyBGdW5jdGlvbiBmYWlsZWQgYXMgZXhwZWN0ZWQuIFN5bnRheEVycm9yOiBVbmV4cGVjdGVk
IHRva2VuICcsJy4gRXhwZWN0ZWQgYSBwYXJhbWV0ZXIgcGF0dGVybiBvciBhICcpJyBpbiBwYXJh
bWV0ZXIgbGlzdC4KZGlmZiAtLWdpdCBhL0pTVGVzdHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFu
Z2VMb2cKaW5kZXggMWE5YmUwODcwYmQ3YTdiNTRhMDYxNzIwNTVmMmFhM2M1MGRjZDQ4NS4uNDcy
YmJkZGFiNGE4NTcyOTk4NGJkNmI5YzAxMWY1NDBiY2JmYWIyMiAxMDA2NDQKLS0tIGEvSlNUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAx
OC0xMC0xNSAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CisKKyAgICAg
ICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjIzNzA1NC4KKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDU5MworCisgICAgICAgICJ0aGlzIHJlZ3Jl
c3NlZCBKZXRTdHJlYW0gMiBieSA2JSBvbiBpT1MiIChSZXF1ZXN0ZWQgYnkKKyAgICAgICAgc2Fh
bXlqb29uIG9uICN3ZWJraXQpLgorCisgICAgICAgIFJldmVydGVkIGNoYW5nZXNldDoKKworICAg
ICAgICAiW0pTQ10gSlNDIHNob3VsZCBoYXZlICJwYXJzZUZ1bmN0aW9uIiB0byBvcHRpbWl6ZSBG
dW5jdGlvbgorICAgICAgICBjb25zdHJ1Y3RvciIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDM0MAorICAgICAgICBodHRwczovL3RyYWMud2Via2l0
Lm9yZy9jaGFuZ2VzZXQvMjM3MDU0CisKIDIwMTgtMTAtMTMgIFl1c3VrZSBTdXp1a2kgIDx5dXN1
a2VzdXp1a2lAc2xvd3N0YXJ0Lm9yZz4KIAogICAgICAgICBbSlNDXSBKU09OLnN0cmluZ2lmeSBj
YW4gYWNjZXB0IGNhbGwtd2l0aC1uby1hcmd1bWVudHMKZGlmZiAtLWdpdCBhL0pTVGVzdHMvc3Ry
ZXNzL2Z1bmN0aW9uLWNhY2hlLXdpdGgtcGFyYW1ldGVycy1lbmQtcG9zaXRpb24uanMgYi9KU1Rl
c3RzL3N0cmVzcy9mdW5jdGlvbi1jYWNoZS13aXRoLXBhcmFtZXRlcnMtZW5kLXBvc2l0aW9uLmpz
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiMGZmMjIxNGQwZjk0MjdhY2RmMzAzMGQx
YTRjOWQ3ZTdiOTIwZmE0Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Ci0tLSBhL0pTVGVzdHMvc3RyZXNzL2Z1bmN0aW9uLWNhY2hlLXdpdGgtcGFyYW1ldGVycy1lbmQt
cG9zaXRpb24uanMKKysrIC9kZXYvbnVsbApAQCAtMSw0MCArMCwwIEBACi1mdW5jdGlvbiBzaG91
bGRCZShhY3R1YWwsIGV4cGVjdGVkKSB7Ci0gICAgaWYgKGFjdHVhbCAhPT0gZXhwZWN0ZWQpCi0g
ICAgICAgIHRocm93IG5ldyBFcnJvcignYmFkIHZhbHVlOiAnICsgYWN0dWFsKTsKLX0KLQotZnVu
Y3Rpb24gc2hvdWxkVGhyb3coZnVuYywgZXJyb3JNZXNzYWdlKSB7Ci0gICAgdmFyIGVycm9yVGhy
b3duID0gZmFsc2U7Ci0gICAgdmFyIGVycm9yID0gbnVsbDsKLSAgICB0cnkgewotICAgICAgICBm
dW5jKCk7Ci0gICAgfSBjYXRjaCAoZSkgewotICAgICAgICBlcnJvclRocm93biA9IHRydWU7Ci0g
ICAgICAgIGVycm9yID0gZTsKLSAgICB9Ci0gICAgaWYgKCFlcnJvclRocm93bikKLSAgICAgICAg
dGhyb3cgbmV3IEVycm9yKCdub3QgdGhyb3duJyk7Ci0gICAgaWYgKFN0cmluZyhlcnJvcikgIT09
IGVycm9yTWVzc2FnZSkKLSAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBiYWQgZXJyb3I6ICR7U3Ry
aW5nKGVycm9yKX1gKTsKLX0KLQotZm9yICh2YXIgaSA9IDA7IGkgPCAxMDsgKytpKSB7Ci0gICAg
dmFyIGYgPSBGdW5jdGlvbignLyopIHtcbiovJywgJ3JldHVybiA0MicpOwotICAgIHNob3VsZEJl
KGYudG9TdHJpbmcoKSwKLWBmdW5jdGlvbiBhbm9ueW1vdXMoLyopIHsKLSovKSB7Ci1yZXR1cm4g
NDIKLX1gKTsKLX0KLXNob3VsZFRocm93KCgpID0+IEZ1bmN0aW9uKCcvKicsICcqLyl7XG5yZXR1
cm4gNDInKSwgYFN5bnRheEVycm9yOiBQYXJhbWV0ZXJzIHNob3VsZCBtYXRjaCBhcmd1bWVudHMg
b2ZmZXJlZCBhcyBwYXJhbWV0ZXJzIGluIEZ1bmN0aW9uIGNvbnN0cnVjdG9yLmApOwotCi1zaG91
bGRUaHJvdygoKSA9PiBGdW5jdGlvbignLyonLCAnKi8pe1xucmV0dXJuIDQzJyksIGBTeW50YXhF
cnJvcjogUGFyYW1ldGVycyBzaG91bGQgbWF0Y2ggYXJndW1lbnRzIG9mZmVyZWQgYXMgcGFyYW1l
dGVycyBpbiBGdW5jdGlvbiBjb25zdHJ1Y3Rvci5gKTsKLWZvciAodmFyIGkgPSAwOyBpIDwgMTA7
ICsraSkgewotICAgIHZhciBmID0gRnVuY3Rpb24oJy8qKSB7XG4qLycsICdyZXR1cm4gNDMnKTsK
LSAgICBzaG91bGRCZShmLnRvU3RyaW5nKCksCi1gZnVuY3Rpb24gYW5vbnltb3VzKC8qKSB7Ci0q
LykgewotcmV0dXJuIDQzCi19YCk7Ci19Ci0KZGlmZiAtLWdpdCBhL0pTVGVzdHMvc3RyZXNzL2Z1
bmN0aW9uLWNvbnN0cnVjdG9yLW5hbWUuanMgYi9KU1Rlc3RzL3N0cmVzcy9mdW5jdGlvbi1jb25z
dHJ1Y3Rvci1uYW1lLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiZjdlOTQ1OWNh
NTBmYzk2NDIzZjliODc3YTgyZDliNDFmZWYzOGZhLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCi0tLSBhL0pTVGVzdHMvc3RyZXNzL2Z1bmN0aW9uLWNvbnN0cnVjdG9y
LW5hbWUuanMKKysrIC9kZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi1mdW5jdGlvbiBzaG91bGRC
ZShhY3R1YWwsIGV4cGVjdGVkKSB7Ci0gICAgaWYgKGFjdHVhbCAhPT0gZXhwZWN0ZWQpCi0gICAg
ICAgIHRocm93IG5ldyBFcnJvcignYmFkIHZhbHVlOiAnICsgYWN0dWFsKTsKLX0KLQotdmFyIEdl
bmVyYXRvckZ1bmN0aW9uID0gZnVuY3Rpb24qKCl7fS5jb25zdHJ1Y3RvcjsKLXZhciBBc3luY0Z1
bmN0aW9uID0gYXN5bmMgZnVuY3Rpb24oKXt9LmNvbnN0cnVjdG9yOwotdmFyIEFzeW5jR2VuZXJh
dG9yRnVuY3Rpb24gPSBhc3luYyBmdW5jdGlvbiooKXt9LmNvbnN0cnVjdG9yOwotCi12YXIgZiA9
IEZ1bmN0aW9uKGByZXR1cm4gNDJgKTsKLXNob3VsZEJlKHR5cGVvZiBhbm9ueW1vdXMsIGB1bmRl
ZmluZWRgKTsKLXNob3VsZEJlKGYudG9TdHJpbmcoKSwKLWBmdW5jdGlvbiBhbm9ueW1vdXMoKSB7
Ci1yZXR1cm4gNDIKLX1gKTsKLQotdmFyIGdmID0gR2VuZXJhdG9yRnVuY3Rpb24oYHJldHVybiA0
MmApOwotc2hvdWxkQmUodHlwZW9mIGFub255bW91cywgYHVuZGVmaW5lZGApOwotc2hvdWxkQmUo
Z2YudG9TdHJpbmcoKSwKLWBmdW5jdGlvbiogYW5vbnltb3VzKCkgewotcmV0dXJuIDQyCi19YCk7
Ci0KLXZhciBhZiA9IEFzeW5jRnVuY3Rpb24oYHJldHVybiA0MmApOwotc2hvdWxkQmUodHlwZW9m
IGFub255bW91cywgYHVuZGVmaW5lZGApOwotc2hvdWxkQmUoYWYudG9TdHJpbmcoKSwKLWBhc3lu
YyBmdW5jdGlvbiBhbm9ueW1vdXMoKSB7Ci1yZXR1cm4gNDIKLX1gKTsKLQotdmFyIGFnZiA9IEFz
eW5jR2VuZXJhdG9yRnVuY3Rpb24oYHJldHVybiA0MmApOwotc2hvdWxkQmUodHlwZW9mIGFub255
bW91cywgYHVuZGVmaW5lZGApOwotc2hvdWxkQmUoYWdmLnRvU3RyaW5nKCksCi1gYXN5bmMgZnVu
Y3Rpb24qIGFub255bW91cygpIHsKLXJldHVybiA0MgotfWApOwpkaWZmIC0tZ2l0IGEvSlNUZXN0
cy90ZXN0MjYyL2V4cGVjdGF0aW9ucy55YW1sIGIvSlNUZXN0cy90ZXN0MjYyL2V4cGVjdGF0aW9u
cy55YW1sCmluZGV4IGQzOTlmMzM4ODdmZjRkMzkwY2UxYTljYzk3ZmFhOWZlYzg2NGEzMTMuLjA4
Y2E5YjEzZWM2Y2QyOGNjNWNkZjk5YzZjM2U3ZTlkZmNmN2FiOWEgMTAwNjQ0Ci0tLSBhL0pTVGVz
dHMvdGVzdDI2Mi9leHBlY3RhdGlvbnMueWFtbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0
YXRpb25zLnlhbWwKQEAgLTkwMCwxNCArOTAwLDE0IEBAIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9u
L3Byb3RvdHlwZS9yZXN0cmljdGVkLXByb3BlcnR5LWNhbGxlci5qczoKICAgZGVmYXVsdDogIlJl
ZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiB2ZXJpZnlOb3RFbnVtZXJhYmxlIgog
ICBzdHJpY3QgbW9kZTogIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiB2ZXJp
ZnlOb3RFbnVtZXJhYmxlIgogdGVzdC9idWlsdC1pbnMvRnVuY3Rpb24vcHJvdG90eXBlL3RvU3Ry
aW5nL0FzeW5jRnVuY3Rpb24uanM6Ci0gIGRlZmF1bHQ6ICJTeW50YXhFcnJvcjogVW5leHBlY3Rl
ZCB0b2tlbiAnOycuIEV4cGVjdGVkIGEgJyknIG9yIGEgJywnIGFmdGVyIGEgcGFyYW1ldGVyIGRl
Y2xhcmF0aW9uLiIKLSAgc3RyaWN0IG1vZGU6ICJTeW50YXhFcnJvcjogVW5leHBlY3RlZCB0b2tl
biAnOycuIEV4cGVjdGVkIGEgJyknIG9yIGEgJywnIGFmdGVyIGEgcGFyYW1ldGVyIGRlY2xhcmF0
aW9uLiIKKyAgZGVmYXVsdDogIlN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd9Jy4gRXhw
ZWN0ZWQgYSAnKScgb3IgYSAnLCcgYWZ0ZXIgYSBwYXJhbWV0ZXIgZGVjbGFyYXRpb24uIgorICBz
dHJpY3QgbW9kZTogIlN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd9Jy4gRXhwZWN0ZWQg
YSAnKScgb3IgYSAnLCcgYWZ0ZXIgYSBwYXJhbWV0ZXIgZGVjbGFyYXRpb24uIgogdGVzdC9idWls
dC1pbnMvRnVuY3Rpb24vcHJvdG90eXBlL3RvU3RyaW5nL0Z1bmN0aW9uLmpzOgotICBkZWZhdWx0
OiAiU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJzsnLiBFeHBlY3RlZCBhICcpJyBvciBh
ICcsJyBhZnRlciBhIHBhcmFtZXRlciBkZWNsYXJhdGlvbi4iCi0gIHN0cmljdCBtb2RlOiAiU3lu
dGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJzsnLiBFeHBlY3RlZCBhICcpJyBvciBhICcsJyBh
ZnRlciBhIHBhcmFtZXRlciBkZWNsYXJhdGlvbi4iCisgIGRlZmF1bHQ6ICJTeW50YXhFcnJvcjog
VW5leHBlY3RlZCB0b2tlbiAnfScuIEV4cGVjdGVkIGEgJyknIG9yIGEgJywnIGFmdGVyIGEgcGFy
YW1ldGVyIGRlY2xhcmF0aW9uLiIKKyAgc3RyaWN0IG1vZGU6ICJTeW50YXhFcnJvcjogVW5leHBl
Y3RlZCB0b2tlbiAnfScuIEV4cGVjdGVkIGEgJyknIG9yIGEgJywnIGFmdGVyIGEgcGFyYW1ldGVy
IGRlY2xhcmF0aW9uLiIKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3RvdHlwZS90b1N0cmlu
Zy9HZW5lcmF0b3JGdW5jdGlvbi5qczoKLSAgZGVmYXVsdDogIlN5bnRheEVycm9yOiBVbmV4cGVj
dGVkIGtleXdvcmQgJ3lpZWxkJy4gRXhwZWN0ZWQgYSAnKScgb3IgYSAnLCcgYWZ0ZXIgYSBwYXJh
bWV0ZXIgZGVjbGFyYXRpb24uIgotICBzdHJpY3QgbW9kZTogIlN5bnRheEVycm9yOiBVbmV4cGVj
dGVkIGtleXdvcmQgJ3lpZWxkJy4gRXhwZWN0ZWQgYSAnKScgb3IgYSAnLCcgYWZ0ZXIgYSBwYXJh
bWV0ZXIgZGVjbGFyYXRpb24uIgorICBkZWZhdWx0OiAiU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQg
dG9rZW4gJ30nLiBFeHBlY3RlZCBhICcpJyBvciBhICcsJyBhZnRlciBhIHBhcmFtZXRlciBkZWNs
YXJhdGlvbi4iCisgIHN0cmljdCBtb2RlOiAiU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4g
J30nLiBFeHBlY3RlZCBhICcpJyBvciBhICcsJyBhZnRlciBhIHBhcmFtZXRlciBkZWNsYXJhdGlv
bi4iCiB0ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90b3R5cGUvdG9TdHJpbmcvYXN5bmMtYXJy
b3ctZnVuY3Rpb24uanM6CiAgIGRlZmF1bHQ6ICJUZXN0MjYyRXJyb3I6IENvbmZvcm1zIHRvIE5h
dGl2ZUZ1bmN0aW9uIFN5bnRheDogJ2FzeW5jICggLyogYiAqLyBhIC8qIGMgKi8gLCAvKiBkICov
IGIgLyogZSAqLyApIC8qIGYgKi8gPT4gLyogZyAqLyB7IC8qIGggKi8gOyAvKiBpICovIH0nLihh
c3luYyAvKiBhICovICggLyogYiAqLyBhIC8qIGMgKi8gLCAvKiBkICovIGIgLyogZSAqLyApIC8q
IGYgKi8gPT4gLyogZyAqLyB7IC8qIGggKi8gOyAvKiBpICovIH0pIgogICBzdHJpY3QgbW9kZTog
IlRlc3QyNjJFcnJvcjogQ29uZm9ybXMgdG8gTmF0aXZlRnVuY3Rpb24gU3ludGF4OiAnYXN5bmMg
KCAvKiBiICovIGEgLyogYyAqLyAsIC8qIGQgKi8gYiAvKiBlICovICkgLyogZiAqLyA9PiAvKiBn
ICovIHsgLyogaCAqLyA7IC8qIGkgKi8gfScuKGFzeW5jIC8qIGEgKi8gKCAvKiBiICovIGEgLyog
YyAqLyAsIC8qIGQgKi8gYiAvKiBlICovICkgLyogZiAqLyA9PiAvKiBnICovIHsgLyogaCAqLyA7
IC8qIGkgKi8gfSkiCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>