Compare commits

...
29 Commits
Author SHA1 Message Date
Alter Step 079a08db64 1.0.7 2015-06-30 21:58:17 +02:00
Alter Step 409cfa07c6 "find -X" was not a good idea on Mac! 2015-06-23 11:07:00 +02:00
Alter Step 4d2c1e80b6 Add RFC2606 list of reserved top-level domain names 2015-06-11 01:35:41 +02:00
Alter Step 212e8921ec Change the package type from Bundle to Flat to fix code signing. 2015-06-11 01:11:56 +02:00
Frank Denis 8cc814acba Missing $ 2015-06-10 17:43:22 +02:00
Alter Step f5a4892bf3 Update README.markdown 2015-06-10 10:08:51 +02:00
Alter Step 784963b6fd PGP keys don't look great in a documentation 2015-06-10 01:25:06 +02:00
Alter Step bb49e3d386 My PGP key 2015-06-10 01:19:57 +02:00
Alter Step 3408d3beed finally, a new version! 2015-06-10 00:51:30 +02:00
Alter Step 8491012652 Keep the resolvers list update status around for a day 2015-06-10 00:39:54 +02:00
Alter Step e5652d8933 Almost ready 2015-06-10 00:30:21 +02:00
Alter Step 1b53464c9a Use updates.dnscrypt.org instead of download.dnscrypt.org for updates 2015-06-10 00:30:04 +02:00
Alter Step f4ab8a0991 Update the list of resolvers after a successful switch to dnscrypt 2015-06-10 00:17:48 +02:00
Alter Step 121feecdf7 Pick a random resolver if none was configured 2015-06-09 22:17:30 +02:00
Alter Step 1c3184a36e Turn on ephemeral keys 2015-06-09 22:07:05 +02:00
Alter Step fb1adf423b It's compatible with El Capitan 2015-06-09 22:04:41 +02:00
Alter Step a364d88326 Automatic updates of the resolvers list 2015-06-09 22:02:53 +02:00
Alter Step 70a39e6756 1.0.6 2015-06-09 21:31:05 +02:00
Alter Step 0848088f22 Merge pull request #42 from jedisct1/master
OSX 10.8 was called Mountain Lion
2015-03-14 10:57:03 +01:00
Frank Denis 4e681b272d OSX 10.8 was called Mountain Lion 2015-03-14 10:30:18 +01:00
Alter Step 105a7c800f 1.0.5 2015-01-05 23:16:30 +01:00
Alter Step bc5a6cbac4 Apparently, I was 365 days late. 2015-01-05 23:14:35 +01:00
Alter Step ca7eedb795 COPYING 2015-01-05 23:12:11 +01:00
Alter Step 98261a3396 And the compatibility list grew! 2015-01-05 23:06:32 +01:00
Alter Step dafba50926 1.0.5 2015-01-05 23:03:51 +01:00
Alter Step aa82ddd1cb Merge pull request #29 from staticlinuxpro/master
Yosemite White Menu-Icon, Convert to ARC
2014-10-17 18:35:44 -07:00
Luke Adams 76bcc9755e Disable GC on the prefpane. Now uses ARC. 2014-10-17 19:51:51 -05:00
Luke Adams 85b67e70aa Update Menubar to ARC 2014-10-17 19:47:16 -05:00
staticlinuxpro 50a2250ac5 Change MenuBar NSImage to template
Makes the menubar icon white when the status bar is dark (Yosemite+), also allows the OS to tweak for better visibility.
2014-10-17 19:40:34 -05:00
24 changed files with 181 additions and 115 deletions
@@ -297,6 +297,8 @@
09A13AEC145F3B9000B227A4 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
CLANG_ENABLE_OBJC_ARC = YES;
COMBINE_HIDPI_IMAGES = YES;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
@@ -315,6 +317,8 @@
09A13AED145F3B9000B227A4 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
CLANG_ENABLE_OBJC_ARC = YES;
COMBINE_HIDPI_IMAGES = YES;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
@@ -8,7 +8,7 @@
#define kDNSCRYPT_CONTROL_DIR kDNSCRYPT_VAR_BASE_DIR @"/control"
@interface AppDelegate : NSObject <NSApplicationDelegate> {
NSWindow *_window;
NSWindow *__weak _window;
NSMenu *_dnscryptMenu;
NSStatusItem *_statusItem;
NSMenuItem *_versionMenuItem;
@@ -25,7 +25,7 @@ typedef enum {
} DNSConfigurationState;
@property (strong) NSStatusItem *statusItem;
@property (assign) NSWindow *window;
@property (weak) NSWindow *window;
@property (strong) IBOutlet NSMenu *dnscryptMenu;
@property (strong) IBOutlet NSMenuItem *versionMenuItem;
@@ -28,8 +28,7 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
[task launch];
data = [[pipe fileHandleForReading] readDataToEndOfFile];
[task waitUntilExit];
[task release];
result = [[[NSString alloc] initWithData: data encoding: NSUTF8StringEncoding] autorelease];
result = [[NSString alloc] initWithData: data encoding: NSUTF8StringEncoding];
if ([result hasSuffix: @"\n"]) {
result = [result substringToIndex: result.length - 1];
}
@@ -79,6 +78,7 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
default:
led = [NSImage imageNamed: @"icon-no-network"];
}
[led setTemplate:YES];
_statusItem.image = led;
}
@@ -146,7 +146,6 @@ DNSConfigurationState currentState = kDNS_CONFIGURATION_UNKNOWN;
- (void) awakeFromNib
{
_statusItem = [[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength];
[_statusItem retain];
_statusItem.highlightMode = TRUE;
_statusItem.toolTip = @"DNSCrypt";
_statusItem.menu = _dnscryptMenu;
@@ -17,11 +17,11 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.0.4</string>
<string>1.0.7</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1.0.4</string>
<string>1.0.7</string>
<key>LSApplicationCategoryType</key>
<string>public.app-category.utilities</string>
<key>LSMinimumSystemVersion</key>
@@ -829,7 +829,7 @@
<key>USE_HFS+_COMPRESSION</key>
<true/>
<key>VERSION</key>
<string>1.4.1</string>
<string>1.5.0.1</string>
</dict>
<key>UUID</key>
<string>7F7D70AB-F7A2-4027-8304-3063C7B9532F</string>
@@ -1314,73 +1314,6 @@
<key>UID</key>
<integer>0</integer>
</dict>
<dict>
<key>CHILDREN</key>
<array>
<dict>
<key>CHILDREN</key>
<array>
<dict>
<key>CHILDREN</key>
<array>
<dict>
<key>CHILDREN</key>
<array/>
<key>GID</key>
<integer>0</integer>
<key>PATH</key>
<string>/usr/local/bin/alarmer</string>
<key>PATH_TYPE</key>
<integer>0</integer>
<key>PERMISSIONS</key>
<integer>493</integer>
<key>TYPE</key>
<integer>3</integer>
<key>UID</key>
<integer>0</integer>
</dict>
</array>
<key>GID</key>
<integer>0</integer>
<key>PATH</key>
<string>bin</string>
<key>PATH_TYPE</key>
<integer>0</integer>
<key>PERMISSIONS</key>
<integer>493</integer>
<key>TYPE</key>
<integer>2</integer>
<key>UID</key>
<integer>0</integer>
</dict>
</array>
<key>GID</key>
<integer>0</integer>
<key>PATH</key>
<string>local</string>
<key>PATH_TYPE</key>
<integer>0</integer>
<key>PERMISSIONS</key>
<integer>493</integer>
<key>TYPE</key>
<integer>2</integer>
<key>UID</key>
<integer>0</integer>
</dict>
</array>
<key>GID</key>
<integer>0</integer>
<key>PATH</key>
<string>usr</string>
<key>PATH_TYPE</key>
<integer>0</integer>
<key>PERMISSIONS</key>
<integer>493</integer>
<key>TYPE</key>
<integer>2</integer>
<key>UID</key>
<integer>0</integer>
</dict>
</array>
<key>GID</key>
<integer>0</integer>
@@ -1436,7 +1369,7 @@
<key>USE_HFS+_COMPRESSION</key>
<true/>
<key>VERSION</key>
<string>1.0.4</string>
<string>1.0.7</string>
</dict>
<key>TYPE</key>
<integer>0</integer>
@@ -1929,7 +1862,7 @@
<key>USE_HFS+_COMPRESSION</key>
<true/>
<key>VERSION</key>
<string>1.0.4</string>
<string>1.0.7</string>
</dict>
<key>TYPE</key>
<integer>0</integer>
@@ -2238,7 +2171,7 @@
<key>ADVANCED_OPTIONS</key>
<dict/>
<key>BUILD_FORMAT</key>
<integer>1</integer>
<integer>0</integer>
<key>BUILD_PATH</key>
<dict>
<key>PATH</key>
+12 -19
View File
@@ -1,31 +1,24 @@
#! /bin/sh
VERSION='1.0.4'
VERSION='1.0.7'
cd build || exit 1
[ -d DNSCrypt.mpkg ] || exit 1
[ -e DNSCrypt.pkg ] || exit 1
(
cd DNSCrypt.mpkg/Contents/Packages || exit 1
rm -fr DNSCrypt-OSX.pkg DNSCrypt-unsigned.pkg
for pkg in *pkg ; do
rm -fr "x-${pkg}"
mv "$pkg" "x-${pkg}"
productsign --sign 'Developer ID Installer' "x-${pkg}" "$pkg"
rm -fr "x-${pkg}"
done
)
rm -fr DNSCrypt-OSX.mpkg DNSCrypt-unsigned.mpkg
productsign --sign 'Developer ID Application' DNSCrypt.mpkg DNSCrypt-OSX.mpkg
mv DNSCrypt.mpkg DNSCrypt-unsigned.mpkg
mv DNSCrypt-OSX.mpkg DNSCrypt.mpkg
zip -9 -r "dnscrypt-osxclient-${VERSION}.zip" DNSCrypt.mpkg
productsign --sign 'Developer ID Installer' DNSCrypt.pkg DNSCrypt-OSX.pkg
mv DNSCrypt.pkg DNSCrypt-unsigned.pkg
mv DNSCrypt-OSX.pkg DNSCrypt.pkg
zip -9 -r "dnscrypt-osxclient-${VERSION}.zip" DNSCrypt.pkg
rm -fr dnscrypt-pkg
rm -f "dnscrypt-osxclient-${VERSION}.dmg"
mkdir dnscrypt-pkg
mv DNSCrypt.mpkg dnscrypt-pkg
mv DNSCrypt.pkg dnscrypt-pkg
hdiutil create "dnscrypt-osxclient-${VERSION}.dmg" -srcfolder dnscrypt-pkg
mv dnscrypt-pkg/DNSCrypt.mpkg .
mv dnscrypt-pkg/DNSCrypt.pkg .
rm -fr dnscrypt-pkg
rm -fr DNSCrypt-unsigned.mpkg
rm -fr DNSCrypt-unsigned.pkg
+1 -1
View File
@@ -1,6 +1,6 @@
/*
* Copyright (c) 2011-2014 OpenDNS, Inc.
* Copyright (c) 2014 AlterStep
* Copyright (c) 2014-2015 AlterStep
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
@@ -204,7 +204,7 @@
0946B0B713F47F52008277C6 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0510;
LastUpgradeCheck = 0610;
};
buildConfigurationList = 0946B0BA13F47F52008277C6 /* Build configuration list for PBXProject "DNSCrypt" */;
compatibilityVersion = "Xcode 3.2";
@@ -347,7 +347,7 @@
"$(inherited)",
"\"$(SRCROOT)\"",
);
GCC_ENABLE_OBJC_GC = no;
GCC_ENABLE_OBJC_GC = unsupported;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "DNSCrypt/DNSCrypt-Prefix.pch";
GCC_VERSION = "";
@@ -368,7 +368,7 @@
"$(inherited)",
"\"$(SRCROOT)\"",
);
GCC_ENABLE_OBJC_GC = no;
GCC_ENABLE_OBJC_GC = unsupported;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "DNSCrypt/DNSCrypt-Prefix.pch";
GCC_VERSION = "";
@@ -17,11 +17,11 @@
<key>CFBundlePackageType</key>
<string>BNDL</string>
<key>CFBundleShortVersionString</key>
<string>1.0.4</string>
<string>1.0.7</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1.0.4</string>
<string>1.0.7</string>
<key>NSHumanReadableCopyright</key>
<string>BSD</string>
<key>NSMainNibFile</key>
+1 -1
View File
@@ -3,7 +3,7 @@
#import <WebKit/WebKit.h>
#import "CHCSVParser/CHCSVParser.h"
#define kDNSCRYPT_PACKAGE_VERSION @"1.0.4"
#define kDNSCRYPT_PACKAGE_VERSION @"1.0.7"
#define kDNSCRYPT_PREFPANE_APP_PATH @"/Library/PreferencePanes/DNSCrypt.prefPane"
#define kDNSCRYPT_USR_BASE_DIR kDNSCRYPT_PREFPANE_APP_PATH @"/Contents/Resources/usr"
@@ -21,6 +21,35 @@
%body
%h1 Release Notes for DNSCrypt-OSXclient by AlterStep
%article
%h2 Version 1.0.7 by AlterStep
%time Tue, 1 Jul 2015
%p
Fixed a bug in the automatic updater for the resolvers list
%article
%h2 Version 1.0.6 by AlterStep
%time Tue, 10 Jun 2015
%p
Updated DNSCrypt proxy to version 1.5.0
%p
Updated libsodium to 1.0.3-minimal
%p
The list of available resolvers is automatically updated
%p
Improved privacy: ephemeral keys have been turned on
%p
Improved privacy: if no resolvers have been configured, a new one
is randomly chosen after each reboot
%article
%h2 Version 1.0.5 by AlterStep
%time Tue, 06 Jan 2015
%p
Updated DNSCrypt proxy to version 1.4.3
%p
Updated libsodium to 1.0.1-minimal
%article
%h2 Version 1.0.4 by AlterStep
%time Thu, 19 Sep 2014
@@ -33,7 +62,7 @@
%h2 Version 1.0.3 by AlterStep
%time Thu, 18 Jun 2014
%p
Runs on OSX 10.8 (Snow Leopard), 10.9 (Mavericks) and 10.10 (Yosemite)
Runs on OSX 10.8 (Mountain Lion), 10.9 (Mavericks) and 10.10 (Yosemite)
%p
New set of icons, contributed by Aaron VonderHaar
@@ -25,6 +25,43 @@
</head>
<body>
<h1>Release Notes for DNSCrypt-OSXclient by AlterStep</h1>
<article>
<h2>Version 1.0.7 by AlterStep</h2>
<time>Tue, 1 Jul 2015</time>
<p>
Fixed a bug in the automatic updater for the resolvers list
</p>
</article>
<article>
<h2>Version 1.0.6 by AlterStep</h2>
<time>Tue, 10 Jun 2015</time>
<p>
Updated DNSCrypt proxy to version 1.5.0
</p>
<p>
Updated libsodium to 1.0.3-minimal
</p>
<p>
The list of available resolvers is automatically updated
</p>
<p>
Improved privacy: ephemeral keys have been turned on
</p>
<p>
Improved privacy: if no resolvers have been configured, a new one
is randomly chosen after each reboot
</p>
</article>
<article>
<h2>Version 1.0.5 by AlterStep</h2>
<time>Tue, 06 Jan 2015</time>
<p>
Updated DNSCrypt proxy to version 1.4.3
</p>
<p>
Updated libsodium to 1.0.1-minimal
</p>
</article>
<article>
<h2>Version 1.0.4 by AlterStep</h2>
<time>Thu, 19 Sep 2014</time>
@@ -39,7 +76,7 @@
<h2>Version 1.0.3 by AlterStep</h2>
<time>Thu, 18 Jun 2014</time>
<p>
Runs on OSX 10.8 (Snow Leopard), 10.9 (Mavericks) and 10.10 (Yosemite)
Runs on OSX 10.8 (Mountain Lion), 10.9 (Mavericks) and 10.10 (Yosemite)
</p>
<p>
New set of icons, contributed by Aaron VonderHaar
@@ -1 +0,0 @@
/usr/local/bin/alarmer
Binary file not shown.
Binary file not shown.
@@ -4,6 +4,7 @@
rm -f "$QUERY_LOG_FILE"
rm -f "$DEBUG_LOG_FILE"
find -x "$RESOLVERS_LIST_STATE" -type f -mtime +1 -exec rm -f {} \; 2>/dev/null
./clear-fw.sh
@@ -8,7 +8,7 @@ try_resolution() {
}
try_http_query() {
exec alarmer 5 curl -L --max-redirs 5 -4 -m 5 \
exec alarmer 5 curl -L --max-redirs 5 -4 -m 5 --connect-timeout 5 -s \
http://www.apple.com 2>/dev/null | \
fgrep -c Apple > /dev/null 2>&1
}
@@ -35,7 +35,10 @@ BLACKLIST_DOMAINS_TMP_FILE="${BLACKLIST_DOMAINS_FILE}.tmp"
EXCEPTIONS_FILE="${CONTROL_DIR}/exceptions"
EXCEPTIONS_TMP_FILE="${EXCEPTIONS_FILE}.tmp"
DEFAULT_RESOLVER_NAME='opendns'
RESOLVERS_UPDATES_BASE_URL="http://updates.dnscrypt.org/dnscrypt-proxy"
RESOLVERS_LIST_BASE_DIR="/usr/local/share/dnscrypt-proxy"
RESOLVERS_LIST_PUBLIC_KEY="RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3"
RESOLVERS_LIST_STATE="${STATES_DIR}/resolvers-updated"
INTERFACE_UNBOUND="127.0.0.53"
INTERFACE_UNBOUND_MASK="24"
@@ -45,7 +48,7 @@ INTERFACE_PROBES="127.0.0.55"
INTERFACE_PROBES_MASK="24"
DOMAINS_EXCEPTIONS='
freebox.fr fritz.box intranet lan localdomain nowtv.com private routerlogin.net l
belkin corp domain example home host invalid lan local localdomain test freebox.fr fritz.box nowtv.com routerlogin.net l
'
DISABLE_IPV6='no'
@@ -4,5 +4,5 @@
[ -r "$DNSCRYPT_RESOLVER_NAME_FILE" ] && \
sed 's/[^a-zA-Z0-9.-]/_/g' < "$DNSCRYPT_RESOLVER_NAME_FILE" && exit 0
echo "$DEFAULT_RESOLVER_NAME"
exit 0
exec ./get-random-resolver.sh
@@ -0,0 +1,8 @@
#! /bin/sh
. ./common.inc
(read header; fgrep -v :: | cut -d, -f1 | egrep -v '^\s*$') \
< "${RESOLVERS_LIST_BASE_DIR}/dnscrypt-resolvers.csv" | \
perl -MList::Util=shuffle -e 'print shuffle(<STDIN>);' | \
head -n1
@@ -118,7 +118,7 @@ best_args=$(cat "${RES_DIR}/${best_file}")
logger_debug "Starting dnscrypt-proxy $best_args"
eval dnscrypt-proxy $best_args --local-address="$INTERFACE_PROXY" \
--resolver-name="$RESOLVER_NAME" \
--resolver-name="$RESOLVER_NAME" --ephemeral-keys \
--pidfile="$PROXY_PID_FILE" --user=daemon --daemonize $plugin_args
if [ $? != 0 ]; then
@@ -156,3 +156,7 @@ logger_debug "Current configuration doesn't seem to hijack all DNS queries"
mv "${DESCRIPTIONS_DIR}/${best_file}" \
"${STATES_DIR}/dnscrypt-proxy-description" 2>/dev/null || exit 0
[ -e "$RESOLVERS_LIST_STATE" ] && exit 0
touch "$RESOLVERS_LIST_STATE"
exec ./update-resolvers-list.sh
@@ -8,7 +8,7 @@ if [ ! -s "$BLACKLIST_DOMAINS_TMP_FILE" ]; then
fi
tr -s '[:blank:]' '\n' < "$BLACKLIST_DOMAINS_TMP_FILE" | \
egrep -vi '^(apple[.]com|resolver1[.]opendns[.]com)$' > \
egrep -vi '^(apple[.]com)$' > \
"${BLACKLIST_DOMAINS_TMP_FILE}~" &&
mv "${BLACKLIST_DOMAINS_TMP_FILE}~" "$BLACKLIST_DOMAINS_FILE"
@@ -0,0 +1,19 @@
#! /bin/sh
. ./common.inc
logger_debug "Checking if updates to the resolvers list are available"
curl -L --max-redirs 5 -4 -m 30 --connect-timeout 30 -s \
"${RESOLVERS_UPDATES_BASE_URL}/dnscrypt-resolvers.csv" > \
"${RESOLVERS_LIST_BASE_DIR}/dnscrypt-resolvers.csv.tmp" &&
curl -L --max-redirs 5 -4 -m 30 --connect-timeout 30 -s \
"${RESOLVERS_UPDATES_BASE_URL}/dnscrypt-resolvers.csv.minisig" > \
"${RESOLVERS_LIST_BASE_DIR}/dnscrypt-resolvers.csv.minisig" &&
minisign-verify -Vm ${RESOLVERS_LIST_BASE_DIR}/dnscrypt-resolvers.csv.tmp \
-x "${RESOLVERS_LIST_BASE_DIR}/dnscrypt-resolvers.csv.minisig" \
-P "$RESOLVERS_LIST_PUBLIC_KEY" -q &&
mv -f ${RESOLVERS_LIST_BASE_DIR}/dnscrypt-resolvers.csv.tmp \
${RESOLVERS_LIST_BASE_DIR}/dnscrypt-resolvers.csv
logger_debug "Resolvers list is up to date"
+6 -2
View File
@@ -4,14 +4,18 @@ OSX client for managing the DNSCrypt Proxy
The purpose of this application is to allow the user to have a better
experience controlling the DNSCrypt Proxy on OSX.
[Download dnscrypt-osxclient-1.0.4.dmg](https://github.com/alterstep/dnscrypt-osxclient/releases/download/1.0.4/dnscrypt-osxclient-1.0.4.dmg)
for OSX 10.8 (Snow Leopard), OSX 10.9 (Mavericks) and OSX 10.10 (Yosemite).
[Download dnscrypt-osxclient-1.0.6.dmg](https://github.com/alterstep/dnscrypt-osxclient/releases/download/1.0.6/dnscrypt-osxclient-1.0.6.dmg)
for OSX 10.8 (Mountain Lion), OSX 10.9 (Mavericks), OSX 10.10 (Yosemite) and
OSX 10.11 (El Capitan).
Compatible with:
* CloudNS
* Cypherpunk.lu
* d0wn
* DNSCrypt.eu
* DNSCrypt.org
* okTurtles
* OpenDNS
* OpenNIC
* Proxy.sh
* Soltysiak
+32
View File
@@ -0,0 +1,32 @@
My PGP public key, to verify the releases:
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1
mQENBFV3cvYBCACmUwWPeGbnzEsBzdsq+15a9td4RjuJsUEAxhCkXAp36Hn0lVJB
Bz1Mcjqoo3Im6S/ec6EEQQrLuZBvuL4LnSWaIa+6HfPQiEr3mD/kyKp371jvrKkl
lIRqa4fZWKoasRhLBqo4lTUsrR3wblbmnFRjTNMBB3ltfi8VMmr//KEHJx8hkgpQ
udJoBF5fZ8RQZsFjbqxncE2/pwYmOE+rO7hEkULx6KnkxqUkpxjnPkAmf+7G3bpS
K+l4ZIakOFwRELvqU9pX6T4mx5/GpMv5F+gJGjRHOMUeSQLhzLTKihBpHa1OnMGC
zD0fB24Msn+0g2rsReccuFo9qLkCc3IvaGAHABEBAAG0CkFsdGVyIFN0ZXCJATgE
EwECACIFAlV3cvYCGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEGm4VoCb
8nqtAEEH/A31A04X51I6gEiEsd1Il310GWF/SD1r9G2B64zAenlfQo8yY1qeCRZi
Sh5TGVpXmnv4IK+BbuAZLxr5X8fs5UtX+otrgGbiS9cJSsIhffHyeCiRZyNgcPuQ
ZCRLjNx9zt3as/TZUBKEudzOiCRvTFGm7mZHgmV1NTY62qy/lDl+fNWK9nBea0/W
Tvv3rDNyL6ic4aoEeYBbFsHzdcEFpVtLEeOpB2n8z8aA/7yvXKSQNf5nkFwytPmd
5gIMons58jwDjiWpkTxhzHYpwegMkqkEpizA82lHNt2q/IeLxNFeIkUIOPTsij7K
RitethBvVU5bhRCgur6V/6qy8kJX92G5AQ0EVXdy9gEIAL4qJzGDAl28z50vob6D
h2Ime9nIZohm0Fw4jk/bae2LQPnv/VMcCjleJ0VOZfjs3X4FYzv5gCKMz+Jcn1Q2
6kOqct/AO8XWBXXrlAd3z6Kf19IkrWtjeG9G2nN047R0l1xLj9+VAWhTK29aDkt8
oLUMZBkQXmYcK+caQfrc2KR1Ok0JQ4qGa4hRqnnTTODZJ56iHIx0c68BWl0DlU69
t4E+7KreiPxH43dx6mmC3DXfZcOMJnKXJelf2gCQfO0j1wHLen+7uT4/YY1jMKec
jhDgTTFJR26iMw+XdoWjJWThBwlZ+0CqoHDEYBEs3dSgtipaMNS69NR7bzUzrPUl
1vMAEQEAAYkBHwQYAQIACQUCVXdy9gIbDAAKCRBpuFaAm/J6raWYB/9YalFKgnnu
a3r3tcGkPnYgGDf8s1upG5kgcaROXmhuWq6CCsk3WyvGRGLnafMXi6mE+rBDKgij
GSJ+C+kgvXgGU1QRl9XL0hJLT9O0QrHt6TAfqJsDY1kHR0M8WaYj0RTr+3OAyJhg
kM1oEvabhrCbPNVxznCAMmT9z5U1i1NYqacjAQfnR8nHr3C6oHnj/gaQQOTO3xJg
rBMymDhBVoWMkoaoXYNqJNpgCuAAhmmUM1AtMA+RkWeSIzCUD+1GhO5VQyjtsdHZ
aC08CMLzjpG+VI+LgaU2pHUwwCLNEiA701AwSg4RMRj2ARjKWtOh6tqIN1UgTp1N
tg4DrEN2CFSW
=TN6d
-----END PGP PUBLIC KEY BLOCK-----