Skip to content

Releases: meejah/txtorcon

v0.18.0

11 Jan 21:31
v0.18.0
Compare
Choose a tag to compare
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

txtorcon 0.18.0 is released, improving error-reporting when you have
SAFECOOKIE or COOKIE authentication turned on but can't read the file.

   * https://github.com/meejah/txtorcon/issues/200

You can download the release from PyPI or GitHub (or of
course "pip install txtorcon"):

   https://pypi.python.org/pypi/txtorcon/0.18.0
   https://github.com/meejah/txtorcon/releases/tag/v0.18.0

Releases are also available from the hidden service:

   http://timaq4ygg2iegci7.onion/txtorcon-0.18.0.tar.gz
   http://timaq4ygg2iegci7.onion/txtorcon-0.18.0.tar.gz.asc

You can verify the sha256sum of both by running the following 4 lines
in a shell wherever you have the files downloaded:

cat <<EOF | sha256sum --check
12be80f1d5e2893378c6e8c752cf159479f868f8424e16b34b75cd679a0ab171  dist/txtorcon-0.18.0.tar.gz
cffe063dbcedd9d344e88a572c0de39b0390562165a865efa27019260c2119f6  dist/txtorcon-0.18.0-py2-none-any.whl
EOF

thanks,
meejah
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQEcBAEBAgAGBQJYdp4sAAoJEMJgKAMSgGmnxCIH/iiFJdYtbSnShAktDrwMuL6K
tJN+AALrr6zIydjIVG4pNuGydoxqtmrpb/12xNn/c7noEWZpuuHd+hn/PRn+XNaA
Gh+q4922VKs3ZCFYFClVAkZFtT5iug7EKnB6n0IKt4Z+rVAzRTCpHqgnCmmavHP1
s55jkYc+emC/jzGag22sD7HnPYHjkuKV+qy1Y6mF1//oD9FFhJUXvn5FVjf9cNb/
xta7HB3AMXp/8qdpURPJaJBjWOg1BxSVBngZXYiUJkkoOReOJU1ngDoU0J7VjQJq
Uyi2ijwylUnK6/7qLLS8pwyX/UmWgV7NeQgIr00Shsm7Jv+zkk0QhXbnwJo8pRQ=
=oJqn
-----END PGP SIGNATURE-----

v0.17.0

04 Oct 21:50
v0.17.0
Compare
Choose a tag to compare
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I'm pleased to announce txtorcon 0.17.0, largely to fix a bug with
Unix-socket control-ports:

 * issue 187: fix unix-socket control endpoints
 * sometimes mapping streams to hostnames wasn't working properly
 * backwards-compatibility API for `socks_hostname` was incorrectly named

You can download the release from PyPI or GitHub (or of
course "pip install txtorcon"):

   https://pypi.python.org/pypi/txtorcon/0.17.0
   https://github.com/meejah/txtorcon/releases/tag/v0.17.0

Releases are also available from the hidden service:

   http://timaq4ygg2iegci7.onion/txtorcon-0.17.0.tar.gz
   http://timaq4ygg2iegci7.onion/txtorcon-0.17.0.tar.gz.asc

You can verify the sha256sum of both by running the following 4 lines
in a shell wherever you have the files downloaded:

cat <<EOF | sha256sum --check
5e321387ab56f22d184b18d91a60c30dd1f72575d9e32ff3614ef911bce49daa  txtorcon-0.17.0.tar.gz
e1da13cc43328e040335d091e2ef15717a2b836b48fbede31fc6a7e332b699b4  txtorcon-0.17.0-py2-none-any.whl
EOF

thanks,
meejah
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQEcBAEBAgAGBQJX9B8gAAoJEMJgKAMSgGmnCLoH/jZNzTG4QRRKk54XkFCbSmBh
Qg0YAmWVa4iFMkjidawyfZ8Cocje+yROMiuvH2VWNCcI809q96TB06caNJS0w5c3
I10i9N9xY2S13/yVzW/izW3HMPR+Sdi0Hod9UGTQ0F2Vpcs+g8bpPyKvMK+mPm+L
P0QwyejOAO/FzTndA73T5o2bVKdR3NkK1EfY0FRTjQsD71UZlVJa4AK828v1EMi3
0oNXDny+H9xzJu/i03zFX3zSL1jb69KCxkLyUBIuj5Vg+3by8FwbBa1G3Ehcs70C
RV6ew6WLa0Ty7fnUBy18Z3gFx9+4Ew/Eq/t7weVgRiW0VCAHwgOKx0D4wqSMeH8=
=nyB6
-----END PGP SIGNATURE-----

v0.16.1

01 Sep 00:32
v0.16.1
Compare
Choose a tag to compare
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I'm very happy to announce txtorcon 0.16.1 which adds a couple minor
features to help support using Foolscap and Tahoe-LAFS over Tor.

 * issue 172: give TorProcessProtocol a .quit method
 * issue 181: enable SOCKS5-over-unix-sockets for TorClientEndpoint
   (thanks to "dawuud"). Also adds TLS support over SOCKS5.

You can download the release from PyPI or GitHub (or of
course "pip install txtorcon"):

   https://pypi.python.org/pypi/txtorcon/0.16.1
   https://github.com/meejah/txtorcon/releases/tag/v0.16.1

Releases are also available from the hidden service:

   http://timaq4ygg2iegci7.onion/txtorcon-0.16.1.tar.gz
   http://timaq4ygg2iegci7.onion/txtorcon-0.16.1.tar.gz.asc

You can verify the sha256sum of both by running the following 4 lines
in a shell wherever you have the files downloaded:

cat <<EOF | sha256sum --check
d551837025bb9f4fdded58cd11025c6e42924b6eb20dcb2a49f182b3fd85f377  dist/txtorcon-0.16.1.tar.gz
e89a785f64f3544b19f7b1e6cebdbd6914475e0c60f508d9f0b6ce4a840769a7  dist/txtorcon-0.16.1-py2-none-any.whl
EOF

thanks,
meejah


p.s. There is no 0.16.0 because I tagged the wrong thing and noticed
     when pushing to PyPI.

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQEcBAEBAgAGBQJXx3TOAAoJEMJgKAMSgGmn7AEIAN5BQNqisxefMyKnHA8BCSZW
UJpXPagnftg33HF2v4ZG/2yQUh8sYMqEn/OI99g8yA++bZmG9H0lJixg0zs6V2XV
bX63zJ7d9lr+uu3D+crQNnmofcoUbLRX+Z7n5SWhgGtlsVqemIJton/cuedtnrXm
1E5VdjhxYIZ/2Qv0gTz7ZBYw0Hmkr24qwVufdblQHDov2SdM0kknInWqxFqVMLQd
/p0+PTEF6SMdemHFkOJ73sCbINg6qLB4cErKaFY14U2cnS3Y1pZLhlEKFTzbd8TU
SWtg1b9pn5s4Euq5ruYhNNIqVtQz/lrq0/ZQ+NKiLZ/L2rtw9xFY0nF1KhFTgLc=
=IMj2
-----END PGP SIGNATURE-----

v0.15.0: I'm happy to announce txtorcon 0.15.0:

26 Jul 23:24
v0.15.0
Compare
Choose a tag to compare

I'm happy to announce txtorcon 0.15.0:

  • added support for NULL control-port-authentication which is often
    appropriate when used with a UNIX domain socket
  • switched to https://docs.python.org/3/library/ipaddress.html instead of
    Google's ipaddr; the API should be the same from a user
    perspective but packagers and tutorials will want to change
    their instructions slightly (pip install ipaddress or apt-get install python-ipaddress are the new ways).
  • support the new ADD_ONION and DEL_ONION "ephemeral hidden services"
    commands in TorConfig
  • a first stealth-authentication implementation (for "normal" hidden
    services, not ephemeral)
  • bug-fix from https://github.com/david415 to raise
    ConnectionRefusedError instead of StopIteration when running out of
    SOCKS ports.
  • new feature from https://github.com/david415 adding a
    build_timeout_circuit method which provides a Deferred that
    callbacks only when the circuit is completely built and errbacks if
    the provided timeout expires. This is useful because
    :doc:TorState.build_circuit callbacks as soon as a Circuit
    instance can be provided (and then you'd use
    :doc:Circuit.when_built to find out when it's done building).
  • new feature from https://github.com/coffeemakr
    falling back to password authentication if cookie authentication
    isn't available (or fails, e.g. because the file isn't readable).
  • both TorState and TorConfig now have a .from_protocol class-method.
  • spec-compliant string-un-escaping from https://github.com/coffeemakr
  • fix #176

You can download the release from PyPI or GitHub (or of
course "pip install txtorcon"):

https://pypi.python.org/pypi/txtorcon/0.15.0
https://github.com/meejah/txtorcon/releases/tag/v0.15.0

Releases are also available from the hidden service:

http://timaq4ygg2iegci7.onion/txtorcon-0.15.0.tar.gz
http://timaq4ygg2iegci7.onion/txtorcon-0.15.0.tar.gz.asc

You can verify the sha256sum of both by running the following 4 lines
in a shell wherever you have the files downloaded:

cat <<EOF | sha256sum --check
f2e8cdb130aa48d63c39603c2404d9496c669fa8b4c724497ca6bfa7752a9475 dist/txtorcon-0.15.0.tar.gz
a359fb5e560263499400018262494378b3d347cd04a361adb08939df95ecedf6 dist/txtorcon-0.15.0-py2-none-any.whl
EOF

thanks,
meejah

v0.13.0

10 May 07:48
v0.13.0
Compare
Choose a tag to compare

I'm pleased to announce txtorcon 0.13.0. This adds several amazing
features, including levitation. Full list of improvements:

  • support basic and stealth hidden service authorization, and parse client_keys files.
  • 2x speedup for TorState parsing (mostly by lazy-parsing timestamps)
  • can now parse ~75000 microdescriptors/second per core of 3.4GHz Xeon E3
  • launch_tor now doesn't use a temporary torrc (command-line options instead)
  • tons of pep8 cleanups
  • several improvements to hidden-service configuration from sambuddhabasu1
  • populate valid signals from GETINFO signals/names from sambuddhabasu1

You can download the release from PyPI or GitHub (or of course "pip
install txtorcon"):

https://pypi.python.org/pypi/txtorcon/0.13.0
https://github.com/meejah/txtorcon/releases/tag/v0.13.0

Releases are also available from the hidden service:

http://timaq4ygg2iegci7.onion/txtorcon-0.13.0.tar.gz
http://timaq4ygg2iegci7.onion/txtorcon-0.13.0.tar.gz.asc

You can verify the sha256sum of both by running the following 4 lines
in a shell wherever you have the files downloaded:

cat <<EOF | sha256sum --check
3218d0fa0c22f49eee9324a5862b2d53ef77d5cb8e555e2bcffc24070aaeca7d txtorcon-0.13.0.tar.gz
de266cd1b35cc2d9f4600e510d9d3a5645771d36ce36a5888a2828594feb1ef0 txtorcon-0.13.0-py2-none-any.whl
EOF

thanks,
meejah

v0.12.0

03 Feb 21:16
v0.12.0
Compare
Choose a tag to compare

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I'm pleased to announce txtorcon 0.12.0. Full list of improvements:

  • doc, code and import cleanups from Kali Kaneko
  • HiddenServiceDirGroupReadable support
  • Issue #80: honour "ControlPort 0" in incoming TorConfig
    instance. The caller owns both pieces: you have to figure out when
    it's bootstraped, and are responsible for killing it off.
  • Issue #88: clarify documentation and fix appending to some config lists
  • If GeoIP data isn't loaded in Tor, it sends protocol errors; if
    txtorcon also hasn't got GeoIP data, the queries for country-code
    fail; this error is now ignored.
  • 100% unit-test coverage!
  • PyPy support (as in: all tests pass)
  • TCP4HiddenServiceEndpoint now waits for descriptor upload before
    the listen() call does its callback (this means when using "onion:"
    endpoint strings, or any of the endpoints APIs your hidden service
    is 100% ready for action when you receive the callback)
  • "TorControlProtocol now has an ".all_routers" member, which is a set() of all Routers
  • TimeIntervalCommaList from Tor config supported
  • documentation fix from "sammyshj"

You can download the release from PyPI or GitHub (or of
course "pip install txtorcon"):

https://pypi.python.org/pypi/txtorcon/0.12.0
https://github.com/meejah/txtorcon/releases/tag/v0.12.0

Releases are also available from the hidden service:

http://timaq4ygg2iegci7.onion/txtorcon-0.12.0.tar.gz
http://timaq4ygg2iegci7.onion/txtorcon-0.12.0.tar.gz.asc

You can verify the sha256sum of both by running the following 4 lines
in a shell wherever you have the files downloaded:

cat <<EOF | sha256sum --check
206b1bd8a840119c12d9b85d638ab9defec5b376436fa36be9139ab1ebc8cd78 txtorcon-0.12.0.tar.gz
4e4f6aa2ec677f6c27bff41d17888d31a979f6b831a20501101b39ca93ede9da txtorcon-0.12.0-py2-none-any.whl
EOF

thanks,
meejah
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iQEcBAEBAgAGBQJU0TWHAAoJEMJgKAMSgGmnDEoH/AriLbAyImmcfmRy5C2YcVth
eJyXRhHTXc6WBh0tBgryt88o5n55XAwiqNoAwslLvS4RS6w9NEzA9zusimuVYEZs
CV10NeC5PiXHJ6qDlcJ+FPsHhWk4zt49wGtaqyfGK/8aZm9enQwiMH6j9Iwx6il0
rLFwm7RoukPTW8dn3oR67QFYwdpHD7cCQW8e6uajpQuBCeNr2nljRpVLFM/6hueh
shIAAmPGfBQ2vR16QOQDyJMCLk7oKj0xtzok8O4fWBof1+h3JvMQqphEYlgtE5Lh
9W0XgG/ugrrhjIIoKc29+4Io5vaqKjHcGfqEyJyEimppgGB/6YTX2fJNw2R3Op4=
=vaqH
-----END PGP SIGNATURE-----

v0.11.0

16 Aug 15:19
v0.11.0
Compare
Choose a tag to compare

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

txtorcon 0.11.0 is now released. This adds a few API improvements:

  • launch_tor() allows access to stdout, stderr in real-time
    and control whether we kill Tor on and stderr output. See issue #79.
  • Warning about build_circuit being called without a guard first
    is now optional (default is still warn) (from arlolra)
  • available_tcp_port() now in util (from arlolra)
  • TorState now has a .routers_by_hash member (from arlolra)

You can download the release from PyPI or GitHub (or of course "pip
install txtorcon"):

https://pypi.python.org/pypi/txtorcon/0.11.0
https://github.com/meejah/txtorcon/releases/tag/v0.11.0

sha256sum reports:

5efb7ba4faf698e68daea3d8711ce0ecfd8b95501cbec00b2093dd99f72dc8cc txtorcon-0.11.0-py2-none-any.whl
aa206ab8a31053fd34798659c3d4cd7354a3e6872a86065c55098866df3dcaca txtorcon-0.11.0-py2-none-any.whl.asc
ecb7cc8ee002ead5481c17fd62576521862e93081c58d7118f53cf3c8817f857 txtorcon-0.11.0.tar.gz
76ee6983269347d475ff4df9aefb7c43ddd25d24dd67c4e3293f5c8557377652 txtorcon-0.11.0.tar.gz.asc

txtorcon 0.10.1 is in Debian, and no doubt this release will migrate
there quickly as usual (thanks to Lunar^)

thanks,
meejah
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iQEcBAEBAgAGBQJT7vo4AAoJEMJgKAMSgGmnzjsH/36wtSA2Cb1coSuK+5hGNIGa
flmGETgEOo4mHRCnSLQdO5JrXAKR9zeEt9tT9IfCTO1kRy4Q5cqzE569RhPsciBn
1g3fMlgXewjJuXx1atefO1sbqQgK74TsIqxkGnK85LEUOcqIcW71JT8lI6CDn3xg
LymqLLhbC28uYLot+Y0/KPAME7MAlgugny5Me2sGzey1aKfjZhPXQ6gRJsGVlPjQ
qhMD6ck9Xe+QZNkE4udzEzNkvA7Og/HJdwwi3yC/ENKcWKit/9PeKvmttVjyQ9Aj
KGeN2CMA5jTHHznvohvAKgeUnkDDR4tqpcoKdJZjCVg9yAaaiNoPw2wj/3O3tTw=
=elqw
-----END PGP SIGNATURE-----

0.10.1

20 Jul 22:24
v0.10.1
Compare
Choose a tag to compare

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello,

A new minor release of txtorcon exists, fixing a couple bugs
introduced along with the endpoints feature in 0.10.0:

  • issue #78: Add tox tests and fix for Twisted 12.0.0 (and prior), as
    this is what Debian squeeze ships
  • issue #77: properly expand relative and tilde paths for
    hiddenServiceDir via endpoints
  • fix bug incorrectly issuing RuntimeError in brief window of time on
    event-listeners

You can download the release from PyPI or GitHub (or of course "pip
install txtorcon"):

https://pypi.python.org/pypi/txtorcon/0.10.1
https://github.com/meejah/txtorcon/releases/tag/v0.10.1

sha256sum reports:

33f04523329b14accb2054b81c5da887c28b402c797ba895dc1ee58824e107f1 txtorcon-0.10.1-py2-none-any.whl
7a6e8fab71fd05c223d866b60b998cf308661ef1fc87d94e06c3b51f4ada4a6a txtorcon-0.10.1.tar.gz

thanks,
meejah
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iQEbBAEBAgAGBQJTzD25AAoJEMJgKAMSgGmnB8IH+MnRyCCKMgPJ2GjV01K+PVaU
UgvUXhaqLdQUbViKeYy7KNst9d8Dm3ejHr21kedE8oeY/ztHlLdvtJtgWWvTOrTI
qqh4wWfBVHeibSgsEzwNVdeJ3MtERPWuCrIkIWnathbVjfnkRW+cLPOtJUWtSi/d
pdN4ZC+K1jBvSeHPCDhf8sXSqdzsOxXOWn/9SUaa70c7kMrbxjMxO1Jw/miqftMq
/wo0vyXn4EeEdURa9hYFpUqgUbUFl6C1KiELNeHWtwGbGWku17bNgQn5HH7uY4/6
RODYBaAT327062m81ig7zQ6MmxKcngIG4Ic3qvJYeLerO/EnnNvzSs3Q+EGQeg==
=nsEx
-----END PGP SIGNATURE-----

txtorcon 0.10.0

15 Jun 16:21
v0.10.0
Compare
Choose a tag to compare

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I'm excited to announce txtorcon 0.10.0 which adds support for
Twisted's endpoint strings.

This means that ANY Twisted program that uses endpoints can accept
"onion:" strings to bring up a hidden services easily (by launching a
new Tor instance). Typically, no code changes to the application
should be needed (just "pip install txtorcon").

"twistd" supports endpoints, so for example to serve some Web content
from ~/public_html as a hidden-serivce, we can do this (with txtorcon
installed):

twistd web --port onion:80 --path ~/public_html

Some examples of other valid "onion:" endpoint strings:

onion:80:hiddenServiceDir=/dev/shm/hidsrv
onion:80:controlPort=9050:hiddenServiceDir=/srv/hidden

The first allows specifying existing hidden service keys and the
second says to connect to an already-running Tor instance.

Thanks to David Stainton (dawuud) for the initial pull-request (and
continued collaboration) that made this happen. There is a complete
demonstration of the power of this Fully Operational endpoint-station
here:

https://txtorcon.readthedocs.org/en/latest/howtos.html#endpoints-enable-tor-with-any-twisted-service

You can download the release from PyPI or GitHub (or of course use
"pip install txtorcon"):

https://pypi.python.org/pypi/txtorcon/0.10.0
https://github.com/meejah/txtorcon/releases/tag/v0.10.0

sha256sum reports:

910ff3216035de0a779cfc167c0545266ff1f26687b163fc4655f298aca52d74 txtorcon-0.10.0-py2-none-any.whl
c93f3d0f21d53c6b4c1521fc8d9dc2c9aff4a9f60497becea207d1738fa78279 txtorcon-0.10.0.tar.gz

thanks,
meejah
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iQEcBAEBAgAGBQJTnTM5AAoJEMJgKAMSgGmnB5EIAIJACHhd7PEWYfCZmB8lL1pr
J4rrhUuXD1iI7zJJL/rmS/SZLL+34JoKke6iQsBRGYzU0GRK2JQkFAeMq++AMdMu
QvoTg745OhnMSbZyCyS6buN/NhAVcmD3GYI9h8TK60jfUPEFn7+sDstMG4OePdgq
X0QQHBuJq9XtDwEmRWFHq2Aht//7J2DUliPPjtwT3C4FhPT5pXxasvfQA4jOYxsO
jTja6UE4/4TnonV5gB/chijp60cKvVxFQi86mKuNnVaKTZu+QCZFJtXkr/DbRSxv
CJ+z7jJ9s8xhfQ5Nkv9pkVAreH6w9bemc/iijKlZmQGYvLBTsvISPATyWGtn1f4=
=wIVZ
-----END PGP SIGNATURE-----

txtorcon 0.9.2

24 Apr 19:25
v0.9.2
Compare
Choose a tag to compare

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I am happy to announce that txtorcon v0.9.2 is now available.

This release adds a few minor bug-fixes and a few API
enhancements. Full details:

  • add on_disconnect callback for TorControlProtocol (no more monkey-patching Protocol API)
  • add age() method to Circuit
  • add time_created property to Circuit
  • don't incorrectly listen for NEWDESC events in TorState
  • add .flags dict to track flags in Circuit, Stream
  • build_circuit() can now take hex IDs (as well as Router instances)
  • add unique_name property to Router (returns the hex id, unless Named then return name)
  • add location property to Router
  • TorState.close_circuit now takes either a Circuit ID or Circuit instance
  • TorState.close_stream now takes either a Stream ID or Stream instance
  • support both GeoIP API versions
  • more test-coverage
  • small patch from enriquefynn improving tor binary locating
  • strip OK lines in TorControlProtocol (#8)
  • use TERM not KILL when Tor launch times out (https://github.com/meejah/txtorcon/pull/68>) from hellais
  • Unit-test coverage now at 98%

sha256 sums for the distribution files:

93e934f83e3fc6fcf40e76f7c9c28459af04205fb912d384aaacb7ac5269bb8f dist/txtorcon-0.9.2-py2-none-any.whl
fe90743cdc453002ad046aa6556b611b4e85b813ff92865769d3d27712c2ca47 dist/txtorcon-0.9.2.tar.gz

There are also signatures on github and txtorcon.readthedocs.org
You may download from github or the hidden service:

https://github.com/meejah/txtorcon/releases/tag/v0.9.2
https://github.com/meejah/txtorcon/releases/download/v0.9.2/txtorcon-0.9.2-py2-none-any.whl
https://github.com/meejah/txtorcon/releases/download/v0.9.2/txtorcon-0.9.2-py2-none-any.whl.asc
https://github.com/meejah/txtorcon/releases/download/v0.9.2/txtorcon-0.9.2.tar.gz
https://github.com/meejah/txtorcon/releases/download/v0.9.2/txtorcon-0.9.2.tar.gz.asc

http://timaq4ygg2iegci7.onion/txtorcon-0.9.2.tar.gz
http://timaq4ygg2iegci7.onion/txtorcon-0.9.2.tar.gz.asc

Source code:

https://github.com/meejah/txtorcon/archive/v0.9.2.tar.gz

Thanks,
meejah
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iQEcBAEBAgAGBQJTWVf5AAoJEMJgKAMSgGmn07kIAKSwjBck76dyN1lWJj0fRl/f
BevLpnp+rb+ge5hBAeKfsVTYciDBZeSo8/fE44wTNh5Qj9HEhFopVC4WF61rIFU+
4IkpnFvfmVEd8Iu1vqQ/hFmP1jrvT8T+nTbaTGkcoCSPI+GyXkbxLqcl0Fncq51M
M0OIRphyWA7EK3YoZ2Q1BOEIwsN0pwERYUhU0CGS45L7OZmyw86RXTMBZpBnNXrD
5VjQdpx8fvrV2iCRXi/k/e2Jy/xqs8o0I2+o9M6WrBiGCs5S9YbjsAKzRb7dsaBZ
RlRAdKUjyzkquPl4K8E5ocDToB1hIGvqCSp7s11a5rq5T/jUiDMYrjkxIXH1Yg4=
=W7+f
-----END PGP SIGNATURE-----