diff options
author | B. Watson <yalhcru@gmail.com> | 2011-11-13 18:12:53 -0600 |
---|---|---|
committer | Robby Workman <rworkman@slackbuilds.org> | 2011-11-14 21:27:11 -0600 |
commit | bd0330066dcad5b497e06c6f7dd6a08e16869259 (patch) | |
tree | 185e63ff623f38d6986ac86e9c6cfaba3e8bcea8 /audio/sooperlooper | |
parent | 35ff32c2c87126597e038f907c57a3e17a32087e (diff) | |
download | slackbuilds-bd0330066dcad5b497e06c6f7dd6a08e16869259.tar.gz |
audio/sooperlooper: Added (live audio looping sampler)
Signed-off-by: Robby Workman <rworkman@slackbuilds.org>
Diffstat (limited to 'audio/sooperlooper')
-rw-r--r-- | audio/sooperlooper/README | 7 | ||||
-rw-r--r-- | audio/sooperlooper/doinst.sh | 10 | ||||
-rw-r--r-- | audio/sooperlooper/man/slconsole.1 | 27 | ||||
-rw-r--r-- | audio/sooperlooper/man/slgui.1 | 67 | ||||
-rw-r--r-- | audio/sooperlooper/man/slregister.1 | 17 | ||||
-rw-r--r-- | audio/sooperlooper/man/sooperlooper.1 | 52 | ||||
-rw-r--r-- | audio/sooperlooper/slack-desc | 19 | ||||
-rw-r--r-- | audio/sooperlooper/sooperlooper.SlackBuild | 89 | ||||
-rw-r--r-- | audio/sooperlooper/sooperlooper.desktop | 8 | ||||
-rw-r--r-- | audio/sooperlooper/sooperlooper.info | 10 | ||||
-rw-r--r-- | audio/sooperlooper/sooperlooper.xpm | 293 |
11 files changed, 599 insertions, 0 deletions
diff --git a/audio/sooperlooper/README b/audio/sooperlooper/README new file mode 100644 index 0000000000..5420daea6b --- /dev/null +++ b/audio/sooperlooper/README @@ -0,0 +1,7 @@ +SooperLooper is a live looping sampler capable of immediate loop +recording, overdubbing, multiplying, reversing and more. It allows +for multiple simultaneous multi-channel loops limited only by your +computer's available memory. + +This requires jack-audio-connection-kit, liblo, rubberband, wxGTK or +wxPython, and libsigc++-legacy. diff --git a/audio/sooperlooper/doinst.sh b/audio/sooperlooper/doinst.sh new file mode 100644 index 0000000000..1f8ff67ded --- /dev/null +++ b/audio/sooperlooper/doinst.sh @@ -0,0 +1,10 @@ +if [ -x /usr/bin/update-desktop-database ]; then + /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1 +fi + +if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then + if [ -x /usr/bin/gtk-update-icon-cache ]; then + /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1 + fi +fi + diff --git a/audio/sooperlooper/man/slconsole.1 b/audio/sooperlooper/man/slconsole.1 new file mode 100644 index 0000000000..4c504c92ab --- /dev/null +++ b/audio/sooperlooper/man/slconsole.1 @@ -0,0 +1,27 @@ +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.37.1. +.TH SLCONSOLE "1" "February 2010" "SLCONSOLE" "User Commands" +.SH NAME +slconsole \- utility to connect to a sooperlooper engine +.SH SYNOPSIS +.B slconsole +[\fIoptions\fR...] +.SH OPTIONS +.TP +\fB\-H\fR host, \fB\-\-connect\-host\fR=\fIhost\fR +connect to sooperlooper engine on given host (default is localhost) +.TP +\fB\-P\fR <num>, \fB\-\-connect\-port=\fR<num> +connect to sooperlooper engine on given port (default is 9951) +.TP +\fB\-h\fR , \fB\-\-help\fR +this usage output +.PP +By default, the gui will try to connect to an engine running +at the given (or default) host and port. +.PP +.SH "SEE ALSO" +.PP +\fBsooperlooper\fR(1), \fBslregister\fR(1) +.SH "AUTHORS" +This manual page was written by Alessio Treglia <quadrispro@ubuntu.com> +for the Debian project (and may be used by others). diff --git a/audio/sooperlooper/man/slgui.1 b/audio/sooperlooper/man/slgui.1 new file mode 100644 index 0000000000..8806cb8cc1 --- /dev/null +++ b/audio/sooperlooper/man/slgui.1 @@ -0,0 +1,67 @@ +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.37.1. +.TH SLGUI "1" "February 2010" "SLGUI" "User Commands" +.SH NAME +slgui \- SooperLooper user interface +.SH SYNOPSIS +.B slgui +[\fI-h\fR] [\fI-V\fR] [\fI-l <num>\fR] [\fI-c <num>\fR] [\fI-t <num>\fR] [\fI-H <str>\fR] [\fI-P <num>\fR] [\fI-m <str>\fR] [\fI-L <str>\fR] [\fI-s\fR] [\fI-N\fR] [\fI-E <str>\fR] [\fI-J <str>\fR] [\fI-S <str>\fR] [\fI-T\fR] [\fI-n\fR] +.SH DESCRIPTION +SooperLooper is a live looping sampler capable of immediate loop recording, +overdubbing, multiplying, reversing and more. It allows for multiple +simultaneous multi-channel loops limited only by your computer's available +memory. +.SH OPTIONS +.TP +\fB\-h\fR, \fB\-\-help\fR +show this help +.TP +\fB\-V\fR, \fB\-\-version\fR +show version only +.TP +\fB\-l\fR, \fB\-\-loopcount=\fR<num> +number of loopers to create (default is 1) +.TP +\fB\-c\fR, \fB\-\-channels=\fR<num> +channel count for each looper (default is 2) +.TP +\fB\-t\fR, \fB\-\-looptime=\fR<num> +number of seconds of loop memory per channel +.TP +\fB\-H\fR, \fB\-\-connect\-host=\fR<str> +connect to sooperlooper engine on given host (default is localhost) +.TP +\fB\-P\fR, \fB\-\-connect\-port=\fR<num> +connect to sooperlooper engine on given port (default is 9951) +.HP +\fB\-m\fR, \fB\-\-load\-midi\-binding=\fR<str> loads midi binding from file +.TP +\fB\-L\fR, \fB\-\-load\-session=\fR<str> +load session from file +.TP +\fB\-s\fR, \fB\-\-force\-spawn\fR +force the execution of a new engine +.TP +\fB\-N\fR, \fB\-\-never\-spawn\fR +never start a new engine +.TP +\fB\-E\fR, \fB\-\-exec\-name=\fR<str> +use name as binary to execute as sooperlooper engine (default is sooperlooper) +.TP +\fB\-J\fR, \fB\-\-jack\-name=\fR<str> +jack client name, default is sooperlooper_1 +.TP +\fB\-S\fR, \fB\-\-jack\-server\-name=\fR<str> +specify JACK server name +.TP +\fB\-T\fR, \fB\-\-stay\-on\-top\fR +keep main window on top of other applications +.TP +\fB\-n\fR, \fB\-\-never\-timeout\fR +Never timeout if an engine stops responding +.PP +.SH "SEE ALSO" +.PP +\fBslconsole\fR(1), \fBslregister\fR(1), \fBsooperlooper\fR(1) +.SH "AUTHORS" +This manual page was written by Alessio Treglia <quadrispro@ubuntu.com> +for the Debian project (and may be used by others). diff --git a/audio/sooperlooper/man/slregister.1 b/audio/sooperlooper/man/slregister.1 new file mode 100644 index 0000000000..aa9b0d85ee --- /dev/null +++ b/audio/sooperlooper/man/slregister.1 @@ -0,0 +1,17 @@ +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.37.1. +.TH SLREGISTER "1" "February 2010" "SLREGISTER" "User Commands" +.SH NAME +slregister \- receive status updates from a SooperLooper engine +.SH SYNOPSIS +.B slregister +\fItarget_port_# sl_server_port_# \fR[\fIunregister\fR] +.SH DESCRIPTION +The target_port_# is the OSC port of the server you wish to receive +status updates from SooperLooper and sl_server_port_# is your SL port +(for example use 9951 for the standalone SL, or 10051 for the AU plugin). +.SH "SEE ALSO" +.PP +\fBsooperlooper\fR(1), \fBslconsole\fR(1) +.SH "AUTHORS" +This manual page was written by Alessio Treglia <quadrispro@ubuntu.com> +for the Debian project (and may be used by others). diff --git a/audio/sooperlooper/man/sooperlooper.1 b/audio/sooperlooper/man/sooperlooper.1 new file mode 100644 index 0000000000..a80112760e --- /dev/null +++ b/audio/sooperlooper/man/sooperlooper.1 @@ -0,0 +1,52 @@ +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.37.1. +.TH SOOPERLOOPER "1" "February 2010" "SooperLooper 1.6.14" "User Commands" +.SH NAME +SooperLooper \- looping sampler +.SH SYNOPSIS +.B sooperlooper +[\fIoptions\fR...] +.SH DESCRIPTION +SooperLooper is a live looping sampler capable of immediate loop recording, +overdubbing, multiplying, reversing and more. It allows for multiple +simultaneous multi-channel loops limited only by your computer's available +memory. +.SH OPTIONS +.HP +\fB\-l\fR <num> , \fB\-\-loopcount=\fR<num> number of loopers to create (default is 1) +.TP +\fB\-c\fR <num> , \fB\-\-channels=\fR<num> +channel count for each looper (default is 2) +.TP +\fB\-t\fR <numsecs> , \fB\-\-looptime=\fR<num> +number of seconds of loop memory per channel (default is 40), at least +.HP +\fB\-L\fR <pathname> , \fB\-\-load\-session=\fR<pathname> load initial session from pathname +.TP +\fB\-D\fR <yes/no>, \fB\-\-discrete\-io\fR=\fI[yes]\fR +initial loops should have discrete input and output ports (default yes) +.TP +\fB\-p\fR <num> , \fB\-\-osc\-port=\fR<num> +udp port number for OSC server (default is 9951) +.HP +\fB\-j\fR <str> , \fB\-\-jack\-name=\fR<str> jack client name, default is sooperlooper_1 +.HP +\fB\-S\fR <str> , \fB\-\-jack\-server\-name=\fR<str> specify jack server name +.HP +\fB\-m\fR <str> , \fB\-\-load\-midi\-binding=\fR<str> loads midi binding from file or preset +.TP +\fB\-q\fR , \fB\-\-quiet\fR +do not output status to stderr +.TP +\fB\-h\fR , \fB\-\-help\fR +this usage output +.TP +\fB\-V\fR , \fB\-\-version\fR +show version only +.SH COPYRIGHT +Copyright 2007 Jesse Chappell +.SH "SEE ALSO" +.PP +\fBslconsole\fR(1), \fBslregister\fR(1), \fBslgui\fR(1) +.SH "AUTHORS" +This manual page was written by Alessio Treglia <quadrispro@ubuntu.com> +for the Debian project (and may be used by others). diff --git a/audio/sooperlooper/slack-desc b/audio/sooperlooper/slack-desc new file mode 100644 index 0000000000..42a3579ca1 --- /dev/null +++ b/audio/sooperlooper/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +sooperlooper: sooperlooper (live audio looping sampler) +sooperlooper: +sooperlooper: SooperLooper is a live looping sampler capable of immediate loop +sooperlooper: recording, overdubbing, multiplying, reversing and more. It allows +sooperlooper: for multiple simultaneous multi-channel loops limited only by your +sooperlooper: computer's available memory. +sooperlooper: +sooperlooper: +sooperlooper: +sooperlooper: +sooperlooper: diff --git a/audio/sooperlooper/sooperlooper.SlackBuild b/audio/sooperlooper/sooperlooper.SlackBuild new file mode 100644 index 0000000000..0f1a0fc313 --- /dev/null +++ b/audio/sooperlooper/sooperlooper.SlackBuild @@ -0,0 +1,89 @@ +#!/bin/sh + +# Slackware build script for sooperlooper + +# Written by B. Watson (yalhcru@gmail.com) + +PRGNAM=sooperlooper +VERSION=${VERSION:-1.6.14} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i486 ;; + arm*) ARCH=arm ;; + *) ARCH=$( uname -m ) ;; + esac +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/$PRGNAM-$VERSION.tar.gz +cd $PRGNAM-$VERSION +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --mandir=/usr/man \ + --docdir=/usr/doc/$PRGNAM-$VERSION \ + --build=$ARCH-slackware-linux + +make +make install-strip DESTDIR=$PKG + +# Man pages, desktop, icon borrowed from Debian (thanks!) +mkdir -p $PKG/usr/share/applications +cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop + +mkdir -p $PKG/usr/share/pixmaps +cat $CWD/$PRGNAM.xpm > $PKG/usr/share/pixmaps/$PRGNAM.xpm + +mkdir -p $PKG/usr/man/man1 +for page in $CWD/man/*; do + gzip -9c $page > $PKG/usr/man/man1/$( basename $page ).gz +done + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a COPYING OSC README $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc +cat $CWD/doinst.sh > $PKG/install/doinst.sh + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/audio/sooperlooper/sooperlooper.desktop b/audio/sooperlooper/sooperlooper.desktop new file mode 100644 index 0000000000..ce87cf2036 --- /dev/null +++ b/audio/sooperlooper/sooperlooper.desktop @@ -0,0 +1,8 @@ +[Desktop Entry] +Type=Application +Name=SooperLooper +GenericName=SooperLooper Live Looping Sampler +Icon=sooperlooper +Exec=slgui +Terminal=false +Categories=AudioVideo;Audio; diff --git a/audio/sooperlooper/sooperlooper.info b/audio/sooperlooper/sooperlooper.info new file mode 100644 index 0000000000..fe0a918c59 --- /dev/null +++ b/audio/sooperlooper/sooperlooper.info @@ -0,0 +1,10 @@ +PRGNAM="sooperlooper" +VERSION="1.6.14" +HOMEPAGE="http://essej.net/sooperlooper/" +DOWNLOAD="http://essej.net/sooperlooper/sooperlooper-1.6.14.tar.gz" +MD5SUM="6faace751e59347afd45e3bc5ad6904f" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +MAINTAINER="B. Watson" +EMAIL="yalhcru@gmail.com" +APPROVED="rworkman" diff --git a/audio/sooperlooper/sooperlooper.xpm b/audio/sooperlooper/sooperlooper.xpm new file mode 100644 index 0000000000..2b781bc94d --- /dev/null +++ b/audio/sooperlooper/sooperlooper.xpm @@ -0,0 +1,293 @@ +/* XPM */ +static char * sooperlooper_xpm[] = { +"32 32 258 2", +" c #000000", +". c #08090B", +"+ c #111118", +"@ c #0F0E13", +"# c #080709", +"$ c #090609", +"% c #0A0508", +"& c #0A0507", +"* c #0A0407", +"= c #0A0406", +"- c #0B0405", +"; c #0B0305", +"> c #0A0305", +", c #110408", +"' c #070203", +") c #030405", +"! c #18202C", +"~ c #2B3547", +"{ c #393F56", +"] c #41415B", +"^ c #413B53", +"/ c #3E3246", +"( c #412E42", +"_ c #432A3E", +": c #452639", +"< c #472335", +"[ c #491F30", +"} c #4B1B2B", +"| c #4E1727", +"1 c #501323", +"2 c #4F1323", +"3 c #521424", +"4 c #320D17", +"5 c #0D0306", +"6 c #07090C", +"7 c #253042", +"8 c #455B7C", +"9 c #596E96", +"0 c #606B94", +"a c #636289", +"b c #665C81", +"c c #6B567A", +"d c #6F5071", +"e c #73486A", +"f c #764162", +"g c #7A3B5A", +"h c #7E3552", +"i c #812E4A", +"j c #852643", +"k c #89203B", +"l c #88213B", +"m c #8E223D", +"n c #46111F", +"o c #040507", +"p c #283549", +"q c #556F98", +"r c #58739E", +"s c #576B92", +"t c #5A648A", +"u c #5E5D83", +"v c #61577B", +"w c #655173", +"x c #694B6B", +"y c #6C4464", +"z c #703E5C", +"A c #733855", +"B c #77324E", +"C c #7A2B46", +"D c #7E243F", +"E c #811F38", +"F c #86203A", +"G c #44111E", +"H c #010101", +"I c #121820", +"J c #57719B", +"K c #566F99", +"L c #556E98", +"M c #61587B", +"N c #665173", +"O c #6D4464", +"P c #703E5D", +"Q c #743855", +"R c #080B0E", +"S c #33435B", +"T c #556E97", +"U c #10141C", +"V c #566F98", +"W c #566B92", +"X c #5C668C", +"Y c #5B5A7E", +"Z c #4F4763", +"` c #4B3C54", +" . c #4C374E", +".. c #503249", +"+. c #522E44", +"@. c #54283E", +"#. c #61283F", +"$. c #742943", +"%. c #7F253F", +"&. c #11151D", +"*. c #5A749F", +"=. c #586C93", +"-. c #576084", +";. c #393A50", +">. c #0C0A0E", +",. c #0E0B10", +"'. c #0E0A0F", +"). c #0F0A0E", +"!. c #0F090D", +"~. c #0B0609", +"{. c #2E121D", +"]. c #67243C", +"^. c #802540", +"/. c #11161E", +"(. c #5B76A1", +"_. c #596D95", +":. c #50597A", +"<. c #272837", +"[. c #1F0C14", +"}. c #632339", +"|. c #812541", +"1. c #0E1218", +"2. c #4D6388", +"3. c #586C94", +"4. c #35364B", +"5. c #010100", +"6. c #220D16", +"7. c #63233A", +"8. c #090B10", +"9. c #374761", +"0. c #5F6990", +"a. c #50506F", +"b. c #1D1923", +"c. c #050608", +"d. c #232E3E", +"e. c #546D95", +"f. c #5B658B", +"g. c #5D5C81", +"h. c #443D57", +"i. c #465B7E", +"j. c #546D96", +"k. c #626087", +"l. c #554D6D", +"m. c #141017", +"n. c #010102", +"o. c #131922", +"p. c #4F668C", +"q. c #56719B", +"r. c #605F85", +"s. c #5A5173", +"t. c #322839", +"u. c #43111E", +"v. c #57719C", +"w. c #5F5F84", +"x. c #5C5375", +"y. c #3E3146", +"z. c #85203A", +"A. c #4B1221", +"B. c #161C26", +"C. c #222C3C", +"D. c #1D2634", +"E. c #303F55", +"F. c #526A91", +"G. c #567099", +"H. c #5F5E84", +"I. c #5D5476", +"J. c #41344A", +"K. c #240E17", +"L. c #66243B", +"M. c #821F38", +"N. c #771D34", +"O. c #591526", +"P. c #48111F", +"Q. c #4C1220", +"R. c #46111E", +"S. c #270911", +"T. c #010001", +"U. c #2F3D54", +"V. c #4D6489", +"W. c #495F82", +"X. c #475C7E", +"Y. c #415575", +"Z. c #51698F", +"`. c #605F86", +" + c #595172", +".+ c #2C2332", +"++ c #17090E", +"@+ c #541D2F", +"#+ c #832642", +"$+ c #842039", +"%+ c #7F1E37", +"&+ c #7A1D35", +"*+ c #7C1E36", +"=+ c #751C33", +"-+ c #49121F", +";+ c #020101", +">+ c #394965", +",+ c #5D78A5", +"'+ c #58729C", +")+ c #59739D", +"!+ c #616086", +"~+ c #514A67", +"{+ c #0B090D", +"]+ c #030202", +"^+ c #34111C", +"/+ c #822642", +"(+ c #821F39", +"_+ c #831F39", +":+ c #84203A", +"<+ c #7E1E37", +"[+ c #531423", +"}+ c #030101", +"|+ c #374762", +"1+ c #5A75A1", +"2+ c #5D678E", +"3+ c #373246", +"4+ c #18070D", +"5+ c #681E34", +"6+ c #511423", +"7+ c #384863", +"8+ c #5B76A2", +"9+ c #576C93", +"0+ c #596388", +"a+ c #060204", +"b+ c #2E0D16", +"c+ c #801F38", +"d+ c #7D1E36", +"e+ c #521423", +"f+ c #35455E", +"g+ c #526A92", +"h+ c #526B92", +"i+ c #546C95", +"j+ c #536C94", +"k+ c #506286", +"l+ c #343B50", +"m+ c #0F0E14", +"n+ c #010000", +"o+ c #1C070D", +"p+ c #6A1A2D", +"q+ c #4E1322", +"r+ c #131923", +"s+ c #202A3A", +"t+ c #232E40", +"u+ c #3C4D69", +"v+ c #3B4B67", +"w+ c #263245", +"x+ c #0B0E13", +"y+ c #0D0406", +"z+ c #270A11", +"A+ c #2F0C15", +"B+ c #2E0C14", +"C+ c #2C0B13", +"D+ c #020203", +"E+ c #030305", +"F+ c #030506", +"G+ c #07080B", +"H+ c #000001", +"I+ c #040102", +" ", +" ", +" ", +" ", +" . + @ # $ $ % & * = - ; ; > , ' ", +" ) ! ~ { ] ^ / ( _ : < [ } | 1 2 3 4 5 ", +" 6 7 8 9 0 a b c d e f g h i j k l m n 5 ", +" o p q r s t u v w x y z A B C D E E F G 5 ", +" H I J K L s t u M N x O P Q B C D E E F G 5 ", +" R S T L L s t u M N x O P Q B C D E E F G 5 ", +" U V T T L W X Y Z ` ...+.@.#.$.%.E E F G 5 ", +" &.*.T T L =.-.;.>.,.'.).!.~.{.].^.E E F G 5 ", +" /.(.T T L _.:.<. [.}.|.E E F G 5 ", +" 1.2.T T L 3.-.4.5. 6.7.|.E E F G 5 ", +" 8.9.T L L W 0.a.b. 6.7.|.E E F G 5 ", +" c.d.e.q L s f.g.h. 6.7.|.E E F G 5 ", +" o i.j.q s t k.l.m. 6.7.|.E E F G 5 ", +" n.o.p.q.s t r.s.t.H 6.7.|.E E F u.5 ", +" 2.v.s t w.x.y.H 6.7.|.E E z.A.5 ", +" B.d.C.D.o.E.F.G.s t H.I.J.H K.L.^.E E M.N.O.P.Q.R.S.T. ", +" U.V.W.X.Y.Z.T q s t `. +.+H ++@+#+E E E $+%+&+*+=+-+;+ ", +" >+,+J '+)+G.T L s t !+~+{+ ]+^+/+E E E E (+_+:+<+[+}+ ", +" |+1+T T T T T L s 2+Y 3+ 4+5+F M.E E E E _+*+6+}+ ", +" 7+8+K K q V q G.9+0+] @ a+b+=+c+_+_+_+_+$+d+e+}+ ", +" f+J g+h+i+i+i+j+k+l+m+ n+o+p+&+*+d+*+<+N.q+;+ ", +" r+s+D.t+u+v+u+w+x+ n+;+y+z+A+B+B+C+o+n+ ", +" D+) E+F+6 G+6 o H+ }+I+I+I+I+}+ ", +" ", +" ", +" ", +" ", +" "}; |