Re: Request: Add dropbear support

Orion Poplawski <[email protected]> Fri, 21 Oct 2022 09:01:56 -0600
Newsgroups gmane.comp.log.logwatch.devel
Organization NWRA
Message-ID <[email protected]>
--===============7341575555909319411==
Content-Language: en-US
Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="------------ms070605030602030004030409"

--------------ms070605030602030004030409
Content-Type: multipart/mixed; boundary="------------016E7JHpD6SENPqBzjkTsAmL"

--------------016E7JHpD6SENPqBzjkTsAmL
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 10/18/22 10:26, Jakob Albert wrote:
> Hello everyone,
> 
> as far as I can see it, there is currently no support for [dropbear], is there?
> 
> I use dropbear as an SSH Server inside an Alpine Container.
> The following three lines are generated in `/var/log/messages` for each connection:
> ```
> authpriv.info dropbear[1571]: Child connection from 000.000.000.000:12345
> authpriv.notice dropbear[1571]: Pubkey auth succeeded for 'username' with ssh-ed25519 key SHA256:sshKeyHash from 000.000.000.000:12345
> authpriv.info dropbear[1571]: Exit (username) from <000.000.000.000:12345>: Disconnect received
> ```
> 
> where:
> - `000.000.000.000` is an IPv4 address
> - `12345` is a port
> - `username` is the user
> - `sshKeyHash` is the hash of the connecting SSH key
> 
> Could you please add support for [dropbear]?
> I see two possibilities for this:
> 
> 1. Adding a completely new service
> 2. Expanding the current SSHD service
> 
> I already tried the second option by:
> - Replacing the `OnlyService` in `default.conf/services/sshd.conf` with dropbear
> - Adding dropbear to `ignore_services` in `default.conf/services/secure.conf`
> - Adding an ignore rule for the disconnect in `scripts/services/sshd`:
> `($ThisLine =~ /Exit \(.*\) from <\d+\.\d+\.\d+\.\d+:\d+>: Disconnect received/)`
> 
> But I do not know how to correctly add a successful login to the output
> (and have currently disabled the normal sshd service in `sshd.conf`).
> The rest does work, but to be honest, I think that it makes much more sense
> to use a completely new service for dropbear - but again,
> I do not know how to correctly write a new service.
> 
> If you need further information, I will be happy to provide it.
> Also, there will probably be a lot more log messages that are possible,
> but those three are the only ones I have encountered so far.
> 
> 
> Thank you very much and best regards
> 
> Jakob

FWIW - this is my locally hacked quick version of the first option (new
service).  I suspect it has a lot of cruft in it still.

-- 
Orion Poplawski
IT Systems Manager                         720-772-5637
NWRA, Boulder/CoRA Office             FAX: 303-415-9702
3380 Mitchell Lane                       [email protected]
Boulder, CO 80301                 https://www.nwra.com/

--------------016E7JHpD6SENPqBzjkTsAmL
Content-Type: text/x-patch; charset=UTF-8; name="logwatch-dropbear.patch"
Content-Disposition: attachment; filename="logwatch-dropbear.patch"
Content-Transfer-Encoding: base64

Y29tbWl0IGQ0MDg3YWZlYjNlYzhjMTNmOTBjYzkzNTg2Mzc0MjFhNGQ2NWMxYmYKQXV0aG9y
OiBPcmlvbiBQb3BsYXdza2kgPG9yaW9uQG53cmEuY29tPgpEYXRlOiAgIFRodSBKYW4gNiAx
Mzo1NDowMSAyMDIyIC0wNzAwCgogICAgW2Ryb3BiZWFyXSBJbml0aWFsIHZlcnNpb24KCmRp
ZmYgLS1naXQgYS9jb25mL3NlcnZpY2VzL2Ryb3BiZWFyLmNvbmYgYi9jb25mL3NlcnZpY2Vz
L2Ryb3BiZWFyLmNvbmYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzNi
YjJjNwotLS0gL2Rldi9udWxsCisrKyBiL2NvbmYvc2VydmljZXMvZHJvcGJlYXIuY29uZgpA
QCAtMCwwICsxLDQ1IEBACisjIFlvdSBjYW4gcHV0IGNvbW1lbnRzIGFueXdoZXJlIHlvdSB3
YW50IHRvLiAgVGhleSBhcmUgZWZmZWN0aXZlIGZvciB0aGUKKyMgcmVzdCBvZiB0aGUgbGlu
ZS4KKworIyB0aGlzIGlzIGluIHRoZSBmb3JtYXQgb2YgPG5hbWU+ID0gPHZhbHVlPi4gIFdo
aXRlc3BhY2UgYXQgdGhlIGJlZ2lubmluZworIyBhbmQgZW5kIG9mIHRoZSBsaW5lcyBpcyBy
ZW1vdmVkLiAgV2hpdGVzcGFjZSBiZWZvcmUgYW5kIGFmdGVyIHRoZSA9IHNpZ24KKyMgaXMg
cmVtb3ZlZC4gIEV2ZXJ5dGhpbmcgaXMgY2FzZSAqaW5zZW5zaXRpdmUqLgorCisjIFllcyA9
IFRydWUgID0gT24gID0gMQorIyBObyAgPSBGYWxzZSA9IE9mZiA9IDAKKworVGl0bGUgPSAi
RHJvcGJlYXIiCisKKyMgV2hpY2ggbG9nZmlsZSBncm91cC4uLgorTG9nRmlsZSA9IHNlY3Vy
ZQorTG9nRmlsZSA9IG1lc3NhZ2VzCisKKyMgT25seSBnaXZlIGxpbmVzIHBlcnRhaW5pbmcg
dG8gdGhlIGRyb3BiZWFyIHNlcnZpY2UuLi4KKypPbmx5U2VydmljZSA9IGRyb3BiZWFyCisq
UmVtb3ZlSGVhZGVycworCisjIFZhcmlhYmxlICRpZ25vcmVfaG9zdCBpcyB1c2VkIHRvIGZp
bHRlciBvdXQgaG9zdHMgdGhhdCBsb2dpbgorIyBzdWNjZXNzZnVsbHkuICBUaGlzIGNvbW1l
bnRlZC1vdXQgZXhhbXBsZSBmaWx0ZXJzIG91dCByZXNlcnZlZCBsb2NhbAorIyBhZGRyZXNz
ZXMgKElFVEYgUkZDIDE5MTggYW5kIFJGQyAzMzMwKS4KKyMkaWdub3JlX2hvc3Q9Il4xMFwu
fF4xNzJcLigxWzYtOV18MlswLTldfDNbMDFdKVwufF4xOTJcLjE2OFwufF4xMjdcLiIKKwor
IyBUaGUgcmVmdXNlZCBjb25uZWN0aW9ucyByZXBvcnQgbGlzdHMgZXZlcnkgaXAgdGhhdCBp
cyByZWZ1c2VkIGV2ZW4gaWYKKyMgaXQgd2FzIG9ubHkgcmVmdXNlZCAxIG9yIDIgdGltZXMu
ICBJbiBhIGNhc2UgbGlrZSB0aGF0IEkgZG9uJ3QgY2FyZQorIyB0byBzZWUgdGhlIGluZm9y
bWF0aW9uLiAgSXQgaXMganVzdCBub2lzZS4gIEkgd2FudCB0byBrbm93IHdoZW4gYQorIyBh
IGNvbm5lY3Rpb24gaGFzIGJlZW4gcmVmdXNlZCAxMCwgMjAsIDMwIHRpbWVzIGJlY2F1c2Ug
dGhhdCBpcyBhbgorIyBpbmRpY2F0aW9uIG9mIGFuIGF0dGFjayBvciBhIHByb2JsZW0uCisj
ICAgU2V0IHRoaXMgdmFyaWFibGUgdG8gYSBwb3NpdGl2ZSBpbnRlZ2VyIHRvIHRyaW0gb3V0
IHRoZSBsb3dlciBjb3VudAorIyByZWZ1c2VkIGNvbm5lY3Rpb25zIGZyb20gdGhlIHJlcG9y
dC4gaS5lLiAxMCB3b3VsZCBub3Qgc2hvdyBhbnkgaG9zdHMKKyMgd2l0aCBsZXNzIHRoYW4g
MTAgcmVmdXNhbHMuCisjICAgVGhpcyBoYXMgbm8gZWZmZWN0IGlmIHRoZSAkRGV0YWlsIHZh
cmlhYmxlIGlzIGdyZWF0ZXIgdGhhbiA1LgorIyRyZWZ1c2VkX2Nvbm5lY3Rpb25zX3RocmVz
aG9sZCA9IDEwCisKKyMgU2V0dGluZyB0aGUgJGlsbGVnYWxfdXNlcnNfdGhyZXNob2xkIHZh
cmlhYmxlIGxpbWl0cyB0aGUgbGlzdGluZyBvZgorIyAiSWxsZWdhbCBVc2VycyIgZnJvbSB0
aG9zZSBJUCBhZGRyZXNzZXMgdGhhdCBoYXZlIG1vcmUgdGhhbiB0aGUKKyMgc3BlY2lmaWVk
IHRocmVzaG9sZAorIyRpbGxlZ2FsX3VzZXJzX3RocmVzaG9sZCA9IDQKKworIyBTZXQgdG8g
Tm8gdG8gZGlzYWJsZSBJUCBsb29rdXBzCiskaXBfbG9va3VwID0gWWVzCisKKyMgdmk6IHNo
aWZ0d2lkdGg9MyB0YWJzdG9wPTMgZXQKZGlmZiAtLWdpdCBhL3NjcmlwdHMvc2VydmljZXMv
ZHJvcGJlYXIgYi9zY3JpcHRzL3NlcnZpY2VzL2Ryb3BiZWFyCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLmFkNDk2NjAKLS0tIC9kZXYvbnVsbAorKysgYi9zY3JpcHRz
L3NlcnZpY2VzL2Ryb3BiZWFyCkBAIC0wLDAgKzEsNzEyIEBACisKKyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIFBsZWFzZSBm
aWxlIGFsbCBidWcgcmVwb3J0cywgcGF0Y2hlcywgYW5kIGZlYXR1cmUKKyMgcmVxdWVzdHMg
dW5kZXI6CisjICAgICAgaHR0cHM6Ly9zb3VyY2Vmb3JnZS5uZXQvcC9sb2d3YXRjaC9fbGlz
dC90aWNrZXRzCisjIEhlbHAgcmVxdWVzdHMgYW5kIGRpc2N1c2lvbiBjYW4gYmUgZmlsZWQg
dW5kZXI6CisjICAgICAgaHR0cHM6Ly9zb3VyY2Vmb3JnZS5uZXQvcC9sb2d3YXRjaC9kaXNj
dXNzaW9uLworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMKKworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIworIyMgQ29weXJpZ2h0IChjKSAyMDIxIE9yaW9uIFBvcGxhd3Nr
aQorIyMgQ292ZXJlZCB1bmRlciB0aGUgaW5jbHVkZWQgTUlUL1gtQ29uc29ydGl1bSBMaWNl
bnNlOgorIyMgICAgaHR0cDovL3d3dy5vcGVuc291cmNlLm9yZy9saWNlbnNlcy9taXQtbGlj
ZW5zZS5waHAKKyMjIEFsbCBtb2RpZmljYXRpb25zIGFuZCBjb250cmlidXRpb25zIGJ5IG90
aGVyIHBlcnNvbnMgdG8KKyMjIHRoaXMgc2NyaXB0IGFyZSBhc3N1bWVkIHRvIGhhdmUgYmVl
biBkb25hdGVkIHRvIHRoZQorIyMgTG9nd2F0Y2ggcHJvamVjdCBhbmQgdGh1cyBhc3N1bWUg
dGhlIGFib3ZlIGNvcHlyaWdodAorIyMgYW5kIGxpY2Vuc2luZyB0ZXJtcy4gIElmIHlvdSB3
YW50IHRvIG1ha2UgY29udHJpYnV0aW9ucworIyMgdW5kZXIgeW91ciBvd24gY29weXJpZ2h0
IG9yIGEgZGlmZmVyZW50IGxpY2Vuc2UgdGhpcworIyMgbXVzdCBiZSBleHBsaWNpdGx5IHN0
YXRlZCBpbiB0aGUgY29udHJpYnV0aW9uIGFuIHRoZQorIyMgTG9nd2F0Y2ggcHJvamVjdCBy
ZXNlcnZlcyB0aGUgcmlnaHQgdG8gbm90IGFjY2VwdCBzdWNoCisjIyBjb250cmlidXRpb25z
LiAgSWYgeW91IGhhdmUgbWFkZSBzaWduaWZpY2FudAorIyMgY29udHJpYnV0aW9ucyB0byB0
aGlzIHNjcmlwdCBhbmQgd2FudCB0byBjbGFpbQorIyMgY29weXJpZ2h0IHBsZWFzZSBjb250
YWN0IGxvZ3dhdGNoLWRldmVsQGxpc3RzLnNvdXJjZWZvcmdlLm5ldC4KKyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworCit1c2Ug
c3RyaWN0OwordXNlIExvZ3dhdGNoICc6YWxsJzsKKworbXkgJERlYnVnID0gJEVOVnsnTE9H
V0FUQ0hfREVCVUcnfSB8fCAwOworbXkgJERldGFpbCA9ICRFTlZ7J0xPR1dBVENIX0RFVEFJ
TF9MRVZFTCd9IHx8IDA7CitteSAkSWdub3JlSG9zdCA9ICRFTlZ7J2lnbm9yZV9ob3N0J30g
fHwgIiI7CitteSAkUmVmdXNlZENvbm5lY3Rpb25zVGhyZXNob2xkID0gJEVOVnsncmVmdXNl
ZF9jb25uZWN0aW9uc190aHJlc2hvbGQnfSB8fCAwOworbXkgJElsbGVnYWxVc2Vyc1RocmVz
aG9sZCA9ICRFTlZ7J2lsbGVnYWxfdXNlcnNfdGhyZXNob2xkJ30gfHwgMDsKKyRtYWluOjpE
b0xvb2t1cCA9ICRFTlZ7J3NzaGRfaXBfbG9va3VwJ307IAorbXkgJERlYnVnQ291bnRlciA9
IDA7CisKKyNJbml0IFN0cmluZyBDb250YWluZXJzCitteSAoCiskQWN0aW9uLCAgICAgICAg
JEFkZHJlc3MsICAgICAgICRBZGRyZXNzZXMsCiskQnl0ZXNSZWFkLCAgICAgJEJ5dGVzV3Jp
dHRlbiwgICRDbGllbnRWZXIsCiskQ29kZSwgICAgICAgICAgJERpciwgICAgICAgICAgICRF
bXB0eVVzZXIsCiskRXJyb3IsICAgICAgICAgJEZpbGUsICAgICAgICAgICRGaW5nZXJQLAor
JEZsYWdzLCAgICAgICAgICRGcm9tLCAgICAgICAgICAkSG9zdCwKKyRJUCwgICAgICAgICAg
ICAkSWxlZ1VzZXIsICAgICAgJEludmFVc2VyLAorJEtleSwgICAgICAgICAgICRMaW5lLCAg
ICAgICAgICAkTWV0aG9kLAorJE1vZGUsICAgICAgICAgICRNb2R0aW1lLCAgICAgICAkT2Zm
ZXIsCiskT3B0aW9uLCAgICAgICAgJFBlcm0sICAgICAgICAgICRQb20sCiskUG9tMSwgICAg
ICAgICAgJFBvbTIsICAgICAgICAgICRQb3J0LAorJFByaW8sICAgICAgICAgICRSZWFzb24s
ICAgICAgICAkUmVjZWl2ZWQsCiskU2VudCwgICAgICAgICAgJFRvLCAgICAgICAgICAgICRV
c2VyLAorJFdoeSwgICAgICAgICAgICRyZWFsbSwgICAgICAgICAkdXNlciwKKyk7CisKK215
ICVVc2VycyA9ICgpOworbXkgJU5vbmV4aXN0ZW50VXNlcnMgPSAoKTsKK215ICVCYWRQYXNz
d29yZCA9ICgpOworbXkgJU5vSWRlbnQgPSAoKTsKK215ICVCaW5kRmFpbGVkID0gKCk7Citt
eSAlUmVmdXNlZENvbm5lY3Rpb25zID0gKCk7CitteSAlUmVmdXNlZEF1dGhlbnRpY2F0aW9u
ID0gKCk7CitteSAlTmVnb3RpYXRpb25GYWlsZWQgPSAoKTsKK215ICVEaXNjb25uZWN0UmVj
ZWl2ZWQgPSAoKTsKK215ICVSb290TG9naW4gPSAoKTsKK215ICVQYW1SZWxlYXNlRmFpbCA9
ICgpOworbXkgJVBhbUVycm9yID0gKCk7CitteSAlUGFtQ2hyb290ID0gKCk7CitteSAlUGFt
RGVueSA9ICgpOworbXkgJVNoYWRvd0luZm8gPSAoKTsKK215ICVUVFlNb2Rlc0ZhaWwgPSAo
KTsKK215ICVMb2dpbkxvY2sgPSAoKTsKK215ICVQb3N0UG9uZWRBdXRoID0gKCk7CitteSAl
TG9ja2VkQWNjb3VudCA9ICgpOworbXkgJUFsbG93VXNlcnMgPSAoKTsKK215ICVEZW55VXNl
cnMgPSAoKTsKK215ICVBbGxvd0dyb3VwcyA9ICgpOworbXkgJURlbnlHcm91cHMgPSAoKTsK
K215ICVOb0dyb3VwcyA9ICgpOworbXkgJU5vU2hlbGxVc2VycyA9ICgpOworbXkgJVNoZWxs
Tm90RXhlY3V0YWJsZVVzZXJzID0gKCk7CitteSAlRGVwcmVjYXRlZE9wdGlvbiA9ICgpOwor
bXkgJU1pc01hdGNoID0gKCk7CitteSAlS3JiQXV0RmFpbCA9ICgpOworbXkgJUtyYkF1dEVy
ciA9ICgpOworbXkgJUtyYkVyciA9ICgpOworbXkgQFNjYW5uZWQgPSAoKTsKK215ICVPdGhl
ckxpc3QgPSAoKTsKK215ICVDaG1vZEVyciA9ICgpOworbXkgJUNob3duRXJyID0gKCk7Citt
eSAlS3JiX3JlYWxtID0gKCk7CitteSAlQ29ubmVjdEZhaWxlZCA9ICgpOworbXkgJUNocm9v
dCA9ICgpOworbXkgJUNsb3NlRGlyID0gKCk7CitteSAlQ2xvc2VGaWxlUmVhZFdyaXRlID0g
KCk7CitteSAlT3BlbkRpciA9ICgpOworbXkgJU9wZW5GaWxlID0gKCk7CitteSAlUmVhbFBh
dGggPSAoKTsKK215ICVTZXNzaW9uID0gKCk7CitteSAlU2V0TW9kdGltZSA9ICgpOworbXkg
JVN0YXQgPSAoKTsKK215ICVDbGllbnRWZXJzID0gKCk7CisKK215ICRzZnRwUmVxdWVzdHMg
PSAwOworbXkgJE5ldHdvcmtFcnJvcnMgPSAwOworbXkgJEtpbGxzID0gMDsKK215ICRTdGFy
dHMgPSAwOworbXkgJFN0YXR1c05vU3VjaEZpbGUgPSAwOworbXkgJEJ5dGVzU2VudCA9IDA7
CitteSAkQnl0ZXNSZWNlaXZlZCA9IDA7CitteSAkTm9DaXBoZXIgPSAwOworCit3aGlsZSAo
ZGVmaW5lZChteSAkVGhpc0xpbmUgPSA8U1RESU4+KSkgeworICAgY2hvbXAoJFRoaXNMaW5l
KTsKKyAgIGlmICgKKyAgICAgICAoJFRoaXNMaW5lID1+IC9Db25uZWN0aW9uIHJlc2V0IGJ5
IHBlZXIvKSBvcgorICAgICAgICgkVGhpc0xpbmUgPX4gL15DaGlsZCBjb25uZWN0aW9uIGZy
b20vKSBvcgorICAgICAgICgkVGhpc0xpbmUgPX4gL0Rpc2Nvbm5lY3QgcmVjZWl2ZWQvKSBv
cgorICAgICAgICgkVGhpc0xpbmUgPX4gL0V4aXRlZCBub3JtYWxseS8pIG9yCisgICAgICAg
MCAjIFRoaXMgbGluZSBwcmV2ZW50cyBibGFtZSBzaGlmdGluZyBhcyBsaW5lcyBhcmUgYWRk
ZWQgYWJvdmUKKyAgICkgeworICAgICAgIyBJZ25vcmUgdGhlc2UKKyAgIH0gZWxzaWYgKCAo
JE1ldGhvZCwkVXNlciwkS2V5LCRIb3N0LCRQb3J0KSA9ICgkVGhpc0xpbmUgPX4gL14oXFMr
KSBhdXRoIHN1Y2NlZWRlZCBmb3IgJyguKiknIHdpdGgga2V5ICguKikgZnJvbSAoW1xkXC46
YS1mXSspKD86JVx3Kyk/OihcZCspLykgKSB7CisgICAgICBpZiAoJERldGFpbCA+PSAyMCkg
eworICAgICAgICAgJFVzZXJzeyRVc2VyfXskSG9zdH17JE1ldGhvZCAuICIgKCRLZXkpIn0r
KzsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgICBpZiAoICRIb3N0ICF+IC8kSWdub3JlSG9z
dC8gKSB7CisgICAgICAgICAgICAkVXNlcnN7JFVzZXJ9eyRIb3N0fXsiKGFsbCkifSsrOwor
ICAgICAgICAgfQorICAgICAgfQorICAgfSBlbHNpZiAoCisgICAgICAoJFRoaXNMaW5lID1+
IG0vXkVycm9yIHJlYWRpbmcvICkgb3IKKyAgICAgIDAKKyAgICkgeworICAgICAgJE5ldHdv
cmtFcnJvcnMrKzsKKyAgIH0gZWxzaWYgKCAoJFVzZXIsJEhvc3QpID0gKCRUaGlzTGluZSA9
fiAvXkJhZCBwYXNzd29yZCBhdHRlbXB0IGZvciAnKC4qKScgZnJvbSAoW14gXSopOi8pKSB7
CisgICAgICAkQmFkUGFzc3dvcmR7JEhvc3R9eyRVc2VyfSsrOworICAgfSBlbHNpZiAoICgk
SG9zdCkgPSAoJFRoaXNMaW5lID1+IC9eTG9naW4gYXR0ZW1wdCBmb3Igbm9uZXhpc3RlbnQg
dXNlciBmcm9tIChbXiBdKik6LykpIHsKKyAgICAgIGlmICgkSWxlZ1VzZXIgPX4gL2lsbGVn
YWwgdXNlci8pIHskTm9uZXhpc3RlbnRVc2Vyc3skSG9zdH0rKzt9CisgICB9IGVsc2lmICgg
JFRoaXNMaW5lID1+IG0vVGVybWluYXRlZCBieSBzaWduYWwvKSB7CisgICAgICAkS2lsbHMr
KzsKKworCisKKworICAgfSBlbHNpZiAoICRUaGlzTGluZSA9fiBtL14obG9nOiApP1NlcnZl
ciBsaXN0ZW5pbmcgb24oIFteIF0rKT8gcG9ydCBcZCsvICkgeyAjc3NoL29wZW5zc2gKKyAg
ICAgICRTdGFydHMrKzsKKyAgIH0gZWxzaWYgKCAoJFBvcnQsJEFkZHJlc3MsJFJlYXNvbikg
PSAoJFRoaXNMaW5lID1+IC9eZXJyb3I6IEJpbmQgdG8gcG9ydCAoW14gXSspIG9uIChbXiBd
KykgZmFpbGVkOiAoLispLiQvICkpIHsKKyAgICAgIG15ICRUZW1wID0gIiRBZGRyZXNzIHBv
cnQgJFBvcnQgKCRSZWFzb24pIjsKKyAgICAgICMgRmFpbGVkIHRvIGJpbmQgb24gMC4wLjAu
MCBsaWtlbHkgZHVlIHRvIGNvbmZpZ3VyZWQgIkxpc3RlbkFkZHJlc3MiCisgICAgICAjIG9u
IGJvdGggSVB2NCBhbmQgSVB2NgorICAgICAgdW5sZXNzICgkQWRkcmVzcyA9fiAvXjAuMC4w
LjAkLykgeworICAgICAgICAgJEJpbmRGYWlsZWR7JFRlbXB9Kys7CisgICAgICB9CisgICB9
IGVsc2lmICggJFRoaXNMaW5lID1+IG0vXnBhY2tldF9zZXRfbWF4c2l6ZTogLykgeworICAg
ICAgaWYgKCAkRGVidWcgPj0gNSApIHsKKyAgICAgICAgIHByaW50IFNUREVSUiAiREVCVUc6
IEZvdW5kIC1wYWNrZXRfc2V0X21heHNpemUtIGxpbmVcbiI7CisgICAgICB9CisgICB9IGVs
c2lmICggKHVuZGVmLCRBZGRyZXNzZXMpID0gKCRUaGlzTGluZSA9fiAvXndhcm5pbmc6IChb
XiBdKiksIGxpbmUgXGQrOiBob3N0IFteIF0qIG1pc21hdGNoOiAoLiopJC8pKSB7CisgICAg
ICAkTWlzTWF0Y2h7JEFkZHJlc3Nlc30rKzsKKyAgIH0gZWxzaWYgKCAkVGhpc0xpbmUgPX4g
bS9zdWJzeXN0ZW0gcmVxdWVzdCBmb3Igc2Z0cC8gKSB7CisgICAgICAkc2Z0cFJlcXVlc3Rz
Kys7CisgICB9IGVsc2lmICggJFRoaXNMaW5lID1+IG0vcmVmdXNlZCBjb25uZWN0IGZyb20g
KC4qKSQvICkgeworICAgICAgJFJlZnVzZWRDb25uZWN0aW9uc3skMX0rKzsKKyAgIH0gZWxz
aWYgKCAoJFJlYXNvbikgPSAoJFRoaXNMaW5lID1+IC9eQXV0aGVudGljYXRpb24gcmVmdXNl
ZDogKC4qKSQvICkgKSB7CisgICAgICAkUmVmdXNlZEF1dGhlbnRpY2F0aW9ueyRSZWFzb259
Kys7CisgICB9IGVsc2lmICggKHVuZGVmLCRIb3N0LCRQb3J0LCRSZWFzb24sJE9mZmVyKSA9
ICgkVGhpc0xpbmUgPX4gL14oZmF0YWw6ICk/VW5hYmxlIHRvIG5lZ290aWF0ZSB3aXRoIChb
XiBdKykoIHBvcnQgXGQrKT86ICguKilcLiBUaGVpciBvZmZlcjogKC4qKSBcW3ByZWF1dGhc
XSQvKSApIHsKKyAgICAgICROZWdvdGlhdGlvbkZhaWxlZHskUmVhc29ufXskSG9zdH17JE9m
ZmVyfSsrOworICAgfSBlbHNpZiAoICgkUmVhc29uLCRIb3N0LCRPZmZlcikgPSAoJFRoaXNM
aW5lID1+IC9eKFByb3RvY29sIG1ham9yIHZlcnNpb25zIGRpZmZlcikgZm9yIChbXiBdKyko
PzogcG9ydCBcZCspOiAoLiopJC8pICkgeworICAgICAgJE5lZ290aWF0aW9uRmFpbGVkeyRS
ZWFzb259eyRIb3N0fXskT2ZmZXJ9Kys7CisgICB9IGVsc2lmICggKCRQcmlvLCRIb3N0LCRQ
b3J0LCRDb2RlLCRSZWFzb24pID0gKCRUaGlzTGluZSA9fiAvXihlcnJvcjogKT9SZWNlaXZl
ZCBkaXNjb25uZWN0IGZyb20gKFteIF0qKSggcG9ydCBcZCspPzogPyhcZCspOiAoLiopJC8p
KSB7CisgICAgICAjIFJlYXNvbiAxMSAoe1NTSCxTU0gyfV9ESVNDT05ORUNUX0JZX0FQUExJ
Q0FUSU9OKSBpcyBleHBlY3RlZCwgYW5kIGxvZ2dlZCBhdCBzZXZlcml0eSBsZXZlbCBJTkZP
CisgICAgICBpZiAoKCRSZWFzb24gPX4gL3ByZWF1dGgvKSB8fCAoJENvZGUgIT0gMTEpIHx8
ICgkRGV0YWlsID49IDMwKSkgeworCSREaXNjb25uZWN0UmVjZWl2ZWR7JFJlYXNvbn17JEhv
c3R9Kys7CisgICAgICB9CisgICB9IGVsc2lmICggKCRIb3N0KSA9ICgkVGhpc0xpbmUgPX4g
L15ST09UIExPR0lOIFJFRlVTRUQgRlJPTSAoW14gXSopJC8pKSB7CisgICAgICAkUm9vdExv
Z2lueyRIb3N0fSsrOworICAgfSBlbHNpZiAoICgkRXJyb3IpID0gKCRUaGlzTGluZSA9fiAv
XkNhbm5vdCByZWxlYXNlIFBBTSBhdXRoZW50aWNhdGlvblxbXGRcXTogKC4qKSQvKSkgewor
ICAgICAgJFBhbVJlbGVhc2VGYWlseyRFcnJvcn0rKzsKKyAgIH0gZWxzaWYgKCAoJEVycm9y
KSA9ICgkVGhpc0xpbmUgPX4gL15wYW1fc3lzdGVtZFwoc3NoZDpzZXNzaW9uXCk6IEZhaWxl
ZCB0byByZWxlYXNlIHNlc3Npb246ICguKikkLykpIHsKKyAgICAgICRQYW1SZWxlYXNlRmFp
bHskRXJyb3J9Kys7CisgICB9IGVsc2lmICggKCRFcnJvcikgPSAoICRUaGlzTGluZSA9fiBt
L15lcnJvcjogUEFNOiAoLiopJC8pKSB7CisgICAgICAkUGFtRXJyb3J7JEVycm9yfSsrOwor
ICAgfSBlbHNpZiAoICgkRXJyb3IpID0gKCAkVGhpc0xpbmUgPX4gbS9wYW1fc3lzdGVtZFwo
c3NoZDpzZXNzaW9uXCk6IChGYWlsZWQgdG8gY3JlYXRlIHNlc3Npb246IC4qKSQvKSkgewor
ICAgICAgJFBhbUVycm9yeyRFcnJvcn0rKzsKKyAgIH0gZWxzaWYgKCAoJFJlYXNvbikgPSAo
ICRUaGlzTGluZSA9fiBtL3BhbV9jaHJvb3RcKC4rXCk6XHMrKFteOl0pLykpIHsKKyAgICAg
ICRQYW1DaHJvb3R7JFJlYXNvbn0rKzsKKyAgIH0gZWxzaWYgKCAoJEVycm9yKSA9ICggJFRo
aXNMaW5lID1+IG0vXmVycm9yOiBDb3VsZCBub3QgZ2V0IHNoYWRvdyBpbmZvcm1hdGlvbiBm
b3IgKC4qKSQvKSkgeworICAgICAgJFNoYWRvd0luZm97JEVycm9yfSsrOworICAgfSBlbHNp
ZiAoICgkUmVhc29uKSA9ICgkVGhpc0xpbmUgPX4gL15TZXR0aW5nIHR0eSBtb2RlcyBmYWls
ZWQ6ICguKikkLykpIHsKKyAgICAgICRUVFlNb2Rlc0ZhaWx7JFJlYXNvbn0rKzsKKyAgIH0g
ZWxzaWYgKCAoJFVzZXIsdW5kZWYpID0gKCRUaGlzTGluZSA9fiAvXlVzZXIgKFteIF0qKSBu
b3QgYWxsb3dlZCBiZWNhdXNlIChbXiBdKikgZXhpc3RzJC8pKSB7CisgICAgICAkTG9naW5M
b2NreyRVc2VyfSsrOworICAgfSBlbHNpZiAoICgkVXNlcikgPSAoJFRoaXNMaW5lID1+IC9e
VXNlciAoW14gXSopIG5vdCBhbGxvd2VkIGJlY2F1c2UgYWNjb3VudCBpcyBsb2NrZWQvKSkg
eworICAgICAgJExvY2tlZEFjY291bnR7JFVzZXJ9Kys7CisgICB9IGVsc2lmICggKCRVc2Vy
KSA9ICgkVGhpc0xpbmUgPX4gL15Vc2VyIChbXiBdKikgZnJvbSAoPzpbXiBdKikgbm90IGFs
bG93ZWQgYmVjYXVzZSBub3QgbGlzdGVkIGluIEFsbG93VXNlcnMvKSkgeworICAgICAgJEFs
bG93VXNlcnN7JFVzZXJ9Kys7CisgICB9IGVsc2lmICggKCRVc2VyKSA9ICgkVGhpc0xpbmUg
PX4gL15Vc2VyIChbXiBdKikoIGZyb20gWzAtOS5dKik/IG5vdCBhbGxvd2VkIGJlY2F1c2Ug
bGlzdGVkIGluIERlbnlVc2Vycy8pKXsKKyAgICAgICREZW55VXNlcnN7JFVzZXJ9Kys7Cisg
ICB9IGVsc2lmICggKCRVc2VyKSA9ICgkVGhpc0xpbmUgPX4gL15Vc2VyIChbXiBdKikoIGZy
b20gWzAtOS5dKik/IG5vdCBhbGxvd2VkIGJlY2F1c2Ugbm90IGluIGFueSBncm91cC8pKSB7
CisgICAgICAkTm9Hcm91cHN7JFVzZXJ9Kys7CisgICB9IGVsc2lmICggKCRVc2VyKSA9ICgk
VGhpc0xpbmUgPX4gL15Vc2VyIChbXiBdKikoIGZyb20gW14gXSopPyBub3QgYWxsb3dlZCBi
ZWNhdXNlIGEgZ3JvdXAgaXMgbGlzdGVkIGluIERlbnlHcm91cHMvKSkgeworICAgICAgJERl
bnlHcm91cHN7JFVzZXJ9Kys7CisgICB9IGVsc2lmICggKCRVc2VyKSA9ICgkVGhpc0xpbmUg
PX4gL15Vc2VyIChbXiBdKikgZnJvbSAoW14gXSopIG5vdCBhbGxvd2VkIGJlY2F1c2Ugbm9u
ZSBvZiB1c2VyJ3MgZ3JvdXBzIGFyZSBsaXN0ZWQgaW4gQWxsb3dHcm91cHMvKSkgeworICAg
ICAgJEFsbG93R3JvdXBzeyRVc2VyfSsrOworICAgfSBlbHNpZiAoICgkVXNlcikgPSAoJFRo
aXNMaW5lID1+IC9eVXNlciAoW14gXSopIG5vdCBhbGxvd2VkIGJlY2F1c2Ugc2hlbGwgKFxT
KykgZG9lcyBub3QgZXhpc3QvKSkgeworICAgICAgJE5vU2hlbGxVc2Vyc3skVXNlcn0rKzsK
KyAgIH0gZWxzaWYgKCAoJFVzZXIpID0gKCRUaGlzTGluZSA9fiAvXlVzZXIgKFteIF0qKSBu
b3QgYWxsb3dlZCBiZWNhdXNlIHNoZWxsIChcUyspIGlzIG5vdCBleGVjdXRhYmxlLykpIHsK
KyAgICAgICRTaGVsbE5vdEV4ZWN1dGFibGVVc2Vyc3skVXNlcn0rKzsKKyAgIH0gZWxzaWYg
KCAoJFVzZXIpID0gKCRUaGlzTGluZSA9fiAvXmZhdGFsOiBBY2Nlc3MgZGVuaWVkIGZvciB1
c2VyIChbXiBdKykgYnkgUEFNIGFjY291bnQgY29uZmlndXJhdGlvbiBcW3ByZWF1dGhcXS8p
KSB7CisgICAgICAkUGFtRGVueXskVXNlcn0rKzsKKyAgIH0gZWxzaWYgKCAoJElQKSA9ICgk
VGhpc0xpbmUgPX4gL15zY2FubmVkIGZyb20gKFteIF0qKS8pICkgeworICAgICAgcHVzaCBA
U2Nhbm5lZCwgJElQOworICAgfSBlbHNpZiAoICh1bmRlZiwkTGluZSwkT3B0aW9uKSA9ICgk
VGhpc0xpbmUgPX4gL15yZSh4ZWN8cHJvY2VzcyBjb25maWcpIGxpbmUgKFxkKyk6IERlcHJl
Y2F0ZWQgb3B0aW9uICguKikkLykpIHsKKyAgICAgICREZXByZWNhdGVkT3B0aW9ueyIkT3B0
aW9uIC0gbGluZSAkTGluZSJ9Kys7CisgICB9IGVsc2lmICggKCRQb20xLCRQb20yLCRVc2Vy
KSA9ICgkVGhpc0xpbmUgPX4gL3BhbV9rcmI1KFxbXGQqXF0pPzogYXV0aGVudGljYXRpb24g
ZmFpbHMgZm9yIChgfCcpKFteIF0qKScvKSkgeworICAgICAgJEtyYkF1dEZhaWx7JFVzZXJ9
Kys7CisgICB9IGVsc2lmICggKCRFcnJvcikgPSAoJFRoaXNMaW5lID1+IC9wYW1fa3JiNTog
YXV0aGVudGljYXRlIGVycm9yOiAoLiopJC8pKSB7CisgICAgICAkS3JiQXV0RXJyeyRFcnJv
cn0rKzsKKyAgIH0gZWxzaWYgKCAoJFRoaXNMaW5lID1+IC9wYW1fa3JiNTogdW5hYmxlIHRv
IGRldGVybWluZSB1aWRcL2dpZCBmb3IgdXNlciQvKSkgeworICAgICAgJEtyYkF1dEVycnsi
dW5hYmxlIHRvIGRldGVybWluZSB1aWQvZ2lkIGZvciB1c2VyIn0rKzsKKyAgIH0gZWxzaWYg
KCAoJEVycm9yKSA9ICgkVGhpc0xpbmUgPX4gL3BhbV9rcmI1OiBlcnJvciByZW1vdmluZyBm
aWxlICguKikkLykpIHsKKyAgICAgICRLcmJFcnJ7ImVycm9yIHJlbW92aW5nIGZpbGUgIiAu
ICRFcnJvcn0rKzsKKyAgIH0gZWxzaWYgKCAoJFBvbSwkRXJyb3IpID0gKCRUaGlzTGluZSA9
fiAvcGFtX2tyYjUoXFtcZCpcXSk6IGVycm9yIHJlc29sdmluZyB1c2VyIG5hbWUgJ1teIF0q
JyB0byB1aWRcL2dpZCBwYWkvKSkgeworICAgICAgJEtyYkVycnsiZXJyb3IgcmVzb2x2aW5n
IHVzZXIgbmFtZSAnJEVycm9yJyB0byB1aWRcL2dpZCBwYWkifSsrOworICAgfSBlbHNpZiAo
KCRGaWxlLCRQZXJtLCRXaHkpID0gKCRUaGlzTGluZSA9fiAvZXJyb3I6IGNobW9kICguKikg
KC4qKSBmYWlsZWQ6ICguKikvKSkgeworICAgICAgJENobW9kRXJyeyIkRmlsZSwkUGVybSwk
V2h5In0rKzsKKyAgIH0gZWxzaWYgKCgkRmlsZSwkRnJvbSwkVG8sJFdoeSkgPSAoJFRoaXNM
aW5lID1+IC9lcnJvcjogY2hvd24gKC4qKSAoLiopICguKikgZmFpbGVkOiAoLiopLykpIHsK
KyAgICAgICRDaG93bkVycnsiJEZpbGUsJEZyb20sJFRvLCRXaHkifSsrOworICAgfSBlbHNp
ZiAoKCR1c2VyLCRyZWFsbSkgPSAoJFRoaXNMaW5lID1+IC9BdXRob3JpemVkIHRvIChbXiBd
KyksIGtyYjUgcHJpbmNpcGFsIFwxQChbXiBdKykgXCgoPzprcmI1X2t1c2Vyb2t8c3NoX2dz
c2FwaV9rcmI1X2NtZG9rKVwpLykpIHsKKyAgICAgICRLcmJfcmVhbG17JHJlYWxtfXskdXNl
cn0rKzsKKyAgIH0gZWxzaWYgKCgkQWN0aW9uLCRVc2VyKSA9ICgkVGhpc0xpbmUgPX4gL15z
ZXNzaW9uICgoPzpvcGVufGNsb3MpZWQpIGZvciBsb2NhbCB1c2VyIChcUyspIGZyb20gLykp
IHsKKyAgICAgICRTZXNzaW9ueyJBY3Rpb24sJFVzZXIifSsrOworICAgfSBlbHNpZiAoJFRo
aXNMaW5lID1+IC9ec2VudCBzdGF0dXMgTm8gc3VjaCBmaWxlJC8pIHsKKyAgICAgICRTdGF0
dXNOb1N1Y2hGaWxlKys7CisgICB9IGVsc2lmICgoJEZpbGUsJEZsYWdzLCRNb2RlKSA9ICgk
VGhpc0xpbmUgPX4gL15vcGVuICIoLiopIiBmbGFncyAoXFMrKSBtb2RlIChcZCspLyApKSB7
CisgICAgICAkT3BlbkZpbGV7IiRGaWxlOiRGbGFnczokTW9kZSJ9Kys7CisgICB9IGVsc2lm
ICgoJEZpbGUsJEJ5dGVzUmVhZCwkQnl0ZXNXcml0dGVuKSA9ICgkVGhpc0xpbmUgPX4gL15j
bG9zZSAiKC4qKSIgYnl0ZXMgcmVhZCAoXGQrKSB3cml0dGVuIChcZCspLyApKSB7CisgICAg
ICAkQ2xvc2VGaWxlUmVhZFdyaXRleyIkRmlsZSwkQnl0ZXNSZWFkLCRCeXRlc1dyaXR0ZW4i
fSsrOworICAgfSBlbHNpZiAoKCRTZW50LCRSZWNlaXZlZCkgPSAoJFRoaXNMaW5lID1+IC9e
VHJhbnNmZXJyZWQ6IHNlbnQgKFxkKyksIHJlY2VpdmVkIChcZCspIGJ5dGVzJC8gKSkgewor
ICAgICAgJEJ5dGVzU2VudCArPSAkU2VudDsKKyAgICAgICRCeXRlc1JlY2VpdmVkICs9ICRS
ZWNlaXZlZDsKKyAgIH0gZWxzaWYgKCgkRmlsZSwkTW9kdGltZSkgPSAoJFRoaXNMaW5lID1+
IC9ec2V0ICIoLiopIiBtb2R0aW1lIChcZCstXGQrOlxkKzpcZCspJC8gKSkgeworICAgICAg
JFNldE1vZHRpbWV7IiRNb2R0aW1lLCRGaWxlIn0rKzsKKyAgIH0gZWxzaWYgKCgkRGlyKSA9
ICgkVGhpc0xpbmUgPX4gL15vcGVuZGlyICIoLiopIiQvICkpIHsKKyAgICAgICRPcGVuRGly
eyREaXJ9Kys7CisgICB9IGVsc2lmICgoJERpcikgPSAoJFRoaXNMaW5lID1+IC9eY2xvc2Vk
aXIgIiguKikiJC8gKSkgeworICAgICAgJENsb3NlRGlyeyREaXJ9Kys7CisgICB9IGVsc2lm
ICgoJEZpbGUpID0gKCRUaGlzTGluZSA9fiAvXnJlYWxwYXRoICIoLiopIiQvICkpIHsKKyAg
ICAgICRSZWFsUGF0aHskRmlsZX0rKzsKKyAgIH0gZWxzaWYgKCgkRmlsZSkgPSAoJFRoaXNM
aW5lID1+IC9ec3RhdCBuYW1lICIoLiopIiQvICkpIHsKKyAgICAgICRTdGF0eyRGaWxlfSsr
OworICAgfSBlbHNpZiAoKCREaXIpID0gKCRUaGlzTGluZSA9fiAvXkNoYW5nZWQgcm9vdCBk
aXJlY3RvcnkgdG8gIiguKikiLyApKSB7CisgICAgICAkQ2hyb290eyREaXJ9Kys7CisgICB9
IGVsc2lmICgoJENsaWVudFZlcikgPSAoJFRoaXNMaW5lID1+IC9ecmVjZWl2ZWQgY2xpZW50
IHZlcnNpb24gKFxTKykvICkpIHsKKyAgICAgICRDbGllbnRWZXJzeyRDbGllbnRWZXJ9Kys7
CisgICB9IGVsc2lmICgoJEhvc3QsJFBvcnQpID0gKCRUaGlzTGluZSA9fiAvXmVycm9yOiBj
b25uZWN0X3RvIChcUyspIHBvcnQgKFxkKyk6IGZhaWxlZFwuJC8pKSB7CisgICAgICAkQ29u
bmVjdEZhaWxlZHsiJEhvc3QgcG9ydCAkUG9ydCJ9Kys7CisgICB9IGVsc2lmICgkVGhpc0xp
bmUgPX4gL15mYXRhbDogbm8gbWF0Y2hpbmcgY2lwaGVyIGZvdW5kOiAvKSB7CisgICAgICAk
Tm9DaXBoZXIrKzsKKyAgIH0gZWxzZSB7CisgICAgICAjIFJlcG9ydCBhbnkgdW5tYXRjaGVk
IGVudHJpZXMuLi4KKyAgICAgIHVubGVzcyAoJFRoaXNMaW5lID1+IC9md2QgWDExIGNvbm5l
Y3QvKSB7CisgICAgICAgICAkT3RoZXJMaXN0eyRUaGlzTGluZX0gKz0gMTsKKyAgICAgIH0K
KyAgIH0KK30KKworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMKKworc3ViIHRpbWVzcGx1cmFsIHsKKyAgIG15ICgkY291bnQp
ID0gQF87CisgICBteSAkcGx1cmFsID0gKCRjb3VudCA+IDEpID8gInMiIDogIiI7CisgICBy
ZXR1cm4gIiRjb3VudCBUaW1lJHBsdXJhbFxuIjsKK30KKworaWYgKCROZXR3b3JrRXJyb3Jz
KSB7CisgICBwcmludCAiXG5OZXR3b3JrIFJlYWQgV3JpdGUgRXJyb3JzOiAiIC4gJE5ldHdv
cmtFcnJvcnMgLiAiXG4iOworfQoraWYgKCRLaWxscykgeworICAgcHJpbnQgIlxuS2lsbGVk
OiAiIC4gdGltZXNwbHVyYWwoJEtpbGxzKTsKK30KK2lmICgkU3RhcnRzKSB7CisgICBwcmlu
dCAiXG5TdGFydGVkOiAiIC4gdGltZXNwbHVyYWwoJFN0YXJ0cyk7Cit9CisKK2lmIChrZXlz
ICVEZXByZWNhdGVkT3B0aW9uKSB7CisgICBwcmludCAiXG5EZXByZWNhdGVkIG9wdGlvbnMg
aW4gU1NIIGNvbmZpZzpcbiI7CisgICBmb3JlYWNoIG15ICRPcHRpb24gKHNvcnQgeyRhIGNt
cCAkYn0ga2V5cyAlRGVwcmVjYXRlZE9wdGlvbikgeworICAgICAgcHJpbnQgIiAgICRPcHRp
b25cbiI7CisgICB9Cit9CisKK2lmIChrZXlzICVSb290TG9naW4pIHsKKyAgIHByaW50ICJc
blxuV0FSTklORyEhIVxuIjsKKyAgIHByaW50ICJSZWZ1c2VkIFJPT1QgbG9naW4gYXR0ZW1w
dCBmcm9tOlxuIjsKKyAgIGZvcmVhY2ggbXkgJEhvc3QgKHNvcnQgeyRhIGNtcCAkYn0ga2V5
cyAlUm9vdExvZ2luKSB7CisgICAgICBwcmludCAiICAgJEhvc3QgOiAiIC4gdGltZXNwbHVy
YWwoJFJvb3RMb2dpbnskSG9zdH0pOworICAgfQorfQorCitpZiAoa2V5cyAlQmluZEZhaWxl
ZCkgeworICAgcHJpbnQgIlxuRmFpbGVkIHRvIGJpbmQ6XG4iOworICAgZm9yZWFjaCBteSAk
VGhpc09uZSAoc29ydCB7JGEgY21wICRifSBrZXlzICVCaW5kRmFpbGVkKSB7CisgICAgICAg
ICAgIHByaW50ICIgICAkVGhpc09uZSA6ICIgLiB0aW1lc3BsdXJhbCgkQmluZEZhaWxlZHsk
VGhpc09uZX0pOworICAgfQorfQorCitpZiAoJERldGFpbCA+PSAzMCAmJiBrZXlzICVDb25u
ZWN0RmFpbGVkKSB7CisgICAjIFNTSCBTb2NrcyBGb3J3YXJkaW5nCisgICBwcmludCAiXG5G
YWlsZWQgdG8gY29ubmVjdCB0bzpcbiI7CisgICBmb3JlYWNoIG15ICRUaGlzT25lIChzb3J0
IHskYSBjbXAgJGJ9IGtleXMgJUNvbm5lY3RGYWlsZWQpIHsKKyAgICAgICAgICAgcHJpbnQg
IiAgICRUaGlzT25lIDogIiAuIHRpbWVzcGx1cmFsKCRDb25uZWN0RmFpbGVkeyRUaGlzT25l
fSk7CisgICB9Cit9CisKK2lmIChrZXlzICVOZWdvdGlhdGlvbkZhaWxlZCkgeworICAgcHJp
bnQgIlxuTmVnb3RpYXRpb24gZmFpbGVkOlxuIjsKKyAgIGZvcmVhY2ggbXkgJFJlYXNvbiAo
c29ydCB7JGEgY21wICRifSBrZXlzICVOZWdvdGlhdGlvbkZhaWxlZCkgeworICAgICAgbXkg
JFRvdGFsID0gMDsKKyAgICAgIHByaW50ICIgICAkUmVhc29uIjsKKyAgICAgIGlmICggJERl
dGFpbCA+IDAgKSB7CisgICAgICAgICBwcmludCAiXG4iOworICAgICAgfQorICAgICAgZm9y
ZWFjaCBteSAkSG9zdCAoc29ydCB7JGEgY21wICRifSBrZXlzICV7JE5lZ290aWF0aW9uRmFp
bGVkeyRSZWFzb259fSkgeworICAgICAgICBteSAkSG9zdFRvdGFsID0gMDsKKyAgICAgICAg
Zm9yZWFjaCBteSAkT2ZmZXIgKHNvcnQgeyRhIGNtcCAkYn0ga2V5cyAleyROZWdvdGlhdGlv
bkZhaWxlZHskUmVhc29ufXskSG9zdH19KSB7CisgICAgICAgICAgICRIb3N0VG90YWwgKz0g
JE5lZ290aWF0aW9uRmFpbGVkeyRSZWFzb259eyRIb3N0fXskT2ZmZXJ9OworICAgICAgICB9
CisgICAgICAgICRUb3RhbCArPSAkSG9zdFRvdGFsOworICAgICAgICBpZiAoICREZXRhaWwg
PiAwICkgeworICAgICAgICAgICBwcmludCAiICAgICAgJEhvc3Q6ICIgLiB0aW1lc3BsdXJh
bCgkSG9zdFRvdGFsKTsKKyAgICAgICAgfQorICAgICAgICBpZiAoICREZXRhaWwgPiA1ICkg
eworICAgICAgICAgICBmb3JlYWNoIG15ICRPZmZlciAoc29ydCB7JGEgY21wICRifSBrZXlz
ICV7JE5lZ290aWF0aW9uRmFpbGVkeyRSZWFzb259eyRIb3N0fX0pIHsKKyAgICAgICAgICAg
ICAgICAgbXkgJHRvdCA9ICROZWdvdGlhdGlvbkZhaWxlZHskUmVhc29ufXskSG9zdH17JE9m
ZmVyfTsKKyAgICAgICAgICAgICAgICAgcHJpbnQgIiAgICAgICAgJE9mZmVyOiAiIC4gdGlt
ZXNwbHVyYWwoJHRvdCk7CisgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgfQorICAg
ICAgaWYgKCAkRGV0YWlsID09IDAgKSB7CisgICAgICAgICBwcmludCAiOiAiIC4gdGltZXNw
bHVyYWwoJFRvdGFsKTsKKyAgICAgIH0KKyAgIH0KK30KKworaWYgKGtleXMgJUJhZFBhc3N3
b3JkKSB7CisgICBwcmludCAiXG5CYWQgcGFzc3dvcmQgYXR0ZW1wdHM6XG4iOworICAgZm9y
ZWFjaCBteSAkaXAgKHNvcnQgU29ydElQIGtleXMgJUJhZFBhc3N3b3JkKSB7CisgICAgICBt
eSAkbmFtZSA9IExvb2t1cElQKCRpcCk7CisgICAgICBteSAkdG90Y291bnQgPSAwOworICAg
ICAgZm9yZWFjaCBteSAkdXNlciAoa2V5cyAleyRCYWRQYXNzd29yZHskaXB9fSkgeworICAg
ICAgICAgJHRvdGNvdW50ICs9ICRCYWRQYXNzd29yZHskaXB9eyR1c2VyfTsKKyAgICAgIH0K
KyAgICAgIHByaW50ICIgICAkbmFtZTogIi4gdGltZXNwbHVyYWwoJHRvdGNvdW50KTsKKyAg
ICAgIGlmICgkRGV0YWlsID49IDUpIHsKKyAgICAgICAgIG15ICRzb3J0ID0gQ291bnRPcmRl
cigleyRCYWRQYXNzd29yZHskaXB9fSk7CisgICAgICAgICBmb3JlYWNoIG15ICR1c2VyIChz
b3J0ICRzb3J0IGtleXMgJXskQmFkUGFzc3dvcmR7JGlwfX0pIHsKKyAgICAgICAgICAgIG15
ICR2YWwgPSAkQmFkUGFzc3dvcmR7JGlwfXskdXNlcn07CisgICAgICAgICAgICBwcmludCAi
ICAgICAgJHVzZXI6ICIgLiB0aW1lc3BsdXJhbCgkdmFsKTsKKyAgICAgICAgIH0KKyAgICAg
IH0KKyAgIH0KK30KKworaWYgKGtleXMgJU5vbmV4aXN0ZW50VXNlcnMpIHsKKyAgIHByaW50
ICJcbk5vbi1leGlzdGVudCB1c2VycyBmcm9tIjsKKyAgIGlmICgkSWxsZWdhbFVzZXJzVGhy
ZXNob2xkKSB7CisgICAgICBwcmludCAiICh3aXRoIHRocmVzaG9sZCA+PSAkSWxsZWdhbFVz
ZXJzVGhyZXNob2xkKSI7CisgICAgICB9CisgICBwcmludCAiOlxuIjsKKyAgIGZvcmVhY2gg
bXkgJGlwIChzb3J0IFNvcnRJUCBrZXlzICVOb25leGlzdGVudFVzZXJzKSB7CisgICAgICBt
eSAkbmFtZSA9IExvb2t1cElQKCRpcCk7CisgICAgICBwcmludCAiICAgJG5hbWU6ICIgLiB0
aW1lc3BsdXJhbCgkTm9uZXhpc3RlbnRVc2Vyc3skaXB9KTsKKyAgIH0KK30KKworaWYgKGtl
eXMgJUxvY2tlZEFjY291bnQpIHsKKyAgIHByaW50ICJcbkxvY2tlZCBhY2NvdW50IGxvZ2lu
IGF0dGVtcHRzOlxuIjsKKyAgIGZvcmVhY2ggbXkgJFVzZXIgKHNvcnQgeyRhIGNtcCAkYn0g
a2V5cyAlTG9ja2VkQWNjb3VudCkgeworICAgICAgcHJpbnQgIiAgICRVc2VyIDogIiAuIHRp
bWVzcGx1cmFsKCRMb2NrZWRBY2NvdW50eyRVc2VyfSk7CisgICB9Cit9CisKK2lmIChrZXlz
ICVBbGxvd1VzZXJzKSB7CisgICBwcmludCAiXG5Mb2dpbiBhdHRlbXB0ZWQgd2hlbiBub3Qg
aW4gQWxsb3dVc2VycyBsaXN0OlxuIjsKKyAgIGZvcmVhY2ggbXkgJFVzZXIgKHNvcnQgeyRh
IGNtcCAkYn0ga2V5cyAlQWxsb3dVc2VycykgeworICAgICAgcHJpbnQgIiAgICRVc2VyIDog
IiAuIHRpbWVzcGx1cmFsKCRBbGxvd1VzZXJzeyRVc2VyfSk7CisgICB9Cit9CisKK2lmIChr
ZXlzICVEZW55VXNlcnMpIHsKKyAgIHByaW50ICJcbkxvZ2luIGF0dGVtcHRlZCB3aGVuIGlu
IERlbnlVc2VycyBsaXN0OlxuIjsKKyAgIGZvcmVhY2ggbXkgJFVzZXIgKHNvcnQgeyRhIGNt
cCAkYn0ga2V5cyAlRGVueVVzZXJzKSB7CisgICAgICBwcmludCAiICAgJFVzZXIgOiAuICIg
LiB0aW1lc3BsdXJhbCgkRGVueVVzZXJzeyRVc2VyfSk7CisgICB9Cit9CisKK2lmIChrZXlz
ICVBbGxvd0dyb3VwcykgeworICAgcHJpbnQgIlxuTG9naW4gYXR0ZW1wdGVkIHdoZW4gbm90
IGluIEFsbG93R3JvdXBzIGxpc3Q6XG4iOworICAgZm9yZWFjaCBteSAkVXNlciAoc29ydCB7
JGEgY21wICRifSBrZXlzICVBbGxvd0dyb3VwcykgeworICAgICAgcHJpbnQgIiAgICRVc2Vy
IDogIiAuIHRpbWVzcGx1cmFsKCRBbGxvd0dyb3Vwc3skVXNlcn0pOworICAgfQorfQorCitp
ZiAoa2V5cyAlRGVueUdyb3VwcykgeworICAgcHJpbnQgIlxuTG9naW4gYXR0ZW1wdGVkIHdo
ZW4gaW4gRGVueUdyb3VwcyBsaXN0OlxuIjsKKyAgIGZvcmVhY2ggbXkgJFVzZXIgKHNvcnQg
eyRhIGNtcCAkYn0ga2V5cyAlRGVueUdyb3VwcykgeworICAgICAgcHJpbnQgIiAgICRVc2Vy
IDogIiAuIHRpbWVzcGx1cmFsKCREZW55R3JvdXBzeyRVc2VyfSk7CisgICB9Cit9CisKK2lm
IChrZXlzICVQYW1EZW55KSB7CisgICBwcmludCAiXG5Mb2dpbiBhdHRlbXB0ZWQgd2hlbiBk
ZW5pZWQgYnkgUEFNIGNvbmZpZ3VyYXRpb246XG4iOworICAgZm9yZWFjaCBteSAkVXNlciAo
c29ydCB7JGEgY21wICRifSBrZXlzICVQYW1EZW55KSB7CisgICAgICBwcmludCAiICAgJFVz
ZXIgOiAiIC4gdGltZXNwbHVyYWwoJFBhbURlbnl7JFVzZXJ9KTsKKyAgIH0KK30KKworaWYg
KGtleXMgJU5vR3JvdXBzKSB7CisgICBwcmludCAiXG5Mb2dpbiBhdHRlbXB0ZWQgd2hlbiB1
c2VyIGlzIGluIG5vIGdyb3VwOlxuIjsKKyAgIGZvcmVhY2ggbXkgJFVzZXIgKHNvcnQgeyRh
IGNtcCAkYn0ga2V5cyAlTm9Hcm91cHMpIHsKKyAgICAgIHByaW50ICIgICAkVXNlciA6ICIg
LiB0aW1lc3BsdXJhbCgkTm9Hcm91cHN7JFVzZXJ9KTsKKyAgIH0KK30KKworaWYgKGtleXMg
JU5vU2hlbGxVc2VycykgeworICAgcHJpbnQgIlxuTG9naW4gYXR0ZW1wdGVkIHdoZW4gc2hl
bGwgZG9lcyBub3QgZXhpc3Q6XG4iOworICAgZm9yZWFjaCBteSAkVXNlciAoc29ydCB7JGEg
Y21wICRifSBrZXlzICVOb1NoZWxsVXNlcnMpIHsKKyAgICAgIHByaW50ICIgICAkVXNlciA6
ICIgLiB0aW1lc3BsdXJhbCgkTm9TaGVsbFVzZXJzeyRVc2VyfSk7CisgICB9Cit9CisKK2lm
IChrZXlzICVTaGVsbE5vdEV4ZWN1dGFibGVVc2VycykgeworICAgcHJpbnQgIlxuTG9naW4g
YXR0ZW1wdGVkIHdoZW4gc2hlbGwgaXMgbm90IGV4ZWN1dGFibGU6XG4iOworICAgZm9yZWFj
aCBteSAkVXNlciAoc29ydCB7JGEgY21wICRifSBrZXlzICVTaGVsbE5vdEV4ZWN1dGFibGVV
c2VycykgeworICAgICAgcHJpbnQgIiAgICRVc2VyIDogIiAuIHRpbWVzcGx1cmFsKCRTaGVs
bE5vdEV4ZWN1dGFibGVVc2Vyc3skVXNlcn0pOworICAgfQorfQorCitpZiAoKGtleXMgJUxv
Z2luTG9jaykgYW5kICgkRGV0YWlsID49IDUpKSB7CisgICBwcmludCAiXG5Vc2VyIGxvZ2lu
IGF0dGVtcHQgd2hlbiBub2xvZ2luIHdhcyBzZXQ6XG4iOworICAgZm9yZWFjaCBteSAkVXNl
ciAoc29ydCB7JGEgY21wICRifSBrZXlzICVMb2dpbkxvY2spIHsKKyAgICAgIHByaW50ICIg
ICAkVXNlciA6ICIgLiB0aW1lc3BsdXJhbCgkTG9naW5Mb2NreyRVc2VyfSk7CisgICB9Cit9
CisKK2lmIChrZXlzICVQb3N0UG9uZWRBdXRoKSB7CisgICBwcmludCAiXG5Qb3N0cG9uZWQg
YXV0aGVudGljYXRpb246XG4iOworICAgZm9yZWFjaCBteSAkVXNlciAoc29ydCB7JGEgY21w
ICRifSBrZXlzICVQb3N0UG9uZWRBdXRoKSB7CisgICAgICBwcmludCAiICAgJFVzZXI6XG4i
OworICAgICAgZm9yZWFjaCBteSAkSG9zdCAoc29ydCB7JGEgY21wICRifSBrZXlzICV7JFBv
c3RQb25lZEF1dGh7JFVzZXJ9fSkgeworICAgICAgICAgcHJpbnQgIiAgICAgICRIb3N0OiAi
IC4gdGltZXNwbHVyYWwoJFBvc3RQb25lZEF1dGh7JFVzZXJ9eyRIb3N0fSk7CisgICAgICB9
CisgICB9Cit9CisKK2lmIChrZXlzICVVc2VycykgeworICAgcHJpbnQgIlxuVXNlcnMgbG9n
Z2luZyBpbiB0aHJvdWdoIHNzaGQ6XG4iOworICAgZm9yZWFjaCBteSAkdXNlciAoc29ydCB7
JGEgY21wICRifSBrZXlzICVVc2VycykgeworICAgICAgcHJpbnQgIiAgICR1c2VyOlxuIjsK
KyAgICAgIGlmICgkRGV0YWlsIDwgMjApIHsKKyAgICAgICAgIG15ICR0b3RhbFNvcnQgPSBU
b3RhbENvdW50T3JkZXIoJXskVXNlcnN7JHVzZXJ9fSwgXCZTb3J0SVApOworICAgICAgICAg
Zm9yZWFjaCBteSAkaXAgKHNvcnQgJHRvdGFsU29ydCBrZXlzICV7JFVzZXJzeyR1c2VyfX0p
IHsKKyAgICAgICAgICAgIG15ICRuYW1lID0gTG9va3VwSVAoJGlwKTsKKyAgICAgICAgICAg
IG15ICR2YWwgID0gKHZhbHVlcyAleyRVc2Vyc3skdXNlcn17JGlwfX0pWzBdOworICAgICAg
ICAgICAgcHJpbnQgIiAgICAgICRuYW1lOiAiIC4gdGltZXNwbHVyYWwoJHZhbCk7CisgICAg
ICAgICB9CisgICAgICB9IGVsc2UgeworICAgICAgICAgbXkgJU1ldGhvZHMgPSAoKTsKKyAg
ICAgICAgIGZvcmVhY2ggbXkgJGlwIChrZXlzICV7JFVzZXJzeyR1c2VyfX0pIHsKKyAgICAg
ICAgICAgIGZvcmVhY2ggbXkgJG1ldGhvZCAoa2V5cyAleyRVc2Vyc3skdXNlcn17JGlwfX0p
IHsKKyAgICAgICAgICAgICAgICRNZXRob2RzeyRtZXRob2R9eyRpcH0gPSAkVXNlcnN7JHVz
ZXJ9eyRpcH17JG1ldGhvZH07CisgICAgICAgICAgICB9CisgICAgICAgICB9CisgICAgICAg
ICBpZiAoc2NhbGFyIGtleXMgJXskVXNlcnN7JHVzZXJ9fSA8IHNjYWxhciAlTWV0aG9kcykg
eworICAgICAgICAgICAgbXkgJHRvdGFsU29ydCA9IFRvdGFsQ291bnRPcmRlcigleyRVc2Vy
c3skdXNlcn19LCBcJlNvcnRJUCk7CisgICAgICAgICAgICBmb3JlYWNoIG15ICRpcCAoc29y
dCAkdG90YWxTb3J0IGtleXMgJXskVXNlcnN7JHVzZXJ9fSkgeworICAgICAgICAgICAgICAg
bXkgJG5hbWUgPSBMb29rdXBJUCgkaXApOworICAgICAgICAgICAgICAgcHJpbnQgIiAgICAg
ICRuYW1lOlxuIjsKKyAgICAgICAgICAgICAgIG15ICRzb3J0ID0gQ291bnRPcmRlcigleyRV
c2Vyc3skdXNlcn17JGlwfX0pOworICAgICAgICAgICAgICAgZm9yZWFjaCBteSAkbWV0aG9k
IChzb3J0ICRzb3J0IGtleXMgJXskVXNlcnN7JHVzZXJ9eyRpcH19KSB7CisgICAgICAgICAg
ICAgICAgICBteSAkdmFsID0gJFVzZXJzeyR1c2VyfXskaXB9eyRtZXRob2R9OworICAgICAg
ICAgICAgICAgICAgcHJpbnQgIiAgICAgICAgICRtZXRob2Q6ICIgLiB0aW1lc3BsdXJhbCgk
dmFsKTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgIH0gZWxz
ZSB7CisgICAgICAgICAgICBteSAkdG90YWxTb3J0ID0gVG90YWxDb3VudE9yZGVyKCVNZXRo
b2RzKTsKKyAgICAgICAgICAgIGZvcmVhY2ggbXkgJG1ldGhvZCAoc29ydCAkdG90YWxTb3J0
IGtleXMgJU1ldGhvZHMpIHsKKyAgICAgICAgICAgICAgIHByaW50ICIgICAgICAkbWV0aG9k
OlxuIjsKKyAgICAgICAgICAgICAgIG15ICRzb3J0ID0gQ291bnRPcmRlcigleyRNZXRob2Rz
eyRtZXRob2R9fSk7CisgICAgICAgICAgICAgICBmb3JlYWNoIG15ICRpcCAoc29ydCAkc29y
dCBrZXlzICV7JE1ldGhvZHN7JG1ldGhvZH19KSB7CisgICAgICAgICAgICAgICAgICBteSAk
bmFtZSA9IExvb2t1cElQKCRpcCk7CisgICAgICAgICAgICAgICAgICBteSAkdmFsICA9ICh2
YWx1ZXMgJXskVXNlcnN7JHVzZXJ9eyRpcH19KVswXTsKKyAgICAgICAgICAgICAgICAgIHBy
aW50ICIgICAgICAgICAkbmFtZTogIiAuIHRpbWVzcGx1cmFsKCR2YWwpOworICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgfQorICAgICAgfQorICAgfQorfQor
CitpZiAoa2V5cyAlUmVmdXNlZEF1dGhlbnRpY2F0aW9uKSB7CisgICBwcmludCAiXG5BdXRo
ZW50aWNhdGlvbiByZWZ1c2VkOlxuIjsKKyAgIGZvcmVhY2ggbXkgJFJlYXNvbiAoc29ydCB7
JGEgY21wICRifSBrZXlzICVSZWZ1c2VkQXV0aGVudGljYXRpb24pIHsKKyAgICAgIHByaW50
ICIgICAkUmVhc29uIDogIiAuIHRpbWVzcGx1cmFsKCRSZWZ1c2VkQXV0aGVudGljYXRpb257
JFJlYXNvbn0pOworICAgfQorfQorCitpZiAoa2V5cyAlS3JiQXV0RmFpbCkgeworICAgcHJp
bnQgIlxuIEZhaWxlZCBwYW1fa3JiNSBhdXRoZW50aWNhdGlvbjpcbiI7CisgICBmb3JlYWNo
IG15ICRVc2VyIChzb3J0IGtleXMgJUtyYkF1dEZhaWwpIHsKKyAgICAgIHByaW50ICIgICAk
VXNlcjogIiAuIHRpbWVzcGx1cmFsKCRLcmJBdXRGYWlseyRVc2VyfSk7CisgICB9Cit9CisK
K2lmIChrZXlzICVLcmJBdXRFcnIpIHsKKyAgIHByaW50ICJcbiBwYW1fa3JiNSBhdXRoZW50
aWNhdGlvbiBlcnJvcnM6XG4iOworICAgZm9yZWFjaCBteSAkRXJyb3IgKHNvcnQga2V5cyAl
S3JiQXV0RXJyKSB7CisgICAgICBwcmludCAiICAgJEVycm9yOiAiIC4gdGltZXNwbHVyYWwo
JEtyYkF1dEVycnskRXJyb3J9KTsKKyAgIH0KK30KKworCitpZiAoa2V5cyAlS3JiRXJyKSB7
CisgICBwcmludCAiXG4gcGFtX2tyYjUgZXJyb3JzOlxuIjsKKyAgIGZvcmVhY2ggbXkgJEVy
cm9yIChzb3J0IGtleXMgJUtyYkVycikgeworICAgICAgcHJpbnQgIiAgICRFcnJvcjogIiAu
IHRpbWVzcGx1cmFsKCRLcmJFcnJ7JEVycm9yfSk7CisgICB9Cit9CisKKworaWYgKGtleXMg
JURpc2Nvbm5lY3RSZWNlaXZlZCkgeworICAgcHJpbnQgIlxuUmVjZWl2ZWQgZGlzY29ubmVj
dDpcbiI7CisgICBmb3JlYWNoIG15ICRSZWFzb24gKHNvcnQgeyRhIGNtcCAkYn0ga2V5cyAl
RGlzY29ubmVjdFJlY2VpdmVkKSB7CisgICAgICBteSAkVG90YWwgPSAwOworICAgICAgcHJp
bnQgIiAgICRSZWFzb24iOworICAgICAgZm9yZWFjaCBteSAkSG9zdCAoc29ydCB7JGEgY21w
ICRifSBrZXlzICV7JERpc2Nvbm5lY3RSZWNlaXZlZHskUmVhc29ufX0pIHsKKyAgICAgICAg
ICRUb3RhbCArPSAkRGlzY29ubmVjdFJlY2VpdmVkeyRSZWFzb259eyRIb3N0fTsKKyAgICAg
ICAgaWYoICREZXRhaWwgPiAwICkgeworICAgICAgICAgICAgcHJpbnQgIlxuICAgICAgJEhv
c3QgOiAkRGlzY29ubmVjdFJlY2VpdmVkeyRSZWFzb259eyRIb3N0fSBUaW1lKHMpIjsKKyAg
ICAgICAgfQorICAgICAgfQorICAgICAgaWYoICREZXRhaWwgPiAwICkgeworICAgICAgICAg
cHJpbnQgIlxuIjsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgICBwcmludCAiIDogIiAuIHRp
bWVzcGx1cmFsKCRUb3RhbCk7CisgICAgICB9CisgICB9Cit9CisKK2lmICgkI1NjYW5uZWQg
Pj0gMCkgeworICAgcHJpbnQgIlxuU2Nhbm5lZCBmcm9tOlxuIjsKKyAgIGZvcmVhY2ggbXkg
JFRoaXNPbmUgKHNvcnQgU29ydElQIEBTY2FubmVkKSB7CisgICAgICBwcmludCAiICAgIiAu
IExvb2t1cElQKCRUaGlzT25lKSAuICJcbiI7CisgICB9Cit9CisKK2lmIChrZXlzICVSZWZ1
c2VkQ29ubmVjdGlvbnMpIHsKKyAgIG15ICRvdXRwdXQ7CisgICBmb3JlYWNoIG15ICRiYWRn
dXkgKHNvcnQgeyRhIGNtcCAkYn0ga2V5cyAlUmVmdXNlZENvbm5lY3Rpb25zICkgeworICAg
ICAgaWYgKCRSZWZ1c2VkQ29ubmVjdGlvbnNUaHJlc2hvbGQgPT0gMCB8fCAkRGV0YWlsID4g
NSB8fCAkUmVmdXNlZENvbm5lY3Rpb25zeyRiYWRndXl9ID49ICRSZWZ1c2VkQ29ubmVjdGlv
bnNUaHJlc2hvbGQpIHsKKyAgICAgICAgJG91dHB1dCAuPSAiICAgICAgJGJhZGd1eTogIiAu
IHRpbWVzcGx1cmFsKCRSZWZ1c2VkQ29ubmVjdGlvbnN7JGJhZGd1eX0pOworICAgICAgfQor
ICAgfQorICAgaWYgKCRvdXRwdXQgbmUgJycpIHsKKyAgICAgcHJpbnQgIlxuUmVmdXNlZCBp
bmNvbWluZyBjb25uZWN0aW9uczpcbiI7CisgICAgIHByaW50ICRvdXRwdXQ7CisgICB9Cit9
CisKK2lmIChrZXlzICVQYW1SZWxlYXNlRmFpbCkgeworICAgcHJpbnQgIlxuQ2Fubm90IHJl
bGVhc2UgUEFNIGF1dGhlbnRpY2F0aW9uOlxuIjsKKyAgIGZvcmVhY2ggbXkgJEVycm9yIChz
b3J0IHskYSBjbXAgJGJ9IGtleXMgJVBhbVJlbGVhc2VGYWlsKSB7CisgICAgICBwcmludCAi
ICAgJEVycm9yIDogIiAuIHRpbWVzcGx1cmFsKCRQYW1SZWxlYXNlRmFpbHskRXJyb3J9KTsK
KyAgIH0KK30KKworaWYgKGtleXMgJVNoYWRvd0luZm8pIHsKKyAgIHByaW50ICJcbkNvdWxk
IG5vdCBnZXQgc2hhZG93IGluZm9ybWF0aW9uIGZvcjpcbiI7CisgICBmb3JlYWNoIG15ICRF
cnJvciAoc29ydCB7JGEgY21wICRifSBrZXlzICVTaGFkb3dJbmZvKSB7CisgICAgICBwcmlu
dCAiICAgJEVycm9yIDogIiAuIHRpbWVzcGx1cmFsKCRTaGFkb3dJbmZveyRFcnJvcn0pOwor
ICAgfQorfQorCitpZiAoa2V5cyAlUGFtRXJyb3IpIHsKKyAgIHByaW50ICJcbkVycm9yIGlu
IFBBTSBhdXRoZW50aWNhdGlvbjpcbiI7CisgICBmb3JlYWNoIG15ICRFcnJvciAoc29ydCB7
JGEgY21wICRifSBrZXlzICVQYW1FcnJvcikgeworICAgICAgcHJpbnQgIiAgICRFcnJvciA6
ICIgLiB0aW1lc3BsdXJhbCgkUGFtRXJyb3J7JEVycm9yfSk7CisgICB9Cit9CisKK2lmIChr
ZXlzICVQYW1DaHJvb3QpIHsKKyAgIHByaW50ICJcblBBTSBjaHJvb3Q6XG4iOworICAgZm9y
ZWFjaCBteSAkUmVhc29uIChzb3J0IHskYSBjbXAgJGJ9IGtleXMgJVBhbUNocm9vdCkgewor
ICAgICAgcHJpbnQgIiAgICRSZWFzb24gOiAiIC4gdGltZXNwbHVyYWwoJFBhbUNocm9vdHsk
UmVhc29ufSk7CisgICB9Cit9CisKK2lmIChrZXlzICVUVFlNb2Rlc0ZhaWwpIHsKKyAgIHBy
aW50ICJcblNldHRpbmcgdHR5IG1vZGVzIGZhaWxlZDpcbiI7CisgICBmb3JlYWNoIG15ICRS
ZWFzb24gKHNvcnQgeyRhIGNtcCAkYn0ga2V5cyAlVFRZTW9kZXNGYWlsKSB7CisgICAgICBw
cmludCAiICAgJFJlYXNvbiA6ICIgLiB0aW1lc3BsdXJhbCgkVFRZTW9kZXNGYWlseyRSZWFz
b259KTsKKyAgIH0KK30KKworaWYgKCRzZnRwUmVxdWVzdHMgPiAwKSB7CisgICBwcmludCAi
XG5TRlRQIHN1YnN5c3RlbSByZXF1ZXN0czogJHNmdHBSZXF1ZXN0cyBUaW1lKHMpXG4iOwor
ICAgaWYgKCREZXRhaWwgPj0gNTApIHsKKyAgICAgIGZvcmVhY2ggbXkgJHJvb3QgKHNvcnQg
eyRhIGNtcCAkYn0ga2V5cyAlQ2hyb290KSB7CisgICAgICAgICBwcmludCAiICAgQ2hyb290
OiAkcm9vdCA6ICIgLiB0aW1lc3BsdXJhbCgkQ2hyb290eyRyb290fSk7CisgICAgICB9Cisg
ICB9CisgICBpZiAoJERldGFpbCA+PSAwKSB7CisgICAgICBmb3JlYWNoIG15ICRkaXIgKHNv
cnQgeyRhIGNtcCAkYn0ga2V5cyAlQ2xvc2VEaXIpIHsKKyAgICAgICAgIGlmICgkQ2xvc2VE
aXJ7JGRpcn0gIT0gJE9wZW5EaXJ7JGRpcn0gfHwgJERldGFpbCA+PSA0MCkgeworICAgICAg
ICAgICAgIHByaW50ICIgICBEaXJlY3RvcnkgJGRpcjogb3BlbmVkL2Nsb3NlZCAkT3BlbkRp
cnskZGlyfS8kQ2xvc2VEaXJ7JGRpcn0gVGltZShzKVxuIjsKKyAgICAgICAgICAgICAjIE5v
dGU6IHRoaXMgbnVtYmVyIG1pZ2h0IG5vdCBtYXRjaCBpZiB0aGUgb3Blbi9jbG9zZXMgc3Bh
biBsb2cgd2luZG93cy4uLiIKKyAgICAgICAgIH0KKyAgICAgIH0KKyAgIH0KKyAgIGlmICgk
RGV0YWlsID49IDMwKSB7CisgICAgICBmb3JlYWNoIG15ICRkZXRhaWxzIChzb3J0IHskYSBj
bXAgJGJ9IGtleXMgJUNsb3NlRmlsZVJlYWRXcml0ZSkgeworICAgICAgICAgaWYgKG15ICgk
ZmlsZSwkcmVhZCwkd3JpdHRlbikgPSAoJGRldGFpbHMgPX4gL14oLiopLChcZCspLChcZCsp
JC8pKSB7CisgICAgICAgICAgICBpZiAoJHJlYWQgfHwgJHdyaXR0ZW4gfHwgJERldGFpbCA+
PSA0MCkgeworICAgICAgICAgICAgICAgcHJpbnQgIiAgIFJlYWQvV3JvdGUgJHJlYWQvJHdy
aXR0ZW4gYnl0ZShzKSBmcm9tIGZpbGUgJGZpbGVcbiI7CisgICAgICAgICAgICB9CisgICAg
ICAgICB9CisgICAgICB9CisgICB9CisgICBpZiAoJERldGFpbCA+PSA2MCkgeworICAgICAg
Zm9yZWFjaCBteSAkZGV0YWlscyAoc29ydCB7JGEgY21wICRifSBrZXlzICVPcGVuRmlsZSkg
eworICAgICAgICAgaWYgKG15ICgkZmlsZSwkZmxhZ3MsJG1vZGUpID0gKCRkZXRhaWxzID1+
IC9eKC4qKTooW146XSopOihcZCspJC8pKSB7CisgICAgICAgICAgICBwcmludCAiICAgT3Bl
bmVkIChtb2RlOiAkbW9kZSwgZmxhZ3M6ICRmbGFncykgZmlsZSAkZmlsZVxuIjsKKyAgICAg
ICAgIH0KKyAgICAgIH0KKyAgIH0KKyAgIGlmICgkRGV0YWlsID49IDcwKSB7CisgICAgICBm
b3JlYWNoIG15ICRwYXRoIChzb3J0IHskYSBjbXAgJGJ9IGtleXMgJVJlYWxQYXRoKSB7Cisg
ICAgICAgICBwcmludCAiICAgUmVhbHBhdGggJHBhdGhcbiI7CisgICAgICB9CisgICB9Cisg
ICBpZiAoJERldGFpbCA+PSA1MCkgeworICAgICAgZm9yZWFjaCBteSAkZGV0YWlscyAoc29y
dCB7JGEgY21wICRifSBrZXlzICVTZXRNb2R0aW1lKSB7CisgICAgICAgICBpZiAobXkgKCRt
b2R0aW1lLCRmaWxlKSA9ICgkZGV0YWlscyA9fiAvXihbXixdKiksKC4qKSQvKSkgeworICAg
ICAgICAgICAgcHJpbnQgIiAgIFNldCBtb2R0aW1lICRtb2R0aW1lIGZvciBmaWxlICRmaWxl
XG4iOworICAgICAgICAgfQorICAgICAgfQorICAgfQorICAgaWYgKCREZXRhaWwgPj0gNzAp
IHsKKyAgICAgIGZvcmVhY2ggbXkgJHBhdGggKHNvcnQgeyRhIGNtcCAkYn0ga2V5cyAlU3Rh
dCkgeworICAgICAgICAgcHJpbnQgIiAgIFN0YXQ6ICRwYXRoIDogIiAuIHRpbWVzcGx1cmFs
KCRTdGF0eyRwYXRofSk7CisgICAgICB9CisgICB9CisgICBpZiAoJERldGFpbCA+PSA0MCkg
eworICAgICAgaWYgKCRTdGF0dXNOb1N1Y2hGaWxlKSB7CisgICAgICAgICBwcmludCAiICAg
U2VudCBzdGF0dXMgTm8gc3VjaCBmaWxlOiAiIC4gdGltZXNwbHVyYWwoJFN0YXR1c05vU3Vj
aEZpbGUpOworICAgICAgfQorICAgfQorICAgaWYgKCREZXRhaWwgPj0gMCkgeworICAgICAg
aWYgKCRCeXRlc1NlbnQgfHwgJEJ5dGVzUmVjZWl2ZWQpIHsKKyAgICAgICAgIHByaW50ICIg
ICBUcmFuc2ZlcnJlZDogc2VudC9yZWNlaXZlZCAkQnl0ZXNTZW50LyRCeXRlc1JlY2VpdmVk
IGJ5dGUocylcbiI7CisgICAgICB9CisgICB9CisgICBpZiAoJERldGFpbCA+PSA1MCkgewor
ICAgICAgZm9yZWFjaCBteSAkY2xpZW50IChzb3J0IHskYSBjbXAgJGJ9IGtleXMgJUNsaWVu
dFZlcnMpIHsKKyAgICAgICAgIHByaW50ICIgICBDbGllbnQgdmVyc2lvbiAkY2xpZW50IGNv
bm5lY3RlZCAiIC4gdGltZXNwbHVyYWwoJENsaWVudFZlcnN7JGNsaWVudH0pOworICAgICAg
fQorICAgfQorfQorCitpZiAoa2V5cyAlQ2htb2RFcnIpIHsKKyAgcHJpbnQgIlxuQ2htb2Qg
ZXJyb3JzOlxuIjsKKyAgZm9yZWFjaCAoc29ydCBrZXlzICVDaG1vZEVycikgeworICAgIG15
ICgkRmlsZSwkUGVybSwkV2h5KT0gc3BsaXQgIiwiOworICAgIHByaW50ICIgICAiIC4gJEZp
bGUgLiAiICIgLiAkUGVybSAuICIgZmFpbGVkKCIgLiAkV2h5IC4gIik6ICIgLiB0aW1lc3Bs
dXJhbCgkQ2htb2RFcnJ7IiRGaWxlLCRQZXJtLCRXaHkifSk7CisgIH0KK30KKworaWYgKGtl
eXMgJUNob3duRXJyKSB7CisgIHByaW50ICJcbkNob3duIGVycm9yczpcbiI7CisgIGZvcmVh
Y2ggKGtleXMgJUNob3duRXJyKSB7CisgICAgbXkgKCRGaWxlLCRGcm9tLCRUbywkV2h5KT0g
c3BsaXQgIiwiOworICAgIHByaW50ICIgICAiIC4gJEZpbGUgLiAiICIgLiAkRnJvbSAuICIg
IiAuJFRvIC4gIiBmYWlsZWQoIiAuICRXaHkgLiAiKTogIiAuIHRpbWVzcGx1cmFsKCRDaG1v
ZEVycnsiJEZpbGUsJEZyb20sJFRvLCRXaHkifSk7CisgIH0KK30KKworaWYgKCAoJERldGFp
bCA9PSA3ICYmIGtleXMgJUtyYl9yZWFsbSA+IDEpIHx8ICgkRGV0YWlsID4gNyAmJiBrZXlz
ICVLcmJfcmVhbG0pICl7CisgIHByaW50ICJcblN1Y2Nlc3NmdWwgS2VyYmVyb3MgQXV0aGVu
dGljYXRpb24gZnJvbSAiLChzY2FsYXIga2V5cyAlS3JiX3JlYWxtKSwiIHJlYWxtOlxuIjsK
KyAgZm9yZWFjaCBteSAkcmVhbG0gKHNvcnQga2V5cyAlS3JiX3JlYWxtKSB7CisgICAgaWYo
JERldGFpbCA+IDkpeworICAgICAgcHJpbnQgIiAgICIsJHJlYWxtLCI6XG4iOworICAgICAg
Zm9yZWFjaCBteSAkdXNlcihzb3J0IGtleXMgJXskS3JiX3JlYWxteyRyZWFsbX19KXsKKyAg
ICAgICAgcHJpbnQgIiAgICAgIiwkdXNlciwiOiAiIC4gdGltZXNwbHVyYWwoJEtyYl9yZWFs
bXskcmVhbG19eyR1c2VyfSk7CisgICAgICB9CisgICAgfWVsc2V7CisgICAgICBwcmludCAi
ICAgIiwkcmVhbG0sIjogIi4gKHNjYWxhciBrZXlzICV7JEtyYl9yZWFsbXskcmVhbG19fSkg
LiAiIFVzZXIocylcbiI7CisgICAgfQorICB9Cit9CisKK2lmIChrZXlzICVPdGhlckxpc3Qp
IHsKKyAgIHByaW50ICJcbioqVW5tYXRjaGVkIEVudHJpZXMqKlxuIjsKKyAgIHByaW50ICIk
XyA6ICIgLiB0aW1lc3BsdXJhbCgkT3RoZXJMaXN0eyRffSkgZm9yZWFjaCBzb3J0IGtleXMg
JU90aGVyTGlzdDsKK30KKworZXhpdCgwKTsKKworIyB2aTogc2hpZnR3aWR0aD0zIHRhYnN0
b3A9MyBzeW50YXg9cGVybCBldAorIyBMb2NhbCBWYXJpYWJsZXM6CisjIG1vZGU6IHBlcmwK
KyMgcGVybC1pbmRlbnQtbGV2ZWw6IDMKKyMgaW5kZW50LXRhYnMtbW9kZTogbmlsCisjIEVu
ZDoKZGlmZiAtLWdpdCBhL3NjcmlwdHMvc2VydmljZXMvc2VjdXJlIGIvc2NyaXB0cy9zZXJ2
aWNlcy9zZWN1cmUKaW5kZXggODg5NzUyMC4uMDhlZjRlZCAxMDA2NDQKLS0tIGEvc2NyaXB0
cy9zZXJ2aWNlcy9zZWN1cmUKKysrIGIvc2NyaXB0cy9zZXJ2aWNlcy9zZWN1cmUKQEAgLTEx
Myw2ICsxMTMsNyBAQCB3aGlsZSAoZGVmaW5lZChteSAkVGhpc0xpbmUgPSA8U1RESU4+KSkg
ewogICAgICAgKCAkVGhpc0xpbmUgPX4gL2NvbS5hcHBsZS5TZWN1cml0eVNlcnZlcjogRW50
ZXJpbmcgc2VydmljZS8pIG9yCiAgICAgICAoICRUaGlzTGluZSA9fiAvXih4aW5ldGR8eGlu
ZXRkLWlwdjYpXFtcZCtcXTogRVhJVDogLykgb3IKICAgICAgICggJFRoaXNMaW5lID1+IC9e
Y3JvbmRcKFx3K1wpXFtcZCtcXTogc2Vzc2lvbiAvKSBvcgorICAgICAgKCAkVGhpc0xpbmUg
PX4gL15kcm9wYmVhclxbXGQrXF06IC8pIG9yCiAgICAgICAoICRUaGlzTGluZSA9fiAvcGFt
X3N5c3RlbWRcKC4rOnNlc3Npb25cKTogTW92aW5nLykgb3IKICAgICAgICggJFRoaXNMaW5l
ID1+IC9ec3NoZFwoXHcrXClcW1xkK1xdOiBhdXRoZW50aWNhdGlvbiBmYWlsdXJlLykgb3IK
ICAgICAgICggJFRoaXNMaW5lID1+IC9ec3NoZFwoXHcrXClcW1xkK1xdOiBjaGVjayBwYXNz
OyB1c2VyIHVua25vd24vKSBvcgo=

--------------016E7JHpD6SENPqBzjkTsAmL--

--------------ms070605030602030004030409
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="smime.p7s"
Content-Description: S/MIME Cryptographic Signature

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCC
CmMwggUVMIID/aADAgECAhEArxwEsqyM/5sAAAAAUc4Y4zANBgkqhkiG9w0BAQsFADCBtDEU
MBIGA1UEChMLRW50cnVzdC5uZXQxQDA+BgNVBAsUN3d3dy5lbnRydXN0Lm5ldC9DUFNfMjA0
OCBpbmNvcnAuIGJ5IHJlZi4gKGxpbWl0cyBsaWFiLikxJTAjBgNVBAsTHChjKSAxOTk5IEVu
dHJ1c3QubmV0IExpbWl0ZWQxMzAxBgNVBAMTKkVudHJ1c3QubmV0IENlcnRpZmljYXRpb24g
QXV0aG9yaXR5ICgyMDQ4KTAeFw0yMDA3MjkxNTQ4MzBaFw0yOTA2MjkxNjE4MzBaMIGlMQsw
CQYDVQQGEwJVUzEWMBQGA1UEChMNRW50cnVzdCwgSW5jLjE5MDcGA1UECxMwd3d3LmVudHJ1
c3QubmV0L0NQUyBpcyBpbmNvcnBvcmF0ZWQgYnkgcmVmZXJlbmNlMR8wHQYDVQQLExYoYykg
MjAxMCBFbnRydXN0LCBJbmMuMSIwIAYDVQQDExlFbnRydXN0IENsYXNzIDIgQ2xpZW50IENB
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxDKNQtCeGZ1bkFoQTLUQACG5B0je
rm6A1v8UUAboda9rRo7npU+tw4yw+nvgGZH98GOtcUnzqBwfqzQZIE5LVOkAk75wCDHeiVOs
V7wk7yqPQtT36pUlXRR20s2nEvobsrRcYUC9X91Xm0RV2MWJGTxlPbno1KUtwizT6oMxogg8
XlmuEi4qCoxe87MxrgqtfuywSQn8py4iHmhkNJ0W46Y9AzFAFveU9ksZNMmX5iKcSN5koIML
WAWYxCJGiQX9o772SUxhAxak+AqZHOLAxn5pAjJXkAOvAJShudzOr+/0fBjOMAvKh/jVXx9Z
UdiLC7k4xljCU3zaJtTb8r2QzQIDAQABo4IBLTCCASkwDgYDVR0PAQH/BAQDAgGGMB0GA1Ud
JQQWMBQGCCsGAQUFBwMEBggrBgEFBQcDAjASBgNVHRMBAf8ECDAGAQH/AgEAMDMGCCsGAQUF
BwEBBCcwJTAjBggrBgEFBQcwAYYXaHR0cDovL29jc3AuZW50cnVzdC5uZXQwMgYDVR0fBCsw
KTAnoCWgI4YhaHR0cDovL2NybC5lbnRydXN0Lm5ldC8yMDQ4Y2EuY3JsMDsGA1UdIAQ0MDIw
MAYEVR0gADAoMCYGCCsGAQUFBwIBFhpodHRwOi8vd3d3LmVudHJ1c3QubmV0L3JwYTAdBgNV
HQ4EFgQUCZGluunyLip1381+/nfK8t5rmyQwHwYDVR0jBBgwFoAUVeSB0RGAvtiJuQijMfmh
JAkWuXAwDQYJKoZIhvcNAQELBQADggEBAD+96RB180Kn0WyBJqFGIFcSJBVasgwIf91HuT9C
k6QKr0wR7sxrMPS0LITeCheQ+Xg0rq4mRXYFNSSDwJNzmU+lcnFjtAmIEctsbu+UldVJN8+h
APANSxRRRvRocbL+YKE3DyX87yBaM8aph8nqUvbXaUiWzlrPEJv2twHDOiGlyEPAhJ0D+MU0
CIfLiwqDXKojK+n/uN6nSQ5tMhWBMMgn9MD+zxp1zIe7uhGhgmVQBZ/zRZKHoEW4Gedf+EYK
W8zYXWsWkUwVlWrj5PzeBnT2bFTdxCXwaRbW6g4/Wb4BYvlgnx1AszH3EJwv+YpEZthgAk4x
ELH2l47+IIO9TUowggVGMIIELqADAgECAhEAyiICIp1F+xAAAAAATDn2WDANBgkqhkiG9w0B
AQsFADCBpTELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUVudHJ1c3QsIEluYy4xOTA3BgNVBAsT
MHd3dy5lbnRydXN0Lm5ldC9DUFMgaXMgaW5jb3Jwb3JhdGVkIGJ5IHJlZmVyZW5jZTEfMB0G
A1UECxMWKGMpIDIwMTAgRW50cnVzdCwgSW5jLjEiMCAGA1UEAxMZRW50cnVzdCBDbGFzcyAy
IENsaWVudCBDQTAeFw0yMDEyMTQyMDQzMDlaFw0yMzEyMTUyMTEzMDhaMIGTMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEmMCQGA1UEChMd
Tm9ydGhXZXN0IFJlc2VhcmNoIEFzc29jaWF0ZXMxNTAWBgNVBAMTD09yaW9uIFBvcGxhd3Nr
aTAbBgkqhkiG9w0BCQEWDm9yaW9uQG53cmEuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
MIIBCgKCAQEAxBJrIv9eGtrQLaU9pIGsIGBTiW0vZIYmz+5Eoa69sj6t6QANvg0IuVgWZajH
2fu8R+7m/AbZ8Wsuzz+ovtDHiVqUGvGzYyN9a5Ssx94SwNp9zLPfdCRMdh3zJB7gc4GYE/fA
kMkieO8u05f/hSyf9zU5gpjl7SW6p8IjkoyxNOr7KCbI4CQ3+1LG8pn6tz/QJwQ/BJZa4dE0
asXfNlZf5kZtyWtJhwub76zH5uXeODDxY3RooWj1l4V2fQCoFX2ov1ENUW4hRov1cMAD2QHJ
KL0Boir36wISvzq8Z65MSMCGNRiWwRaclVwVZ+QYnlhGZ0g6tMvxVrK+sHnxxr/LOwIDAQAB
o4IBfzCCAXswDgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcD
BDBCBgNVHSAEOzA5MDcGC2CGSAGG+mwKAQQCMCgwJgYIKwYBBQUHAgEWGmh0dHA6Ly93d3cu
ZW50cnVzdC5uZXQvcnBhMGoGCCsGAQUFBwEBBF4wXDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3AuZW50cnVzdC5uZXQwNQYIKwYBBQUHMAKGKWh0dHA6Ly9haWEuZW50cnVzdC5uZXQvMjA0
OGNsYXNzMnNoYTIuY2VyMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6Ly9jcmwuZW50cnVzdC5u
ZXQvY2xhc3MyY2EuY3JsMBkGA1UdEQQSMBCBDm9yaW9uQG53cmEuY29tMB8GA1UdIwQYMBaA
FAmRpbrp8i4qdd/Nfv53yvLea5skMB0GA1UdDgQWBBSpChQTknhqMfb9Exia9G14q4j9ZzAJ
BgNVHRMEAjAAMA0GCSqGSIb3DQEBCwUAA4IBAQA15stihwBRGI8nFvZZalsmOHR954D+vrOZ
7cC0kl9K+S9u8j/E5nZd+A6PTKoDpAEYmPUYpe45tZLblnvfJC0yovSIIMTo1z3mRzldHYAt
ttjShH+M6s3xrqDtHfNAwt3TCf6H83sEpBi6wtbALfkIjKuDitgkdZsyUURoeglaaqVRhi2L
5wOOChQAyfsumjT1Gzk9qRtiv8aXzWiLeVKhzRO7a6o0jSdg1skyYKx3SPbIU4po/aT2Ph7V
niN0oqJHI11Fg6BfAey12aj5Uy96ztotiZRQuhWZPOc4d3df2N8RsdWViBp4jXt2hQjNr0Kw
pUPWRO/PENBVS1Uo1oXfMYIEYjCCBF4CAQEwgbswgaUxCzAJBgNVBAYTAlVTMRYwFAYDVQQK
Ew1FbnRydXN0LCBJbmMuMTkwNwYDVQQLEzB3d3cuZW50cnVzdC5uZXQvQ1BTIGlzIGluY29y
cG9yYXRlZCBieSByZWZlcmVuY2UxHzAdBgNVBAsTFihjKSAyMDEwIEVudHJ1c3QsIEluYy4x
IjAgBgNVBAMTGUVudHJ1c3QgQ2xhc3MgMiBDbGllbnQgQ0ECEQDKIgIinUX7EAAAAABMOfZY
MA0GCWCGSAFlAwQCAQUAoIICdzAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3
DQEJBTEPFw0yMjEwMjExNTAxNTlaMC8GCSqGSIb3DQEJBDEiBCAT6Mswlmh2vFkrdJPJZOm/
kp8yxRTARnlBr7mR1/ZhGDBsBgkqhkiG9w0BCQ8xXzBdMAsGCWCGSAFlAwQBKjALBglghkgB
ZQMEAQIwCgYIKoZIhvcNAwcwDgYIKoZIhvcNAwICAgCAMA0GCCqGSIb3DQMCAgFAMAcGBSsO
AwIHMA0GCCqGSIb3DQMCAgEoMIHMBgkrBgEEAYI3EAQxgb4wgbswgaUxCzAJBgNVBAYTAlVT
MRYwFAYDVQQKEw1FbnRydXN0LCBJbmMuMTkwNwYDVQQLEzB3d3cuZW50cnVzdC5uZXQvQ1BT
IGlzIGluY29ycG9yYXRlZCBieSByZWZlcmVuY2UxHzAdBgNVBAsTFihjKSAyMDEwIEVudHJ1
c3QsIEluYy4xIjAgBgNVBAMTGUVudHJ1c3QgQ2xhc3MgMiBDbGllbnQgQ0ECEQDKIgIinUX7
EAAAAABMOfZYMIHOBgsqhkiG9w0BCRACCzGBvqCBuzCBpTELMAkGA1UEBhMCVVMxFjAUBgNV
BAoTDUVudHJ1c3QsIEluYy4xOTA3BgNVBAsTMHd3dy5lbnRydXN0Lm5ldC9DUFMgaXMgaW5j
b3Jwb3JhdGVkIGJ5IHJlZmVyZW5jZTEfMB0GA1UECxMWKGMpIDIwMTAgRW50cnVzdCwgSW5j
LjEiMCAGA1UEAxMZRW50cnVzdCBDbGFzcyAyIENsaWVudCBDQQIRAMoiAiKdRfsQAAAAAEw5
9lgwDQYJKoZIhvcNAQEBBQAEggEAhePhSDfL94pCrFkVbFYpbHVqWXBXkUuqq/pkqwNoIycm
CnGk3EQiEAvFdB+sbXhZPk7CODFbG5eXV2wX93Q8moL/C9pmVeLrr1NBxo4ACMFTWTx81k1O
4NHK5Rjt9FwqdZGtQTr5v0VvB2GuGz4ITxqnimL0ZvNHakzLgu8AhcLnhy1R/TF9Q8SLUMlu
XOsDKqIcbGz8uLptYshf+TE8ZYA1SCOhIXc/PVHfv/ck7o1MnY9gsuIA3fFMhFbH4L1R2UNR
BcAO7C/IY169Wtttn/nRzNdgQNIo45HBJc4if8JUvOKWDcaPieGC02TNHh70EgGyCm1zNCew
tqqwixphfgAAAAAAAA==

--------------ms070605030602030004030409--


--===============7341575555909319411==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline


--===============7341575555909319411==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Logwatch-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/logwatch-devel

--===============7341575555909319411==--