<?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>190760</bug_id>
          
          <creation_ts>2018-10-19 13:35:02 -0700</creation_ts>
          <short_desc>REGRESSION(r237254): &quot;It regresses JetStream 2 by 5% on some iOS devices&quot; (Requested by saamyjoon on #webkit).</short_desc>
          <delta_ts>2018-10-19 13:39:24 -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>1470972</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-10-19 13:35:02 -0700</bug_when>
    <thetext>https://trac.webkit.org/changeset/237254 broke the build:
&quot;It regresses JetStream 2 by 5% on some iOS devices&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>1470974</commentid>
    <comment_count>1</comment_count>
      <attachid>352820</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-10-19 13:35:19 -0700</bug_when>
    <thetext>Created attachment 352820
ROLLOUT of r237254

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>1470977</commentid>
    <comment_count>2</comment_count>
      <attachid>352820</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-10-19 13:38:21 -0700</bug_when>
    <thetext>Comment on attachment 352820
ROLLOUT of r237254

Clearing flags on attachment: 352820

Committed r237299: &lt;https://trac.webkit.org/changeset/237299&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470978</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-10-19 13:38:22 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470980</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-10-19 13:39:24 -0700</bug_when>
    <thetext>&lt;rdar://problem/45415171&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>352820</attachid>
            <date>2018-10-19 13:35:19 -0700</date>
            <delta_ts>2018-10-19 13:38:21 -0700</delta_ts>
            <desc>ROLLOUT of r237254</desc>
            <filename>bug-190760-20181019163518.patch</filename>
            <type>text/plain</type>
            <size>58814</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM3Mjk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
NDYxYzNjZGQyOWJiMjQ1ZDg5MmUyMGExM2IxY2Q1Y2QyZDVhNzEzLi42MzljOGZlNmYzZGVhYWU0
OGQ1MDg0YWVkNzY1NjNhNWM0MDNiOWYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOCBAQAorMjAxOC0xMC0xOSAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtp
dC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjIzNzI1NC4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDc2MAorCisgICAg
ICAgICJJdCByZWdyZXNzZXMgSmV0U3RyZWFtIDIgYnkgNSUgb24gc29tZSBpT1MgZGV2aWNlcyIK
KyAgICAgICAgKFJlcXVlc3RlZCBieSBzYWFteWpvb24gb24gI3dlYmtpdCkuCisKKyAgICAgICAg
UmV2ZXJ0ZWQgY2hhbmdlc2V0OgorCisgICAgICAgICJbSlNDXSBKU0Mgc2hvdWxkIGhhdmUgInBh
cnNlRnVuY3Rpb24iIHRvIG9wdGltaXplIEZ1bmN0aW9uCisgICAgICAgIGNvbnN0cnVjdG9yIgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkwMzQwCisg
ICAgICAgIGh0dHBzOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8yMzcyNTQKKwogMjAxOC0x
MC0xOSAgU2FhbSBCYXJhdGkgIDxzYmFyYXRpQGFwcGxlLmNvbT4KIAogICAgICAgICB2bUNhbGwg
c2hvdWxkIGNoZWNrIGlmIHdlIGV4aXQgYmVmb3JlIGVtaXR0aW5nIGFuIE9TUiBleGl0IGR1ZSB0
byBleGNlcHRpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUv
VW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5
dGVjb2RlL1VubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNwcAppbmRleCA3MWIxMzc0OGRlZTAx
YTVkOGQ5Njk5YzlmNmY4MWNlNWJhM2YxYTI3Li5lNTQwYTI0MGQ4ZjNiOWFjNzI1OWYwMTBjZDJl
MzQ1ZDM0MDE1MzkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUv
VW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ieXRlY29kZS9VbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZS5jcHAKQEAgLTE3NCwxNCArMTc0
LDE0IEBAIEZ1bmN0aW9uRXhlY3V0YWJsZSogVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGU6Omxp
bmsoVk0mIHZtLCBjb25zdCBTb3VyY2VDb2RlJiBwCiAKIFVubGlua2VkRnVuY3Rpb25FeGVjdXRh
YmxlKiBVbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZTo6ZnJvbUdsb2JhbENvZGUoCiAgICAgY29u
c3QgSWRlbnRpZmllciYgbmFtZSwgRXhlY1N0YXRlJiBleGVjLCBjb25zdCBTb3VyY2VDb2RlJiBz
b3VyY2UsIAotICAgIEpTT2JqZWN0KiYgZXhjZXB0aW9uLCBpbnQgb3ZlcnJpZGVMaW5lTnVtYmVy
LCBzdGQ6Om9wdGlvbmFsPGludD4gZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQb3Np
dGlvbikKKyAgICBKU09iamVjdComIGV4Y2VwdGlvbiwgaW50IG92ZXJyaWRlTGluZU51bWJlcikK
IHsKICAgICBQYXJzZXJFcnJvciBlcnJvcjsKICAgICBWTSYgdm0gPSBleGVjLnZtKCk7CiAgICAg
YXV0byYgZ2xvYmFsT2JqZWN0ID0gKmV4ZWMubGV4aWNhbEdsb2JhbE9iamVjdCgpOwogICAgIENv
ZGVDYWNoZSogY29kZUNhY2hlID0gdm0uY29kZUNhY2hlKCk7CiAgICAgRGVidWdnZXJNb2RlIGRl
YnVnZ2VyTW9kZSA9IGdsb2JhbE9iamVjdC5oYXNJbnRlcmFjdGl2ZURlYnVnZ2VyKCkgPyBEZWJ1
Z2dlck9uIDogRGVidWdnZXJPZmY7Ci0gICAgVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUqIGV4
ZWN1dGFibGUgPSBjb2RlQ2FjaGUtPmdldFVubGlua2VkR2xvYmFsRnVuY3Rpb25FeGVjdXRhYmxl
KHZtLCBuYW1lLCBzb3VyY2UsIGRlYnVnZ2VyTW9kZSwgZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFt
ZXRlcnNFbmRQb3NpdGlvbiwgZXJyb3IpOworICAgIFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxl
KiBleGVjdXRhYmxlID0gY29kZUNhY2hlLT5nZXRVbmxpbmtlZEdsb2JhbEZ1bmN0aW9uRXhlY3V0
YWJsZSh2bSwgbmFtZSwgc291cmNlLCBkZWJ1Z2dlck1vZGUsIGVycm9yKTsKIAogICAgIGlmIChn
bG9iYWxPYmplY3QuaGFzRGVidWdnZXIoKSkKICAgICAgICAgZ2xvYmFsT2JqZWN0LmRlYnVnZ2Vy
KCktPnNvdXJjZVBhcnNlZCgmZXhlYywgc291cmNlLnByb3ZpZGVyKCksIGVycm9yLmxpbmUoKSwg
ZXJyb3IubWVzc2FnZSgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRl
Y29kZS9VbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlLmgKaW5kZXggMzEzZDY2NjA5NDM5
ZDdiYzAwZGViMjEzMTY0YjI5MTM2Y2Q2MmQxNi4uZjllODkzOTk5MzExNDRjM2Q1NmMwNThiOTEy
NzJlMmQ5YmQ4OTI2MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2Rl
L1VubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlLmgKQEAgLTEwNyw3ICsxMDcsNyBA
QCBwdWJsaWM6CiAKICAgICBzdGF0aWMgVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUqIGZyb21H
bG9iYWxDb2RlKAogICAgICAgICBjb25zdCBJZGVudGlmaWVyJiwgRXhlY1N0YXRlJiwgY29uc3Qg
U291cmNlQ29kZSYsIEpTT2JqZWN0KiYgZXhjZXB0aW9uLCAKLSAgICAgICAgaW50IG92ZXJyaWRl
TGluZU51bWJlciwgc3RkOjpvcHRpb25hbDxpbnQ+IGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0
ZXJzRW5kUG9zaXRpb24pOworICAgICAgICBpbnQgb3ZlcnJpZGVMaW5lTnVtYmVyKTsKIAogICAg
IEpTX0VYUE9SVF9QUklWQVRFIEZ1bmN0aW9uRXhlY3V0YWJsZSogbGluayhWTSYsIGNvbnN0IFNv
dXJjZUNvZGUmIHBhcmVudFNvdXJjZSwgc3RkOjpvcHRpb25hbDxpbnQ+IG92ZXJyaWRlTGluZU51
bWJlciA9IHN0ZDo6bnVsbG9wdCwgSW50cmluc2ljID0gTm9JbnRyaW5zaWMpOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5jcHAKaW5kZXggMjI0ZDc2MTNjMTUyNWU3NzExNzU4
ZTY3OWQyOWFiMmM5MjAzNTBhOC4uM2YyZmMxZTM4ZjRhNGVkMzE5ZGJhODQ2NWRiZjhlOTkxNDUx
OWM1MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcApAQCAtMTk0LDcg
KzE5NCw3IEBAIFBhcnNlcjxMZXhlclR5cGU+Ojp+UGFyc2VyKCkKIH0KIAogdGVtcGxhdGUgPHR5
cGVuYW1lIExleGVyVHlwZT4KLVN0cmluZyBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VJbm5lcihj
b25zdCBJZGVudGlmaWVyJiBjYWxsZWVOYW1lLCBTb3VyY2VQYXJzZU1vZGUgcGFyc2VNb2RlLCBQ
YXJzaW5nQ29udGV4dCBwYXJzaW5nQ29udGV4dCwgc3RkOjpvcHRpb25hbDxpbnQ+IGZ1bmN0aW9u
Q29uc3RydWN0b3JQYXJhbWV0ZXJzRW5kUG9zaXRpb24pCitTdHJpbmcgUGFyc2VyPExleGVyVHlw
ZT46OnBhcnNlSW5uZXIoY29uc3QgSWRlbnRpZmllciYgY2FsbGVlTmFtZSwgU291cmNlUGFyc2VN
b2RlIHBhcnNlTW9kZSkKIHsKICAgICBTdHJpbmcgcGFyc2VFcnJvciA9IFN0cmluZygpOwogCkBA
IC0yMzgsOCArMjM4LDYgQEAgU3RyaW5nIFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZUlubmVyKGNv
bnN0IElkZW50aWZpZXImIGNhbGxlZU5hbWUsIFNvdXJjZVBhcnNlTW8KICAgICAgICAgICAgIHNv
dXJjZUVsZW1lbnRzID0gcGFyc2VHZW5lcmF0b3JGdW5jdGlvblNvdXJjZUVsZW1lbnRzKGNvbnRl
eHQsIGNhbGxlZU5hbWUsIENoZWNrRm9yU3RyaWN0TW9kZSk7CiAgICAgICAgIGVsc2UgaWYgKGlz
QXN5bmNHZW5lcmF0b3JXcmFwcGVyUGFyc2VNb2RlKHBhcnNlTW9kZSkpCiAgICAgICAgICAgICBz
b3VyY2VFbGVtZW50cyA9IHBhcnNlQXN5bmNHZW5lcmF0b3JGdW5jdGlvblNvdXJjZUVsZW1lbnRz
KGNvbnRleHQsIHBhcnNlTW9kZSwgaXNBcnJvd0Z1bmN0aW9uQm9keUV4cHJlc3Npb24sIENoZWNr
Rm9yU3RyaWN0TW9kZSk7Ci0gICAgICAgIGVsc2UgaWYgKHBhcnNpbmdDb250ZXh0ID09IFBhcnNp
bmdDb250ZXh0OjpGdW5jdGlvbkNvbnN0cnVjdG9yKQotICAgICAgICAgICAgc291cmNlRWxlbWVu
dHMgPSBwYXJzZVNpbmdsZUZ1bmN0aW9uKGNvbnRleHQsIGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJh
bWV0ZXJzRW5kUG9zaXRpb24pOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICBzb3VyY2VFbGVt
ZW50cyA9IHBhcnNlU291cmNlRWxlbWVudHMoY29udGV4dCwgQ2hlY2tGb3JTdHJpY3RNb2RlKTsK
ICAgICB9CkBAIC02MTIsMzggKzYxMCw2IEBAIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4g
VHJlZVNvdXJjZUVsZW1lbnRzIFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZUFzeW5jR2VuCiAgICAg
ICAgIAogICAgIHJldHVybiBzb3VyY2VFbGVtZW50czsKIH0KLQotdGVtcGxhdGUgPHR5cGVuYW1l
IExleGVyVHlwZT4KLXRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZVNvdXJjZUVsZW1l
bnRzIFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZVNpbmdsZUZ1bmN0aW9uKFRyZWVCdWlsZGVyJiBj
b250ZXh0LCBzdGQ6Om9wdGlvbmFsPGludD4gZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNF
bmRQb3NpdGlvbikKLXsKLSAgICBUcmVlU291cmNlRWxlbWVudHMgc291cmNlRWxlbWVudHMgPSBj
b250ZXh0LmNyZWF0ZVNvdXJjZUVsZW1lbnRzKCk7Ci0gICAgVHJlZVN0YXRlbWVudCBzdGF0ZW1l
bnQgPSAwOwotICAgIHN3aXRjaCAobV90b2tlbi5tX3R5cGUpIHsKLSAgICBjYXNlIEZVTkNUSU9O
OgotICAgICAgICBzdGF0ZW1lbnQgPSBwYXJzZUZ1bmN0aW9uRGVjbGFyYXRpb24oY29udGV4dCwg
RXhwb3J0VHlwZTo6Tm90RXhwb3J0ZWQsIERlY2xhcmF0aW9uRGVmYXVsdENvbnRleHQ6OlN0YW5k
YXJkLCBmdW5jdGlvbkNvbnN0cnVjdG9yUGFyYW1ldGVyc0VuZFBvc2l0aW9uKTsKLSAgICAgICAg
YnJlYWs7Ci0gICAgY2FzZSBJREVOVDoKLSAgICAgICAgaWYgKCptX3Rva2VuLm1fZGF0YS5pZGVu
dCA9PSBtX3ZtLT5wcm9wZXJ0eU5hbWVzLT5hc3luYyAmJiAhbV90b2tlbi5tX2RhdGEuZXNjYXBl
ZCkgewotICAgICAgICAgICAgbmV4dCgpOwotICAgICAgICAgICAgZmFpbElmRmFsc2UobWF0Y2go
RlVOQ1RJT04pICYmICFtX2xleGVyLT5wcmV2VGVybWluYXRvcigpLCAiQ2Fubm90IHBhcnNlIHRo
ZSBhc3luYyBmdW5jdGlvbiIpOwotICAgICAgICAgICAgc3RhdGVtZW50ID0gcGFyc2VBc3luY0Z1
bmN0aW9uRGVjbGFyYXRpb24oY29udGV4dCwgRXhwb3J0VHlwZTo6Tm90RXhwb3J0ZWQsIERlY2xh
cmF0aW9uRGVmYXVsdENvbnRleHQ6OlN0YW5kYXJkLCBmdW5jdGlvbkNvbnN0cnVjdG9yUGFyYW1l
dGVyc0VuZFBvc2l0aW9uKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAgICAg
IEZBTExUSFJPVUdIOwotICAgIGRlZmF1bHQ6Ci0gICAgICAgIGZhaWxEdWVUb1VuZXhwZWN0ZWRU
b2tlbigpOwotICAgICAgICBicmVhazsKLSAgICB9Ci0KLSAgICBpZiAoc3RhdGVtZW50KSB7Ci0g
ICAgICAgIGNvbnRleHQuc2V0RW5kT2Zmc2V0KHN0YXRlbWVudCwgbV9sYXN0VG9rZW5FbmRQb3Np
dGlvbi5vZmZzZXQpOwotICAgICAgICBjb250ZXh0LmFwcGVuZFN0YXRlbWVudChzb3VyY2VFbGVt
ZW50cywgc3RhdGVtZW50KTsKLSAgICB9Ci0KLSAgICBwcm9wYWdhdGVFcnJvcigpOwotICAgIHJl
dHVybiBzb3VyY2VFbGVtZW50czsKLX0KLQogICAgIAogdGVtcGxhdGUgPHR5cGVuYW1lIExleGVy
VHlwZT4KIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZVN0YXRlbWVudCBQYXJzZXI8
TGV4ZXJUeXBlPjo6cGFyc2VTdGF0ZW1lbnRMaXN0SXRlbShUcmVlQnVpbGRlciYgY29udGV4dCwg
Y29uc3QgSWRlbnRpZmllciomIGRpcmVjdGl2ZSwgdW5zaWduZWQqIGRpcmVjdGl2ZUxpdGVyYWxM
ZW5ndGgpCkBAIC0yMjk3LDcgKzIyNjMsNyBAQCB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+
IHR5cGVuYW1lIFRyZWVCdWlsZGVyOjpGb3JtYWxQYXJhbWV0ZXJMaXN0IFBhcnNlcjxMZQogfQog
CiB0ZW1wbGF0ZSA8dHlwZW5hbWUgTGV4ZXJUeXBlPgotdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWls
ZGVyPiBib29sIFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZUZ1bmN0aW9uSW5mbyhUcmVlQnVpbGRl
ciYgY29udGV4dCwgRnVuY3Rpb25OYW1lUmVxdWlyZW1lbnRzIHJlcXVpcmVtZW50cywgU291cmNl
UGFyc2VNb2RlIG1vZGUsIGJvb2wgbmFtZUlzSW5Db250YWluaW5nU2NvcGUsIENvbnN0cnVjdG9y
S2luZCBjb25zdHJ1Y3RvcktpbmQsIFN1cGVyQmluZGluZyBleHBlY3RlZFN1cGVyQmluZGluZywg
aW50IGZ1bmN0aW9uS2V5d29yZFN0YXJ0LCBQYXJzZXJGdW5jdGlvbkluZm88VHJlZUJ1aWxkZXI+
JiBmdW5jdGlvbkluZm8sIEZ1bmN0aW9uRGVmaW5pdGlvblR5cGUgZnVuY3Rpb25EZWZpbml0aW9u
VHlwZSwgc3RkOjpvcHRpb25hbDxpbnQ+IGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJzRW5k
UG9zaXRpb24pCit0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IGJvb2wgUGFyc2VyPExleGVy
VHlwZT46OnBhcnNlRnVuY3Rpb25JbmZvKFRyZWVCdWlsZGVyJiBjb250ZXh0LCBGdW5jdGlvbk5h
bWVSZXF1aXJlbWVudHMgcmVxdWlyZW1lbnRzLCBTb3VyY2VQYXJzZU1vZGUgbW9kZSwgYm9vbCBu
YW1lSXNJbkNvbnRhaW5pbmdTY29wZSwgQ29uc3RydWN0b3JLaW5kIGNvbnN0cnVjdG9yS2luZCwg
U3VwZXJCaW5kaW5nIGV4cGVjdGVkU3VwZXJCaW5kaW5nLCBpbnQgZnVuY3Rpb25LZXl3b3JkU3Rh
cnQsIFBhcnNlckZ1bmN0aW9uSW5mbzxUcmVlQnVpbGRlcj4mIGZ1bmN0aW9uSW5mbywgRnVuY3Rp
b25EZWZpbml0aW9uVHlwZSBmdW5jdGlvbkRlZmluaXRpb25UeXBlKQogewogICAgIFJFTEVBU0Vf
QVNTRVJUKGlzRnVuY3Rpb25QYXJzZU1vZGUobW9kZSkpOwogCkBAIC0yNDkzLDEwICsyNDU5LDYg
QEAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBib29sIFBhcnNlcjxMZXhlclR5cGU+Ojpw
YXJzZUZ1bmN0aW9uSW5mbyhUcmVlQnVpbGQKICAgICAgICAgfQogICAgICAgICAKICAgICAgICAg
bWF0Y2hPckZhaWwoT1BFTkJSQUNFLCAiRXhwZWN0ZWQgYW4gb3BlbmluZyAneycgYXQgdGhlIHN0
YXJ0IG9mIGEgIiwgc3RyaW5nRm9yRnVuY3Rpb25Nb2RlKG1vZGUpLCAiIGJvZHkiKTsKLQotICAg
ICAgICAvLyBJZiB0aGUgY29kZSBpcyBpbnZva2VkIGZyb20gZnVuY3Rpb24gY29uc3RydWN0b3Is
IHdlIG5lZWQgdG8gZW5zdXJlIHRoYXQgcGFyYW1ldGVycyBhcmUgb25seSBjb21wb3NlZCBieSB0
aGUgc3RyaW5nIG9mZmVyZWQgYXMgcGFyYW1ldGVycy4KLSAgICAgICAgaWYgKGZ1bmN0aW9uQ29u
c3RydWN0b3JQYXJhbWV0ZXJzRW5kUG9zaXRpb24pCi0gICAgICAgICAgICBzZW1hbnRpY0ZhaWxJ
ZkZhbHNlKGxhc3RUb2tlbkVuZFBvc2l0aW9uKCkub2Zmc2V0ID09ICpmdW5jdGlvbkNvbnN0cnVj
dG9yUGFyYW1ldGVyc0VuZFBvc2l0aW9uLCAiUGFyYW1ldGVycyBzaG91bGQgbWF0Y2ggYXJndW1l
bnRzIG9mZmVyZWQgYXMgcGFyYW1ldGVycyBpbiBGdW5jdGlvbiBjb25zdHJ1Y3RvciIpOwogICAg
ICAgICAKICAgICAgICAgLy8gQnl0ZWNvZGVHZW5lcmF0b3IgZW1pdHMgY29kZSB0byB0aHJvdyBU
eXBlRXJyb3Igd2hlbiBhIGNsYXNzIGNvbnN0cnVjdG9yIGlzICJjYWxsImVkLgogICAgICAgICAv
LyBTZXQgQ29uc3RydWN0b3JLaW5kIHRvIE5vbmUgZm9yIG5vbi1jb25zdHJ1Y3RvciBtZXRob2Rz
IG9mIGNsYXNzZXMuCkBAIC0yNjMxLDcgKzI1OTMsNyBAQCBzdGF0aWMgTk9fUkVUVVJOX0RVRV9U
T19DUkFTSCBGdW5jdGlvbk1ldGFkYXRhTm9kZSogZ2V0TWV0YWRhdGEoUGFyc2VyRnVuY3Rpb25J
bgogc3RhdGljIEZ1bmN0aW9uTWV0YWRhdGFOb2RlKiBnZXRNZXRhZGF0YShQYXJzZXJGdW5jdGlv
bkluZm88QVNUQnVpbGRlcj4mIGluZm8pIHsgcmV0dXJuIGluZm8uYm9keTsgfQogCiB0ZW1wbGF0
ZSA8dHlwZW5hbWUgTGV4ZXJUeXBlPgotdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVl
U3RhdGVtZW50IFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZUZ1bmN0aW9uRGVjbGFyYXRpb24oVHJl
ZUJ1aWxkZXImIGNvbnRleHQsIEV4cG9ydFR5cGUgZXhwb3J0VHlwZSwgRGVjbGFyYXRpb25EZWZh
dWx0Q29udGV4dCBkZWNsYXJhdGlvbkRlZmF1bHRDb250ZXh0LCBzdGQ6Om9wdGlvbmFsPGludD4g
ZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQb3NpdGlvbikKK3RlbXBsYXRlIDxjbGFz
cyBUcmVlQnVpbGRlcj4gVHJlZVN0YXRlbWVudCBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VGdW5j
dGlvbkRlY2xhcmF0aW9uKFRyZWVCdWlsZGVyJiBjb250ZXh0LCBFeHBvcnRUeXBlIGV4cG9ydFR5
cGUsIERlY2xhcmF0aW9uRGVmYXVsdENvbnRleHQgZGVjbGFyYXRpb25EZWZhdWx0Q29udGV4dCkK
IHsKICAgICBBU1NFUlQobWF0Y2goRlVOQ1RJT04pKTsKICAgICBKU1Rva2VuTG9jYXRpb24gbG9j
YXRpb24odG9rZW5Mb2NhdGlvbigpKTsKQEAgLTI2NjgsNyArMjYzMCw3IEBAIHRlbXBsYXRlIDxj
bGFzcyBUcmVlQnVpbGRlcj4gVHJlZVN0YXRlbWVudCBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VG
dW5jdGlvbkRlY2xhCiAgICAgICAgIGZ1bmN0aW9uSW5mby5uYW1lID0gJm1fdm0tPnByb3BlcnR5
TmFtZXMtPmJ1aWx0aW5OYW1lcygpLnN0YXJEZWZhdWx0UHJpdmF0ZU5hbWUoKTsKICAgICB9CiAK
LSAgICBmYWlsSWZGYWxzZSgocGFyc2VGdW5jdGlvbkluZm8oY29udGV4dCwgcmVxdWlyZW1lbnRz
LCBwYXJzZU1vZGUsIHRydWUsIENvbnN0cnVjdG9yS2luZDo6Tm9uZSwgU3VwZXJCaW5kaW5nOjpO
b3ROZWVkZWQsIGZ1bmN0aW9uS2V5d29yZFN0YXJ0LCBmdW5jdGlvbkluZm8sIEZ1bmN0aW9uRGVm
aW5pdGlvblR5cGU6OkRlY2xhcmF0aW9uLCBmdW5jdGlvbkNvbnN0cnVjdG9yUGFyYW1ldGVyc0Vu
ZFBvc2l0aW9uKSksICJDYW5ub3QgcGFyc2UgdGhpcyBmdW5jdGlvbiIpOworICAgIGZhaWxJZkZh
bHNlKChwYXJzZUZ1bmN0aW9uSW5mbyhjb250ZXh0LCByZXF1aXJlbWVudHMsIHBhcnNlTW9kZSwg
dHJ1ZSwgQ29uc3RydWN0b3JLaW5kOjpOb25lLCBTdXBlckJpbmRpbmc6Ok5vdE5lZWRlZCwgZnVu
Y3Rpb25LZXl3b3JkU3RhcnQsIGZ1bmN0aW9uSW5mbywgRnVuY3Rpb25EZWZpbml0aW9uVHlwZTo6
RGVjbGFyYXRpb24pKSwgIkNhbm5vdCBwYXJzZSB0aGlzIGZ1bmN0aW9uIik7CiAgICAgQVNTRVJU
KGZ1bmN0aW9uSW5mby5uYW1lKTsKIAogICAgIHN0ZDo6cGFpcjxEZWNsYXJhdGlvblJlc3VsdE1h
c2ssIFNjb3BlUmVmPiBmdW5jdGlvbkRlY2xhcmF0aW9uID0gZGVjbGFyZUZ1bmN0aW9uKGZ1bmN0
aW9uSW5mby5uYW1lKTsKQEAgLTI2ODksNyArMjY1MSw3IEBAIHRlbXBsYXRlIDxjbGFzcyBUcmVl
QnVpbGRlcj4gVHJlZVN0YXRlbWVudCBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VGdW5jdGlvbkRl
Y2xhCiB9CiAKIHRlbXBsYXRlIDx0eXBlbmFtZSBMZXhlclR5cGU+Ci10ZW1wbGF0ZSA8Y2xhc3Mg
VHJlZUJ1aWxkZXI+IFRyZWVTdGF0ZW1lbnQgUGFyc2VyPExleGVyVHlwZT46OnBhcnNlQXN5bmNG
dW5jdGlvbkRlY2xhcmF0aW9uKFRyZWVCdWlsZGVyJiBjb250ZXh0LCBFeHBvcnRUeXBlIGV4cG9y
dFR5cGUsIERlY2xhcmF0aW9uRGVmYXVsdENvbnRleHQgZGVjbGFyYXRpb25EZWZhdWx0Q29udGV4
dCwgc3RkOjpvcHRpb25hbDxpbnQ+IGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJzRW5kUG9z
aXRpb24pCit0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRyZWVTdGF0ZW1lbnQgUGFyc2Vy
PExleGVyVHlwZT46OnBhcnNlQXN5bmNGdW5jdGlvbkRlY2xhcmF0aW9uKFRyZWVCdWlsZGVyJiBj
b250ZXh0LCBFeHBvcnRUeXBlIGV4cG9ydFR5cGUsIERlY2xhcmF0aW9uRGVmYXVsdENvbnRleHQg
ZGVjbGFyYXRpb25EZWZhdWx0Q29udGV4dCkKIHsKICAgICBBU1NFUlQobWF0Y2goRlVOQ1RJT04p
KTsKICAgICBKU1Rva2VuTG9jYXRpb24gbG9jYXRpb24odG9rZW5Mb2NhdGlvbigpKTsKQEAgLTI3
MjYsNyArMjY4OCw3IEBAIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZVN0YXRlbWVu
dCBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VBc3luY0Z1bmN0aW9uCiAgICAgICAgIGZ1bmN0aW9u
SW5mby5uYW1lID0gJm1fdm0tPnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLnN0YXJEZWZh
dWx0UHJpdmF0ZU5hbWUoKTsKICAgICB9CiAKLSAgICBmYWlsSWZGYWxzZSgocGFyc2VGdW5jdGlv
bkluZm8oY29udGV4dCwgcmVxdWlyZW1lbnRzLCBwYXJzZU1vZGUsIHRydWUsIENvbnN0cnVjdG9y
S2luZDo6Tm9uZSwgU3VwZXJCaW5kaW5nOjpOb3ROZWVkZWQsIGZ1bmN0aW9uS2V5d29yZFN0YXJ0
LCBmdW5jdGlvbkluZm8sIEZ1bmN0aW9uRGVmaW5pdGlvblR5cGU6OkRlY2xhcmF0aW9uLCBmdW5j
dGlvbkNvbnN0cnVjdG9yUGFyYW1ldGVyc0VuZFBvc2l0aW9uKSksICJDYW5ub3QgcGFyc2UgdGhp
cyBhc3luYyBmdW5jdGlvbiIpOworICAgIGZhaWxJZkZhbHNlKChwYXJzZUZ1bmN0aW9uSW5mbyhj
b250ZXh0LCByZXF1aXJlbWVudHMsIHBhcnNlTW9kZSwgdHJ1ZSwgQ29uc3RydWN0b3JLaW5kOjpO
b25lLCBTdXBlckJpbmRpbmc6Ok5vdE5lZWRlZCwgZnVuY3Rpb25LZXl3b3JkU3RhcnQsIGZ1bmN0
aW9uSW5mbywgRnVuY3Rpb25EZWZpbml0aW9uVHlwZTo6RGVjbGFyYXRpb24pKSwgIkNhbm5vdCBw
YXJzZSB0aGlzIGFzeW5jIGZ1bmN0aW9uIik7CiAgICAgZmFpbElmRmFsc2UoZnVuY3Rpb25JbmZv
Lm5hbWUsICJBc3luYyBmdW5jdGlvbiBzdGF0ZW1lbnRzIG11c3QgaGF2ZSBhIG5hbWUiKTsKIAog
ICAgIHN0ZDo6cGFpcjxEZWNsYXJhdGlvblJlc3VsdE1hc2ssIFNjb3BlUmVmPiBmdW5jdGlvbkRl
Y2xhcmF0aW9uID0gZGVjbGFyZUZ1bmN0aW9uKGZ1bmN0aW9uSW5mby5uYW1lKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmggYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcGFyc2VyL1BhcnNlci5oCmluZGV4IDY1MzNlZjliZTg2MTc5ZWViOWE1YzU4MWFk
YmE3ZTA2YmY2NDA4OTIuLjRhNmVlMjU5Yzk1OGEyMWJmNTQ5NjRlNWI0ZTlkYTdjYjRhYmJjMmYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmgKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuaApAQCAtODU5LDggKzg1OSwxMCBA
QCBwcml2YXRlOgogICAgIHVuc2lnbmVkIG1faW5kZXg7CiB9OwogCi1lbnVtIGNsYXNzIEFyZ3Vt
ZW50VHlwZSB7IE5vcm1hbCwgU3ByZWFkIH07Ci1lbnVtIGNsYXNzIFBhcnNpbmdDb250ZXh0IHsg
UHJvZ3JhbSwgRnVuY3Rpb25Db25zdHJ1Y3RvciwgRXZhbCB9OworZW51bSBjbGFzcyBBcmd1bWVu
dFR5cGUgeworICAgIE5vcm1hbCwKKyAgICBTcHJlYWQKK307CiAKIHRlbXBsYXRlIDx0eXBlbmFt
ZSBMZXhlclR5cGU+CiBjbGFzcyBQYXJzZXIgewpAQCAtODcyLDcgKzg3NCw3IEBAIHB1YmxpYzoK
ICAgICB+UGFyc2VyKCk7CiAKICAgICB0ZW1wbGF0ZSA8Y2xhc3MgUGFyc2VkTm9kZT4KLSAgICBz
dGQ6OnVuaXF1ZV9wdHI8UGFyc2VkTm9kZT4gcGFyc2UoUGFyc2VyRXJyb3ImLCBjb25zdCBJZGVu
dGlmaWVyJiwgU291cmNlUGFyc2VNb2RlLCBQYXJzaW5nQ29udGV4dCwgc3RkOjpvcHRpb25hbDxp
bnQ+IGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJzRW5kUG9zaXRpb24gPSBzdGQ6Om51bGxv
cHQpOworICAgIHN0ZDo6dW5pcXVlX3B0cjxQYXJzZWROb2RlPiBwYXJzZShQYXJzZXJFcnJvciYs
IGNvbnN0IElkZW50aWZpZXImLCBTb3VyY2VQYXJzZU1vZGUpOwogCiAgICAgSlNUZXh0UG9zaXRp
b24gcG9zaXRpb25CZWZvcmVMYXN0TmV3bGluZSgpIGNvbnN0IHsgcmV0dXJuIG1fbGV4ZXItPnBv
c2l0aW9uQmVmb3JlTGFzdE5ld2xpbmUoKTsgfQogICAgIEpTVG9rZW5Mb2NhdGlvbiBsb2NhdGlv
bkJlZm9yZUxhc3RUb2tlbigpIGNvbnN0IHsgcmV0dXJuIG1fbGV4ZXItPmxhc3RUb2tlbkxvY2F0
aW9uKCk7IH0KQEAgLTEzMTAsOCArMTMxMiw3IEBAIHByaXZhdGU6CiAgICAgfQogCiAgICAgUGFy
c2VyKCk7Ci0KLSAgICBTdHJpbmcgcGFyc2VJbm5lcihjb25zdCBJZGVudGlmaWVyJiwgU291cmNl
UGFyc2VNb2RlLCBQYXJzaW5nQ29udGV4dCwgc3RkOjpvcHRpb25hbDxpbnQ+IGZ1bmN0aW9uQ29u
c3RydWN0b3JQYXJhbWV0ZXJzRW5kUG9zaXRpb24gPSBzdGQ6Om51bGxvcHQpOworICAgIFN0cmlu
ZyBwYXJzZUlubmVyKGNvbnN0IElkZW50aWZpZXImLCBTb3VyY2VQYXJzZU1vZGUpOwogCiAgICAg
dm9pZCBkaWRGaW5pc2hQYXJzaW5nKFNvdXJjZUVsZW1lbnRzKiwgRGVjbGFyYXRpb25TdGFja3M6
OkZ1bmN0aW9uU3RhY2smJiwgVmFyaWFibGVFbnZpcm9ubWVudCYsIFVuaXF1ZWRTdHJpbmdJbXBs
UHRyU2V0JiYsIENvZGVGZWF0dXJlcywgaW50KTsKIApAQCAtMTUyMywxNCArMTUyNCwxMyBAQCBw
cml2YXRlOgogICAgIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZVNvdXJjZUVsZW1l
bnRzIHBhcnNlR2VuZXJhdG9yRnVuY3Rpb25Tb3VyY2VFbGVtZW50cyhUcmVlQnVpbGRlciYsIGNv
bnN0IElkZW50aWZpZXImIG5hbWUsIFNvdXJjZUVsZW1lbnRzTW9kZSk7CiAgICAgdGVtcGxhdGUg
PGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlU291cmNlRWxlbWVudHMgcGFyc2VBc3luY0Z1bmN0aW9u
U291cmNlRWxlbWVudHMoVHJlZUJ1aWxkZXImLCBTb3VyY2VQYXJzZU1vZGUsIGJvb2wgaXNBcnJv
d0Z1bmN0aW9uQm9keUV4cHJlc3Npb24sIFNvdXJjZUVsZW1lbnRzTW9kZSk7CiAgICAgdGVtcGxh
dGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlU291cmNlRWxlbWVudHMgcGFyc2VBc3luY0dlbmVy
YXRvckZ1bmN0aW9uU291cmNlRWxlbWVudHMoVHJlZUJ1aWxkZXImLCBTb3VyY2VQYXJzZU1vZGUs
IGJvb2wgaXNBcnJvd0Z1bmN0aW9uQm9keUV4cHJlc3Npb24sIFNvdXJjZUVsZW1lbnRzTW9kZSk7
Ci0gICAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlU291cmNlRWxlbWVudHMgcGFy
c2VTaW5nbGVGdW5jdGlvbihUcmVlQnVpbGRlciYsIHN0ZDo6b3B0aW9uYWw8aW50PiBmdW5jdGlv
bkNvbnN0cnVjdG9yUGFyYW1ldGVyc0VuZFBvc2l0aW9uKTsKICAgICB0ZW1wbGF0ZSA8Y2xhc3Mg
VHJlZUJ1aWxkZXI+IFRyZWVTdGF0ZW1lbnQgcGFyc2VTdGF0ZW1lbnRMaXN0SXRlbShUcmVlQnVp
bGRlciYsIGNvbnN0IElkZW50aWZpZXIqJiBkaXJlY3RpdmUsIHVuc2lnbmVkKiBkaXJlY3RpdmVM
aXRlcmFsTGVuZ3RoKTsKICAgICB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRyZWVTdGF0
ZW1lbnQgcGFyc2VTdGF0ZW1lbnQoVHJlZUJ1aWxkZXImLCBjb25zdCBJZGVudGlmaWVyKiYgZGly
ZWN0aXZlLCB1bnNpZ25lZCogZGlyZWN0aXZlTGl0ZXJhbExlbmd0aCA9IDApOwogICAgIGVudW0g
Y2xhc3MgRXhwb3J0VHlwZSB7IEV4cG9ydGVkLCBOb3RFeHBvcnRlZCB9OwogICAgIHRlbXBsYXRl
IDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZVN0YXRlbWVudCBwYXJzZUNsYXNzRGVjbGFyYXRpb24o
VHJlZUJ1aWxkZXImLCBFeHBvcnRUeXBlID0gRXhwb3J0VHlwZTo6Tm90RXhwb3J0ZWQsIERlY2xh
cmF0aW9uRGVmYXVsdENvbnRleHQgPSBEZWNsYXJhdGlvbkRlZmF1bHRDb250ZXh0OjpTdGFuZGFy
ZCk7Ci0gICAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlU3RhdGVtZW50IHBhcnNl
RnVuY3Rpb25EZWNsYXJhdGlvbihUcmVlQnVpbGRlciYsIEV4cG9ydFR5cGUgPSBFeHBvcnRUeXBl
OjpOb3RFeHBvcnRlZCwgRGVjbGFyYXRpb25EZWZhdWx0Q29udGV4dCA9IERlY2xhcmF0aW9uRGVm
YXVsdENvbnRleHQ6OlN0YW5kYXJkLCBzdGQ6Om9wdGlvbmFsPGludD4gZnVuY3Rpb25Db25zdHJ1
Y3RvclBhcmFtZXRlcnNFbmRQb3NpdGlvbiA9IHN0ZDo6bnVsbG9wdCk7CisgICAgdGVtcGxhdGUg
PGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlU3RhdGVtZW50IHBhcnNlRnVuY3Rpb25EZWNsYXJhdGlv
bihUcmVlQnVpbGRlciYsIEV4cG9ydFR5cGUgPSBFeHBvcnRUeXBlOjpOb3RFeHBvcnRlZCwgRGVj
bGFyYXRpb25EZWZhdWx0Q29udGV4dCA9IERlY2xhcmF0aW9uRGVmYXVsdENvbnRleHQ6OlN0YW5k
YXJkKTsKICAgICB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRyZWVTdGF0ZW1lbnQgcGFy
c2VGdW5jdGlvbkRlY2xhcmF0aW9uU3RhdGVtZW50KFRyZWVCdWlsZGVyJiwgYm9vbCBpc0FzeW5j
LCBib29sIHBhcmVudEFsbG93c0Z1bmN0aW9uRGVjbGFyYXRpb25Bc1N0YXRlbWVudCk7Ci0gICAg
dGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlU3RhdGVtZW50IHBhcnNlQXN5bmNGdW5j
dGlvbkRlY2xhcmF0aW9uKFRyZWVCdWlsZGVyJiwgRXhwb3J0VHlwZSA9IEV4cG9ydFR5cGU6Ok5v
dEV4cG9ydGVkLCBEZWNsYXJhdGlvbkRlZmF1bHRDb250ZXh0ID0gRGVjbGFyYXRpb25EZWZhdWx0
Q29udGV4dDo6U3RhbmRhcmQsIHN0ZDo6b3B0aW9uYWw8aW50PiBmdW5jdGlvbkNvbnN0cnVjdG9y
UGFyYW1ldGVyc0VuZFBvc2l0aW9uID0gc3RkOjpudWxsb3B0KTsKKyAgICB0ZW1wbGF0ZSA8Y2xh
c3MgVHJlZUJ1aWxkZXI+IFRyZWVTdGF0ZW1lbnQgcGFyc2VBc3luY0Z1bmN0aW9uRGVjbGFyYXRp
b24oVHJlZUJ1aWxkZXImLCBFeHBvcnRUeXBlID0gRXhwb3J0VHlwZTo6Tm90RXhwb3J0ZWQsIERl
Y2xhcmF0aW9uRGVmYXVsdENvbnRleHQgPSBEZWNsYXJhdGlvbkRlZmF1bHRDb250ZXh0OjpTdGFu
ZGFyZCk7CiAgICAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBORVZFUl9JTkxJTkUgYm9v
bCBtYXliZVBhcnNlQXN5bmNGdW5jdGlvbkRlY2xhcmF0aW9uU3RhdGVtZW50KFRyZWVCdWlsZGVy
JiBjb250ZXh0LCBUcmVlU3RhdGVtZW50JiByZXN1bHQsIGJvb2wgcGFyZW50QWxsb3dzRnVuY3Rp
b25EZWNsYXJhdGlvbkFzU3RhdGVtZW50KTsKICAgICB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxk
ZXI+IFRyZWVTdGF0ZW1lbnQgcGFyc2VWYXJpYWJsZURlY2xhcmF0aW9uKFRyZWVCdWlsZGVyJiwg
RGVjbGFyYXRpb25UeXBlLCBFeHBvcnRUeXBlID0gRXhwb3J0VHlwZTo6Tm90RXhwb3J0ZWQpOwog
ICAgIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZVN0YXRlbWVudCBwYXJzZURvV2hp
bGVTdGF0ZW1lbnQoVHJlZUJ1aWxkZXImKTsKQEAgLTE1OTksNyArMTU5OSw3IEBAIHByaXZhdGU6
CiAgICAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBBTFdBWVNfSU5MSU5FIFRyZWVFeHBy
ZXNzaW9uIGNyZWF0ZVJlc29sdmVBbmRVc2VWYXJpYWJsZShUcmVlQnVpbGRlciYsIGNvbnN0IElk
ZW50aWZpZXIqLCBib29sIGlzRXZhbCwgY29uc3QgSlNUZXh0UG9zaXRpb24mLCBjb25zdCBKU1Rv
a2VuTG9jYXRpb24mKTsKIAogICAgIGVudW0gY2xhc3MgRnVuY3Rpb25EZWZpbml0aW9uVHlwZSB7
IEV4cHJlc3Npb24sIERlY2xhcmF0aW9uLCBNZXRob2QgfTsKLSAgICB0ZW1wbGF0ZSA8Y2xhc3Mg
VHJlZUJ1aWxkZXI+IE5FVkVSX0lOTElORSBib29sIHBhcnNlRnVuY3Rpb25JbmZvKFRyZWVCdWls
ZGVyJiwgRnVuY3Rpb25OYW1lUmVxdWlyZW1lbnRzLCBTb3VyY2VQYXJzZU1vZGUsIGJvb2wgbmFt
ZUlzSW5Db250YWluaW5nU2NvcGUsIENvbnN0cnVjdG9yS2luZCwgU3VwZXJCaW5kaW5nLCBpbnQg
ZnVuY3Rpb25LZXl3b3JkU3RhcnQsIFBhcnNlckZ1bmN0aW9uSW5mbzxUcmVlQnVpbGRlcj4mLCBG
dW5jdGlvbkRlZmluaXRpb25UeXBlLCBzdGQ6Om9wdGlvbmFsPGludD4gZnVuY3Rpb25Db25zdHJ1
Y3RvclBhcmFtZXRlcnNFbmRQb3NpdGlvbiA9IHN0ZDo6bnVsbG9wdCk7CisgICAgdGVtcGxhdGUg
PGNsYXNzIFRyZWVCdWlsZGVyPiBORVZFUl9JTkxJTkUgYm9vbCBwYXJzZUZ1bmN0aW9uSW5mbyhU
cmVlQnVpbGRlciYsIEZ1bmN0aW9uTmFtZVJlcXVpcmVtZW50cywgU291cmNlUGFyc2VNb2RlLCBi
b29sIG5hbWVJc0luQ29udGFpbmluZ1Njb3BlLCBDb25zdHJ1Y3RvcktpbmQsIFN1cGVyQmluZGlu
ZywgaW50IGZ1bmN0aW9uS2V5d29yZFN0YXJ0LCBQYXJzZXJGdW5jdGlvbkluZm88VHJlZUJ1aWxk
ZXI+JiwgRnVuY3Rpb25EZWZpbml0aW9uVHlwZSk7CiAgICAgCiAgICAgQUxXQVlTX0lOTElORSBi
b29sIGlzQXJyb3dGdW5jdGlvblBhcmFtZXRlcnMoKTsKICAgICAKQEAgLTE4NDcsNyArMTg0Nyw3
IEBAIHByaXZhdGU6CiAKIHRlbXBsYXRlIDx0eXBlbmFtZSBMZXhlclR5cGU+CiB0ZW1wbGF0ZSA8
Y2xhc3MgUGFyc2VkTm9kZT4KLXN0ZDo6dW5pcXVlX3B0cjxQYXJzZWROb2RlPiBQYXJzZXI8TGV4
ZXJUeXBlPjo6cGFyc2UoUGFyc2VyRXJyb3ImIGVycm9yLCBjb25zdCBJZGVudGlmaWVyJiBjYWxs
ZWVOYW1lLCBTb3VyY2VQYXJzZU1vZGUgcGFyc2VNb2RlLCBQYXJzaW5nQ29udGV4dCBwYXJzaW5n
Q29udGV4dCwgc3RkOjpvcHRpb25hbDxpbnQ+IGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJz
RW5kUG9zaXRpb24pCitzdGQ6OnVuaXF1ZV9wdHI8UGFyc2VkTm9kZT4gUGFyc2VyPExleGVyVHlw
ZT46OnBhcnNlKFBhcnNlckVycm9yJiBlcnJvciwgY29uc3QgSWRlbnRpZmllciYgY2FsbGVlTmFt
ZSwgU291cmNlUGFyc2VNb2RlIHBhcnNlTW9kZSkKIHsKICAgICBpbnQgZXJyTGluZTsKICAgICBT
dHJpbmcgZXJyTXNnOwpAQCAtMTg2NCw3ICsxODY0LDcgQEAgc3RkOjp1bmlxdWVfcHRyPFBhcnNl
ZE5vZGU+IFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZShQYXJzZXJFcnJvciYgZXJyb3IsIGNvbnN0
IEkKICAgICBBU1NFUlQobV9zb3VyY2UtPnN0YXJ0Q29sdW1uKCkgPiBPcmRpbmFsTnVtYmVyOjpi
ZWZvcmVGaXJzdCgpKTsKICAgICB1bnNpZ25lZCBzdGFydENvbHVtbiA9IG1fc291cmNlLT5zdGFy
dENvbHVtbigpLnplcm9CYXNlZEludCgpOwogCi0gICAgU3RyaW5nIHBhcnNlRXJyb3IgPSBwYXJz
ZUlubmVyKGNhbGxlZU5hbWUsIHBhcnNlTW9kZSwgcGFyc2luZ0NvbnRleHQsIGZ1bmN0aW9uQ29u
c3RydWN0b3JQYXJhbWV0ZXJzRW5kUG9zaXRpb24pOworICAgIFN0cmluZyBwYXJzZUVycm9yID0g
cGFyc2VJbm5lcihjYWxsZWVOYW1lLCBwYXJzZU1vZGUpOwogCiAgICAgaW50IGxpbmVOdW1iZXIg
PSBtX2xleGVyLT5saW5lTnVtYmVyKCk7CiAgICAgYm9vbCBsZXhFcnJvciA9IG1fbGV4ZXItPnNh
d0Vycm9yKCk7CkBAIC0xOTU5LDcgKzE5NTksNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8UGFyc2VkTm9k
ZT4gcGFyc2UoCiAgICAgc3RkOjp1bmlxdWVfcHRyPFBhcnNlZE5vZGU+IHJlc3VsdDsKICAgICBp
ZiAoc291cmNlLnByb3ZpZGVyKCktPnNvdXJjZSgpLmlzOEJpdCgpKSB7CiAgICAgICAgIFBhcnNl
cjxMZXhlcjxMQ2hhcj4+IHBhcnNlcih2bSwgc291cmNlLCBidWlsdGluTW9kZSwgc3RyaWN0TW9k
ZSwgc2NyaXB0TW9kZSwgcGFyc2VNb2RlLCBzdXBlckJpbmRpbmcsIGRlZmF1bHRDb25zdHJ1Y3Rv
cktpbmQsIGRlcml2ZWRDb250ZXh0VHlwZSwgaXNFdmFsTm9kZTxQYXJzZWROb2RlPigpLCBldmFs
Q29udGV4dFR5cGUsIGRlYnVnZ2VyUGFyc2VEYXRhKTsKLSAgICAgICAgcmVzdWx0ID0gcGFyc2Vy
LnBhcnNlPFBhcnNlZE5vZGU+KGVycm9yLCBuYW1lLCBwYXJzZU1vZGUsIGlzRXZhbE5vZGU8UGFy
c2VkTm9kZT4oKSA/IFBhcnNpbmdDb250ZXh0OjpFdmFsIDogUGFyc2luZ0NvbnRleHQ6OlByb2dy
YW0pOworICAgICAgICByZXN1bHQgPSBwYXJzZXIucGFyc2U8UGFyc2VkTm9kZT4oZXJyb3IsIG5h
bWUsIHBhcnNlTW9kZSk7CiAgICAgICAgIGlmIChwb3NpdGlvbkJlZm9yZUxhc3ROZXdsaW5lKQog
ICAgICAgICAgICAgKnBvc2l0aW9uQmVmb3JlTGFzdE5ld2xpbmUgPSBwYXJzZXIucG9zaXRpb25C
ZWZvcmVMYXN0TmV3bGluZSgpOwogICAgICAgICBpZiAoYnVpbHRpbk1vZGUgPT0gSlNQYXJzZXJC
dWlsdGluTW9kZTo6QnVpbHRpbikgewpAQCAtMTk3Miw3ICsxOTcyLDcgQEAgc3RkOjp1bmlxdWVf
cHRyPFBhcnNlZE5vZGU+IHBhcnNlKAogICAgIH0gZWxzZSB7CiAgICAgICAgIEFTU0VSVF9XSVRI
X01FU1NBR0UoZGVmYXVsdENvbnN0cnVjdG9yS2luZCA9PSBDb25zdHJ1Y3RvcktpbmQ6Ok5vbmUs
ICJCdWlsdGluRXhlY3V0YWJsZXM6OmNyZWF0ZURlZmF1bHRDb25zdHJ1Y3RvciBzaG91bGQgYWx3
YXlzIHVzZSBhIDgtYml0IHN0cmluZyIpOwogICAgICAgICBQYXJzZXI8TGV4ZXI8VUNoYXI+PiBw
YXJzZXIodm0sIHNvdXJjZSwgYnVpbHRpbk1vZGUsIHN0cmljdE1vZGUsIHNjcmlwdE1vZGUsIHBh
cnNlTW9kZSwgc3VwZXJCaW5kaW5nLCBkZWZhdWx0Q29uc3RydWN0b3JLaW5kLCBkZXJpdmVkQ29u
dGV4dFR5cGUsIGlzRXZhbE5vZGU8UGFyc2VkTm9kZT4oKSwgZXZhbENvbnRleHRUeXBlLCBkZWJ1
Z2dlclBhcnNlRGF0YSk7Ci0gICAgICAgIHJlc3VsdCA9IHBhcnNlci5wYXJzZTxQYXJzZWROb2Rl
PihlcnJvciwgbmFtZSwgcGFyc2VNb2RlLCBpc0V2YWxOb2RlPFBhcnNlZE5vZGU+KCkgPyBQYXJz
aW5nQ29udGV4dDo6RXZhbCA6IFBhcnNpbmdDb250ZXh0OjpQcm9ncmFtKTsKKyAgICAgICAgcmVz
dWx0ID0gcGFyc2VyLnBhcnNlPFBhcnNlZE5vZGU+KGVycm9yLCBuYW1lLCBwYXJzZU1vZGUpOwog
ICAgICAgICBpZiAocG9zaXRpb25CZWZvcmVMYXN0TmV3bGluZSkKICAgICAgICAgICAgICpwb3Np
dGlvbkJlZm9yZUxhc3ROZXdsaW5lID0gcGFyc2VyLnBvc2l0aW9uQmVmb3JlTGFzdE5ld2xpbmUo
KTsKICAgICB9CkBAIC0xOTg2LDM3ICsxOTg2LDQgQEAgc3RkOjp1bmlxdWVfcHRyPFBhcnNlZE5v
ZGU+IHBhcnNlKAogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKLWlubGluZSBzdGQ6OnVuaXF1ZV9w
dHI8UHJvZ3JhbU5vZGU+IHBhcnNlRnVuY3Rpb25Gb3JGdW5jdGlvbkNvbnN0cnVjdG9yKFZNJiB2
bSwgY29uc3QgU291cmNlQ29kZSYgc291cmNlLCBQYXJzZXJFcnJvciYgZXJyb3IsIEpTVGV4dFBv
c2l0aW9uKiBwb3NpdGlvbkJlZm9yZUxhc3ROZXdsaW5lLCBzdGQ6Om9wdGlvbmFsPGludD4gZnVu
Y3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQb3NpdGlvbikKLXsKLSAgICBBU1NFUlQoIXNv
dXJjZS5wcm92aWRlcigpLT5zb3VyY2UoKS5pc051bGwoKSk7Ci0KLSAgICBNb25vdG9uaWNUaW1l
IGJlZm9yZTsKLSAgICBpZiAoVU5MSUtFTFkoT3B0aW9uczo6cmVwb3J0UGFyc2VUaW1lcygpKSkK
LSAgICAgICAgYmVmb3JlID0gTW9ub3RvbmljVGltZTo6bm93KCk7Ci0KLSAgICBJZGVudGlmaWVy
IG5hbWU7Ci0gICAgYm9vbCBpc0V2YWxOb2RlID0gZmFsc2U7Ci0gICAgc3RkOjp1bmlxdWVfcHRy
PFByb2dyYW1Ob2RlPiByZXN1bHQ7Ci0gICAgaWYgKHNvdXJjZS5wcm92aWRlcigpLT5zb3VyY2Uo
KS5pczhCaXQoKSkgewotICAgICAgICBQYXJzZXI8TGV4ZXI8TENoYXI+PiBwYXJzZXIoJnZtLCBz
b3VyY2UsIEpTUGFyc2VyQnVpbHRpbk1vZGU6Ok5vdEJ1aWx0aW4sIEpTUGFyc2VyU3RyaWN0TW9k
ZTo6Tm90U3RyaWN0LCBKU1BhcnNlclNjcmlwdE1vZGU6OkNsYXNzaWMsIFNvdXJjZVBhcnNlTW9k
ZTo6UHJvZ3JhbU1vZGUsIFN1cGVyQmluZGluZzo6Tm90TmVlZGVkLCBDb25zdHJ1Y3RvcktpbmQ6
Ok5vbmUsIERlcml2ZWRDb250ZXh0VHlwZTo6Tm9uZSwgaXNFdmFsTm9kZSwgRXZhbENvbnRleHRU
eXBlOjpOb25lLCBudWxscHRyKTsKLSAgICAgICAgcmVzdWx0ID0gcGFyc2VyLnBhcnNlPFByb2dy
YW1Ob2RlPihlcnJvciwgbmFtZSwgU291cmNlUGFyc2VNb2RlOjpQcm9ncmFtTW9kZSwgUGFyc2lu
Z0NvbnRleHQ6OkZ1bmN0aW9uQ29uc3RydWN0b3IsIGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0
ZXJzRW5kUG9zaXRpb24pOwotICAgICAgICBpZiAocG9zaXRpb25CZWZvcmVMYXN0TmV3bGluZSkK
LSAgICAgICAgICAgICpwb3NpdGlvbkJlZm9yZUxhc3ROZXdsaW5lID0gcGFyc2VyLnBvc2l0aW9u
QmVmb3JlTGFzdE5ld2xpbmUoKTsKLSAgICB9IGVsc2UgewotICAgICAgICBQYXJzZXI8TGV4ZXI8
VUNoYXI+PiBwYXJzZXIoJnZtLCBzb3VyY2UsIEpTUGFyc2VyQnVpbHRpbk1vZGU6Ok5vdEJ1aWx0
aW4sIEpTUGFyc2VyU3RyaWN0TW9kZTo6Tm90U3RyaWN0LCBKU1BhcnNlclNjcmlwdE1vZGU6OkNs
YXNzaWMsIFNvdXJjZVBhcnNlTW9kZTo6UHJvZ3JhbU1vZGUsIFN1cGVyQmluZGluZzo6Tm90TmVl
ZGVkLCBDb25zdHJ1Y3RvcktpbmQ6Ok5vbmUsIERlcml2ZWRDb250ZXh0VHlwZTo6Tm9uZSwgaXNF
dmFsTm9kZSwgRXZhbENvbnRleHRUeXBlOjpOb25lLCBudWxscHRyKTsKLSAgICAgICAgcmVzdWx0
ID0gcGFyc2VyLnBhcnNlPFByb2dyYW1Ob2RlPihlcnJvciwgbmFtZSwgU291cmNlUGFyc2VNb2Rl
OjpQcm9ncmFtTW9kZSwgUGFyc2luZ0NvbnRleHQ6OkZ1bmN0aW9uQ29uc3RydWN0b3IsIGZ1bmN0
aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJzRW5kUG9zaXRpb24pOwotICAgICAgICBpZiAocG9zaXRp
b25CZWZvcmVMYXN0TmV3bGluZSkKLSAgICAgICAgICAgICpwb3NpdGlvbkJlZm9yZUxhc3ROZXds
aW5lID0gcGFyc2VyLnBvc2l0aW9uQmVmb3JlTGFzdE5ld2xpbmUoKTsKLSAgICB9Ci0KLSAgICBp
ZiAoVU5MSUtFTFkoT3B0aW9uczo6cmVwb3J0UGFyc2VUaW1lcygpKSkgewotICAgICAgICBNb25v
dG9uaWNUaW1lIGFmdGVyID0gTW9ub3RvbmljVGltZTo6bm93KCk7Ci0gICAgICAgIFBhcnNlSGFz
aCBoYXNoKHNvdXJjZSk7Ci0gICAgICAgIGRhdGFMb2dMbihyZXN1bHQgPyAiUGFyc2VkICMiIDog
IkZhaWxlZCB0byBwYXJzZSAjIiwgaGFzaC5oYXNoRm9yQ2FsbCgpLCAiLyMiLCBoYXNoLmhhc2hG
b3JDb25zdHJ1Y3QoKSwgIiBpbiAiLCAoYWZ0ZXIgLSBiZWZvcmUpLm1pbGxpc2Vjb25kcygpLCAi
IG1zLiIpOwotICAgIH0KLQotICAgIHJldHVybiByZXN1bHQ7Ci19Ci0KLQogfSAvLyBuYW1lc3Bh
Y2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyTW9kZXMu
aCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyTW9kZXMuaAppbmRleCA5ZTYz
N2M0YWEwOTUzN2E0NTZlYjdhZDMwZDgwNTQ3YjNhMmFhMDAyLi42OTYwZTUxNTJjZjFjZTljZWYw
M2ZiNDA1ZjBkZDA3MDFmNzk3YzE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cGFyc2VyL1BhcnNlck1vZGVzLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Q
YXJzZXJNb2Rlcy5oCkBAIC0zMyw2ICszMyw3IEBAIG5hbWVzcGFjZSBKU0MgewogZW51bSBjbGFz
cyBKU1BhcnNlclN0cmljdE1vZGUgeyBOb3RTdHJpY3QsIFN0cmljdCB9OwogZW51bSBjbGFzcyBK
U1BhcnNlckJ1aWx0aW5Nb2RlIHsgTm90QnVpbHRpbiwgQnVpbHRpbiB9OwogZW51bSBjbGFzcyBK
U1BhcnNlclNjcmlwdE1vZGUgeyBDbGFzc2ljLCBNb2R1bGUgfTsKK2VudW0gY2xhc3MgSlNQYXJz
ZXJDb2RlVHlwZSB7IFByb2dyYW0sIEZ1bmN0aW9uLCBNb2R1bGUgfTsKIAogZW51bSBjbGFzcyBD
b25zdHJ1Y3RvcktpbmQgeyBOb25lLCBCYXNlLCBFeHRlbmRzIH07CiBlbnVtIGNsYXNzIFN1cGVy
QmluZGluZyB7IE5lZWRlZCwgTm90TmVlZGVkIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcGFyc2VyL1BhcnNlclRva2Vucy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Bh
cnNlci9QYXJzZXJUb2tlbnMuaAppbmRleCA1OWNiMGZiNGM4NjhkZTBjY2ZjMmRhODNmNTk0OTI1
MjM1NjBmZTAyLi44NjkyNjAzNmIzZTNkMDhkNjE4MDEwMGI5ZjU0NDE3OTEzMTM2ZWY2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlclRva2Vucy5oCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyVG9rZW5zLmgKQEAgLTE5Myw2ICsx
OTMsNyBAQCBlbnVtIEpTVG9rZW5UeXBlIHsKIHN0cnVjdCBKU1RleHRQb3NpdGlvbiB7CiAgICAg
SlNUZXh0UG9zaXRpb24oKSA9IGRlZmF1bHQ7CiAgICAgSlNUZXh0UG9zaXRpb24oaW50IF9saW5l
LCBpbnQgX29mZnNldCwgaW50IF9saW5lU3RhcnRPZmZzZXQpIDogbGluZShfbGluZSksIG9mZnNl
dChfb2Zmc2V0KSwgbGluZVN0YXJ0T2Zmc2V0KF9saW5lU3RhcnRPZmZzZXQpIHsgfQorICAgIEpT
VGV4dFBvc2l0aW9uKGNvbnN0IEpTVGV4dFBvc2l0aW9uJiBvdGhlcikgOiBsaW5lKG90aGVyLmxp
bmUpLCBvZmZzZXQob3RoZXIub2Zmc2V0KSwgbGluZVN0YXJ0T2Zmc2V0KG90aGVyLmxpbmVTdGFy
dE9mZnNldCkgeyB9CiAKICAgICBKU1RleHRQb3NpdGlvbiBvcGVyYXRvcisoaW50IGFkanVzdG1l
bnQpIGNvbnN0IHsgcmV0dXJuIEpTVGV4dFBvc2l0aW9uKGxpbmUsIG9mZnNldCArIGFkanVzdG1l
bnQsIGxpbmVTdGFydE9mZnNldCk7IH0KICAgICBKU1RleHRQb3NpdGlvbiBvcGVyYXRvcisodW5z
aWduZWQgYWRqdXN0bWVudCkgY29uc3QgeyByZXR1cm4gKnRoaXMgKyBzdGF0aWNfY2FzdDxpbnQ+
KGFkanVzdG1lbnQpOyB9CkBAIC0yNDUsNiArMjQ2LDEzIEBAIHVuaW9uIEpTVG9rZW5EYXRhIHsK
IAogc3RydWN0IEpTVG9rZW5Mb2NhdGlvbiB7CiAgICAgSlNUb2tlbkxvY2F0aW9uKCkgPSBkZWZh
dWx0OworICAgIEpTVG9rZW5Mb2NhdGlvbihjb25zdCBKU1Rva2VuTG9jYXRpb24mIGxvY2F0aW9u
KQorICAgIHsKKyAgICAgICAgbGluZSA9IGxvY2F0aW9uLmxpbmU7CisgICAgICAgIGxpbmVTdGFy
dE9mZnNldCA9IGxvY2F0aW9uLmxpbmVTdGFydE9mZnNldDsKKyAgICAgICAgc3RhcnRPZmZzZXQg
PSBsb2NhdGlvbi5zdGFydE9mZnNldDsKKyAgICAgICAgZW5kT2Zmc2V0ID0gbG9jYXRpb24uZW5k
T2Zmc2V0OworICAgIH0KIAogICAgIGludCBsaW5lIHsgMCB9OwogICAgIHVuc2lnbmVkIGxpbmVT
dGFydE9mZnNldCB7IDAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJz
ZXIvU291cmNlQ29kZUtleS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Tb3VyY2VD
b2RlS2V5LmgKaW5kZXggYjBmMDU3NTAzOWNlN2RhODRiNjA5ZDUyNTc1OTBlZjcxOGZkMTYyZi4u
YWJlNDE4MTJkOTlkMjdjZjkzMmUzYTMwZDJmZWZjMDZhNTRmZjk0MCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Tb3VyY2VDb2RlS2V5LmgKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3BhcnNlci9Tb3VyY2VDb2RlS2V5LmgKQEAgLTI5LDcgKzI5LDYgQEAKICNp
bmNsdWRlICJQYXJzZXJNb2Rlcy5oIgogI2luY2x1ZGUgIlVubGlua2VkU291cmNlQ29kZS5oIgog
I2luY2x1ZGUgPHd0Zi9IYXNoVHJhaXRzLmg+Ci0jaW5jbHVkZSA8d3RmL0hhc2hlci5oPgogCiBu
YW1lc3BhY2UgSlNDIHsKIApAQCAtNzIsMTcgKzcxLDE4IEBAIHByaXZhdGU6CiAKIGNsYXNzIFNv
dXJjZUNvZGVLZXkgewogcHVibGljOgotICAgIFNvdXJjZUNvZGVLZXkoKSA9IGRlZmF1bHQ7Cisg
ICAgU291cmNlQ29kZUtleSgpCisgICAgeworICAgIH0KIAogICAgIFNvdXJjZUNvZGVLZXkoCiAg
ICAgICAgIGNvbnN0IFVubGlua2VkU291cmNlQ29kZSYgc291cmNlQ29kZSwgY29uc3QgU3RyaW5n
JiBuYW1lLCBTb3VyY2VDb2RlVHlwZSBjb2RlVHlwZSwgSlNQYXJzZXJTdHJpY3RNb2RlIHN0cmlj
dE1vZGUsIAogICAgICAgICBKU1BhcnNlclNjcmlwdE1vZGUgc2NyaXB0TW9kZSwgRGVyaXZlZENv
bnRleHRUeXBlIGRlcml2ZWRDb250ZXh0VHlwZSwgRXZhbENvbnRleHRUeXBlIGV2YWxDb250ZXh0
VHlwZSwgYm9vbCBpc0Fycm93RnVuY3Rpb25Db250ZXh0LAotICAgICAgICBEZWJ1Z2dlck1vZGUg
ZGVidWdnZXJNb2RlLCBUeXBlUHJvZmlsZXJFbmFibGVkIHR5cGVQcm9maWxlckVuYWJsZWQsIENv
bnRyb2xGbG93UHJvZmlsZXJFbmFibGVkIGNvbnRyb2xGbG93UHJvZmlsZXJFbmFibGVkLCBzdGQ6
Om9wdGlvbmFsPGludD4gZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQb3NpdGlvbikK
KyAgICAgICAgRGVidWdnZXJNb2RlIGRlYnVnZ2VyTW9kZSwgVHlwZVByb2ZpbGVyRW5hYmxlZCB0
eXBlUHJvZmlsZXJFbmFibGVkLCBDb250cm9sRmxvd1Byb2ZpbGVyRW5hYmxlZCBjb250cm9sRmxv
d1Byb2ZpbGVyRW5hYmxlZCkKICAgICAgICAgICAgIDogbV9zb3VyY2VDb2RlKHNvdXJjZUNvZGUp
CiAgICAgICAgICAgICAsIG1fbmFtZShuYW1lKQogICAgICAgICAgICAgLCBtX2ZsYWdzKGNvZGVU
eXBlLCBzdHJpY3RNb2RlLCBzY3JpcHRNb2RlLCBkZXJpdmVkQ29udGV4dFR5cGUsIGV2YWxDb250
ZXh0VHlwZSwgaXNBcnJvd0Z1bmN0aW9uQ29udGV4dCwgZGVidWdnZXJNb2RlLCB0eXBlUHJvZmls
ZXJFbmFibGVkLCBjb250cm9sRmxvd1Byb2ZpbGVyRW5hYmxlZCkKLSAgICAgICAgICAgICwgbV9m
dW5jdGlvbkNvbnN0cnVjdG9yUGFyYW1ldGVyc0VuZFBvc2l0aW9uKGZ1bmN0aW9uQ29uc3RydWN0
b3JQYXJhbWV0ZXJzRW5kUG9zaXRpb24udmFsdWVfb3IoLTEpKQotICAgICAgICAgICAgLCBtX2hh
c2goc291cmNlQ29kZS5oYXNoKCkgXiBjb21wdXRlSGFzaChtX2ZsYWdzLmJpdHMoKSwgbV9mdW5j
dGlvbkNvbnN0cnVjdG9yUGFyYW1ldGVyc0VuZFBvc2l0aW9uKSkKKyAgICAgICAgICAgICwgbV9o
YXNoKHNvdXJjZUNvZGUuaGFzaCgpIF4gbV9mbGFncy5iaXRzKCkpCiAgICAgewogICAgIH0KIApA
QCAtMTA4LDcgKzEwOCw2IEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIG1faGFzaCA9PSBvdGhl
ci5tX2hhc2gKICAgICAgICAgICAgICYmIGxlbmd0aCgpID09IG90aGVyLmxlbmd0aCgpCiAgICAg
ICAgICAgICAmJiBtX2ZsYWdzID09IG90aGVyLm1fZmxhZ3MKLSAgICAgICAgICAgICYmIG1fZnVu
Y3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRlcnNFbmRQb3NpdGlvbiA9PSBvdGhlci5tX2Z1bmN0aW9u
Q29uc3RydWN0b3JQYXJhbWV0ZXJzRW5kUG9zaXRpb24KICAgICAgICAgICAgICYmIG1fbmFtZSA9
PSBvdGhlci5tX25hbWUKICAgICAgICAgICAgICYmIHN0cmluZygpID09IG90aGVyLnN0cmluZygp
OwogICAgIH0KQEAgLTEyOCw4ICsxMjcsNyBAQCBwcml2YXRlOgogICAgIFVubGlua2VkU291cmNl
Q29kZSBtX3NvdXJjZUNvZGU7CiAgICAgU3RyaW5nIG1fbmFtZTsKICAgICBTb3VyY2VDb2RlRmxh
Z3MgbV9mbGFnczsKLSAgICBpbnQgbV9mdW5jdGlvbkNvbnN0cnVjdG9yUGFyYW1ldGVyc0VuZFBv
c2l0aW9uIHsgLTEgfTsKLSAgICB1bnNpZ25lZCBtX2hhc2ggeyAwIH07CisgICAgdW5zaWduZWQg
bV9oYXNoOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Db2RlQ2FjaGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQ29kZUNhY2hlLmNwcAppbmRleCBmYWFmYjcyYjJhOTliOWNhYjhlNzk1ZjAxODM3
YmFjZWZiYzVmYTViLi4wMGE4MjdhOTg2YWNkOTkzNTZmZmFkMWVjMTEzNmQ4MTZkMTBhYTJjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db2RlQ2FjaGUuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvZGVDYWNoZS5jcHAKQEAgLTU3LDgg
KzU3LDcgQEAgVW5saW5rZWRDb2RlQmxvY2tUeXBlKiBDb2RlQ2FjaGU6OmdldFVubGlua2VkR2xv
YmFsQ29kZUJsb2NrKFZNJiB2bSwgRXhlY3V0YWJsZVQKICAgICAgICAgc291cmNlLCBTdHJpbmco
KSwgQ2FjaGVUeXBlczxVbmxpbmtlZENvZGVCbG9ja1R5cGU+Ojpjb2RlVHlwZSwgc3RyaWN0TW9k
ZSwgc2NyaXB0TW9kZSwgCiAgICAgICAgIGRlcml2ZWRDb250ZXh0VHlwZSwgZXZhbENvbnRleHRU
eXBlLCBpc0Fycm93RnVuY3Rpb25Db250ZXh0LCBkZWJ1Z2dlck1vZGUsIAogICAgICAgICB2bS50
eXBlUHJvZmlsZXIoKSA/IFR5cGVQcm9maWxlckVuYWJsZWQ6OlllcyA6IFR5cGVQcm9maWxlckVu
YWJsZWQ6Ok5vLCAKLSAgICAgICAgdm0uY29udHJvbEZsb3dQcm9maWxlcigpID8gQ29udHJvbEZs
b3dQcm9maWxlckVuYWJsZWQ6OlllcyA6IENvbnRyb2xGbG93UHJvZmlsZXJFbmFibGVkOjpObywK
LSAgICAgICAgc3RkOjpudWxsb3B0KTsKKyAgICAgICAgdm0uY29udHJvbEZsb3dQcm9maWxlcigp
ID8gQ29udHJvbEZsb3dQcm9maWxlckVuYWJsZWQ6OlllcyA6IENvbnRyb2xGbG93UHJvZmlsZXJF
bmFibGVkOjpObyk7CiAgICAgU291cmNlQ29kZVZhbHVlKiBjYWNoZSA9IG1fc291cmNlQ29kZS5m
aW5kQ2FjaGVBbmRVcGRhdGVBZ2Uoa2V5KTsKICAgICBpZiAoY2FjaGUgJiYgT3B0aW9uczo6dXNl
Q29kZUNhY2hlKCkpIHsKICAgICAgICAgVW5saW5rZWRDb2RlQmxvY2tUeXBlKiB1bmxpbmtlZENv
ZGVCbG9jayA9IGpzQ2FzdDxVbmxpbmtlZENvZGVCbG9ja1R5cGUqPihjYWNoZS0+Y2VsbC5nZXQo
KSk7CkBAIC05Niw3ICs5NSw3IEBAIFVubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jayogQ29k
ZUNhY2hlOjpnZXRVbmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2soVk0mCiAgICAgcmV0dXJu
IGdldFVubGlua2VkR2xvYmFsQ29kZUJsb2NrPFVubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9j
az4odm0sIGV4ZWN1dGFibGUsIHNvdXJjZSwgSlNQYXJzZXJTdHJpY3RNb2RlOjpTdHJpY3QsIEpT
UGFyc2VyU2NyaXB0TW9kZTo6TW9kdWxlLCBkZWJ1Z2dlck1vZGUsIGVycm9yLCBFdmFsQ29udGV4
dFR5cGU6Ok5vbmUpOwogfQogCi1VbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZSogQ29kZUNhY2hl
OjpnZXRVbmxpbmtlZEdsb2JhbEZ1bmN0aW9uRXhlY3V0YWJsZShWTSYgdm0sIGNvbnN0IElkZW50
aWZpZXImIG5hbWUsIGNvbnN0IFNvdXJjZUNvZGUmIHNvdXJjZSwgRGVidWdnZXJNb2RlIGRlYnVn
Z2VyTW9kZSwgc3RkOjpvcHRpb25hbDxpbnQ+IGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJz
RW5kUG9zaXRpb24sIFBhcnNlckVycm9yJiBlcnJvcikKK1VubGlua2VkRnVuY3Rpb25FeGVjdXRh
YmxlKiBDb2RlQ2FjaGU6OmdldFVubGlua2VkR2xvYmFsRnVuY3Rpb25FeGVjdXRhYmxlKFZNJiB2
bSwgY29uc3QgSWRlbnRpZmllciYgbmFtZSwgY29uc3QgU291cmNlQ29kZSYgc291cmNlLCBEZWJ1
Z2dlck1vZGUgZGVidWdnZXJNb2RlLCBQYXJzZXJFcnJvciYgZXJyb3IpCiB7CiAgICAgYm9vbCBp
c0Fycm93RnVuY3Rpb25Db250ZXh0ID0gZmFsc2U7CiAgICAgU291cmNlQ29kZUtleSBrZXkoCkBA
IC0xMDgsOCArMTA3LDcgQEAgVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUqIENvZGVDYWNoZTo6
Z2V0VW5saW5rZWRHbG9iYWxGdW5jdGlvbkV4ZWN1dGFibGUoVk0mIHYKICAgICAgICAgaXNBcnJv
d0Z1bmN0aW9uQ29udGV4dCwKICAgICAgICAgZGVidWdnZXJNb2RlLCAKICAgICAgICAgdm0udHlw
ZVByb2ZpbGVyKCkgPyBUeXBlUHJvZmlsZXJFbmFibGVkOjpZZXMgOiBUeXBlUHJvZmlsZXJFbmFi
bGVkOjpObywgCi0gICAgICAgIHZtLmNvbnRyb2xGbG93UHJvZmlsZXIoKSA/IENvbnRyb2xGbG93
UHJvZmlsZXJFbmFibGVkOjpZZXMgOiBDb250cm9sRmxvd1Byb2ZpbGVyRW5hYmxlZDo6Tm8sCi0g
ICAgICAgIGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJzRW5kUG9zaXRpb24pOworICAgICAg
ICB2bS5jb250cm9sRmxvd1Byb2ZpbGVyKCkgPyBDb250cm9sRmxvd1Byb2ZpbGVyRW5hYmxlZDo6
WWVzIDogQ29udHJvbEZsb3dQcm9maWxlckVuYWJsZWQ6Ok5vKTsKICAgICBTb3VyY2VDb2RlVmFs
dWUqIGNhY2hlID0gbV9zb3VyY2VDb2RlLmZpbmRDYWNoZUFuZFVwZGF0ZUFnZShrZXkpOwogICAg
IGlmIChjYWNoZSAmJiBPcHRpb25zOjp1c2VDb2RlQ2FjaGUoKSkgewogICAgICAgICBVbmxpbmtl
ZEZ1bmN0aW9uRXhlY3V0YWJsZSogZXhlY3V0YWJsZSA9IGpzQ2FzdDxVbmxpbmtlZEZ1bmN0aW9u
RXhlY3V0YWJsZSo+KGNhY2hlLT5jZWxsLmdldCgpKTsKQEAgLTExOSwxNCArMTE3LDI1IEBAIFVu
bGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlKiBDb2RlQ2FjaGU6OmdldFVubGlua2VkR2xvYmFsRnVu
Y3Rpb25FeGVjdXRhYmxlKFZNJiB2CiAgICAgfQogCiAgICAgSlNUZXh0UG9zaXRpb24gcG9zaXRp
b25CZWZvcmVMYXN0TmV3bGluZTsKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8UHJvZ3JhbU5vZGU+IHBy
b2dyYW0gPSBwYXJzZUZ1bmN0aW9uRm9yRnVuY3Rpb25Db25zdHJ1Y3Rvcih2bSwgc291cmNlLCBl
cnJvciwgJnBvc2l0aW9uQmVmb3JlTGFzdE5ld2xpbmUsIGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJh
bWV0ZXJzRW5kUG9zaXRpb24pOworICAgIHN0ZDo6dW5pcXVlX3B0cjxQcm9ncmFtTm9kZT4gcHJv
Z3JhbSA9IHBhcnNlPFByb2dyYW1Ob2RlPigKKyAgICAgICAgJnZtLCBzb3VyY2UsIElkZW50aWZp
ZXIoKSwgSlNQYXJzZXJCdWlsdGluTW9kZTo6Tm90QnVpbHRpbiwKKyAgICAgICAgSlNQYXJzZXJT
dHJpY3RNb2RlOjpOb3RTdHJpY3QsIEpTUGFyc2VyU2NyaXB0TW9kZTo6Q2xhc3NpYywgU291cmNl
UGFyc2VNb2RlOjpQcm9ncmFtTW9kZSwgU3VwZXJCaW5kaW5nOjpOb3ROZWVkZWQsCisgICAgICAg
IGVycm9yLCAmcG9zaXRpb25CZWZvcmVMYXN0TmV3bGluZSk7CiAgICAgaWYgKCFwcm9ncmFtKSB7
CiAgICAgICAgIFJFTEVBU0VfQVNTRVJUKGVycm9yLmlzVmFsaWQoKSk7CiAgICAgICAgIHJldHVy
biBudWxscHRyOwogICAgIH0KIAogICAgIC8vIFRoaXMgZnVuY3Rpb24gYXNzdW1lcyBhbiBpbnB1
dCBzdHJpbmcgdGhhdCB3b3VsZCByZXN1bHQgaW4gYSBzaW5nbGUgZnVuY3Rpb24gZGVjbGFyYXRp
b24uCi0gICAgU3RhdGVtZW50Tm9kZSogZnVuY0RlY2wgPSBwcm9ncmFtLT5zaW5nbGVTdGF0ZW1l
bnQoKTsKKyAgICBTdGF0ZW1lbnROb2RlKiBzdGF0ZW1lbnQgPSBwcm9ncmFtLT5zaW5nbGVTdGF0
ZW1lbnQoKTsKKyAgICBpZiAoVU5MSUtFTFkoIXN0YXRlbWVudCkpIHsKKyAgICAgICAgSlNUb2tl
biB0b2tlbjsKKyAgICAgICAgZXJyb3IgPSBQYXJzZXJFcnJvcihQYXJzZXJFcnJvcjo6U3ludGF4
RXJyb3IsIFBhcnNlckVycm9yOjpTeW50YXhFcnJvcklycmVjb3ZlcmFibGUsIHRva2VuLCAiUGFy
c2VyIGVycm9yIiwgLTEpOworICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisgICAgQVNT
RVJUKHN0YXRlbWVudC0+aXNCbG9jaygpKTsKKworICAgIFN0YXRlbWVudE5vZGUqIGZ1bmNEZWNs
ID0gc3RhdGljX2Nhc3Q8QmxvY2tOb2RlKj4oc3RhdGVtZW50KS0+c2luZ2xlU3RhdGVtZW50KCk7
CiAgICAgaWYgKFVOTElLRUxZKCFmdW5jRGVjbCkpIHsKICAgICAgICAgSlNUb2tlbiB0b2tlbjsK
ICAgICAgICAgZXJyb3IgPSBQYXJzZXJFcnJvcihQYXJzZXJFcnJvcjo6U3ludGF4RXJyb3IsIFBh
cnNlckVycm9yOjpTeW50YXhFcnJvcklycmVjb3ZlcmFibGUsIHRva2VuLCAiUGFyc2VyIGVycm9y
IiwgLTEpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29kZUNh
Y2hlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db2RlQ2FjaGUuaAppbmRleCA1
M2UzZmRhNTFlMmUzN2Q3ZTBkZDA5MmMwZmRhOTU3OWZiYWM3M2Q0Li5hYjcwYjY1Mzk3ZmIzMzVk
MmExMjNiMmE2YjNhZTNhZTYzYzgxZDlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9Db2RlQ2FjaGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Db2RlQ2FjaGUuaApAQCAtMTk0LDcgKzE5NCw3IEBAIHB1YmxpYzoKICAgICBVbmxpbmtlZFBy
b2dyYW1Db2RlQmxvY2sqIGdldFVubGlua2VkUHJvZ3JhbUNvZGVCbG9jayhWTSYsIFByb2dyYW1F
eGVjdXRhYmxlKiwgY29uc3QgU291cmNlQ29kZSYsIEpTUGFyc2VyU3RyaWN0TW9kZSwgRGVidWdn
ZXJNb2RlLCBQYXJzZXJFcnJvciYpOwogICAgIFVubGlua2VkRXZhbENvZGVCbG9jayogZ2V0VW5s
aW5rZWRFdmFsQ29kZUJsb2NrKFZNJiwgSW5kaXJlY3RFdmFsRXhlY3V0YWJsZSosIGNvbnN0IFNv
dXJjZUNvZGUmLCBKU1BhcnNlclN0cmljdE1vZGUsIERlYnVnZ2VyTW9kZSwgUGFyc2VyRXJyb3Im
LCBFdmFsQ29udGV4dFR5cGUpOwogICAgIFVubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jayog
Z2V0VW5saW5rZWRNb2R1bGVQcm9ncmFtQ29kZUJsb2NrKFZNJiwgTW9kdWxlUHJvZ3JhbUV4ZWN1
dGFibGUqLCBjb25zdCBTb3VyY2VDb2RlJiwgRGVidWdnZXJNb2RlLCBQYXJzZXJFcnJvciYpOwot
ICAgIFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlKiBnZXRVbmxpbmtlZEdsb2JhbEZ1bmN0aW9u
RXhlY3V0YWJsZShWTSYsIGNvbnN0IElkZW50aWZpZXImLCBjb25zdCBTb3VyY2VDb2RlJiwgRGVi
dWdnZXJNb2RlLCBzdGQ6Om9wdGlvbmFsPGludD4gZnVuY3Rpb25Db25zdHJ1Y3RvclBhcmFtZXRl
cnNFbmRQb3NpdGlvbiwgUGFyc2VyRXJyb3ImKTsKKyAgICBVbmxpbmtlZEZ1bmN0aW9uRXhlY3V0
YWJsZSogZ2V0VW5saW5rZWRHbG9iYWxGdW5jdGlvbkV4ZWN1dGFibGUoVk0mLCBjb25zdCBJZGVu
dGlmaWVyJiwgY29uc3QgU291cmNlQ29kZSYsIERlYnVnZ2VyTW9kZSwgUGFyc2VyRXJyb3ImKTsK
IAogICAgIHZvaWQgY2xlYXIoKSB7IG1fc291cmNlQ29kZS5jbGVhcigpOyB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAK
aW5kZXggOWIzZDM1ZGQyMjE2NzE4NDhhMGI0YmE3NTYxNjU4OGNkOTFlODk3Yy4uMjY1MDQ5Zjk5
NDAxOGE3MzlhMmJmZTkwN2ZlZDRkMTk1ZWNmZTM5MyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTk0LDQ4ICs5
NCw4MiBAQCBKU09iamVjdCogY29uc3RydWN0RnVuY3Rpb25Ta2lwcGluZ0V2YWxFbmFibGVkQ2hl
Y2soCiAgICAgICAgIHByZWZpeCA9ICJhc3luYyBmdW5jdGlvbiAiOwogICAgICAgICBicmVhazsK
ICAgICBjYXNlIEZ1bmN0aW9uQ29uc3RydWN0aW9uTW9kZTo6QXN5bmNHZW5lcmF0b3I6Ci0gICAg
ICAgIHByZWZpeCA9ICJhc3luYyBmdW5jdGlvbioiOworICAgICAgICBwcmVmaXggPSAie2FzeW5j
IGZ1bmN0aW9uKiI7CiAgICAgICAgIGJyZWFrOwogICAgIH0KIAorICAgIGF1dG8gY2hlY2tCb2R5
ID0gWyZdIChjb25zdCBTdHJpbmcmIGJvZHkpIHsKKyAgICAgICAgLy8gVGhlIHNwZWMgbWFuZGF0
ZXMgdGhhdCB0aGUgYm9keSBwYXJzZXMgYSB2YWxpZCBmdW5jdGlvbiBib2R5IGluZGVwZW5kZW50
CisgICAgICAgIC8vIG9mIHRoZSBwYXJhbWV0ZXJzLgorICAgICAgICBTdHJpbmcgcHJvZ3JhbSA9
IG1ha2VTdHJpbmcoIigiLCBwcmVmaXgsICIoKXtcbiIsIGJvZHksICJcbn0pIik7CisgICAgICAg
IFNvdXJjZUNvZGUgc291cmNlID0gbWFrZVNvdXJjZShwcm9ncmFtLCBzb3VyY2VPcmlnaW4sIHNv
dXJjZVVSTCwgcG9zaXRpb24pOworICAgICAgICBKU1ZhbHVlIGV4Y2VwdGlvbjsKKyAgICAgICAg
Y2hlY2tTeW50YXgoZXhlYywgc291cmNlLCAmZXhjZXB0aW9uKTsKKyAgICAgICAgaWYgKGV4Y2Vw
dGlvbikgeworICAgICAgICAgICAgc2NvcGUudGhyb3dFeGNlcHRpb24oZXhlYywgZXhjZXB0aW9u
KTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgIH07CisKICAgICAvLyBIb3cg
d2Ugc3RyaW5naWZ5IGZ1bmN0aW9ucyBpcyBzb21ldGltZXMgaW1wb3J0YW50IGZvciB3ZWIgY29t
cGF0aWJpbGl0eS4KICAgICAvLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTI0MzUwLgogICAgIFN0cmluZyBwcm9ncmFtOwotICAgIHN0ZDo6b3B0aW9uYWw8aW50
PiBmdW5jdGlvbkNvbnN0cnVjdG9yUGFyYW1ldGVyc0VuZFBvc2l0aW9uID0gc3RkOjpudWxsb3B0
OwogICAgIGlmIChhcmdzLmlzRW1wdHkoKSkKLSAgICAgICAgcHJvZ3JhbSA9IG1ha2VTdHJpbmco
cHJlZml4LCBmdW5jdGlvbk5hbWUuc3RyaW5nKCksICIoKSB7XG5cbn0iKTsKKyAgICAgICAgcHJv
Z3JhbSA9IG1ha2VTdHJpbmcoInsiLCBwcmVmaXgsIGZ1bmN0aW9uTmFtZS5zdHJpbmcoKSwgIigp
IHtcblxufX0iKTsKICAgICBlbHNlIGlmIChhcmdzLnNpemUoKSA9PSAxKSB7CiAgICAgICAgIGF1
dG8gYm9keSA9IGFyZ3MuYXQoMCkudG9XVEZTdHJpbmcoZXhlYyk7CiAgICAgICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwotICAgICAgICBwcm9ncmFtID0gbWFrZVN0cmlu
ZyhwcmVmaXgsIGZ1bmN0aW9uTmFtZS5zdHJpbmcoKSwgIigpIHtcbiIsIGJvZHksICJcbn0iKTsK
KyAgICAgICAgY2hlY2tCb2R5KGJvZHkpOworICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNj
b3BlLCBudWxscHRyKTsKKyAgICAgICAgcHJvZ3JhbSA9IG1ha2VTdHJpbmcoInsiLCBwcmVmaXgs
IGZ1bmN0aW9uTmFtZS5zdHJpbmcoKSwgIigpIHtcbiIsIGJvZHksICJcbn19Iik7CiAgICAgfSBl
bHNlIHsKICAgICAgICAgU3RyaW5nQnVpbGRlciBidWlsZGVyOworICAgICAgICBidWlsZGVyLmFw
cGVuZCgneycpOwogICAgICAgICBidWlsZGVyLmFwcGVuZChwcmVmaXgpOwogICAgICAgICBidWls
ZGVyLmFwcGVuZChmdW5jdGlvbk5hbWUuc3RyaW5nKCkpOwotCiAgICAgICAgIGJ1aWxkZXIuYXBw
ZW5kKCcoJyk7CisgICAgICAgIFN0cmluZ0J1aWxkZXIgcGFyYW1ldGVyQnVpbGRlcjsKICAgICAg
ICAgYXV0byB2aWV3V2l0aFN0cmluZyA9IGFyZ3MuYXQoMCkudG9TdHJpbmcoZXhlYyktPnZpZXdX
aXRoVW5kZXJseWluZ1N0cmluZyhleGVjKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihz
Y29wZSwgbnVsbHB0cik7Ci0gICAgICAgIGJ1aWxkZXIuYXBwZW5kKHZpZXdXaXRoU3RyaW5nLnZp
ZXcpOworICAgICAgICBwYXJhbWV0ZXJCdWlsZGVyLmFwcGVuZCh2aWV3V2l0aFN0cmluZy52aWV3
KTsKICAgICAgICAgZm9yIChzaXplX3QgaSA9IDE7IGkgPCBhcmdzLnNpemUoKSAtIDE7IGkrKykg
ewotICAgICAgICAgICAgYnVpbGRlci5hcHBlbmRMaXRlcmFsKCIsICIpOworICAgICAgICAgICAg
cGFyYW1ldGVyQnVpbGRlci5hcHBlbmRMaXRlcmFsKCIsICIpOwogICAgICAgICAgICAgYXV0byB2
aWV3V2l0aFN0cmluZyA9IGFyZ3MuYXQoaSkudG9TdHJpbmcoZXhlYyktPnZpZXdXaXRoVW5kZXJs
eWluZ1N0cmluZyhleGVjKTsKICAgICAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IG51bGxwdHIpOwotICAgICAgICAgICAgYnVpbGRlci5hcHBlbmQodmlld1dpdGhTdHJpbmcudmll
dyk7CisgICAgICAgICAgICBwYXJhbWV0ZXJCdWlsZGVyLmFwcGVuZCh2aWV3V2l0aFN0cmluZy52
aWV3KTsKKyAgICAgICAgfQorICAgICAgICBhdXRvIGJvZHkgPSBhcmdzLmF0KGFyZ3Muc2l6ZSgp
IC0gMSkudG9XVEZTdHJpbmcoZXhlYyk7CisgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2Nv
cGUsIG51bGxwdHIpOworCisgICAgICAgIHsKKyAgICAgICAgICAgIC8vIFRoZSBzcGVjIG1hbmRh
dGVzIHRoYXQgdGhlIHBhcmFtZXRlcnMgcGFyc2UgYXMgYSB2YWxpZCBwYXJhbWV0ZXIgbGlzdAor
ICAgICAgICAgICAgLy8gaW5kZXBlbmRlbnQgb2YgdGhlIGZ1bmN0aW9uIGJvZHkuCisgICAgICAg
ICAgICBTdHJpbmcgcHJvZ3JhbSA9IHRyeU1ha2VTdHJpbmcoIigiLCBwcmVmaXgsICIoIiwgcGFy
YW1ldGVyQnVpbGRlci50b1N0cmluZygpLCAiKXtcblxufSkiKTsKKyAgICAgICAgICAgIGlmIChV
TkxJS0VMWSghcHJvZ3JhbSkpIHsKKyAgICAgICAgICAgICAgICB0aHJvd091dE9mTWVtb3J5RXJy
b3IoZXhlYywgc2NvcGUpOworICAgICAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAg
ICAgICAgfQorICAgICAgICAgICAgU291cmNlQ29kZSBzb3VyY2UgPSBtYWtlU291cmNlKHByb2dy
YW0sIHNvdXJjZU9yaWdpbiwgc291cmNlVVJMLCBwb3NpdGlvbik7CisgICAgICAgICAgICBKU1Zh
bHVlIGV4Y2VwdGlvbjsKKyAgICAgICAgICAgIGNoZWNrU3ludGF4KGV4ZWMsIHNvdXJjZSwgJmV4
Y2VwdGlvbik7CisgICAgICAgICAgICBpZiAoZXhjZXB0aW9uKSB7CisgICAgICAgICAgICAgICAg
c2NvcGUudGhyb3dFeGNlcHRpb24oZXhlYywgZXhjZXB0aW9uKTsKKyAgICAgICAgICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQotICAgICAgICBmdW5jdGlv
bkNvbnN0cnVjdG9yUGFyYW1ldGVyc0VuZFBvc2l0aW9uID0gYnVpbGRlci5sZW5ndGgoKSArIDE7
Ci0gICAgICAgIGJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiKSB7XG4iKTsKIAotICAgICAgICBhdXRv
IGJvZHkgPSBhcmdzLmF0KGFyZ3Muc2l6ZSgpIC0gMSkudG9TdHJpbmcoZXhlYyktPnZpZXdXaXRo
VW5kZXJseWluZ1N0cmluZyhleGVjKTsKKyAgICAgICAgYnVpbGRlci5hcHBlbmQocGFyYW1ldGVy
QnVpbGRlcik7CisgICAgICAgIGJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiKSB7XG4iKTsKKyAgICAg
ICAgY2hlY2tCb2R5KGJvZHkpOwogICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBu
dWxscHRyKTsKLSAgICAgICAgYnVpbGRlci5hcHBlbmQoYm9keS52aWV3KTsKLSAgICAgICAgYnVp
bGRlci5hcHBlbmRMaXRlcmFsKCJcbn0iKTsKKyAgICAgICAgYnVpbGRlci5hcHBlbmQoYm9keSk7
CisgICAgICAgIGJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiXG59fSIpOwogICAgICAgICBwcm9ncmFt
ID0gYnVpbGRlci50b1N0cmluZygpOwogICAgIH0KIAogICAgIFNvdXJjZUNvZGUgc291cmNlID0g
bWFrZVNvdXJjZShwcm9ncmFtLCBzb3VyY2VPcmlnaW4sIHNvdXJjZVVSTCwgcG9zaXRpb24pOwog
ICAgIEpTT2JqZWN0KiBleGNlcHRpb24gPSBudWxscHRyOwotICAgIEZ1bmN0aW9uRXhlY3V0YWJs
ZSogZnVuY3Rpb24gPSBGdW5jdGlvbkV4ZWN1dGFibGU6OmZyb21HbG9iYWxDb2RlKGZ1bmN0aW9u
TmFtZSwgKmV4ZWMsIHNvdXJjZSwgZXhjZXB0aW9uLCBvdmVycmlkZUxpbmVOdW1iZXIsIGZ1bmN0
aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJzRW5kUG9zaXRpb24pOworICAgIEZ1bmN0aW9uRXhlY3V0
YWJsZSogZnVuY3Rpb24gPSBGdW5jdGlvbkV4ZWN1dGFibGU6OmZyb21HbG9iYWxDb2RlKGZ1bmN0
aW9uTmFtZSwgKmV4ZWMsIHNvdXJjZSwgZXhjZXB0aW9uLCBvdmVycmlkZUxpbmVOdW1iZXIpOwog
ICAgIGlmICghZnVuY3Rpb24pIHsKICAgICAgICAgQVNTRVJUKGV4Y2VwdGlvbik7CiAgICAgICAg
IHJldHVybiB0aHJvd0V4Y2VwdGlvbihleGVjLCBzY29wZSwgZXhjZXB0aW9uKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uRXhlY3V0YWJsZS5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkV4ZWN1dGFibGUuY3BwCmlu
ZGV4IGVlZDNjMjE2Y2EzYmI3OTY5ZmE2Zjg4ODU4ZGM2OTVkNjZlNWQxMTQuLmQ1NzcwZDRhMDY0
OWM1MGQyMDk0YjdmMTZhZTg5OGZhYjk3Nzg0NzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uRXhlY3V0YWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25FeGVjdXRhYmxlLmNwcApAQCAtOTQsMTEgKzk0LDEx
IEBAIHZvaWQgRnVuY3Rpb25FeGVjdXRhYmxlOjp2aXNpdENoaWxkcmVuKEpTQ2VsbCogY2VsbCwg
U2xvdFZpc2l0b3ImIHZpc2l0b3IpCiAKIEZ1bmN0aW9uRXhlY3V0YWJsZSogRnVuY3Rpb25FeGVj
dXRhYmxlOjpmcm9tR2xvYmFsQ29kZSgKICAgICBjb25zdCBJZGVudGlmaWVyJiBuYW1lLCBFeGVj
U3RhdGUmIGV4ZWMsIGNvbnN0IFNvdXJjZUNvZGUmIHNvdXJjZSwgCi0gICAgSlNPYmplY3QqJiBl
eGNlcHRpb24sIGludCBvdmVycmlkZUxpbmVOdW1iZXIsIHN0ZDo6b3B0aW9uYWw8aW50PiBmdW5j
dGlvbkNvbnN0cnVjdG9yUGFyYW1ldGVyc0VuZFBvc2l0aW9uKQorICAgIEpTT2JqZWN0KiYgZXhj
ZXB0aW9uLCBpbnQgb3ZlcnJpZGVMaW5lTnVtYmVyKQogewogICAgIFVubGlua2VkRnVuY3Rpb25F
eGVjdXRhYmxlKiB1bmxpbmtlZEV4ZWN1dGFibGUgPSAKICAgICAgICAgVW5saW5rZWRGdW5jdGlv
bkV4ZWN1dGFibGU6OmZyb21HbG9iYWxDb2RlKAotICAgICAgICAgICAgbmFtZSwgZXhlYywgc291
cmNlLCBleGNlcHRpb24sIG92ZXJyaWRlTGluZU51bWJlciwgZnVuY3Rpb25Db25zdHJ1Y3RvclBh
cmFtZXRlcnNFbmRQb3NpdGlvbik7CisgICAgICAgICAgICBuYW1lLCBleGVjLCBzb3VyY2UsIGV4
Y2VwdGlvbiwgb3ZlcnJpZGVMaW5lTnVtYmVyKTsKICAgICBpZiAoIXVubGlua2VkRXhlY3V0YWJs
ZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uRXhlY3V0YWJsZS5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRnVuY3Rpb25FeGVjdXRhYmxlLmgKaW5kZXggNmJhODVhMTUyYzc3NGUzMWM3
MWM3MTJlMmIyNmI1ZWFkMzBiZjk1ZS4uM2E5M2I1ODY3MjUwN2UxNGFkY2ViNDYyNTAzNzUzMjZi
Mjg2OTY5YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rp
b25FeGVjdXRhYmxlLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rp
b25FeGVjdXRhYmxlLmgKQEAgLTU1LDcgKzU1LDcgQEAgcHVibGljOgogICAgIH0KICAgICBzdGF0
aWMgRnVuY3Rpb25FeGVjdXRhYmxlKiBmcm9tR2xvYmFsQ29kZSgKICAgICAgICAgY29uc3QgSWRl
bnRpZmllciYgbmFtZSwgRXhlY1N0YXRlJiwgY29uc3QgU291cmNlQ29kZSYsIAotICAgICAgICBK
U09iamVjdComIGV4Y2VwdGlvbiwgaW50IG92ZXJyaWRlTGluZU51bWJlciwgc3RkOjpvcHRpb25h
bDxpbnQ+IGZ1bmN0aW9uQ29uc3RydWN0b3JQYXJhbWV0ZXJzRW5kUG9zaXRpb24pOworICAgICAg
ICBKU09iamVjdComIGV4Y2VwdGlvbiwgaW50IG92ZXJyaWRlTGluZU51bWJlcik7CiAKICAgICBz
dGF0aWMgdm9pZCBkZXN0cm95KEpTQ2VsbCopOwogICAgICAgICAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2NzRmMDQzZjk3
ODU5NTcxZTE3ODJkMTExMjFkMzVjMDAxZTI0NDJlLi44YjdiMzQ2MzFhZjJmZjc0OTA3OTFjZWVh
NzkzNWNmYTM0MWI3MjM4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTgtMTAtMTkgIENvbW1p
dCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgorCisgICAgICAgIFVucmV2aWV3ZWQs
IHJvbGxpbmcgb3V0IHIyMzcyNTQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xOTA3NjAKKworICAgICAgICAiSXQgcmVncmVzc2VzIEpldFN0cmVhbSAy
IGJ5IDUlIG9uIHNvbWUgaU9TIGRldmljZXMiCisgICAgICAgIChSZXF1ZXN0ZWQgYnkgc2FhbXlq
b29uIG9uICN3ZWJraXQpLgorCisgICAgICAgIFJldmVydGVkIGNoYW5nZXNldDoKKworICAgICAg
ICAiW0pTQ10gSlNDIHNob3VsZCBoYXZlICJwYXJzZUZ1bmN0aW9uIiB0byBvcHRpbWl6ZSBGdW5j
dGlvbgorICAgICAgICBjb25zdHJ1Y3RvciIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE5MDM0MAorICAgICAgICBodHRwczovL3RyYWMud2Via2l0Lm9y
Zy9jaGFuZ2VzZXQvMjM3MjU0CisKIDIwMTgtMTAtMTkgIENoYXJsaWUgVHVybmVyICA8Y3R1cm5l
ckBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtFTUVdIEZpeCBjcmFzaCBkdXJpbmcgdHJhY2luZyBp
biAgZ3N0X3F0ZGVtdXhfcmVxdWVzdF9wcm90ZWN0aW9uX2NvbnRleHQKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2MvQ2hhbmdlTG9nCmluZGV4IDgzODM5NGI3Y2VlZjY1ZjA5ZjM1MzUwNDI5Y2VmZGQ5OTU5NWNi
ZmYuLmU3NzI2ZTJjM2UxYWQ5Y2JmODZiMDlhNzYyMDI0Y2M4ZjBjMzFhNTAgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE4LTEwLTE5ICBDb21taXQg
UXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2VkLCBy
b2xsaW5nIG91dCByMjM3MjU0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTkwNzYwCisKKyAgICAgICAgIkl0IHJlZ3Jlc3NlcyBKZXRTdHJlYW0gMiBi
eSA1JSBvbiBzb21lIGlPUyBkZXZpY2VzIgorICAgICAgICAoUmVxdWVzdGVkIGJ5IHNhYW15am9v
biBvbiAjd2Via2l0KS4KKworICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisKKyAgICAgICAg
IltKU0NdIEpTQyBzaG91bGQgaGF2ZSAicGFyc2VGdW5jdGlvbiIgdG8gb3B0aW1pemUgRnVuY3Rp
b24KKyAgICAgICAgY29uc3RydWN0b3IiCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xOTAzNDAKKyAgICAgICAgaHR0cHM6Ly90cmFjLndlYmtpdC5vcmcv
Y2hhbmdlc2V0LzIzNzI1NAorCiAyMDE4LTEwLTE5ICBDaGFybGllIFR1cm5lciAgPGN0dXJuZXJA
aWdhbGlhLmNvbT4KIAogICAgICAgICBbRU1FXSBGaXggY3Jhc2ggZHVyaW5nIHRyYWNpbmcgaW4g
IGdzdF9xdGRlbXV4X3JlcXVlc3RfcHJvdGVjdGlvbl9jb250ZXh0CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9hdHRyaWJ1dGUtZXZlbnQtbGlzdGVuZXItZXJyb3JzLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL2F0dHJpYnV0ZS1ldmVudC1saXN0ZW5lci1lcnJv
cnMtZXhwZWN0ZWQudHh0CmluZGV4IDQyMzY3NjcxOGZiYjQ2MjZhYjVkMTAwZWEwMjM1MDVmMTIw
YmNjOWEuLjFkZjkzOTc1NzRiNDQ1MmU0MGEwZjZjNjAzNjFkZGUxZDViN2MyNDkgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL2F0dHJpYnV0ZS1ldmVudC1saXN0ZW5lci1lcnJvcnMt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL2F0dHJpYnV0ZS1ldmVudC1s
aXN0ZW5lci1lcnJvcnMtZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAogQ09OU09MRSBNRVNT
QUdFOiBsaW5lIDQ6IFJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBlcnJvcgot
Q09OU09MRSBNRVNTQUdFOiBsaW5lIDU6IFN5bnRheEVycm9yOiBJbnZhbGlkIGNoYXJhY3Rlcjog
J0AnCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgOTogU3ludGF4RXJyb3I6IEludmFsaWQgY2hhcmFj
dGVyOiAnQCcKIFRoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IGFuIGF0dHJpYnV0ZSBldmVudCBsaXN0
ZW5lciBlcnJvciBzaG93cyB0aGUgcmlnaHQgbGluZSBudW1iZXIgZXZlbiBpZiB0aGUgYXR0cmli
dXRlIGNvbnRhaW5zIG5ld2xpbmVzLgogICAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
ZXZlbnRzL2F0dHJpYnV0ZS1saXN0ZW5lci1kZWxldGlvbi1jcmFzaC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9hdHRyaWJ1dGUtbGlzdGVuZXItZGVsZXRpb24tY3Jhc2gt
ZXhwZWN0ZWQudHh0CmluZGV4IDU4MjRiYWFkYzQ0MjFiNDE3NmZhMDYwZWY4NTZjYmQ3YTE5NTRl
NDcuLjBkYjc3MjhjYjcxYjZmNWRjNGRmNDY3OWQ4NGVlODIwNDYxZWUwNTQgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2F0dHJpYnV0ZS1saXN0ZW5lci1kZWxldGlvbi1jcmFz
aC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvYXR0cmlidXRlLWxp
c3RlbmVyLWRlbGV0aW9uLWNyYXNoLWV4cGVjdGVkLnR4dApAQCAtMSwyMSArMSwyMSBAQAotQ09O
U09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8Jwot
Q09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8
JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2Vu
ICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRv
a2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVk
IHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVj
dGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4
cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBV
bmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9y
OiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVy
cm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRh
eEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5
bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6
IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBsaW5l
IDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdFOiBs
aW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNTQUdF
OiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBNRVNT
QUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09MRSBN
RVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09OU09M
RSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JwotQ09O
U09MRSBNRVNTQUdFOiBsaW5lIDE6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8Jwor
Q09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8
JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2Vu
ICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRv
a2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVk
IHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVj
dGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4
cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBV
bmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9y
OiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVy
cm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRh
eEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5
bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI6
IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBsaW5l
IDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdFOiBs
aW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNTQUdF
OiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBNRVNT
QUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09MRSBN
RVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09OU09M
RSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8JworQ09O
U09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8Jwor
Q09OU09MRSBNRVNTQUdFOiBsaW5lIDI6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd8
JwogUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvd2luZG93LW9uZXJy
b3Itc3ludGF4LWVycm9yLWluLWF0dHItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9l
dmVudHMvd2luZG93LW9uZXJyb3Itc3ludGF4LWVycm9yLWluLWF0dHItZXhwZWN0ZWQudHh0Cmlu
ZGV4IDY4ZWRkMDE3ZjFjY2M3ZGYwYzFmMTE2YWIyMGI3ZGRmNmNhMTE0MzUuLjVhYzk1MDE1ZmQy
MzVjYWU5MzNlZWRmNWM1ZmM4NGJiMDZlZjEwYWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zh
c3QvZXZlbnRzL3dpbmRvdy1vbmVycm9yLXN5bnRheC1lcnJvci1pbi1hdHRyLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy93aW5kb3ctb25lcnJvci1zeW50YXgtZXJy
b3ItaW4tYXR0ci1leHBlY3RlZC50eHQKQEAgLTEsNiArMSw2IEBACiBUZXN0IHRoYXQgd2luZG93
Lm9uZXJyb3IgaXMgY2FsbGVkIG9uIHdpbmRvdyBvYmplY3Qgd2hlbiB0aGVyZSBpcyBhIHN5bnRh
eCBlcnJvciBpbiBhdHRyaWJ1dGUgaGFuZGxlci4gQnVnIDcwOTkxLgogCi1NYWluIGZyYW1lIHdp
bmRvdy5vbmVycm9yOiBTeW50YXhFcnJvcjogVW5leHBlY3RlZCB0b2tlbiAnJScgYXQgd2luZG93
LW9uZXJyb3Itc3ludGF4LWVycm9yLWluLWF0dHIuaHRtbDoxMDozOCBTeW50YXhFcnJvcjogVW5l
eHBlY3RlZCB0b2tlbiAnJScKLU1haW4gZnJhbWUgd2luZG93Lm9uZXJyb3I6IFN5bnRheEVycm9y
OiBVbmV4cGVjdGVkIHRva2VuICclJyBhdCB3aW5kb3ctb25lcnJvci1zeW50YXgtZXJyb3ItaW4t
YXR0ci5odG1sOjM2OjM4IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICclJwotTWFpbiBm
cmFtZSB3aW5kb3cub25lcnJvcjogU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJyUnIGF0
IHdpbmRvdy1vbmVycm9yLXN5bnRheC1lcnJvci1pbi1hdHRyLmh0bWw6MzY6MTQgU3ludGF4RXJy
b3I6IFVuZXhwZWN0ZWQgdG9rZW4gJyUnCitNYWluIGZyYW1lIHdpbmRvdy5vbmVycm9yOiBTeW50
YXhFcnJvcjogVW5leHBlY3RlZCB0b2tlbiAnJScgYXQgd2luZG93LW9uZXJyb3Itc3ludGF4LWVy
cm9yLWluLWF0dHIuaHRtbDoxMTozOCBTeW50YXhFcnJvcjogVW5leHBlY3RlZCB0b2tlbiAnJScK
K01haW4gZnJhbWUgd2luZG93Lm9uZXJyb3I6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2Vu
ICclJyBhdCB3aW5kb3ctb25lcnJvci1zeW50YXgtZXJyb3ItaW4tYXR0ci5odG1sOjM3OjM4IFN5
bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICclJworTWFpbiBmcmFtZSB3aW5kb3cub25lcnJv
cjogU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJyUnIGF0IHdpbmRvdy1vbmVycm9yLXN5
bnRheC1lcnJvci1pbi1hdHRyLmh0bWw6Mzc6MTQgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9r
ZW4gJyUnCiBCdXR0b24gMSBCdXR0b24gMiBCdXR0b24gMwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3dlYmFwcGFwaXMvc2NyaXB0
aW5nL2V2ZW50cy9pbmxpbmUtZXZlbnQtaGFuZGxlci1vcmRlcmluZy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvd2ViYXBwYXBp
cy9zY3JpcHRpbmcvZXZlbnRzL2lubGluZS1ldmVudC1oYW5kbGVyLW9yZGVyaW5nLWV4cGVjdGVk
LnR4dAppbmRleCA0MzA5NWEzYmVlYTk2ZmRmM2FiYWJlN2U0MjY0NTJiZjg3NjkwZDlkLi42MTk5
Y2RlYzBlY2Q5YjZlZGI1Mzg3Nzc4OTgxNDI4MjRiNjEwZmIxIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvd2ViYXBwYXBpcy9zY3Jp
cHRpbmcvZXZlbnRzL2lubGluZS1ldmVudC1oYW5kbGVyLW9yZGVyaW5nLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvd2Vi
YXBwYXBpcy9zY3JpcHRpbmcvZXZlbnRzL2lubGluZS1ldmVudC1oYW5kbGVyLW9yZGVyaW5nLWV4
cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIENPTlNPTEUgTUVTU0FHRTogbGluZSAxOTogU3lu
dGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJ30nCi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgNTI6
IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd9JworQ09OU09MRSBNRVNTQUdFOiBsaW5l
IDU0OiBTeW50YXhFcnJvcjogVW5leHBlY3RlZCB0b2tlbiAnfScKIAogUEFTUyBJbmxpbmUgZXZl
bnQgaGFuZGxlcnMgcmV0YWluIHRoZWlyIG9yZGVyaW5nIHdoZW4gaW52YWxpZCBhbmQgZm9yY2Ut
Y29tcGlsZWQgCiBQQVNTIElubGluZSBldmVudCBoYW5kbGVycyByZXRhaW4gdGhlaXIgb3JkZXJp
bmcgd2hlbiBpbnZhbGlkIGFuZCBmb3JjZS1jb21waWxlZCB2aWEgZGlzcGF0Y2ggCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvd2Vi
YXBwYXBpcy9zY3JpcHRpbmcvZXZlbnRzL2ludmFsaWQtdW5jb21waWxlZC1yYXctaGFuZGxlci1j
b21waWxlZC1sYXRlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvaHRtbC93ZWJhcHBhcGlzL3NjcmlwdGluZy9ldmVudHMvaW52YWxpZC11
bmNvbXBpbGVkLXJhdy1oYW5kbGVyLWNvbXBpbGVkLWxhdGUtZXhwZWN0ZWQudHh0CmluZGV4IDlh
ZDVhYzY3YjAwZTk2Y2U5NTg0MTdiOThiNDdjNjFlM2M0ZjVjNDUuLmE4NmUwNjRiYTBkMDdjZDVh
NTRiZDA4NzU3ZWZmMTUwOGVlNzkyY2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC93ZWJhcHBhcGlzL3NjcmlwdGluZy9ldmVudHMv
aW52YWxpZC11bmNvbXBpbGVkLXJhdy1oYW5kbGVyLWNvbXBpbGVkLWxhdGUtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC93
ZWJhcHBhcGlzL3NjcmlwdGluZy9ldmVudHMvaW52YWxpZC11bmNvbXBpbGVkLXJhdy1oYW5kbGVy
LWNvbXBpbGVkLWxhdGUtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAotQ09OU09MRSBNRVNT
QUdFOiBsaW5lIDI0OiBTeW50YXhFcnJvcjogUGFyc2VyIGVycm9yCi1DT05TT0xFIE1FU1NBR0U6
IGxpbmUgMjE6IFN5bnRheEVycm9yOiBQYXJzZXIgZXJyb3IKK0NPTlNPTEUgTUVTU0FHRTogbGlu
ZSAyNjogU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJ30nLiBFeHBlY3RlZCAnKScgdG8g
ZW5kIGEgY29tcG91bmQgZXhwcmVzc2lvbi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyMTogU3lu
dGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJ30nLiBFeHBlY3RlZCAnKScgdG8gZW5kIGEgY29t
cG91bmQgZXhwcmVzc2lvbi4KIAogRkFJTCBJbnZhbGlkIHVuY29tcGlsZWQgcmF3IGhhbmRsZXJz
IHNob3VsZCBvbmx5IGJlIGNvbXBpbGVkIHdoZW4gYWJvdXQgdG8gY2FsbCB0aGVtLiBhc3NlcnRf
YXJyYXlfZXF1YWxzOiBsZW5ndGhzIGRpZmZlciwgZXhwZWN0ZWQgMyBnb3QgNAogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvd2Vi
YXBwYXBpcy9zY3JpcHRpbmcvcHJvY2Vzc2luZy1tb2RlbC0yL2NvbXBpbGUtZXJyb3ItaW4tYXR0
cmlidXRlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC93ZWJhcHBhcGlzL3NjcmlwdGluZy9wcm9jZXNzaW5nLW1vZGVsLTIvY29t
cGlsZS1lcnJvci1pbi1hdHRyaWJ1dGUtZXhwZWN0ZWQudHh0CmluZGV4IDI2ZjlkOWRhMjUxNDBm
Y2UwZWVjNTNhNGQ4Njk0N2M5YzFlZTJjNWQuLjFmODQ0MWQyYjkwNWNmZWRhNmFhYWRlYzEyMWJh
ZDY0NWFkZGQwYzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC93ZWJhcHBhcGlzL3NjcmlwdGluZy9wcm9jZXNzaW5nLW1vZGVsLTIv
Y29tcGlsZS1lcnJvci1pbi1hdHRyaWJ1dGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC93ZWJhcHBhcGlzL3NjcmlwdGlu
Zy9wcm9jZXNzaW5nLW1vZGVsLTIvY29tcGlsZS1lcnJvci1pbi1hdHRyaWJ1dGUtZXhwZWN0ZWQu
dHh0CkBAIC0xLDQgKzEsNCBAQAotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI0OiBTeW50YXhFcnJv
cjogVW5leHBlY3RlZCBlbmQgb2Ygc2NyaXB0CitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjY6IFN5
bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICcpJwogCiBQQVNTIHdpbmRvdy5vbmVycm9yIC0g
Y29tcGlsZSBlcnJvciBpbiBhdHRyaWJ1dGUgCiBQQVNTIHdpbmRvdy5vbmVycm9yIC0gY29tcGls
ZSBlcnJvciBpbiBhdHRyaWJ1dGUgKGNvbHVtbikgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvd2ViYXBwYXBpcy9zY3JpcHRpbmcv
cHJvY2Vzc2luZy1tb2RlbC0yL2NvbXBpbGUtZXJyb3ItaW4tYm9keS1vbmVycm9yLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC93
ZWJhcHBhcGlzL3NjcmlwdGluZy9wcm9jZXNzaW5nLW1vZGVsLTIvY29tcGlsZS1lcnJvci1pbi1i
b2R5LW9uZXJyb3ItZXhwZWN0ZWQudHh0CmluZGV4IDMxNGZmMTU3OWM1MjU5YjE2Mjk5MWNkNDdh
ZmEyZWU4OTg0NzY2YjAuLmExZGFlODk0MDZmYmMwZWVhNjdhMDJlNmZiZTYwYzRkNjE1NDhlZDcg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC93ZWJhcHBhcGlzL3NjcmlwdGluZy9wcm9jZXNzaW5nLW1vZGVsLTIvY29tcGlsZS1lcnJv
ci1pbi1ib2R5LW9uZXJyb3ItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC93ZWJhcHBhcGlzL3NjcmlwdGluZy9wcm9jZXNz
aW5nLW1vZGVsLTIvY29tcGlsZS1lcnJvci1pbi1ib2R5LW9uZXJyb3ItZXhwZWN0ZWQudHh0CkBA
IC0xLDUgKzEsNSBAQAogQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE5OiBTeW50YXhFcnJvcjogVW5l
eHBlY3RlZCB0b2tlbiAnKScKLUNPTlNPTEUgTUVTU0FHRTogbGluZSAxNjogU3ludGF4RXJyb3I6
IFVuZXhwZWN0ZWQgZW5kIG9mIHNjcmlwdAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE4OiBTeW50
YXhFcnJvcjogVW5leHBlY3RlZCB0b2tlbiAnKScKIAogUEFTUyB3aW5kb3cub25lcnJvciAtIGNv
bXBpbGUgZXJyb3IgaW4gPGJvZHkgb25lcnJvcj4gCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2pzL2RvbS9pbnZhbGlkLXN5bnRheC1mb3ItZnVuY3Rpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvanMvZG9tL2ludmFsaWQtc3ludGF4LWZvci1mdW5jdGlvbi1leHBlY3RlZC50eHQKaW5k
ZXggZjUwZmNlN2U0ZTY3YmMxZjhmOTFkYjA2ODgwMGY3OWZhNDM1MTJmZi4uMzI5YTQxNzMxOTBj
ZDA4OWRmMGQ2M2UzNDllZmE4NDdlZDhkM2Y0ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvanMv
ZG9tL2ludmFsaWQtc3ludGF4LWZvci1mdW5jdGlvbi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvanMvZG9tL2ludmFsaWQtc3ludGF4LWZvci1mdW5jdGlvbi1leHBlY3RlZC50eHQKQEAg
LTEsMyArMSwzIEBACi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMTogU3ludGF4RXJyb3I6IEludmFs
aWQgY2hhcmFjdGVyOiAnIycKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyOiBTeW50YXhFcnJvcjog
SW52YWxpZCBjaGFyYWN0ZXI6ICcjJwogVGhpcyB0ZXN0IGVuc3VyZXMgd2UgZG9uJ3QgY3Jhc2gg
d2hlbiB3ZSBhcmUgZ2l2ZW4gZ2FyYmFnZSBmb3IgYW4gYXR0cmlidXRlIGV4cGVjdGluZyBhIGZ1
bmN0aW9uLgogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDI1CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9qcy9kb20vc2NyaXB0LXN0YXJ0LWVuZC1sb2NhdGlvbnMt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvanMvZG9tL3NjcmlwdC1zdGFydC1lbmQtbG9jYXRp
b25zLWV4cGVjdGVkLnR4dAppbmRleCAzMmVjMDdmMmI3YTA0MTZmZThkNTdmYjE3N2JiYzc1ZTFk
MDJhODNkLi5jYTk1NWQzYmZhNzRkYzE4NDlkNWE3MDIzOTk0ZGZkMzAzOGFiMjhhIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9qcy9kb20vc2NyaXB0LXN0YXJ0LWVuZC1sb2NhdGlvbnMtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2pzL2RvbS9zY3JpcHQtc3RhcnQtZW5kLWxvY2F0aW9u
cy1leHBlY3RlZC50eHQKQEAgLTI0MywzMiArMjQzLDMyIEBAIGZ1bmN0aW9uICJleGkyYiIgeyAx
OjEzOCAtIDE6MjIxIH0KIGV2YWwgeyAxOjEgLSAxOjU2IH0KIAogICBuZXcgRnVuY3Rpb24gT2Jq
ZWN0OgotZnVuY3Rpb24gImFub255bW91cyIgeyAxOjE5IC0gMjoyMjggfQorZnVuY3Rpb24gImFu
b255bW91cyIgeyAxOjIwIC0gMjoyMjggfQogZnVuY3Rpb24gIm5mMWEiIHsgMjo1NyAtIDI6MjE5
IH0KIGZ1bmN0aW9uICJuZjFiIiB7IDI6ODcgLSAyOjIwOSB9CiBmdW5jdGlvbiAibmYxYyIgeyAy
OjExNyAtIDI6MTk5IH0KIGV2YWwgeyAxOjEgLSAxOjU2IH0KLWZ1bmN0aW9uICJhbm9ueW1vdXMi
IHsgMToxOSAtIDE4OjggfQorZnVuY3Rpb24gImFub255bW91cyIgeyAxOjIwIC0gMTg6OCB9CiBm
dW5jdGlvbiAibmYyYSIgeyA1OjE4IC0gMTY6NSB9CiBmdW5jdGlvbiAibmYyYiIgeyA3OjIyIC0g
MTQ6OSB9CiBmdW5jdGlvbiAibmYyYyIgeyA5OjI2IC0gMTI6MTMgfQogZXZhbCB7IDE6MSAtIDE6
NTYgfQotZnVuY3Rpb24gImFub255bW91cyIgeyAxOjE5IC0gMjoyMjggfQorZnVuY3Rpb24gImFu
b255bW91cyIgeyAxOjIwIC0gMjoyMjggfQogZnVuY3Rpb24gIm5mMWEiIHsgMjo1NyAtIDI6MjE5
IH0KIGZ1bmN0aW9uICJuZjFiIiB7IDI6ODcgLSAyOjIwOSB9CiBmdW5jdGlvbiAibmYxYyIgeyAy
OjExNyAtIDI6MTk5IH0KIGV2YWwgeyAxOjEgLSAxOjU2IH0KLWZ1bmN0aW9uICJhbm9ueW1vdXMi
IHsgMToxOSAtIDI6MjM3IH0KK2Z1bmN0aW9uICJhbm9ueW1vdXMiIHsgMToyMCAtIDI6MjM3IH0K
IGZ1bmN0aW9uICJuZmkxYSIgeyAyOjU4IC0gMjoyMjcgfQogZnVuY3Rpb24gIm5maTFiIiB7IDI6
OTAgLSAyOjIxNiB9CiBmdW5jdGlvbiAibmZpMWMiIHsgMjoxMjIgLSAyOjIwNSB9CiBldmFsIHsg
MToxIC0gMTo1NiB9Ci1mdW5jdGlvbiAiYW5vbnltb3VzIiB7IDE6MTkgLSAxODo4IH0KK2Z1bmN0
aW9uICJhbm9ueW1vdXMiIHsgMToyMCAtIDE4OjggfQogZnVuY3Rpb24gIm5mMmEiIHsgNToxOCAt
IDE2OjUgfQogZnVuY3Rpb24gIm5mMmIiIHsgNzoyMiAtIDE0OjkgfQogZnVuY3Rpb24gIm5mMmMi
IHsgOToyNiAtIDEyOjEzIH0KIGV2YWwgeyAxOjEgLSAxOjU2IH0KLWZ1bmN0aW9uICJhbm9ueW1v
dXMiIHsgMToxOSAtIDE4OjkgfQorZnVuY3Rpb24gImFub255bW91cyIgeyAxOjIwIC0gMTg6OSB9
CiBmdW5jdGlvbiAibmZpMmEiIHsgNToxOSAtIDE2OjUgfQogZnVuY3Rpb24gIm5maTJiIiB7IDc6
MjMgLSAxNDo5IH0KIGZ1bmN0aW9uICJuZmkyYyIgeyA5OjI3IC0gMTI6MTMgfQpkaWZmIC0tZ2l0
IGEvSlNUZXN0cy9DaGFrcmFDb3JlL3Rlc3QvRnVuY3Rpb24vRnVuY0JvZHlFUzUuYmFzZWxpbmUt
anNjIGIvSlNUZXN0cy9DaGFrcmFDb3JlL3Rlc3QvRnVuY3Rpb24vRnVuY0JvZHlFUzUuYmFzZWxp
bmUtanNjCmluZGV4IDM4MjQ4ZDdkYzU4YjkwNzJmYzgxODQyMGQxYzc0MjZiYzczYmE0ZTEuLjM2
ZjJhMjA1MTgwY2I4MTE2ZTY2ZDA5Zjk4MGY4NWFlNjg1Y2ExZTYgMTAwNjQ0Ci0tLSBhL0pTVGVz
dHMvQ2hha3JhQ29yZS90ZXN0L0Z1bmN0aW9uL0Z1bmNCb2R5RVM1LmJhc2VsaW5lLWpzYworKysg
Yi9KU1Rlc3RzL0NoYWtyYUNvcmUvdGVzdC9GdW5jdGlvbi9GdW5jQm9keUVTNS5iYXNlbGluZS1q
c2MKQEAgLTksMTMgKzksMTMgQEAgUEFTUzogNzogbmV3IEZ1bmN0aW9uIHN1Y2NlZWRlZCBhcyBl
eHBlY3RlZAogUEFTUzogODogbmV3IEZ1bmN0aW9uIHN1Y2NlZWRlZCBhcyBleHBlY3RlZAogUEFT
UzogOTogbmV3IEZ1bmN0aW9uIHN1Y2NlZWRlZCBhcyBleHBlY3RlZAogUEFTUzogMTA6IG5ldyBG
dW5jdGlvbiBzdWNjZWVkZWQgYXMgZXhwZWN0ZWQKLVBBU1M6IDEwMDogbmV3IEZ1bmN0aW9uIGZh
aWxlZCBhcyBleHBlY3RlZC4gU3ludGF4RXJyb3I6IFBhcnNlciBlcnJvcgotUEFTUzogMTAwOiBu
ZXcgRnVuY3Rpb24gZmFpbGVkIGFzIGV4cGVjdGVkLiBTeW50YXhFcnJvcjogUGFyc2VyIGVycm9y
Ci1QQVNTOiAxMDE6IG5ldyBGdW5jdGlvbiBmYWlsZWQgYXMgZXhwZWN0ZWQuIFN5bnRheEVycm9y
OiBQYXJzZXIgZXJyb3IKLVBBU1M6IDEwMjogbmV3IEZ1bmN0aW9uIGZhaWxlZCBhcyBleHBlY3Rl
ZC4gU3ludGF4RXJyb3I6IFBhcmFtZXRlcnMgc2hvdWxkIG1hdGNoIGFyZ3VtZW50cyBvZmZlcmVk
IGFzIHBhcmFtZXRlcnMgaW4gRnVuY3Rpb24gY29uc3RydWN0b3IuCi1QQVNTOiAxMDM6IG5ldyBG
dW5jdGlvbiBmYWlsZWQgYXMgZXhwZWN0ZWQuIFN5bnRheEVycm9yOiBQYXJzZXIgZXJyb3IKLVBB
U1M6IDEwNDogbmV3IEZ1bmN0aW9uIGZhaWxlZCBhcyBleHBlY3RlZC4gU3ludGF4RXJyb3I6IFBh
cmFtZXRlcnMgc2hvdWxkIG1hdGNoIGFyZ3VtZW50cyBvZmZlcmVkIGFzIHBhcmFtZXRlcnMgaW4g
RnVuY3Rpb24gY29uc3RydWN0b3IuCi1QQVNTOiAxMDU6IG5ldyBGdW5jdGlvbiBmYWlsZWQgYXMg
ZXhwZWN0ZWQuIFN5bnRheEVycm9yOiBQYXJzZXIgZXJyb3IKK1BBU1M6IDEwMDogbmV3IEZ1bmN0
aW9uIGZhaWxlZCBhcyBleHBlY3RlZC4gU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJ3sn
LiBFeHBlY3RlZCAnKScgdG8gZW5kIGEgY29tcG91bmQgZXhwcmVzc2lvbi4KK1BBU1M6IDEwMDog
bmV3IEZ1bmN0aW9uIGZhaWxlZCBhcyBleHBlY3RlZC4gU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQg
dG9rZW4gJ3snLiBFeHBlY3RlZCAnKScgdG8gZW5kIGEgY29tcG91bmQgZXhwcmVzc2lvbi4KK1BB
U1M6IDEwMTogbmV3IEZ1bmN0aW9uIGZhaWxlZCBhcyBleHBlY3RlZC4gU3ludGF4RXJyb3I6IFVu
ZXhwZWN0ZWQga2V5d29yZCAnZnVuY3Rpb24nLiBFeHBlY3RlZCAnKScgdG8gZW5kIGEgY29tcG91
bmQgZXhwcmVzc2lvbi4KK1BBU1M6IDEwMjogbmV3IEZ1bmN0aW9uIGZhaWxlZCBhcyBleHBlY3Rl
ZC4gU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQga2V5d29yZCAnZnVuY3Rpb24nLiBFeHBlY3RlZCAn
KScgdG8gZW5kIGEgY29tcG91bmQgZXhwcmVzc2lvbi4KK1BBU1M6IDEwMzogbmV3IEZ1bmN0aW9u
IGZhaWxlZCBhcyBleHBlY3RlZC4gU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQga2V5d29yZCAnZnVu
Y3Rpb24nLiBFeHBlY3RlZCAnKScgdG8gZW5kIGEgY29tcG91bmQgZXhwcmVzc2lvbi4KK1BBU1M6
IDEwNDogbmV3IEZ1bmN0aW9uIGZhaWxlZCBhcyBleHBlY3RlZC4gU3ludGF4RXJyb3I6IFVuZXhw
ZWN0ZWQgdG9rZW4gJzsnLiBFeHBlY3RlZCAnKScgdG8gZW5kIGEgY29tcG91bmQgZXhwcmVzc2lv
bi4KK1BBU1M6IDEwNTogbmV3IEZ1bmN0aW9uIGZhaWxlZCBhcyBleHBlY3RlZC4gU3ludGF4RXJy
b3I6IFVuZXhwZWN0ZWQgdG9rZW4gJzsnLiBFeHBlY3RlZCAnKScgdG8gZW5kIGEgY29tcG91bmQg
ZXhwcmVzc2lvbi4KIFBBU1M6IDIwMDogbmV3IEZ1bmN0aW9uIGZhaWxlZCBhcyBleHBlY3RlZC4g
U3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJywnLiBFeHBlY3RlZCBhIHBhcmFtZXRlciBw
YXR0ZXJuIG9yIGEgJyknIGluIHBhcmFtZXRlciBsaXN0LgogUEFTUzogMjAwOiBuZXcgRnVuY3Rp
b24gZmFpbGVkIGFzIGV4cGVjdGVkLiBTeW50YXhFcnJvcjogVW5leHBlY3RlZCB0b2tlbiAnLCcu
IEV4cGVjdGVkIGEgcGFyYW1ldGVyIHBhdHRlcm4gb3IgYSAnKScgaW4gcGFyYW1ldGVyIGxpc3Qu
CiBQQVNTOiAyMDE6IG5ldyBGdW5jdGlvbiBmYWlsZWQgYXMgZXhwZWN0ZWQuIFN5bnRheEVycm9y
OiBVbmV4cGVjdGVkIHRva2VuICcsJy4gRXhwZWN0ZWQgYSBwYXJhbWV0ZXIgcGF0dGVybiBvciBh
ICcpJyBpbiBwYXJhbWV0ZXIgbGlzdC4KZGlmZiAtLWdpdCBhL0pTVGVzdHMvQ2hhbmdlTG9nIGIv
SlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNjk4OGJhZWM5ZTU0YmZlOTE1MjA2NzMwNjA2NzkzZDli
M2I2M2Y3Ny4uNWNmZTdmZTdjZDhhODdhMTAwNGM0NWZiM2Y2NjcxOTcxN2ExODJkMyAxMDA2NDQK
LS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxOCBAQAorMjAxOC0xMC0xOSAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5v
cmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjIzNzI1NC4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDc2MAorCisgICAgICAg
ICJJdCByZWdyZXNzZXMgSmV0U3RyZWFtIDIgYnkgNSUgb24gc29tZSBpT1MgZGV2aWNlcyIKKyAg
ICAgICAgKFJlcXVlc3RlZCBieSBzYWFteWpvb24gb24gI3dlYmtpdCkuCisKKyAgICAgICAgUmV2
ZXJ0ZWQgY2hhbmdlc2V0OgorCisgICAgICAgICJbSlNDXSBKU0Mgc2hvdWxkIGhhdmUgInBhcnNl
RnVuY3Rpb24iIHRvIG9wdGltaXplIEZ1bmN0aW9uCisgICAgICAgIGNvbnN0cnVjdG9yIgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkwMzQwCisgICAg
ICAgIGh0dHBzOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8yMzcyNTQKKwogMjAxOC0xMC0x
OSAgU2FhbSBCYXJhdGkgIDxzYmFyYXRpQGFwcGxlLmNvbT4KIAogICAgICAgICB2bUNhbGwgc2hv
dWxkIGNoZWNrIGlmIHdlIGV4aXQgYmVmb3JlIGVtaXR0aW5nIGFuIE9TUiBleGl0IGR1ZSB0byBl
eGNlcHRpb25zCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3N0cmVzcy9mdW5jdGlvbi1jYWNoZS13aXRo
LXBhcmFtZXRlcnMtZW5kLXBvc2l0aW9uLmpzIGIvSlNUZXN0cy9zdHJlc3MvZnVuY3Rpb24tY2Fj
aGUtd2l0aC1wYXJhbWV0ZXJzLWVuZC1wb3NpdGlvbi5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggYjBmZjIyMTRkMGY5NDI3YWNkZjMwMzBkMWE0YzlkN2U3YjkyMGZhNC4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9KU1Rlc3RzL3N0cmVzcy9m
dW5jdGlvbi1jYWNoZS13aXRoLXBhcmFtZXRlcnMtZW5kLXBvc2l0aW9uLmpzCisrKyAvZGV2L251
bGwKQEAgLTEsNDAgKzAsMCBAQAotZnVuY3Rpb24gc2hvdWxkQmUoYWN0dWFsLCBleHBlY3RlZCkg
ewotICAgIGlmIChhY3R1YWwgIT09IGV4cGVjdGVkKQotICAgICAgICB0aHJvdyBuZXcgRXJyb3Io
J2JhZCB2YWx1ZTogJyArIGFjdHVhbCk7Ci19Ci0KLWZ1bmN0aW9uIHNob3VsZFRocm93KGZ1bmMs
IGVycm9yTWVzc2FnZSkgewotICAgIHZhciBlcnJvclRocm93biA9IGZhbHNlOwotICAgIHZhciBl
cnJvciA9IG51bGw7Ci0gICAgdHJ5IHsKLSAgICAgICAgZnVuYygpOwotICAgIH0gY2F0Y2ggKGUp
IHsKLSAgICAgICAgZXJyb3JUaHJvd24gPSB0cnVlOwotICAgICAgICBlcnJvciA9IGU7Ci0gICAg
fQotICAgIGlmICghZXJyb3JUaHJvd24pCi0gICAgICAgIHRocm93IG5ldyBFcnJvcignbm90IHRo
cm93bicpOwotICAgIGlmIChTdHJpbmcoZXJyb3IpICE9PSBlcnJvck1lc3NhZ2UpCi0gICAgICAg
IHRocm93IG5ldyBFcnJvcihgYmFkIGVycm9yOiAke1N0cmluZyhlcnJvcil9YCk7Ci19Ci0KLWZv
ciAodmFyIGkgPSAwOyBpIDwgMTA7ICsraSkgewotICAgIHZhciBmID0gRnVuY3Rpb24oJy8qKSB7
XG4qLycsICdyZXR1cm4gNDInKTsKLSAgICBzaG91bGRCZShmLnRvU3RyaW5nKCksCi1gZnVuY3Rp
b24gYW5vbnltb3VzKC8qKSB7Ci0qLykgewotcmV0dXJuIDQyCi19YCk7Ci19Ci1zaG91bGRUaHJv
dygoKSA9PiBGdW5jdGlvbignLyonLCAnKi8pe1xucmV0dXJuIDQyJyksIGBTeW50YXhFcnJvcjog
UGFyYW1ldGVycyBzaG91bGQgbWF0Y2ggYXJndW1lbnRzIG9mZmVyZWQgYXMgcGFyYW1ldGVycyBp
biBGdW5jdGlvbiBjb25zdHJ1Y3Rvci5gKTsKLQotc2hvdWxkVGhyb3coKCkgPT4gRnVuY3Rpb24o
Jy8qJywgJyovKXtcbnJldHVybiA0MycpLCBgU3ludGF4RXJyb3I6IFBhcmFtZXRlcnMgc2hvdWxk
IG1hdGNoIGFyZ3VtZW50cyBvZmZlcmVkIGFzIHBhcmFtZXRlcnMgaW4gRnVuY3Rpb24gY29uc3Ry
dWN0b3IuYCk7Ci1mb3IgKHZhciBpID0gMDsgaSA8IDEwOyArK2kpIHsKLSAgICB2YXIgZiA9IEZ1
bmN0aW9uKCcvKikge1xuKi8nLCAncmV0dXJuIDQzJyk7Ci0gICAgc2hvdWxkQmUoZi50b1N0cmlu
ZygpLAotYGZ1bmN0aW9uIGFub255bW91cygvKikgewotKi8pIHsKLXJldHVybiA0MwotfWApOwot
fQotCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3N0cmVzcy9mdW5jdGlvbi1jb25zdHJ1Y3Rvci1uYW1l
LmpzIGIvSlNUZXN0cy9zdHJlc3MvZnVuY3Rpb24tY29uc3RydWN0b3ItbmFtZS5qcwpkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYmY3ZTk0NTljYTUwZmM5NjQyM2Y5Yjg3N2E4MmQ5YjQx
ZmVmMzhmYS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9K
U1Rlc3RzL3N0cmVzcy9mdW5jdGlvbi1jb25zdHJ1Y3Rvci1uYW1lLmpzCisrKyAvZGV2L251bGwK
QEAgLTEsMzYgKzAsMCBAQAotZnVuY3Rpb24gc2hvdWxkQmUoYWN0dWFsLCBleHBlY3RlZCkgewot
ICAgIGlmIChhY3R1YWwgIT09IGV4cGVjdGVkKQotICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2Jh
ZCB2YWx1ZTogJyArIGFjdHVhbCk7Ci19Ci0KLXZhciBHZW5lcmF0b3JGdW5jdGlvbiA9IGZ1bmN0
aW9uKigpe30uY29uc3RydWN0b3I7Ci12YXIgQXN5bmNGdW5jdGlvbiA9IGFzeW5jIGZ1bmN0aW9u
KCl7fS5jb25zdHJ1Y3RvcjsKLXZhciBBc3luY0dlbmVyYXRvckZ1bmN0aW9uID0gYXN5bmMgZnVu
Y3Rpb24qKCl7fS5jb25zdHJ1Y3RvcjsKLQotdmFyIGYgPSBGdW5jdGlvbihgcmV0dXJuIDQyYCk7
Ci1zaG91bGRCZSh0eXBlb2YgYW5vbnltb3VzLCBgdW5kZWZpbmVkYCk7Ci1zaG91bGRCZShmLnRv
U3RyaW5nKCksCi1gZnVuY3Rpb24gYW5vbnltb3VzKCkgewotcmV0dXJuIDQyCi19YCk7Ci0KLXZh
ciBnZiA9IEdlbmVyYXRvckZ1bmN0aW9uKGByZXR1cm4gNDJgKTsKLXNob3VsZEJlKHR5cGVvZiBh
bm9ueW1vdXMsIGB1bmRlZmluZWRgKTsKLXNob3VsZEJlKGdmLnRvU3RyaW5nKCksCi1gZnVuY3Rp
b24qIGFub255bW91cygpIHsKLXJldHVybiA0MgotfWApOwotCi12YXIgYWYgPSBBc3luY0Z1bmN0
aW9uKGByZXR1cm4gNDJgKTsKLXNob3VsZEJlKHR5cGVvZiBhbm9ueW1vdXMsIGB1bmRlZmluZWRg
KTsKLXNob3VsZEJlKGFmLnRvU3RyaW5nKCksCi1gYXN5bmMgZnVuY3Rpb24gYW5vbnltb3VzKCkg
ewotcmV0dXJuIDQyCi19YCk7Ci0KLXZhciBhZ2YgPSBBc3luY0dlbmVyYXRvckZ1bmN0aW9uKGBy
ZXR1cm4gNDJgKTsKLXNob3VsZEJlKHR5cGVvZiBhbm9ueW1vdXMsIGB1bmRlZmluZWRgKTsKLXNo
b3VsZEJlKGFnZi50b1N0cmluZygpLAotYGFzeW5jIGZ1bmN0aW9uKiBhbm9ueW1vdXMoKSB7Ci1y
ZXR1cm4gNDIKLX1gKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi9leHBlY3RhdGlvbnMu
eWFtbCBiL0pTVGVzdHMvdGVzdDI2Mi9leHBlY3RhdGlvbnMueWFtbAppbmRleCBkMzk5ZjMzODg3
ZmY0ZDM5MGNlMWE5Y2M5N2ZhYTlmZWM4NjRhMzEzLi4wOGNhOWIxM2VjNmNkMjhjYzVjZGY5OWM2
YzNlN2U5ZGZjZjdhYjlhIDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25z
LnlhbWwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL2V4cGVjdGF0aW9ucy55YW1sCkBAIC05MDAsMTQg
KzkwMCwxNCBAQCB0ZXN0L2J1aWx0LWlucy9GdW5jdGlvbi9wcm90b3R5cGUvcmVzdHJpY3RlZC1w
cm9wZXJ0eS1jYWxsZXIuanM6CiAgIGRlZmF1bHQ6ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmlu
ZCB2YXJpYWJsZTogdmVyaWZ5Tm90RW51bWVyYWJsZSIKICAgc3RyaWN0IG1vZGU6ICJSZWZlcmVu
Y2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogdmVyaWZ5Tm90RW51bWVyYWJsZSIKIHRlc3Qv
YnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3RvdHlwZS90b1N0cmluZy9Bc3luY0Z1bmN0aW9uLmpzOgot
ICBkZWZhdWx0OiAiU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJzsnLiBFeHBlY3RlZCBh
ICcpJyBvciBhICcsJyBhZnRlciBhIHBhcmFtZXRlciBkZWNsYXJhdGlvbi4iCi0gIHN0cmljdCBt
b2RlOiAiU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJzsnLiBFeHBlY3RlZCBhICcpJyBv
ciBhICcsJyBhZnRlciBhIHBhcmFtZXRlciBkZWNsYXJhdGlvbi4iCisgIGRlZmF1bHQ6ICJTeW50
YXhFcnJvcjogVW5leHBlY3RlZCB0b2tlbiAnfScuIEV4cGVjdGVkIGEgJyknIG9yIGEgJywnIGFm
dGVyIGEgcGFyYW1ldGVyIGRlY2xhcmF0aW9uLiIKKyAgc3RyaWN0IG1vZGU6ICJTeW50YXhFcnJv
cjogVW5leHBlY3RlZCB0b2tlbiAnfScuIEV4cGVjdGVkIGEgJyknIG9yIGEgJywnIGFmdGVyIGEg
cGFyYW1ldGVyIGRlY2xhcmF0aW9uLiIKIHRlc3QvYnVpbHQtaW5zL0Z1bmN0aW9uL3Byb3RvdHlw
ZS90b1N0cmluZy9GdW5jdGlvbi5qczoKLSAgZGVmYXVsdDogIlN5bnRheEVycm9yOiBVbmV4cGVj
dGVkIHRva2VuICc7Jy4gRXhwZWN0ZWQgYSAnKScgb3IgYSAnLCcgYWZ0ZXIgYSBwYXJhbWV0ZXIg
ZGVjbGFyYXRpb24uIgotICBzdHJpY3QgbW9kZTogIlN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRv
a2VuICc7Jy4gRXhwZWN0ZWQgYSAnKScgb3IgYSAnLCcgYWZ0ZXIgYSBwYXJhbWV0ZXIgZGVjbGFy
YXRpb24uIgorICBkZWZhdWx0OiAiU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJ30nLiBF
eHBlY3RlZCBhICcpJyBvciBhICcsJyBhZnRlciBhIHBhcmFtZXRlciBkZWNsYXJhdGlvbi4iCisg
IHN0cmljdCBtb2RlOiAiU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJ30nLiBFeHBlY3Rl
ZCBhICcpJyBvciBhICcsJyBhZnRlciBhIHBhcmFtZXRlciBkZWNsYXJhdGlvbi4iCiB0ZXN0L2J1
aWx0LWlucy9GdW5jdGlvbi9wcm90b3R5cGUvdG9TdHJpbmcvR2VuZXJhdG9yRnVuY3Rpb24uanM6
Ci0gIGRlZmF1bHQ6ICJTeW50YXhFcnJvcjogVW5leHBlY3RlZCBrZXl3b3JkICd5aWVsZCcuIEV4
cGVjdGVkIGEgJyknIG9yIGEgJywnIGFmdGVyIGEgcGFyYW1ldGVyIGRlY2xhcmF0aW9uLiIKLSAg
c3RyaWN0IG1vZGU6ICJTeW50YXhFcnJvcjogVW5leHBlY3RlZCBrZXl3b3JkICd5aWVsZCcuIEV4
cGVjdGVkIGEgJyknIG9yIGEgJywnIGFmdGVyIGEgcGFyYW1ldGVyIGRlY2xhcmF0aW9uLiIKKyAg
ZGVmYXVsdDogIlN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd9Jy4gRXhwZWN0ZWQgYSAn
KScgb3IgYSAnLCcgYWZ0ZXIgYSBwYXJhbWV0ZXIgZGVjbGFyYXRpb24uIgorICBzdHJpY3QgbW9k
ZTogIlN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICd9Jy4gRXhwZWN0ZWQgYSAnKScgb3Ig
YSAnLCcgYWZ0ZXIgYSBwYXJhbWV0ZXIgZGVjbGFyYXRpb24uIgogdGVzdC9idWlsdC1pbnMvRnVu
Y3Rpb24vcHJvdG90eXBlL3RvU3RyaW5nL2FzeW5jLWFycm93LWZ1bmN0aW9uLmpzOgogICBkZWZh
dWx0OiAiVGVzdDI2MkVycm9yOiBDb25mb3JtcyB0byBOYXRpdmVGdW5jdGlvbiBTeW50YXg6ICdh
c3luYyAoIC8qIGIgKi8gYSAvKiBjICovICwgLyogZCAqLyBiIC8qIGUgKi8gKSAvKiBmICovID0+
IC8qIGcgKi8geyAvKiBoICovIDsgLyogaSAqLyB9Jy4oYXN5bmMgLyogYSAqLyAoIC8qIGIgKi8g
YSAvKiBjICovICwgLyogZCAqLyBiIC8qIGUgKi8gKSAvKiBmICovID0+IC8qIGcgKi8geyAvKiBo
ICovIDsgLyogaSAqLyB9KSIKICAgc3RyaWN0IG1vZGU6ICJUZXN0MjYyRXJyb3I6IENvbmZvcm1z
IHRvIE5hdGl2ZUZ1bmN0aW9uIFN5bnRheDogJ2FzeW5jICggLyogYiAqLyBhIC8qIGMgKi8gLCAv
KiBkICovIGIgLyogZSAqLyApIC8qIGYgKi8gPT4gLyogZyAqLyB7IC8qIGggKi8gOyAvKiBpICov
IH0nLihhc3luYyAvKiBhICovICggLyogYiAqLyBhIC8qIGMgKi8gLCAvKiBkICovIGIgLyogZSAq
LyApIC8qIGYgKi8gPT4gLyogZyAqLyB7IC8qIGggKi8gOyAvKiBpICovIH0pIgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>