diff options
author | EUcancER <root@euer.krebsco.de> | 2011-08-25 18:43:50 +0200 |
---|---|---|
committer | EUcancER <root@euer.krebsco.de> | 2011-08-25 18:43:50 +0200 |
commit | 7499b82d0d8be67079c91e6d3b277dd65142c8ba (patch) | |
tree | c729ce62e9a12af2f399b60f284bef2d4dca1e81 | |
parent | b56137d875f43026aeabcc4403252e5e7008b93a (diff) | |
parent | 561f37e4a24061bd70113ebc7951175e0d3e116f (diff) |
Merge branch 'master' of https://github.com/krebscode/painload
-rwxr-xr-x | btc/mtgox/ticker_text.sh | 3 | ||||
-rw-r--r-- | cholerab/install_stories/debian_squeeze_minimal | 23 | ||||
-rwxr-xr-x | cholerab/knut/index.js | 4 | ||||
-rw-r--r-- | cholerab/news/Issue#0 | 32 | ||||
-rw-r--r-- | cholerab/news/Issue#1 | 62 | ||||
-rw-r--r-- | cholerab/shirts/bestellliste | 56 | ||||
-rw-r--r-- | cholerab/thesauron | 11 | ||||
-rw-r--r-- | evan/satz-liste | 21 | ||||
-rw-r--r-- | gold/Makefile | 3 | ||||
-rw-r--r-- | gold/btcguild/index.js (renamed from btc/btcguild/index.js) | 0 | ||||
-rwxr-xr-x | gold/json/render/ticker (renamed from btc/mtgox/json_ticker_helper.py) | 0 | ||||
-rw-r--r-- | gold/mining/CONFIGURE (renamed from btc/mining/CONFIGURE) | 0 | ||||
-rw-r--r-- | gold/mining/Makefile (renamed from btc/mining/Makefile) | 0 | ||||
-rw-r--r-- | gold/mining/README (renamed from btc/mining/README) | 0 | ||||
-rw-r--r-- | gold/mining/TODO (renamed from btc/mining/TODO) | 0 | ||||
-rwxr-xr-x | gold/mining/bin/archlinux-cruise-control (renamed from btc/mining/bin/archlinux-cruise-control) | 0 | ||||
-rwxr-xr-x | gold/mining/bin/ati_temper (renamed from btc/mining/bin/ati_temper) | 0 | ||||
-rwxr-xr-x | gold/mining/bin/cleanup_tmp (renamed from btc/mining/bin/cleanup_tmp) | 0 | ||||
-rwxr-xr-x | gold/mining/bin/ensure-router (renamed from btc/mining/bin/ensure-router) | 0 | ||||
-rwxr-xr-x | gold/mining/bin/ensure-wlan0 (renamed from btc/mining/bin/ensure-wlan0) | 0 | ||||
-rw-r--r-- | gold/mining/poll_btcguild (renamed from btc/mining/poll_btcguild) | 0 | ||||
-rw-r--r-- | gold/mining/user/.config/autostart/startup.desktop (renamed from btc/mining/user/.config/autostart/startup.desktop) | 0 | ||||
-rw-r--r-- | gold/mining/user/mining.ovdr (renamed from btc/mining/user/mining.ovdr) | 0 | ||||
-rwxr-xr-x | gold/mining/user/startup.sh (renamed from btc/mining/user/startup.sh) | 0 | ||||
-rwxr-xr-x | gold/mtgox/mtgox.getDepth (renamed from btc/mtgox/mtgox.getDepth) | 0 | ||||
-rwxr-xr-x | gold/mtgox/mtgox.getTrades (renamed from btc/mtgox/mtgox.getTrades) | 0 | ||||
-rwxr-xr-x | gold/mtgox/mtgox.ticker (renamed from btc/mtgox/mtgox.ticker) | 0 | ||||
-rwxr-xr-x | gold/mtgox/ticker_text.sh | 4 | ||||
-rwxr-xr-x | gold/scex/ticker | 2 | ||||
-rwxr-xr-x | gold/scex/ticker_text.sh | 4 | ||||
-rw-r--r-- | gold/scex/tracer/index.js | 89 | ||||
-rw-r--r-- | gold/scex/tracer/slurp.js | 38 | ||||
-rw-r--r-- | ovh/README | 20 | ||||
-rw-r--r-- | retiolum/hosts/EUcancER | 11 |
34 files changed, 341 insertions, 42 deletions
diff --git a/btc/mtgox/ticker_text.sh b/btc/mtgox/ticker_text.sh deleted file mode 100755 index 2bcac134..00000000 --- a/btc/mtgox/ticker_text.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh -dirname=`dirname $(readlink -f $0)` -$dirname/mtgox.ticker | python $dirname/json_ticker_helper.py diff --git a/cholerab/install_stories/debian_squeeze_minimal b/cholerab/install_stories/debian_squeeze_minimal new file mode 100644 index 00000000..0d5e64b2 --- /dev/null +++ b/cholerab/install_stories/debian_squeeze_minimal @@ -0,0 +1,23 @@ +apt-get update +apt-get upgrade +apt-get install curl git-core vim make +curl https://raw.github.com/krebscode/painload/master/util/auto/krebs + +KREBSDIR=${1-/krebs} +[ ! -e $KREBSDIR ] && git clone https://github.com/krebscode/painload ${KREBSDIR}|| printf "painload already deployed\n" +cp /krebs/infest/skel/etc/profile /etc/profile +# not copying rc.local +cp /krebs/infest/skel/home /root +# not copying .ssh +cp /krebs/infest/skel/etc/motd.tail /etc/motd.tail +cp /krebs/infest/skel/etc/motd.tail /etc/motd + +# retiolum +apt-get install python +# fix matcher script +# fix makefile + +# fix fuer vhosts die tun haben aber noch nicht eingerichtet +mkdir /dev/net +mknod /dev/net/tun c 10 200 +mknod /dev/tap0 c 36 16 diff --git a/cholerab/knut/index.js b/cholerab/knut/index.js index e7278678..9c536006 100755 --- a/cholerab/knut/index.js +++ b/cholerab/knut/index.js @@ -1,7 +1,7 @@ #! /usr/bin/env node -var host = '0.0.0.0'; -var port = 42101; +var host = process.env.host || '127.0.0.1'; +var port = Number(process.env.port) || 42101; var pipe = '/tmp/krebscode.painload.cholerab.ttycnser.' + process.env.LOGNAME; diff --git a/cholerab/news/Issue#0 b/cholerab/news/Issue#0 new file mode 100644 index 00000000..532c5c3b --- /dev/null +++ b/cholerab/news/Issue#0 @@ -0,0 +1,32 @@ +Krebs News 2011-08-24 +====================== +0. urkrebs hat ein usb-relais +----------------------- + +in /krebs/claws ist der code um das relais anzusteuern, "make install" +sollte das richtige tun, danach steht ein tool names "rcontrol" im +/krebs/bin ordner zur verfuegung. + +1. neuer supernode +------------------ +seit heut eingerichtet ist ein neuer Supernode fuers Tinc : EUcancER + +auch das updaten wurde vereinfacht! +cd /krebs +git pull +make -C retiolum update + +und danach in /etc/tinc/retiolum/tinc.conf: +ConnectTo = EUcancER + +die kisten von EUserv sind wohl serioes und recht stable + +fuer interessenten: +http://hoohead.hoohost.org/2011/08/kostenloser-vserver/ + +ich hab uebrigens die kiste schon seit 2 jahren (und seit dem total +vergessen), ist genauso eine beta kiste. + +Gruesse, + +Felix diff --git a/cholerab/news/Issue#1 b/cholerab/news/Issue#1 new file mode 100644 index 00000000..e5fd78df --- /dev/null +++ b/cholerab/news/Issue#1 @@ -0,0 +1,62 @@ +# Krebs News Issue #1 (2011-08-24) +## 0. krebsco.de & ovh soapi + +Krebs hat jetzt ein offizielles Zuhause im Internet. Das Ministerium +dankt KM momo, dass er die Domain geclaimt und das erste Jahr gesponsort +hat! + +Die Zone kann momentan wie in [`//ovh/README`][0.1] beschrieben bearbeitet +werden. Wenn ihr das nicht koennt oder wollt, aber dennoch eine Maschine unter +`krebsco.de` erreichbar haben moechtet, dann schickt eine Bewerbung an uns und +es wird, wie immer, das Richtige passieren. + +Niob: Sehr relevante und awesome [`Graphen`][0.2]. + +[0.1]: https://github.com/krebscode/painload/tree/master/ovh +[0.2]: http://euer.krebsco.de/graphs + +## 1. SC ist das neue BTC + +Zumindest sind chinaman und bergwerk umgestiegen und bringen nun ueber +100% mehr Gewinn ein, wenn unsere Prognosen stimmen sollten...`^_-` + +Die passenden Ticker und Tracer sind unter [`//gold/scex`][1.1] zu +finden: + + $ //gold/scex/ticker_text.sh # bzw. + $ node //gold/scex/tracer + +Installer kommen ASAP oder auch nicht.`^_^` + +[1.1]: https://github.com/krebscode/painload/tree/master/gold/scex + +## 2. Knights + +Eine neue Kaste ist entstanden: die Cancer Knights. Sie arbeiten fuer +uns und fuehlen sich besser, weil sie ueber den Crab People stehen. Sie +stellen Ressourcen wie Hardware und Arbeitskraft bereit, haben keine +Rechte. Sobald drei Cancer Knights zusammen kommen haben sie die Chance +Krebsminister werden. Bevor dies geschieht muessen sie geschossen zu drei +Krebsministern in der Realen Welt gehen und werden dann in einem noch zu +definierenden Ritual zu Krebsministern ernannt. Ab dann koennen sie zum +punchen aufgefordern werden bzw.automatisch punchen bzw. autopunchen. + +Infin aus Hannover wird der erste Cancer Knight. Er hat die +Krebsanimation sowie den 3D-Krebs auf dem CCCAMP11 gemacht. +Danke Infin, du verdienst den Titel, trage ihn mit Wuerde! + +## 3. Thesauron + +Wie allgemein gueltig unterliegen alle Sprachen dem staetigen Wandel. +Um spaeter zu wissen woher wir kamen und die Linguisten unter uns zu +befriedigen wurde der Grundstein zur Dokumentation der Relevanten +Sprache, ihrer Entwicklung, etc. gelegt. + +Die ersten Schritte sind in [`//cholerab/thesauron`][3.1] zu finden und +auch _du_ fuehlst dich angesprochen diese zu erweitern! Entweder direkt +via GitHub's fork & pull request, durch eine formlose Mail an [die Krebs +Mailingliste][3.2] oder auf einem der anderen, zahllosen Wege, auf dem +ihr uns errreichen koennt. + +[3.1]: https://github.com/krebscode/painload/tree/master/gold/scex +[3.2]: mailto:krebs@syntax-fehler.de diff --git a/cholerab/shirts/bestellliste b/cholerab/shirts/bestellliste index 9a42b443..08bd72dc 100644 --- a/cholerab/shirts/bestellliste +++ b/cholerab/shirts/bestellliste @@ -1,24 +1,32 @@ - GEZ ERH -tv: 2 M j - 1 S j -ulrich: 1 M -felix: 2 M j j - 1 S j j -Lassulus: 2 M j j -Pfleidi: 1 L -Tensai: 1 L -Momo: 1 XXL -hadez: 1 L j j - 1 M j j -Phil: 1 S -Lukas: 1 M v j -Jan: 1 2XL -Ronny: 1 M -Marc: 1 L -Lotho: 1 XL -Sascha: 1 XL -Moritz: 1 M -RIPE: 1 XL -kh: 1 L j j -miefda: 1 L j j - 1 XL j j + # S G∃ Feedback +tv 2 M j- + 1 S j- +ulrich 1 M ?j gut +felix 2 M jj + 1 S jj +Lassulus 2 M jj +Pfleidi 1 L -- +Tensai 1 L jj +Momo 1 2 jj Der Siebdruck sieht echt gut aus, kein bisschen verschmiert. +hadez 1 L jj + 1 M jj +Phil 1 S -- +Lukas 1 M ?j +Jan 1 2 -- +Ronny 1 M -- +Marc 1 L -- +Lotho 1 X -- +Sascha 1 X -- +Moritz 1 M -- +RIPE 1 X -- +kh 1 L jj gute Verarbeitung, guter Gesamteindruck, passt wie angegossen +miefda 1 L jj + 1 X jj + +G = Gezahlt ∈ { -, j, ? } +∃ = Erhalten ∈ { -, j, ? } +j = ja +- = nein +? = vielleicht +S = Größe ∈ { S, M, L, X = XL, 2 = XXL, ... } +# = Anzahl diff --git a/cholerab/thesauron b/cholerab/thesauron new file mode 100644 index 00000000..07e274f5 --- /dev/null +++ b/cholerab/thesauron @@ -0,0 +1,11 @@ +Cholerab n. +- Kunstwort aus Kollaboration und Cholera. Beschreibt den Zustand, dass + Zusammenarbeit niemals gut, einfach und ohne Schmerzen funktioniert. +- Teamwork-Plattform für Krebscode. + +Nahziel n. +- Ziel mit höchst möglicher Priorität. + +Nahzielerfahrung n. +- das Erlebnis der (endgültigen) Nichterreichung eines Nahziels (obwohl + nur noch wenig ((quasi-) infinitesimal viel) nötig gewesen wäre). diff --git a/evan/satz-liste b/evan/satz-liste index 663aa572..bfdc8281 100644 --- a/evan/satz-liste +++ b/evan/satz-liste @@ -1,13 +1,8 @@ -wenn ich meinen erzeugten abfall vor dem nach hause gehen beseitige steigt mein soziales ansehen -bringe eine pflanze mit -ein sauberer scheck ist ein guter scheck -auch du weißt wie man den geschirrspüler einräumt -wer die toilette putzt kommt in den himmel -der große bruder sieht es gerne wenn die genossen die vereinsräume in stand halten -muelltrennung bringt gutes karma -dokumentiere deine projekte -werbe neue mitglieder -fnord -bewässere die Pflanzen -Öffne ein Fenster -wische die tische +Der Zugang zu Computern und allem, was einem zeigen kann, wie diese Welt funktioniert, sollte unbegrenzt und vollständig sein. +Alle Informationen müssen frei sein. +Mißtraue Autoritäten - fördere Dezentralisierung +Beurteile einen Hacker nach dem, was er tut und nicht nach üblichen Kriterien wie Aussehen, Alter, Rasse, Geschlecht oder gesellschaftlicher Stellung. +Man kann mit einem Computer Kunst und Schönheit schaffen. +Computer können dein Leben zum Besseren verändern. +Mülle nicht in den Daten anderer Leute. +Öffentliche Daten nützen, private Daten schützen diff --git a/gold/Makefile b/gold/Makefile new file mode 100644 index 00000000..ff553def --- /dev/null +++ b/gold/Makefile @@ -0,0 +1,3 @@ +install: + ln -snf $$PWD/mtgox/ticker_text.sh ../bin/mtgox_ticker + ln -snf $$PWD/scex/ticker_text.sh ../bin/scex_ticker diff --git a/btc/btcguild/index.js b/gold/btcguild/index.js index 1f33db06..1f33db06 100644 --- a/btc/btcguild/index.js +++ b/gold/btcguild/index.js diff --git a/btc/mtgox/json_ticker_helper.py b/gold/json/render/ticker index 727dd594..727dd594 100755 --- a/btc/mtgox/json_ticker_helper.py +++ b/gold/json/render/ticker diff --git a/btc/mining/CONFIGURE b/gold/mining/CONFIGURE index 299cbd53..299cbd53 100644 --- a/btc/mining/CONFIGURE +++ b/gold/mining/CONFIGURE diff --git a/btc/mining/Makefile b/gold/mining/Makefile index 8701920f..8701920f 100644 --- a/btc/mining/Makefile +++ b/gold/mining/Makefile diff --git a/btc/mining/README b/gold/mining/README index ad8c3468..ad8c3468 100644 --- a/btc/mining/README +++ b/gold/mining/README diff --git a/btc/mining/TODO b/gold/mining/TODO index bafaa72a..bafaa72a 100644 --- a/btc/mining/TODO +++ b/gold/mining/TODO diff --git a/btc/mining/bin/archlinux-cruise-control b/gold/mining/bin/archlinux-cruise-control index de5a0fa4..de5a0fa4 100755 --- a/btc/mining/bin/archlinux-cruise-control +++ b/gold/mining/bin/archlinux-cruise-control diff --git a/btc/mining/bin/ati_temper b/gold/mining/bin/ati_temper index 283a6024..283a6024 100755 --- a/btc/mining/bin/ati_temper +++ b/gold/mining/bin/ati_temper diff --git a/btc/mining/bin/cleanup_tmp b/gold/mining/bin/cleanup_tmp index e1395b19..e1395b19 100755 --- a/btc/mining/bin/cleanup_tmp +++ b/gold/mining/bin/cleanup_tmp diff --git a/btc/mining/bin/ensure-router b/gold/mining/bin/ensure-router index 5eedabc9..5eedabc9 100755 --- a/btc/mining/bin/ensure-router +++ b/gold/mining/bin/ensure-router diff --git a/btc/mining/bin/ensure-wlan0 b/gold/mining/bin/ensure-wlan0 index fa92c4f5..fa92c4f5 100755 --- a/btc/mining/bin/ensure-wlan0 +++ b/gold/mining/bin/ensure-wlan0 diff --git a/btc/mining/poll_btcguild b/gold/mining/poll_btcguild index 92a02657..92a02657 100644 --- a/btc/mining/poll_btcguild +++ b/gold/mining/poll_btcguild diff --git a/btc/mining/user/.config/autostart/startup.desktop b/gold/mining/user/.config/autostart/startup.desktop index 67c35ef8..67c35ef8 100644 --- a/btc/mining/user/.config/autostart/startup.desktop +++ b/gold/mining/user/.config/autostart/startup.desktop diff --git a/btc/mining/user/mining.ovdr b/gold/mining/user/mining.ovdr index d6cf6fec..d6cf6fec 100644 --- a/btc/mining/user/mining.ovdr +++ b/gold/mining/user/mining.ovdr diff --git a/btc/mining/user/startup.sh b/gold/mining/user/startup.sh index 6274a892..6274a892 100755 --- a/btc/mining/user/startup.sh +++ b/gold/mining/user/startup.sh diff --git a/btc/mtgox/mtgox.getDepth b/gold/mtgox/mtgox.getDepth index 9a607979..9a607979 100755 --- a/btc/mtgox/mtgox.getDepth +++ b/gold/mtgox/mtgox.getDepth diff --git a/btc/mtgox/mtgox.getTrades b/gold/mtgox/mtgox.getTrades index 73e5a68d..73e5a68d 100755 --- a/btc/mtgox/mtgox.getTrades +++ b/gold/mtgox/mtgox.getTrades diff --git a/btc/mtgox/mtgox.ticker b/gold/mtgox/mtgox.ticker index b24dfb35..b24dfb35 100755 --- a/btc/mtgox/mtgox.ticker +++ b/gold/mtgox/mtgox.ticker diff --git a/gold/mtgox/ticker_text.sh b/gold/mtgox/ticker_text.sh new file mode 100755 index 00000000..f585ffea --- /dev/null +++ b/gold/mtgox/ticker_text.sh @@ -0,0 +1,4 @@ +#! /bin/sh +set -euf +cd $(dirname `readlink -f $0`) +./mtgox.ticker | ../json/render/ticker diff --git a/gold/scex/ticker b/gold/scex/ticker new file mode 100755 index 00000000..a95d5910 --- /dev/null +++ b/gold/scex/ticker @@ -0,0 +1,2 @@ +#! /bin/sh +exec curl -ksS http://scexchange.bitparking.com:8080/api/ticker diff --git a/gold/scex/ticker_text.sh b/gold/scex/ticker_text.sh new file mode 100755 index 00000000..fbaff55b --- /dev/null +++ b/gold/scex/ticker_text.sh @@ -0,0 +1,4 @@ +#! /bin/sh +set -euf +cd $(dirname `readlink -f $0`) +./ticker | ../json/render/ticker diff --git a/gold/scex/tracer/index.js b/gold/scex/tracer/index.js new file mode 100644 index 00000000..7ee6de1b --- /dev/null +++ b/gold/scex/tracer/index.js @@ -0,0 +1,89 @@ +#! /usr/bin/env node +// +// usage: [idle_mark=N] tracer +// +// Where the optional idle_mark tells the tracer to output idle marks every N +// seconds. +// +var http = require('http'); +var slurp = require('./slurp'); + +var options = { + host: 'scexchange.bitparking.com', + port: 8080, + path: '/api/t2' +}; + +var interval = 1000; +var idle_mark = Number(process.env.idle_mark) * interval; + +var last_id = 0; +var last_price = 0; +var last_output = new Date(0); +function t2 () { + var now = new Date() + http.get(options, function(res) { + slurp(res, function (data) { + try { + data = JSON.parse(data); + } catch (exn) { + return console.error('[1;31m' + exn.stack + '[m'); + }; + data = data.sort(function (a, b) { + return a.id - b.id; + }).filter(function (x) { + return x.id > last_id; + }); + if (data.length > 0) { + data.forEach(function (x) { + last_id = x.id; + + x.date = new Date(Number(x.date) * 1000); + + var price = render_price(x.price, last_price); + last_price = x.price; + + var c = ({ buy: '[32m', sell: '[31m' })[x.type]; + var m = ''; + m += x.id + m += ' ' + JSON.parse(JSON.stringify(x.date)) + m += ' ' + price + m += ' ' + c + x.amount + '[m' + console.log(m); + last_output = now; + }); + } else { + if (idle_mark) { + if (now - last_output >= idle_mark) { + var price = render_price(last_price); + var m = last_id + m += ' ' + JSON.parse(JSON.stringify(now)); + m += ' ' + price + console.log(m); + last_output = now; + }; + }; + }; + }); + }).on('error', function(e) { + console.log("Got error: " + e.message); + }); +}; + +function render_price(price, last_price) { + var rendered_price = price.toString(); + while (rendered_price.length < 'x.xxxxxxxx'.length) { + rendered_price += 0; + }; + if (last_price) { + if (price > last_price) { + rendered_price = '[32m' + rendered_price + '[m' + }; + if (price < last_price) { + rendered_price = '[31m' + rendered_price + '[m' + }; + }; + return rendered_price; +}; + +setInterval(t2, interval); diff --git a/gold/scex/tracer/slurp.js b/gold/scex/tracer/slurp.js new file mode 100644 index 00000000..70319743 --- /dev/null +++ b/gold/scex/tracer/slurp.js @@ -0,0 +1,38 @@ +module.exports = (function () { + + function join_buffers (buffers, length) { + var buffer = new Buffer(length); + var targetStart = 0; + buffers.forEach(function (x) { + x.copy(buffer, targetStart); + targetStart += x.length; + }); + return buffer; + }; + + function finish_it (req, buffers, length, callback) { + req.content = join_buffers(buffers, length); + return callback(req.content); + }; + + function nop () {}; + + return function (req, callback) { + if (req.hasOwnProperty('content')) { + return callback(req.content); + }; + var content = []; + var length = 0; + var end_handler = finish_it; + req.on('data', function (data) { + content.push(data); + length += data.length; + }); + [ 'end', 'close' ].forEach(function (event) { + req.on(event, function () { + finish_it(req, content, length, callback); + end_handler = nop; + }); + }); + }; +})(); diff --git a/ovh/README b/ovh/README new file mode 100644 index 00000000..806f4b0e --- /dev/null +++ b/ovh/README @@ -0,0 +1,20 @@ +#? /bin/sh +set -euf + +# install ovh soapi + +cd /path/to/krebscode/painload + +make -C ovh/soapi install + +# edit the zone + +export PATH="$PWD/bin${PATH+:$PATH}" +export KREBS_OVH_USER=... +export KREBS_OVH_PASS=... + +zoneExport > /tmp/foo +$EDITOR /tmp/foo +zoneImport < /tmp/foo + +# Have a nice day!^_^ diff --git a/retiolum/hosts/EUcancER b/retiolum/hosts/EUcancER new file mode 100644 index 00000000..ae2d5f9d --- /dev/null +++ b/retiolum/hosts/EUcancER @@ -0,0 +1,11 @@ +Address = 84.23.67.119 +Subnet = 10.7.7.144 +Subnet = 42:974a:3ecf:3c49:06c0:4cd1:3c6f:59d9/128 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEArx2mZOPEfS8fvmQYSzWuMmNtfposJlctDfGVmhMVotaFIpIBcKuL +dHZHI8BAStaM++DuqKv/QBjk9jF6BRAdZqHn98LHXR+VRJmFvgelEFe0uPvIRMe2 +IMzi9Ly0f0f5L90ulZBMkudl56nBcEPuG5ge9RLDINIX5nDVh0oQzvrwWaIiVuy/ +oKDFLaoxa3SSsCXbhnbP7ow37+xzvaVCFolu++yLHvinkCc5g3IUkBGwr3kXKHQ7 +J8oDuPgsDZ7d1kMPfzMtGI9xcq8GFeCmJsMAt86XsWD8t9ogQpVUi8NGjR4cbQSI +TbE2iVBsdGLpxbGh833uy7fW5CCnK79DwwIDAQAB +-----END RSA PUBLIC KEY----- |