Sync build system and CI scripts with ndn-cxx
* Update build flags * Update waf to version 2.0.21 * Replace Travis CI with GitHub Actions Change-Id: If45c45c7b9ed748ffd1c4e792075f6bb6f09462f
This commit is contained in:
1 parent
1cbe1d01ab
commit
ab6ac5d6dc
9 files changed
+142
-157
No files matched your search
@@ -0,0 +1,68 @@
|
||||
name: CI
|
||||
on:
|
||||
push:
|
||||
paths-ignore:
|
||||
- 'docs/**'
|
||||
- '*.md'
|
||||
- '.mailmap'
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
linux:
|
||||
name: ${{ matrix.compiler }} on ${{ matrix.os }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
compiler: [g++-8, g++-9, g++-10, g++-11,
|
||||
clang++-7, clang++-8, clang++-9, clang++-10, clang++-11, clang++-12]
|
||||
os: [ubuntu-20.04]
|
||||
include:
|
||||
- compiler: g++-7
|
||||
os: ubuntu-18.04
|
||||
- compiler: clang++-5.0
|
||||
os: ubuntu-18.04
|
||||
- compiler: clang++-6.0
|
||||
os: ubuntu-18.04
|
||||
runs-on: ${{ matrix.os }}
|
||||
env:
|
||||
CXX: ${{ matrix.compiler }}
|
||||
NODE_LABELS: Linux Ubuntu
|
||||
WAF_JOBS: 2
|
||||
steps:
|
||||
- name: Install C++ compiler
|
||||
run: |
|
||||
sudo apt-get -qy install ${CXX/clang++/clang}
|
||||
${CXX} --version
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
- name: Build and test
|
||||
run: ./.jenkins
|
||||
|
||||
macos:
|
||||
name: Xcode ${{ matrix.xcode }} on ${{ matrix.os }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
xcode: ['11.3', '11.7', '12.4']
|
||||
os: [macos-10.15]
|
||||
include:
|
||||
- xcode: '12.5'
|
||||
os: macos-11
|
||||
- xcode: '13'
|
||||
os: macos-11
|
||||
runs-on: ${{ matrix.os }}
|
||||
env:
|
||||
NODE_LABELS: OSX
|
||||
WAF_JOBS: 3
|
||||
steps:
|
||||
- name: Set up Xcode
|
||||
uses: maxim-lobanov/setup-xcode@v1
|
||||
with:
|
||||
xcode-version: ${{ matrix.xcode }}
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
- name: Build and test
|
||||
run: ./.jenkins
|
||||
+1
-1
@@ -26,4 +26,4 @@ __pycache__/
|
||||
*.py[cod]
|
||||
|
||||
# Other
|
||||
/VERSION
|
||||
/VERSION.info
|
||||
@@ -2,31 +2,25 @@
|
||||
set -e
|
||||
source .jenkins.d/util.sh
|
||||
|
||||
if has Linux $NODE_LABELS; then
|
||||
export PATH="${HOME}/.local/bin${PATH:+:}${PATH}"
|
||||
fi
|
||||
export CACHE_DIR=${CACHE_DIR:-/tmp}
|
||||
export WAF_JOBS=${WAF_JOBS:-1}
|
||||
[[ $JOB_NAME == *"code-coverage" ]] && export DISABLE_ASAN=yes
|
||||
|
||||
nanos() {
|
||||
# Cannot use date(1) because macOS does not support %N format specifier
|
||||
python3 -c 'import time; print(int(time.time() * 1e9))'
|
||||
}
|
||||
|
||||
for file in .jenkins.d/*; do
|
||||
[[ -f $file && -x $file ]] || continue
|
||||
|
||||
if [[ -n $TRAVIS ]]; then
|
||||
if [[ -n $GITHUB_ACTIONS ]]; then
|
||||
label=$(basename "$file" | sed -E 's/[[:digit:]]+-(.*)\..*/\1/')
|
||||
echo -ne "travis_fold:start:${label}\r"
|
||||
echo -ne "travis_time:start:${label}\r"
|
||||
start=$(nanos)
|
||||
echo "::group::${label}"
|
||||
fi
|
||||
|
||||
echo "\$ $file"
|
||||
"$file"
|
||||
|
||||
if [[ -n $TRAVIS ]]; then
|
||||
finish=$(nanos)
|
||||
echo -ne "travis_time:end:${label}:start=${start},finish=${finish},duration=$((finish-start)),event=${label}\r"
|
||||
echo -ne "travis_fold:end:${label}\r"
|
||||
if [[ -n $GITHUB_ACTIONS ]]; then
|
||||
echo "::endgroup::"
|
||||
fi
|
||||
done
|
||||
+20
-5
@@ -3,13 +3,13 @@ set -ex
|
||||
|
||||
if has OSX $NODE_LABELS; then
|
||||
FORMULAE=(boost openssl pkg-config)
|
||||
if has OSX-10.13 $NODE_LABELS || has OSX-10.14 $NODE_LABELS; then
|
||||
FORMULAE+=(python)
|
||||
if [[ $JOB_NAME == *"Docs" ]]; then
|
||||
FORMULAE+=(doxygen graphviz)
|
||||
fi
|
||||
|
||||
if [[ -n $TRAVIS ]]; then
|
||||
# Travis images come with a large number of pre-installed
|
||||
# brew packages, don't waste time upgrading all of them
|
||||
if [[ -n $GITHUB_ACTIONS ]]; then
|
||||
# GitHub Actions runners have a large number of pre-installed
|
||||
# Homebrew packages. Don't waste time upgrading all of them.
|
||||
brew list --versions "${FORMULAE[@]}" || brew update
|
||||
for FORMULA in "${FORMULAE[@]}"; do
|
||||
brew list --versions "$FORMULA" || brew install "$FORMULA"
|
||||
@@ -23,8 +23,23 @@ if has OSX $NODE_LABELS; then
|
||||
brew cleanup
|
||||
fi
|
||||
|
||||
if [[ $JOB_NAME == *"Docs" ]]; then
|
||||
pip3 install --upgrade --upgrade-strategy=eager sphinx sphinxcontrib-doxylink
|
||||
fi
|
||||
|
||||
elif has Ubuntu $NODE_LABELS; then
|
||||
sudo apt-get -qq update
|
||||
sudo apt-get -qy install build-essential pkg-config python3-minimal \
|
||||
libboost-all-dev libssl-dev libsqlite3-dev
|
||||
|
||||
case $JOB_NAME in
|
||||
*code-coverage)
|
||||
sudo apt-get -qy install lcov python3-pip
|
||||
pip3 install --user --upgrade --upgrade-strategy=eager 'gcovr~=5.0'
|
||||
;;
|
||||
*Docs)
|
||||
sudo apt-get -qy install doxygen graphviz python3-pip
|
||||
pip3 install --user --upgrade --upgrade-strategy=eager sphinx sphinxcontrib-doxylink
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
@@ -19,6 +19,8 @@
|
||||
Possible values:
|
||||
|
||||
- empty: default build task
|
||||
- `code-coverage`: debug build with tests and code coverage analysis (Ubuntu Linux is assumed)
|
||||
- `limited-build`: only a single debug build with tests
|
||||
|
||||
- `CACHE_DIR`: directory containing cached files from previous builds, e.g., a compiled version
|
||||
of ndn-cxx. If not set, `/tmp` is used.
|
||||
|
||||
-105
@@ -1,105 +0,0 @@
|
||||
version: ~> 1.0
|
||||
language: cpp
|
||||
os: linux
|
||||
dist: bionic
|
||||
|
||||
arch:
|
||||
- amd64
|
||||
- arm64
|
||||
- ppc64le
|
||||
- s390x
|
||||
|
||||
env:
|
||||
- COMPILER=g++-7
|
||||
- COMPILER=g++-9
|
||||
- COMPILER=clang++-6.0
|
||||
- COMPILER=clang++-9
|
||||
|
||||
jobs:
|
||||
include:
|
||||
# Linux
|
||||
- env: COMPILER=g++-8
|
||||
- env: COMPILER=clang++-5.0
|
||||
- env: COMPILER=clang++-7
|
||||
- env: COMPILER=clang++-8
|
||||
- env: COMPILER=clang++-10
|
||||
- env: COMPILER=clang++-11
|
||||
- env: COMPILER=clang++-12
|
||||
|
||||
# macOS
|
||||
- os: osx
|
||||
osx_image: xcode9.4
|
||||
env: # default compiler
|
||||
- os: osx
|
||||
osx_image: xcode10.1
|
||||
env: # default compiler
|
||||
- os: osx
|
||||
osx_image: xcode10.3
|
||||
env: # default compiler
|
||||
- os: osx
|
||||
osx_image: xcode11.3
|
||||
env: # default compiler
|
||||
- os: osx
|
||||
osx_image: xcode11.6
|
||||
env: # default compiler
|
||||
- os: osx
|
||||
osx_image: xcode12
|
||||
env: # default compiler
|
||||
|
||||
allow_failures:
|
||||
- env: COMPILER=clang++-12
|
||||
|
||||
fast_finish: true
|
||||
|
||||
before_install:
|
||||
- |
|
||||
: Adding apt repositories
|
||||
case ${COMPILER} in
|
||||
g++-9)
|
||||
# https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test/+packages
|
||||
travis_retry sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
|
||||
travis_retry sudo apt-get -qq update
|
||||
;;
|
||||
clang++-1?)
|
||||
# https://apt.llvm.org/
|
||||
LLVM_REPO=${COMPILER/clang++/llvm-toolchain-${TRAVIS_DIST}}
|
||||
travis_retry wget -nv -O - "https://apt.llvm.org/llvm-snapshot.gpg.key" | sudo apt-key add -
|
||||
travis_retry sudo add-apt-repository -y "deb http://apt.llvm.org/${TRAVIS_DIST}/ ${LLVM_REPO%-12} main"
|
||||
travis_retry sudo apt-get -qq update
|
||||
;;
|
||||
esac
|
||||
|
||||
install:
|
||||
- |
|
||||
: Installing C++ compiler
|
||||
if [[ -n ${COMPILER} ]]; then
|
||||
travis_retry sudo apt-get -qy install ${COMPILER/clang++/clang}
|
||||
fi
|
||||
|
||||
before_script:
|
||||
- |
|
||||
: Setting environment variables
|
||||
if [[ -n ${COMPILER} ]]; then
|
||||
export CXX=${COMPILER}
|
||||
fi
|
||||
case ${TRAVIS_OS_NAME} in
|
||||
linux) export NODE_LABELS="Linux Ubuntu Ubuntu-18.04" ;;
|
||||
osx) export NODE_LABELS="OSX OSX-$(sw_vers -productVersion | cut -d . -f -2)" ;;
|
||||
esac
|
||||
export WAF_JOBS=2
|
||||
- |
|
||||
: Enabling workarounds
|
||||
case "${TRAVIS_CPU_ARCH},${COMPILER}" in
|
||||
ppc64le,g++-7)
|
||||
# AddressSanitizer does not seem to be working
|
||||
export DISABLE_ASAN=yes
|
||||
;;
|
||||
*,clang++-8)
|
||||
# https://bugs.llvm.org/show_bug.cgi?id=40808
|
||||
export DISABLE_ASAN=yes
|
||||
;;
|
||||
esac
|
||||
- ${CXX:-c++} --version
|
||||
|
||||
script:
|
||||
- ./.jenkins
|
||||
@@ -1,10 +1,11 @@
|
||||
# -*- Mode: python; py-indent-offset: 4; indent-tabs-mode: nil; coding: utf-8; -*-
|
||||
|
||||
import platform
|
||||
from waflib import Configure, Logs, Utils
|
||||
|
||||
def options(opt):
|
||||
opt.add_option('--debug', '--with-debug', action='store_true', default=False,
|
||||
help='Compile in debugging mode with minimal optimizations (-O0 or -Og)')
|
||||
help='Compile in debugging mode with minimal optimizations (-Og)')
|
||||
|
||||
def configure(conf):
|
||||
conf.start_msg('Checking C++ compiler version')
|
||||
@@ -17,15 +18,21 @@ def configure(conf):
|
||||
if cxx == 'gcc':
|
||||
if ccver < (5, 3, 0):
|
||||
errmsg = ('The version of gcc you are using is too old.\n'
|
||||
'The minimum supported gcc version is 5.3.0.')
|
||||
'The minimum supported gcc version is 7.4.0.')
|
||||
elif ccver < (7, 4, 0):
|
||||
warnmsg = ('Using a version of gcc older than 7.4.0 is not '
|
||||
'officially supported and may result in build failures.')
|
||||
conf.flags = GccFlags()
|
||||
elif cxx == 'clang':
|
||||
if ccver < (3, 6, 0):
|
||||
if Utils.unversioned_sys_platform() == 'darwin' and ccver < (9, 0, 0):
|
||||
errmsg = ('The version of Xcode you are using is too old.\n'
|
||||
'The minimum supported Xcode version is 9.0.')
|
||||
elif ccver < (4, 0, 0):
|
||||
errmsg = ('The version of clang you are using is too old.\n'
|
||||
'The minimum supported clang version is 3.6.0.')
|
||||
'The minimum supported clang version is 4.0.')
|
||||
conf.flags = ClangFlags()
|
||||
else:
|
||||
warnmsg = 'Note: %s compiler is unsupported' % cxx
|
||||
warnmsg = '%s compiler is unsupported' % cxx
|
||||
conf.flags = CompilerFlags()
|
||||
|
||||
if errmsg:
|
||||
@@ -33,7 +40,7 @@ def configure(conf):
|
||||
conf.fatal(errmsg)
|
||||
elif warnmsg:
|
||||
conf.end_msg(ccverstr, color='YELLOW')
|
||||
Logs.warn(warnmsg)
|
||||
Logs.warn('WARNING: ' + warnmsg)
|
||||
else:
|
||||
conf.end_msg(ccverstr)
|
||||
|
||||
@@ -137,13 +144,14 @@ class GccBasicFlags(CompilerFlags):
|
||||
|
||||
def getDebugFlags(self, conf):
|
||||
flags = super(GccBasicFlags, self).getDebugFlags(conf)
|
||||
flags['CXXFLAGS'] += ['-O0',
|
||||
'-Og', # gcc >= 4.8, clang >= 4.0
|
||||
flags['CXXFLAGS'] += ['-Og',
|
||||
'-g3',
|
||||
'-pedantic',
|
||||
'-Wall',
|
||||
'-Wextra',
|
||||
'-Werror',
|
||||
'-Wcatch-value=2',
|
||||
'-Wextra-semi',
|
||||
'-Wnon-virtual-dtor',
|
||||
'-Wno-error=deprecated-declarations', # Bug #3795
|
||||
'-Wno-error=maybe-uninitialized', # Bug #1615
|
||||
@@ -159,6 +167,8 @@ class GccBasicFlags(CompilerFlags):
|
||||
'-pedantic',
|
||||
'-Wall',
|
||||
'-Wextra',
|
||||
'-Wcatch-value=2',
|
||||
'-Wextra-semi',
|
||||
'-Wnon-virtual-dtor',
|
||||
'-Wno-unused-parameter',
|
||||
]
|
||||
@@ -168,49 +178,50 @@ class GccBasicFlags(CompilerFlags):
|
||||
class GccFlags(GccBasicFlags):
|
||||
def getDebugFlags(self, conf):
|
||||
flags = super(GccFlags, self).getDebugFlags(conf)
|
||||
flags['CXXFLAGS'] += ['-fdiagnostics-color']
|
||||
flags['CXXFLAGS'] += ['-fdiagnostics-color',
|
||||
'-Wredundant-tags',
|
||||
]
|
||||
if platform.machine() == 'armv7l' and self.getCompilerVersion(conf) >= (7, 1, 0):
|
||||
flags['CXXFLAGS'] += ['-Wno-psabi'] # Bug #5106
|
||||
return flags
|
||||
|
||||
def getOptimizedFlags(self, conf):
|
||||
flags = super(GccFlags, self).getOptimizedFlags(conf)
|
||||
flags['CXXFLAGS'] += ['-fdiagnostics-color']
|
||||
flags['CXXFLAGS'] += ['-fdiagnostics-color',
|
||||
'-Wredundant-tags',
|
||||
]
|
||||
if platform.machine() == 'armv7l' and self.getCompilerVersion(conf) >= (7, 1, 0):
|
||||
flags['CXXFLAGS'] += ['-Wno-psabi'] # Bug #5106
|
||||
return flags
|
||||
|
||||
class ClangFlags(GccBasicFlags):
|
||||
def getGeneralFlags(self, conf):
|
||||
flags = super(ClangFlags, self).getGeneralFlags(conf)
|
||||
if Utils.unversioned_sys_platform() == 'darwin' and self.getCompilerVersion(conf) >= (9, 0, 0):
|
||||
if Utils.unversioned_sys_platform() == 'darwin':
|
||||
# Bug #4296
|
||||
flags['CXXFLAGS'] += [['-isystem', '/usr/local/include'], # for Homebrew
|
||||
['-isystem', '/opt/local/include']] # for MacPorts
|
||||
if Utils.unversioned_sys_platform() == 'freebsd':
|
||||
flags['CXXFLAGS'] += [['-isystem', '/usr/local/include']] # Bug #4790
|
||||
elif Utils.unversioned_sys_platform() == 'freebsd':
|
||||
# Bug #4790
|
||||
flags['CXXFLAGS'] += [['-isystem', '/usr/local/include']]
|
||||
return flags
|
||||
|
||||
def getDebugFlags(self, conf):
|
||||
flags = super(ClangFlags, self).getDebugFlags(conf)
|
||||
flags['CXXFLAGS'] += ['-fcolor-diagnostics',
|
||||
'-Wextra-semi',
|
||||
'-Wundefined-func-template',
|
||||
'-Wno-unused-local-typedef', # Bugs #2657 and #3209
|
||||
]
|
||||
version = self.getCompilerVersion(conf)
|
||||
if version < (3, 9, 0) or (Utils.unversioned_sys_platform() == 'darwin' and version < (8, 1, 0)):
|
||||
flags['CXXFLAGS'] += ['-Wno-unknown-pragmas']
|
||||
if version < (6, 0, 0):
|
||||
if self.getCompilerVersion(conf) < (6, 0, 0):
|
||||
flags['CXXFLAGS'] += ['-Wno-missing-braces'] # Bug #4721
|
||||
return flags
|
||||
|
||||
def getOptimizedFlags(self, conf):
|
||||
flags = super(ClangFlags, self).getOptimizedFlags(conf)
|
||||
flags['CXXFLAGS'] += ['-fcolor-diagnostics',
|
||||
'-Wextra-semi',
|
||||
'-Wundefined-func-template',
|
||||
'-Wno-unused-local-typedef', # Bugs #2657 and #3209
|
||||
]
|
||||
version = self.getCompilerVersion(conf)
|
||||
if version < (3, 9, 0) or (Utils.unversioned_sys_platform() == 'darwin' and version < (8, 1, 0)):
|
||||
flags['CXXFLAGS'] += ['-Wno-unknown-pragmas']
|
||||
if version < (6, 0, 0):
|
||||
if self.getCompilerVersion(conf) < (6, 0, 0):
|
||||
flags['CXXFLAGS'] += ['-Wno-missing-braces'] # Bug #4721
|
||||
return flags
|
||||
@@ -1,7 +1,7 @@
|
||||
# NDN Traffic Generator
|
||||
|
||||

|
||||
[](https://travis-ci.org/named-data/ndn-traffic-generator)
|
||||
[](https://github.com/named-data/ndn-traffic-generator/actions/workflows/ci.yml)
|
||||

|
||||
|
||||
This tool is designed to generate Interest and Data traffic in an NDN network.
|
||||
The client and server tool accept traffic configuration files which can be
|
||||
|
||||
@@ -32,13 +32,13 @@ POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
import os, sys, inspect
|
||||
|
||||
VERSION="2.0.19"
|
||||
REVISION="1f3c580272b15a03d2566843c5fe872a"
|
||||
GIT="61ee22b598cf80e260beb64e475966f58b304d0d"
|
||||
VERSION="2.0.21"
|
||||
REVISION="16cd196b0fc7b4eebe195ce20396f3d1"
|
||||
GIT="86eea788e3210f6681a827cda931089da04e06c1"
|
||||
INSTALL=''
|
||||
C1='#6'
|
||||
C2='#.'
|
||||
C3='#%'
|
||||
C1='#2'
|
||||
C2='#/'
|
||||
C3='#-'
|
||||
cwd = os.getcwd()
|
||||
join = os.path.join
|
||||
|
||||
@@ -168,6 +168,6 @@ if __name__ == '__main__':
|
||||
Scripting.waf_entry_point(cwd, VERSION, wafdir)
|
||||
|
||||
#==>
|
||||
#BZh91AY&SY9 ½´\¥ÿÿÿ³DPÿÿÿÿÿÿÿÿÿÿÿm (¬#%0�0e€(b÷/mЀ#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%öÞúzómmkîÖZžÞæ—²U#.´[iÚ¾î�õ¹±µ–ú:¥'kd‹î7{ÛïoºµÛ¶ÖµK“¹]Øvµ'ÛßO¾ö¸gv÷s½÷¶N)#.Q+Ù½íp·µÞ�]/{mš»<{guÒ‹@Ýó{§«�vo;¾ø;ŸvÎiîáÉî44lºï{ß|ûëËßÚU9íõÝŸÝšî·¯y½÷½x#%#%@(}ìh#%` ï²€=â�wfí˜:4§[aÓ¹½ y©³A¦€‡¸ê»´ö4=¦öìd+Ö¨ª)ífš0#6 *”¢”{ƒ’�Q$#%#6#%YJ�zÚV½ƒ%çÍíîæ}»�j½êºa’ïjÚØá3TTf˦Iv×]s}6óu7¾÷z:#.ÎxûÝW_=³ÛzÖåZ;Û»ÍÝÛ}Þsy¾¯³»ß{¸ûížÖîiÉÔ÷Ëzõ¶§rç>^æû}ñ¾íóÛa zúz{x¹-ì�z̀ݳֲ4÷³¼ÛÞ÷fÞÏs¬ô`u¡ÒãF°Û"’EE7w¼#%(J*’OCÀ#%lîè•=÷n{Ywº¹½»ÐdÜöï>}Ü[vÇGÐ`>†ÛEmk®¥ÑMã�W`×LæyÛãÚ^u½#%}�÷aŽît;o¶û}|{mçO—vpòǼ΀Šo·*WµíƘܶ2>öí®®òÏŸwÖõ»]´î;ºjîí9QÚt×·Zt“ž>÷»Ü®¨ÜÙu÷‡ß|}í«×ܬ‰&ÞíN«îq\îû½:¾Ã.ñŽ^ÙéyaC§¶Ó¶Û›—³®÷Ð¥&nCzî¤|öilöͶíÝîвë[¸˜÷»³Ûºû5ÖkoX«èqØ—nöÐlîõÞÞ/`{´žó½wÌ>ï†Ðê¥PJªPTT´jB¹7uÐv�&i¶vÜèº]vú‰Ý›:kÛkÔØëUUܘ{x÷š)º¼»HЃºÚɯfw€#%7ZI#%#%;Ü^êåÉÎó²û3ÊF-Ÿm½ÜözÔíÝ™Üì_U.us[›¶õv]]ó¸|˜Hû†,ÍqÑ»ÝÁæñ{c;úŒçvåJº{+¹éÔ²õ§l÷+ªWg¡»`úùÛÙ;{n#î²Ç]÷}çww»{»»xîvÛ#.¾Øú½mÝEfù‡"sž¼ï¯¼ùÚÀ°ËlÐú$/g¬íÑ”x<ïÜë°VØ6EÇ‘µÞ®ÚGxO{×>öø½ïwÞ´#%À*×Û;Fªµíí7¶;g�<�ÂÀëu´oSk´ÝëÓmï 9.ó’®Ú×ݬ»Ý¾çwÅówwtåvë¥Þç:#.[.ëwc Ó‚àéÕhÁ”gu“½Þ^ïŸnØu¼�ÓÐŒ…/=ÝÚ4#%•c�¹éî½Mö{ÜàìJ…U )½{xW»´×`ï{®ñÝÊäÅÖÃV¶•U[}÷IzovƒuÇH*Ší·u$ëIÒÖªîúãÞncÚ[ÓµŽÛ× &Æ»»}öøø‡½óí·³acÜ| ìÁ“G»îñÌͼÜ&:·»}½í6µî�Ðíç;ï¹ßvÛRÀîï·Ÿw}-âò�ó[ãnh€ &€#%&€ £CBa0š#.#%‰ä™PÏTz†Ðš#%õ§’{SÔõA) B @†@©©á$zzI☠é4#%#%#%#%#%#%#%‚D! M5TÿMŠoU<ÔôzTý(òÔõ)é¨mG¨#%#%Ñ£@#%#%'ªRD!4dÐODõ$ÙOFž¡£õM#.€ò@#.Sj#%#%#%#%#%#%$!#%&@bh&M#%M#.4SÓiˆŒ4 ¢ #%h#%#%#%I¨ˆ L˜#Až€&Œ¦�=&”õmêˆ{SIé” h#%d4#%È#%—ÿÓ?£Uirê\ÕQWwk¹úµZvhʃ>5Zu!LA³ ,L•Q*"€)æ°Pcõ§óü Zü“•5OùÓ¦¸ üæJt¦î£Ä‘8•WoT"¢]^SÌÆ´_3ý†os2ìÀlDs‚4;m»qE6›®ñ‘ÎÊ´ÚMí˜ÖØ`Vd…â]jíâ—˜•5o‚# åñ÷UŒI7wD¼áÌKUå¦/žÝ~«oÔB�äE"ªSº»U¦ÖÖ5k3khÈ‹ €7#%H*-E Õ:¥”$HŠ&� ˆ" HåP° !ß#%hŠ–‚¡#%ª$@dPÉ@mªfL…’ŒÍCLÓd@M$Rj6Ñ35–25)F”Sm&‰š$ÐJ2Zš�Q°h[Fi,ši¢Z!#.F)iM€F¥�#.1eM£DRl–�¨Š–ZSMh�ˆYi#.š ƒ(ÌÌcRF£Qµ&ƒJl†BjcI@˜hÒËHÆR›F¦›"[M¶³U´i˜’ÆfLÈM&²m¦ÛM6�5%)-5±–¦Û3fZL“1‘f´ÄÑd¢‚™l‰B!Qf‘´R`4TH!`ؤ©„f•Jb0lB ‘X�hdFIR&B4±ClÍ’&)BF�RÊËf$@ÒYŠY5“ccE�#6‘d†K) -)¦ ±%&EDš2hhɉIF‘(�$@VAM�Eˆ¢fRÒ¦`›É؉1MÍ‚ab6¤Ø–V‹$”›‚$´”PRD•’%¤Q0Ea�ÆIL# ”&RJME™±£XHÒjH’b iM�$"H²[bË2ŠFÌ’‰²™3bdE(Í‘˜&U4Ä�‹)A³Q`,�i¦†Æ"5+%’6(”R"šIˆ&¤a³L�cI¡ &¤–Q”Ôi3HÚ("šh¢kP,&YA¤²2‹%&DÐM2‘*4f6”)1¨6ÄÊA! "“1�F4,�Ë ŠÙ&TÌÕ˜£l¥±(‰™#.H¦!HŒØÐ¡YM$QF¤É&ÉØÆJšF¦h±b2’™˜²2³i„¬D`ˆ¢JM52i™!Œ¢)#.š1Sb‹5*R’š)#.‘“2)´…HÅ(ÊHR"‹E$˜’M)´i5DŠFÀ˜Œh&Ti¦DÚ#.ƒ,„Òe‹DÈY‘¦ÉJb”D!f™ k6lmd°$4–Ld5EPZ XR$Ècc1 Â2ƒRXÔY¤J&ŒE©M(Z˜hI™IŠ$2ɲ#)‚E,Ñ¥1„5„²e"$4M¶¦¶´`™BjfŒ¦F&”RLȈ¥6À¥š,Å&‘”%–TÙ¢-L¬-”bC؈RˆšD#HJm~Ãk¢¦©aˆÍ¢ŒlVƶ*6L¥4ÔR¤š44´…¨ØFÉ5Y†¡¦c(ÉS*H¶D‰™¦[%´Q‰IKQµ…£&˜D±5˜±acR#6e¥™2eI´*Ò4TÙB+dË"©TÒT›63š¶,Y“L¬‰S,¦ÖJ²ÙJSL�l�’‘µ)¬±%¤2RÔZ ªŒ!¨Õ£%AEVMd£jŠÅEH”kDÑ$m‹hÅŠÔl2ѵ�€´™0°U@i€”R £F2™&•¦±Æ�¦&±‹d‹i Õª–µ–* ”ÍKY4IR1!M¤lY"¶¥Y¶1Jm*–R¦YaZšDF¶•K"e5MM¶„”Êk,Xl²k+,…lÓ ¨ÒD…�bÃ4˜‰!´…-£T%¢†KQY&š6LšJ,ˆ&ËŠl¤#."+,‚E1”ÌJ”lÓ4AE¢Ó$&Fm6“F6ÆÈS¦™cE%bHÌÔ#!4LÔQ¢JdR�–P5BTÀ4˜Ó J™²Bj-#636£)F̤’Œ�£!HbÊkÃi4F5&Éa$YP…-4)Äš4Y”©””²•˜d¬aš,‘±jE¨Õ5£4ECF¥)6b¥�fQj4 2ÆA¦&Ä•%I”1Ršcd�¤Ía)ME`Û0Ù¤²lf“E�˜‰CJ2Zfµ‘hTÍ2–H’l£0D2hªih�¬Òl”Ä,LDÒRBAh´[ Q¨ÔQŠÆ-–ÃI†’M#6L�ŒRˆ#b��-f›C2ˆ6*2%,¤©‘Ñ´k£TI¢„Ë5EŠ$Ôš£PdðŒj”¡kA¥4Ë!E$ЦIh‚5Eˆ±JÛ"¥F±¤ÁdÑÌ¡jQHfJ$©±(‰•j#V#.2,Y*6Œ)‹4¢Ù2V-&)+)¶D¶M�¡¢T’™R¢Âƒccd£dÑ&#¶H�ÔRLÁ¬ÉƒA#6�)³6&"𯍩•“Y‘¤)¤šŠ¢Š&›RV-”’ÆÉˆ£F‚4˜2JÔˆÑie£he¨’Ñjб”£i5² …Q¶5%)ЙÈ̌ƚ‘�LÙ&kDlU%‹hÔ•,«&´LÚ�1lj £cc$UE2©¥XÚ6��¶1mI˜ÊQ f²±-F+iQµ´©QJV”f*šB(4X"J�&ØÖ,Ê’+I[M²“+F�bbÑI�E[l¶¬R&T*&$¢1PÀ"CF�Ši&ÔÃ%XÛØ´Í[F5¬´•42ÖÊY6ÔÔÛ!mI¦¬ME26’QA°ÖjMI™²Êˆ B¢LI&RLˆÈÄd"Ù-¢Ñ‚±“þn··ýÔ¥C)þB51jÄÿTqôe+(a(Æh”‡÷!þ§ ûbåÕ LÿL$hÒlùNzí¿Îó±½9¿‹øºô·¦SUIPª?ë[ŒlÈŸÎÿ·ÖYLâsÈ †ßùë;�L(0\:8À¥‰pÁI äˆd˜*ƒ‰Ãß±¢rý*¤çÿœ3ÿ³ôZÑÿÊI(R×+ˆ½”g™,$b/Í0ÿ-‹npz%ZM‡¼íõâ8ßwB¹ÁŒ¨d~ËÕ‹NØœ“ÆZþ,3cRR(l“ŠrrXˆþúݳf¤áV…cÈÌ`I¥Û"lÆLhƒcôzç““G]“¼î�˜Þ¹w§¥^¥ã\³�Ë/âuçåu™Í\‚LŠëP¦"W‹4LªvcK™@¥JAF&Ä“M‚ê×bÈ‹Ò3ˆ(êñç]¨eñnY½74h6m`Ù—(c2@sªªzoþÝ(‘ 7p‡Êc#6Gv…)†ì,`¼rÂü®R[ŒR}ßÒëdzçgsÅéšÐN×VÄQL0¦Ð¤Y;ùd«Ïô8$ÚÍÏ£˜ØÐØžj¤Ï(%?·râƒþ°Ãµ“ºÀ¡…†JÅxžß÷k¶Œ¶cÂx-›2KËw%€•¬C°UyáyÜ–íÞw^QŽr車esn–CQW6éçqllO²ëå5¼Z4EA¯»ºŸ?_ÆW‹ò-ȦWÅȶÆåÈIºÕø¼u‘¨Û?Go*„Èyùæ|m<™b#4L9cuPEX°ž«©#.¹t@#6A�!´ä#ñÆ#.¯)ÎãÂHˆÃz”^+›Ý\Ѩ8šë•ÞwcrŽ•Ë™(Ë®é$s™5öø‘ZA„�ÿhÿŒJrÈ.YÚlCÙ’,0!MðÛtÉÈe«#6ýR�‹ÁÃ79ô,ýפ�¾ìÉþ˜FtÃÏxV¬@Gô¡€dž%lþ «p’—<kìÄ9 c£ðÐÃ|¶Ç™“#tE]HP0îT[æÈ؃Ù_#¨½—zírH ȦwâÔŠŽÍW†7mxþVYê?)Ärvj³oQžwE¦m„e#.¿ÂdÔ‚™ç™×¶b²àþN!ïe §&¢”øuû/ÑÏKà`ö§nínœšùT)"*�¤#6d9#c*w&é�ƒbÛ†ÉðfR6zš®:'ï�.àûì¥k,YL#6N�*}±ÆyÞ>ÇãŠ�UË"õÖ�“UO«pi)8ª—â”+ñ §Ó¬,‰±Èj[þv¼‹lQôÇôa™1Kèë¯Ç×FÌ÷¿SªÄ7Ím‰Z½”*‰£NŒ¼Pâ-#6¬AË@‰�*•{iX<ÙZøW÷»(Éðâ»EEE¼nY5ÆÕ͵þ—ìw’�>ÇS6½•ß‹«¦öøÿM‡fhŠF¨%2+zmýW!†�ŒbSQIðîÜ®÷uVé(i%"�÷@Xš'+¬¥&D§)J²‹šå¢¶/]öï^¯"R¬•k¹bÑ_·-×»±öõÆ*Š|ý{ü=o÷îèë˜ØÔl›|ÏÀÞ1¨4–üŽ�‹>õÝŒ>¬žýóL—ÖȲ"4£�~"U�ä¨ræPaŒLÖ¶jϹ$Â![ÙùzÛ²†F²lWßî«âøùÑÊW=ì¼4D‰Áa«l—AHÒPŤ'Ò'mBµ§…C×Gƒ¶éE2„R]U¥"»wÕ¬�ü*ÔðХ߲œœ²ôî²Á‹¨ÀS�E#6lÃQMZH"JuœëJ»*”Ó#6I¢L²íãe—¥Â„S²ŠŸ$+�bLine truncated
|
||||
#BZh91AY&SYTÛ¶ñ^îÿÿÿ°dPÿÿÿÿÿÿÿÿÿÿÿm ¨Â,#-40�E0m b¼÷)#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-¥÷Ó\ÊV¾æ»Yc½Û½Úl¥Cf–ÎÜ´ºûwY¬Û¬w¶U:fÖÉÖ»zt¾{vÚÖ%Ñܬš�<Ÿ|ûäÂolÙÝ·G»dÅ!ª;nìó½p¼›×»^ƒïa»<zÞ÷C¤ô:íõÛÚN&Y®mïCs‡]××q‰îg°½ì÷½÷Ûï¾Wo|m¶4Þo¯£Àocš½Ý;øà#-#-#-#-A7¸#->4=hà÷f€yà#/›»y€=µnÒw;Ðtô{¾ööµ°i #-i“Ó»]—^Š:º#-íÐØl…z4Uö°Q€P()T¥È2ª‚ŠÐ#/uèzz€UèuÀé£Ï¾íz÷»‰Øí]ŸuEnñÛÍÕ©3#/RTm‹L’íÍÍôö�®_wÞ^·»ØûîŽö¼öí´�mìó¹çxúÉí¾ûzó{;vÏnºûìÉlÛy5<ûž“íñßYêmËÇxíïpò€ èó²´#2AUR�{6›Ù¤ë]µÝ›µ™v={¼nï9Ö:Ô�´<¯yÈöìÌÔˆ¤§o9L§#-Q‰DP=Øg¡Ð½ÁÑOGo;¼g¼Ôö·½�Jªû�w¼Ï™—³"Š#-õ¥¦)kk_]K§Û;ã�W{�ïiæ}öö;ÁèV÷·µào}nw²·�Ãèi[Üð}ã¦}×sÔöãÝ�#-ºÓïgÓÛv©�p2_föº»ËO¾ß[Ç]\]Ë´ÕÍÒï®=§»W×7�$ç—Ü÷/nv¾ïuìç¼;½>ó«ì¥#/vt¦œîm>Úõ]>Ì9|'s|šÞ,({k’î¹ÏmÛãà×»*Ïvêfùîîún½ŽÙ±÷�¾Î^Û;›C–ÕK}Ý%ë�÷d{»Ýdòœwpç+µÓy#-Ý9^ózï˜}Þ#/:ÎRŠ(#2ìÊB.…˜Ùr‚¶ZÖÛggCêÜ®—BAï¹›±:UÃcÛBW]²¼¼{e"ÝvöÔƒ»æuÝ�#-#-mìë´€‹Ðöósr;¼ívZªKW¶l¾Ýæiîkbn»ÜÙnQêæäTôévÁO³:ù8ön�½515ÇDBÞ²“¼^ìyîú}íïq¸ø +™Jó[ž�Aí›Ö�§:¤žG¤›{+¡Ï¶â>ë}‡r[ºu½Ã½î^Õçm¬Wۃã»��zvL§�ÙÎǦ–›j[[(z/wéÞÞL£>¼{àíºè5k ¢qòίCU™Â÷žûß}µ>sì@UïjáUG9J[×y�{º8îõ\î.0©Úfì*Í7׃٫6½·m�}µ—a½ï}ÏwŸU»�ÒTËJ½ÎtiwXÒîšô÷Zí‡4ð\º ƒt8éÇ{¼»¾µ¶¾o iè°ú+é˜=À#-9W“Wn¬û¬v{€:¢�¶¥Ú×{Þ»Û#-ì^Úqo+¶çwWLX½·ë{¤lغܻ¤¨¡Œm¦ÙÖ•Ùm— õÆ}Ï»ÇvÜ}¥½1{Xì÷zͪæ¾ûxø‡½ó¾ë\ÀžÇÏFôÇlC&NëîñÛÍÁ¡mqïsîï-½Þ÷¼ó¸ôÖ^ù÷;/²µ�ÝݸÖókíﯓàkSå_,ᦈ#-€#-&€#CA0 ¡¡0‰äBO#/¨ÈQ z@òGµ4Ÿª M@�#-š¥<&1&FÑOÒFÒPÈF™#-#-#-#-#-#- &A2a4§â‰?#2›ÒŸéSñ=Q=OQ£j=zž“@Ð4#-#-#-#-OT¤ˆA4ôÊ1)æ£ÑGêƒF'êž�P#-#/šƒÔ4M#-#-#-#-D#-M#-€&™4ÔÍ551‰¦ ¡3I�š@#-#-#-€$ÔD ˆ4h�4Õ3)õQè�({I¨ÓOSÔ#-h#- #->_ÿIþ�U¥sùñʵ;µÛöª´ó4™¨3ãU§bB˜“Td` ˆ*%@@|–"Qú/Óø¨ý?¨»ýTøØ xƒ50èµ+,S¾šSTboéêê`‰þ£_#ývos2ìÀkWdD$ AÔÔ] ÔDd‘ÊÞd¾*ꉗŽqs…OˆW4]Z¬aâí•FQ1‰Ãâ1wŒ(˜‹˜¸Ça†ñåøúˆVâ#2‘V#2F @¨€‘EF1E$E@A@n#-�TZŠ”å,¬‰"Asha@0Š�#ŒQBÀ$Dl@„×çUºm¯-kim©Wt[н¦ÔUUo}¶µµLÉ�²Q™¨išlˆ £ŠJ�´LÍB%Œ€MJQ¥ÛI°¢f�2M£%©¨Õ…´f’ɤˆÑ-†£‰´¦‚@#/£RƆ˜²¦Ñ¢)6KE¨Š–ZSKh�ˆYi#/š ƒ(ÌÌcRF£Qj“A¥6C¡51¤ L4Ye¤c)M£SM‘-¦ÛYjÚ4ÌIc3&d&ˆ“Y6Óm¦›@š’�”–šØËSm™²–“$ÌE@dY14Y( ¦E"FЈTY¤m˜#/X6)*a¥DAR˜Œ„($D– Z’FÔ‰��,DÛ3C$‰ŠP‘†d²²Á™‰4–F"–MdØØÑb‰…H²C%”„�Ji‚lII‘FQ&ŒšL˜�T”iˆÒH�ScD‘b(™”´‚)˜&ƲC6"LSC3`˜X�i6%•„"À‰%&Æ¢"KIE$IQ "Q ŠEP`&d”Â0™Be$¤ÔY›5„�&¤‰&!–”ÙB$‹%±&,³(¤lÉ(›)‘±6&DRŒÙ‚eSLI²”†ÍE€²A¦šˆÔ¬–HØ¢QHLŠi& š�†Í2�&! &¤–Q”Ôi3HÚ("šh¢kP,&YA¤²2‹%&DÐM2‘*4f6”)1¨6ÄÊA! "“1�F4,�Ë ŠÙ&TÌÕ˜£l¥±(‰™#/H¦!HŒØÐ¡YM$QF¤É&ÉØÆJšF¦h±b2’™˜²2³i„¬D`ˆ¢JM52i™!Œ¢)#/š"¦ÅjT¥%4R#&2dSi#2,‘ŠQ”�¤E*ŠI1$šShÒj4‰4ÆÀ˜Œh&Ti¦DÚ#/ƒ,„Òe‹DÈY‘¦ÉJb”D!f™ k6lmd°$4–Ld5EPZ XR$Ècc1 Â2ƒRXÔY¤J&ŒE©M(Z˜hI™IŠ$2ɲ#)‚E,Ñ¥1„5„²e"$4J5µ£ÊS4e214¢’fDEh5)¶,Ñf)4Œ¡,²¦Íjeal£Sb!J"i�!)µüV×D%MR"ÛE؊بÙ2”ÓQJ’hÐÒÒ£a$ÔmdF†™Œ£$l¦T‘lˆ33L¶Kh£’–£j)FM0ššÌX°±©2ÒÌ™2¤Ú#2�•i*l¡²e‘TªY*aM›ŒÍ[,ˆ“L¬‰S,¦ÖJ²ÙJSL‹l�’‘µ)¬±%¤2RÔZ ªŒHj5hÉPQU“Y(Ú¢±QR%Ñ4DÉbÄZ1bµ´mc`-&L(ÁU¦QH&�ÈZdšV–Ä[6˜šÆ-’,m¢Z©kYb¡�™LÔµ“D•#4ÚFÅ’+jU›c¦Ò©e*e–©¤DkiT²&RÔÔѱhIL¦²Å†Ë&²²ÈVË1BAC*4‘!cDX°Í&"Dˆm„Æ!KhÕ @„¨¡’ÔVI¦�“&’‹" ²Å"›)FÈŠË ‘Le3…%4ÍQh´É ‘›M¤Å�±²Â)¦@Ä…ÑIE†˜’2j‰#/�ƒ &j(Ñ%2)F‚Ë(¡*`�Li„¥LÙ!5Œ„FfÔe(Ù”’Q�4d)YKb"˜m&ˆÆ¤Ù,"‚ÉXBŒ–ІbM,ÊTÊJYJÌ2V0‚ÍH؆5"Ôj�šÑš"¡£R”›#/1RÆÙ”–£@‘�“ LdblIRT™BŠ”Ó$…&k Jj+Ù†Í%“c4š,lÄM4£%¦FÕ‘hTÍ2–H’l£0D2hªih�¬Òl”Ä,LDÒRBAh´[ Q¨ÔQŠÆ-–ÃI†’M#2L�ŒRˆ#b��-f›C2ˆ6*2FÉK)*dE´mƨÕh¡2ÍQAb‚ 5&¨Ô0Ä,#¥(mch4¦™d(£D‘TÉ-F¨±#)[dT¢¨Ö4˜",š"™”-J)ÉD•6%2DjÁ¢¦E‹%FÑ…1f”[&Jŵ¤Å%e6Ȗɱ´4J’S ÊTX@�lll”lš$Äb6ÉŠI˜ Õ™0h!Q¥6fÄÄSXÕ2²k24…4“QAQDÓjJŲ’XÙ1h �&’µ"4ZYhÚj$´Z¢¬e(ÚMlˆ!Tm�IEŠE4&E23#1¦¤F%#/LÙ&kDlU%‹hÔ•,«&´LÚ�1lj £cc$UE2©¥XÚ6��¶1mI˜ÊQ f²±-F+iQµ´©QJV”f*šB(4X"J�&ØÖ,Ê’+I[M²“+F�bbÑI�F¶[V)*Q¨`!£FÅ4“jaŒ“mbÛ™«hƵ–’¦†ZÙK&Úš›d-©4Õ‰£(¢#FFÒJ(6ÍI©™›,¨Š*$Ä’e$ÈŒŒFB6Éme¶EÿƒÄÿ} èš?ÁXf³ô#?Ï£¥†ØJ0åÛ•üÅò9ì¿“�wÅ[›û<½*#/MŸ4ç®Ûüï;Ó›ø?ƒ¯Kze7q˨ÿ]òeŇõÏôüK�Õ‡~…rÿ©Zà#2dAE‡G±.)$‘#/·¹‰ÃåÚÑ9þJ¤³ýAŸüÿZ?é$”)k•Ä^ÊpVP±ˆ¾§4ÃýkÜàóJ´›i×çˆã}�#2ç2¡‘úXwf¬ZvÄä�ò×õ0ÕJ"†É8¡·'%ˆƒüµ»fÍIÂD##1�$v—l‰³1¢#/�Í¢:>MvNóºBczåÞž•z—�rÎw,¿�ן�Ög5r 6#2…1š¼Y¢eS³\Ê*S I’$b„ÞíºP®‘€‰�h”…ãλPËâܲ3znhÐl‚ÁS‹&*�î\r¿ö,°þwp̦0Q`¤whR˜nÂÆnX_wµÊKb1ŠOËü=xö|íÜñzf´µÕ±S)´)NþY*Ì�Á&Ön|9���&ÄóU&xA(ñý›—(?àv¡brwBØ0¡ÂiX¯Ûþjí£-˜ðžË@æÌ’òÝÉA %kìQáyÜ–íÞw^QŽr車esn–CQW6éçqllGÀ£q„¶A`¢€«uP<hø!kë[‘L¯‹‘m�Ë�þëWçxë#Q¶~|("!ãã˜Añ´òeˆŒÑ0å�ÕAbÂz®¤4råÑ#-)i#/§!7Ž0mxNwDFÔ£¼W7º¹£Pq5×+¼îÆå+—2Q—]ÒHç2>kíòIa�?ìê’œ²–A¶›öB$ÆÑ�#2hg†ØË��ËV,öQJ>´š~ÆŒi[v—_'³2<PD¯õQIº4Áj°T?І�>¼J6:jÀ\$¥‘7£þRÁ½8&V¾Û%AÆgØ¢…2Ia;•ù²6 öWÄÈê/eÞË\’(3)¡øµ"¢…+ö¼~û,ò>ü)Äruj³oQ�ß#/wE¦m„e#/¿ÂdÔ‚™ç™×¶b²àþN ø2�S“QJ|:ý—èç¥ð0{S·v·NM|ª² âÕÊßDlònß}|—·»´Kn'¹™HÙäÕqÑ?l wÛe+Zie0):4¨ôRÄGçxûŽ*uW,MùqY„�¿µ21¤Úy"¾ÖP¯¼&ŸGXYc�Ô·ü¬=Y4Ø£ƒÇó�a™1Kèë¯Öë£f{ß›«Èæ¶Ä^ˆ�ŒJDѧF^(q…V å DÇ•J½´¬l|+ûÝ”euâ»EEE¼nY5ÆÕÌ�ÿ‡ì«X>#/¡^41Xý¾?ÉaÙš"‘ª L‚#2Å^›EÈa„EF1‰ME'ûr»ÝÕ[¦á¤”ŠwÝbhœ®²”™œ¥*�5ËEl^»íÞ½^D¥Y*×rÅ¢¿¥–ëÝØûzãE ¾~½þ·Š{÷tuÌlj6M¾gÝoÔK}n�,ø/»æÆ,žÝóL—Í‘dDiGÜD«ë�åÌ Â#™lÕŸrI„B>¶£éD•V"Â#"‡Z 6vº’W=ü¼ôë,±®h×Áão:¹9tÇ!8¶‘;jå<(šº<·J)”"’ê)Ù¥®úµ‘¿¦O#/#2]ü+)ÉË/N뼦5„Ô_5×Eñká+ÅðrÓ£áxLC%¡GîŠ4whŒ[bÓV¾ÖYz\(E;(©òB¸ñ°¶*ŠÄêÃÍ–±ä�¥ÑÒŠœ�£Â©æLine truncated
|
||||
#<==
|
||||
#-----BEGIN PGP SIGNATURE-----\n\niQIzBAABCgAdFiEEivIt5aBoIuNHTzxwSbTGfAUneqoFAl3aW3cACgkQSbTGfAUn\neqruqA//Y9oJ46ZR8W7YB/e45bfrYxGbN7NnkvkwSPNziObYur+n1QpQEOaPTn/U\n5kFtPWHXRJzaG/A9poKn7pl1Xd7Edcu1aalfoEazZbuD37VOxIp9lnrefCAeICqj\nGv0SD96Zac91CbA+b20Q4xnqxKMi3LSI4NPjfFGy62FkSk3MS4p6Rdp0/WAKwwNj\nw7WEjQCNmLb37z+FGSzXg28aljYeteBZEthsVmGJ5QqVwMBwgj2+y5FOTzFfxmqB\nrWgjFYS0l85kgYRZv9yzdNmFs5SScwafwpT8Xmdr49tFn/+0LxXyRxX+rdODgrpV\nY4EOiQz0fd6mMMnaTDXlLSXls3JyVYmbTjeNL/9gcHmnStzJ851CJQfyQg7A+JoC\nc7nz0HbiFyTgB+PUZr1OhGj3A7287o8XQ0tqR3oa7jXIOX0OynrGplMQKr++0jE1\nBgKzjLoE9CTbjkQfICLG+aUy3S1ZyDk/BcO+5+Ytbru+qXuDsIgAdVosMfNSv9jJ\nXvOINsbRMekdejYMZv8fIkn5OEjCFHVhNpobEsCb768bjB3p7alQGECBvjHCm6dy\nXZPzl9cBMWIXcBjPTS+GZj+PIXGcu76pbsx6HBHWf+uJ+4xgOsUCVu//0AV09jvA\n0MjtLWwQ8mdRH6Wt4hsp4HKtSvQrhmljf2OnuYBgaFmcdJkN1zI=\n=C0oT\n-----END PGP SIGNATURE-----\n
|
||||
#-----BEGIN PGP SIGNATURE-----\n\niQIzBAABCgAdFiEECzlystnjLqtCPS4PIr4MYv+/pUgFAl+oTtQACgkQIr4MYv+/\npUhzmhAAqNeBRQuz2Z2EvWjxH/EARVKUe499ZPLsiJpl79NX3r0LWeLjf1kNAdxi\n7pR36XY8RdRwQaqNQiJ7UWzKRYXGCix71gaDyq/Qk6eZko6ts3DdicG8m12i7abi\navAtSgKzwE7o4rMqKG3iZe4AXxhCtijjIZY8Kli22XNCpY0YqUjXSNYPlhsZBWrK\nkKSmfcYxqHGrH6AKGwEJV/GbLIivYCQi6KWFfJwSOcid+479EXBuMiK8piVl6uhs\nvWGI/FcbR7cWA46Mkw7JGqJcdoyX9r8fHXrkbdIrojvQ1b4YdALZvgG6jzENCD8s\nk1KPQw+nLcC5Bax9aNO8QEn2O7vkQ5OAq19RV7ezaup2ptwe2XLuolkD3TAXr+jz\njDp0Ktc24IuVmArOyz6KZXQSIxKN3vZ8NJfdRD112/HBO/gxuZCdRQgD4c8WX9EV\nCbgrgxy02pKQdvTva/ffNgFBDOY7esRhrLLzH8lIo/556aAx6NIUy8ekAXTaFfKL\n+UenHhsYzuemapaTMhbBjqzAeiczB/fhWRr9NUajQ2x3+NDJ52/V40/fnZvYbkRx\nmvw28wCXslOh2kxQM7GgLfke8rmHN9Kek6SwHJx7RQ5OnCMKPHAo2Vb/VMx01qX4\nWeNIX9df34mD+Zy+iqJ5neXERGARPAIPeb3xYhCemgyRdWEUwvc=\n=/5DR\n-----END PGP SIGNATURE-----\n
|
||||
Reference in new issue
Block a user