From 435cb366e05d2a7da7504e28666dfb4e1b4a7623 Mon Sep 17 00:00:00 2001 From: Arthur Elsenaar Date: Sat, 17 Oct 2015 12:46:44 +0200 Subject: [PATCH 1/3] Changed bigint to bignum dependency --- lib/message/index.js | 44 ++++++++++++++++++++++---------------------- package.json | 2 +- 2 files changed, 23 insertions(+), 23 deletions(-) diff --git a/lib/message/index.js b/lib/message/index.js index 3f73533..f136705 100644 --- a/lib/message/index.js +++ b/lib/message/index.js @@ -6,7 +6,7 @@ var debug = require('debug')('nslsk:message') , zlib = require('zlib') , Buffers = require('buffers') - , bigint = require('bigint'); + , bigint = require('bignum'); /** * Expose `Message`. @@ -42,16 +42,16 @@ function Message(buffers) { if (!(this instanceof Message)) { return new Message(buffers); } - + this.name = 'unknown'; this._cursor = 0; - + if (buffers instanceof Buffers) { this._buffers = buffers; } else { this._buffers = new Buffers(); } - + if ('[object Number]' === Object.prototype.toString.call(buffers)) { this.uint32(buffers); // code } @@ -65,10 +65,10 @@ function Message(buffers) { Message.prototype.uint32 = function(val) { if (val) { var buf = new Buffer(4); - + buf.writeUInt32LE(val, 0); this._buffers.push(buf); - + return this; } var ret = this._buffers.slice(this._cursor, this._cursor + 4).readUInt32LE(0); @@ -99,10 +99,10 @@ Message.prototype.uchar = function(val) { Message.prototype.string = function(val) { if (val) { var buf = new Buffer(val, 'utf8'); - + this.uint32(buf.length); this._buffers.push(buf); - + return this; } var len = this.uint32(); @@ -119,10 +119,10 @@ Message.prototype.string = function(val) { Message.prototype.int32 = function(val) { if (val) { var buf = new Buffer(4); - + buf.writeInt32LE(val, 0); this._buffers.push(buf); - + return this; } var ret = this._buffers.slice(this._cursor, this._cursor + 4).readInt32LE(0); @@ -163,7 +163,7 @@ Message.prototype.bool = function(val) { Message.prototype.ip = function() { var ip = this.uint32() , buf = new Buffer(4); - + buf.writeUInt32BE(ip, 0); return [buf[0], buf[1], buf[2], buf[3]].join('.'); }; @@ -187,7 +187,7 @@ Message.prototype.push = function(buffer) { Message.prototype.decompress = function(callback) { var buf = this._buffers.splice(4).toBuffer(); - + zlib.unzip(buf, function(err, buf) { if (err) { return callback.call(this, err, buf); @@ -195,7 +195,7 @@ Message.prototype.decompress = function(callback) { this._buffers.push(buf); callback.call(this, err, this); }.bind(this)); - + return this; }; @@ -210,9 +210,9 @@ Message.prototype.decompress = function(callback) { Message.prototype.decode = function(type, callback) { this._cursor = 0; var code = this.uint32(); - + debug('%s:%s', type, code/*, this._buffers */); - + switch (type) { case 'server': var message = Message.SERVER[code]; @@ -226,13 +226,13 @@ Message.prototype.decode = function(type, callback) { default: throw new TypeError('Unknown message type [' + type + ']'); } - + if (!message) { throw new Error('Unknown ' + type + ' message code [' + code + ']'); } - + this.name = message.name; - + switch (message.decode.length) { case 2: message.decode.call(this, this, callback); @@ -244,7 +244,7 @@ Message.prototype.decode = function(type, callback) { default: throw new Error('invalid parameters'); } - + return this; }; @@ -254,10 +254,10 @@ Message.prototype.decode = function(type, callback) { Message.prototype.end = function(callback) { var buf = new Buffer(4); - + buf.writeUInt32LE(this._buffers.length, 0); this._buffers.unshift(buf); this._cursor += 4; - + return callback.call(this, this._buffers); -}; \ No newline at end of file +}; diff --git a/package.json b/package.json index 77ac29f..d883fa2 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,7 @@ "dependencies": { "buffers": "~0.1.1", "debug": "~0.7.0", - "bigint": "~0.3.9", + "bignum": "~0.11.0", "commander": "~1.1.1" }, "devDependencies": { From 7cb4e0fefaa3a52a475bde4b3886ed3275059f37 Mon Sep 17 00:00:00 2001 From: Arthur Elsenaar Date: Sat, 17 Oct 2015 12:46:44 +0200 Subject: [PATCH 2/3] Changed bigint to bignum dependency --- lib/message/index.js | 48 +- package.json | 2 +- test.txt | 1581 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 1606 insertions(+), 25 deletions(-) create mode 100644 test.txt diff --git a/lib/message/index.js b/lib/message/index.js index 3f73533..9fc18e3 100644 --- a/lib/message/index.js +++ b/lib/message/index.js @@ -6,7 +6,7 @@ var debug = require('debug')('nslsk:message') , zlib = require('zlib') , Buffers = require('buffers') - , bigint = require('bigint'); + , bignum = require('bignum'); /** * Expose `Message`. @@ -42,16 +42,16 @@ function Message(buffers) { if (!(this instanceof Message)) { return new Message(buffers); } - + this.name = 'unknown'; this._cursor = 0; - + if (buffers instanceof Buffers) { this._buffers = buffers; } else { this._buffers = new Buffers(); } - + if ('[object Number]' === Object.prototype.toString.call(buffers)) { this.uint32(buffers); // code } @@ -65,10 +65,10 @@ function Message(buffers) { Message.prototype.uint32 = function(val) { if (val) { var buf = new Buffer(4); - + buf.writeUInt32LE(val, 0); this._buffers.push(buf); - + return this; } var ret = this._buffers.slice(this._cursor, this._cursor + 4).readUInt32LE(0); @@ -99,10 +99,10 @@ Message.prototype.uchar = function(val) { Message.prototype.string = function(val) { if (val) { var buf = new Buffer(val, 'utf8'); - + this.uint32(buf.length); this._buffers.push(buf); - + return this; } var len = this.uint32(); @@ -119,10 +119,10 @@ Message.prototype.string = function(val) { Message.prototype.int32 = function(val) { if (val) { var buf = new Buffer(4); - + buf.writeInt32LE(val, 0); this._buffers.push(buf); - + return this; } var ret = this._buffers.slice(this._cursor, this._cursor + 4).readInt32LE(0); @@ -132,7 +132,7 @@ Message.prototype.int32 = function(val) { /** * @param {Number} val [optional] - * @return {Message|BigInt} + * @return {Message|bignum} */ Message.prototype.int64 = function(val) { @@ -141,7 +141,7 @@ Message.prototype.int64 = function(val) { } var buf = this._buffers.slice(this._cursor, this._cursor + 8); this._cursor += 8; - return bigint.fromBuffer(buf, { endinan: 'little' }); + return bignum.fromBuffer(buf, { endinan: 'little' }); }; /** @@ -163,7 +163,7 @@ Message.prototype.bool = function(val) { Message.prototype.ip = function() { var ip = this.uint32() , buf = new Buffer(4); - + buf.writeUInt32BE(ip, 0); return [buf[0], buf[1], buf[2], buf[3]].join('.'); }; @@ -187,7 +187,7 @@ Message.prototype.push = function(buffer) { Message.prototype.decompress = function(callback) { var buf = this._buffers.splice(4).toBuffer(); - + zlib.unzip(buf, function(err, buf) { if (err) { return callback.call(this, err, buf); @@ -195,7 +195,7 @@ Message.prototype.decompress = function(callback) { this._buffers.push(buf); callback.call(this, err, this); }.bind(this)); - + return this; }; @@ -210,9 +210,9 @@ Message.prototype.decompress = function(callback) { Message.prototype.decode = function(type, callback) { this._cursor = 0; var code = this.uint32(); - + debug('%s:%s', type, code/*, this._buffers */); - + switch (type) { case 'server': var message = Message.SERVER[code]; @@ -226,13 +226,13 @@ Message.prototype.decode = function(type, callback) { default: throw new TypeError('Unknown message type [' + type + ']'); } - + if (!message) { throw new Error('Unknown ' + type + ' message code [' + code + ']'); } - + this.name = message.name; - + switch (message.decode.length) { case 2: message.decode.call(this, this, callback); @@ -244,7 +244,7 @@ Message.prototype.decode = function(type, callback) { default: throw new Error('invalid parameters'); } - + return this; }; @@ -254,10 +254,10 @@ Message.prototype.decode = function(type, callback) { Message.prototype.end = function(callback) { var buf = new Buffer(4); - + buf.writeUInt32LE(this._buffers.length, 0); this._buffers.unshift(buf); this._cursor += 4; - + return callback.call(this, this._buffers); -}; \ No newline at end of file +}; diff --git a/package.json b/package.json index 77ac29f..d883fa2 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,7 @@ "dependencies": { "buffers": "~0.1.1", "debug": "~0.7.0", - "bigint": "~0.3.9", + "bignum": "~0.11.0", "commander": "~1.1.1" }, "devDependencies": { diff --git a/test.txt b/test.txt new file mode 100644 index 0000000..a11c4fd --- /dev/null +++ b/test.txt @@ -0,0 +1,1581 @@ +{ success: 1, + greet: '', + _message: + Message { + name: 'login', + _cursor: 9, + _buffers: + Buffers { + buffers: [ ], + length: 14 } } } +nslsk> [ { name: '! ! Slsk Idiots ! !', users: 10 }, + { name: '! Italo Disco', users: 17 }, + { name: '!!! 90\'s Rare Riddim !!!', users: 13 }, + { name: '!!RIDDIM!!', users: 14 }, + { name: '!ReGGaeGaLaXy', users: 38 }, + { name: '#Filmzone', users: 23 }, + { name: '#Horrorcore', users: 16 }, + { name: '#La France', users: 52 }, + { name: '#icilombre-hardcore', users: 10 }, + { name: '#polska', users: 28 }, + { name: '#teqnix', users: 5 }, + { name: '* + Neverland + *', users: 12 }, + { name: '**RIDDIM**', users: 11 }, + { name: '+BlackMetal+', users: 117 }, + { name: '+Slsk Vip+', users: 5 }, + { name: '/mu/', users: 76 }, + { name: '60lover', users: 8 }, + { name: '70 Rare groove Soul Jazz', users: 13 }, + { name: '90\'s emo', users: 9 }, + { name: ':-)', users: 60 }, + { name: '<>Electronics Labels<>', users: 35 }, + { name: 'ACID', users: 16 }, + { name: 'ARGENTINA', users: 14 }, + { name: 'AUSTRALIA', users: 7 }, + { name: 'Ambient', users: 93 }, + { name: 'Anime', users: 25 }, + { name: 'Avantgarde', users: 13 }, + { name: 'BLUES BUNKER MUSIC', users: 34 }, + { name: 'BOB DYLAN ROOM', users: 8 }, + { name: 'Brasil', users: 34 }, + { name: 'Breakcore', users: 31 }, + { name: 'CHILE', users: 34 }, + { name: 'Canada', users: 16 }, + { name: 'Chiptunes', users: 6 }, + { name: 'Christians', users: 7 }, + { name: 'Classical', users: 16 }, + { name: 'DEATH METAL CLUB', users: 29 }, + { name: 'DUB', users: 17 }, + { name: 'Dark Ambient', users: 21 }, + { name: 'De Koffie Shop', users: 15 }, + { name: 'De Kroeg', users: 26 }, + { name: 'Deathrock', users: 11 }, + { name: 'DieMilitarmusik', users: 13 }, + { name: 'Disco Classics', users: 13 }, + { name: 'Doom Metal', users: 6 }, + { name: 'Dub Techno', users: 20 }, + { name: 'Dubstep', users: 21 }, + { name: 'Dynamic-Musique', users: 10 }, + { name: 'EBM-GOTHIC-INDUSTRIAL', users: 23 }, + { name: 'EBooks', users: 19 }, + { name: 'Eurodance', users: 7 }, + { name: 'Eurovision Song Contest', users: 7 }, + { name: 'Experimental Electronica', users: 13 }, + { name: 'FOLK MUSIC', users: 11 }, + { name: 'FUNK CLASSICS', users: 10 }, + { name: 'FUNK FRANCE', users: 13 }, + { name: 'Free Jazz', users: 5 }, + { name: 'GarageTrashPunk&OMB\'s', users: 6 }, + { name: 'Gay', users: 11 }, + { name: 'Gothic', users: 22 }, + { name: 'Grindcore', users: 10 }, + { name: 'Guerre Froide', users: 5 }, + { name: 'HORDES!!!!!!', users: 7 }, + { name: 'HOUSE MUSIC LOVERS (AG)', users: 63 }, + { name: 'Hardcore NL', users: 25 }, + { name: 'Hardcore/punk', users: 40 }, + { name: 'Hip Hop', users: 25 }, + { name: 'IDM', users: 42 }, + { name: 'INDUSTRIAL', users: 30 }, + { name: 'ITALIA HC / PUNK', users: 5 }, + { name: 'Incredibly Strange Music', users: 10 }, + { name: 'Israel', users: 17 }, + { name: 'Italia', users: 12 }, + { name: 'Jazz', users: 9 }, + { name: 'Jazz (Full CDs)', users: 35 }, + { name: 'Jazz-Rock-Fusion-Guitar', users: 10 }, + { name: 'Juggalo Family', users: 13 }, + { name: 'Jungle', users: 15 }, + { name: 'Kraut-rock', users: 7 }, + { name: 'Linux', users: 16 }, + { name: 'Lossless Scores', users: 22 }, + { name: 'MOVIES', users: 8 }, + { name: 'Mac Users', users: 11 }, + { name: 'Metal', users: 25 }, + { name: 'MovieMusic', users: 25 }, + { name: 'New Crystal Vibrations', users: 11 }, + { name: 'New Wave', users: 10 }, + { name: 'Nocturna', users: 65 }, + { name: 'Nu-Disco/Funky/Balearic', users: 5 }, + { name: 'OLD SKOOL GANGSTA SHIT', users: 11 }, + { name: 'OLDSCHOOL 88-94', users: 46 }, + { name: 'OLDSKOOL GOA', users: 11 }, + { name: 'Oi!', users: 14 }, + { name: 'Only Blues', users: 9 }, + { name: 'Otaku-Anime', users: 9 }, + { name: 'PSYCHEDELIA', users: 15 }, + { name: 'PSYCHOBILLY-PUNK-ECT..', users: 7 }, + { name: 'PUNK/HARDCORE/GRIND', users: 9 }, + { name: 'Portugal', users: 9 }, + { name: 'Post Punk', users: 14 }, + { name: 'Progressive Rock', users: 13 }, + { name: 'Psychedelic/Acid Rock', users: 14 }, + { name: 'Psytrance', users: 43 }, + { name: 'RAC', users: 7 }, + { name: 'REGGAE', users: 16 }, + { name: 'RUSSIA', users: 44 }, + { name: 'Rare Music', users: 32 }, + { name: 'Records Records Records', users: 7 }, + { name: 'Retro Gaming', users: 16 }, + { name: 'SLUDGE!', users: 5 }, + { name: 'SOCA / CALYPSO', users: 7 }, + { name: 'SOUL \'70s FUNKY & DISCO!', users: 13 }, + { name: 'Salsa CD\'s', users: 10 }, + { name: 'Scene_Rip', users: 8 }, + { name: 'Scores', users: 47 }, + { name: 'Soundscapes', users: 5 }, + { name: 'Soundtracks&Scores', users: 16 }, + { name: 'Spain', users: 19 }, + { name: 'Stoner HiVe', users: 11 }, + { name: 'Stoner Rock', users: 29 }, + { name: 'TECHNO, Mixes and Tunes', users: 87 }, + { name: 'THC', users: 31 }, + { name: 'The Dangerous Kitchen', users: 7 }, + { name: 'The Solar Lodge', users: 7 }, + { name: 'TheScoreZone', users: 8 }, + { name: 'Thrash Metal', users: 6 }, + { name: 'Trip-Hop', users: 7 }, + { name: 'Twee Folks', users: 12 }, + { name: 'UK DUB', users: 6 }, + { name: 'Underground Hiphop', users: 47 }, + { name: 'Venezuela', users: 9 }, + { name: 'Video Game Chat', users: 35 }, + { name: 'Vinyl Addicts', users: 20 }, + { name: 'Ween', users: 6 }, + { name: 'World Music', users: 10 }, + { name: 'Zenith', users: 5 }, + { name: 'Zoukmania', users: 7 }, + { name: '[B]', users: 7 }, + { name: '][German][Deutsch][', users: 29 }, + { name: '^ILLUMINATI^awareness', users: 52 }, + { name: 'aphextwin.nu', users: 12 }, + { name: 'breakbeat', users: 14 }, + { name: 'comics', users: 9 }, + { name: 'deep house connection', users: 14 }, + { name: 'drum\'n\'bass', users: 64 }, + { name: 'eesti mehed', users: 12 }, + { name: 'electro', users: 17 }, + { name: 'food', users: 50 }, + { name: 'garagepunk.com', users: 9 }, + { name: 'heb-history', users: 11 }, + { name: 'hi', users: 6 }, + { name: 'hungary', users: 12 }, + { name: 'indie', users: 150 }, + { name: 'industrial hardcore', users: 5 }, + { name: 'japanese music', users: 15 }, + { name: 'library music', users: 12 }, + { name: 'lossless', users: 19 }, + { name: 'minimal music', users: 27 }, + { name: 'museek', users: 69 }, + { name: 'mush*room', users: 10 }, + { name: 'neofolk', users: 7 }, + { name: 'noise', users: 31 }, + { name: 'postrock', users: 19 }, + { name: 'progressive house', users: 24 }, + { name: 'rapstyle', users: 5 }, + { name: 'rotterdam', users: 7 }, + { name: 'rym', users: 16 }, + { name: 'shoegaze', users: 19 }, + { name: 'ssX', users: 6 }, + { name: 'star trek', users: 9 }, + { name: 'trancEaddict', users: 20 }, + _message: Message { + name: 'room list', + _cursor: 3297, + _buffers: + Buffers { + buffers: + [ , + ], + length: 3317 } } ] +{ speed: 1, + _message: + Message { + name: 'parent min speed', + _cursor: 8, + _buffers: Buffers { buffers: [ ], length: 8 } } } +{ ratio: 50, + _message: + Message { + name: 'parent speed ratio', + _cursor: 8, + _buffers: Buffers { buffers: [ ], length: 8 } } } +{ interval: 720, + _message: + Message { + name: 'wishlist interval', + _cursor: 8, + _buffers: Buffers { buffers: [ ], length: 8 } } } +{ users: + [ 'jiggityvonbubbels', + 'yesbut', + 'lenaswa', + 'deadbodyinthtrunk', + 'patatamecanica', + 'paulblack', + 'Johan 60', + 'drydustravel', + 'chihuahua74', + 'thesultan', + 'BondRm321', + 'humanleather', + 'gauna', + 'banapscotch1', + 'foxxxxman', + 'Lost-in-Sound', + 'dwilow', + 'kenhartsel', + 'astronovist', + 'sblackman1', + 'michho', + 'martin65807', + 'suckedjs', + 'thib180', + 'rudierudierudie', + 'imwinnin', + 'Janeymac', + '[nifluril]', + 'AbandandCat', + 'ada!!!', + 'zackaira', + 'cccp', + 'bigD', + 'roaddonkey', + 'moliere', + 'joustt', + 'myprofilenl', + 'malc101', + 'enika', + 'drumfuck', + 'Quasar', + 'harryc', + 'atty8888', + 'sprks', + 'carn', + 'gender_student', + 'thelis', + 'fm_synth', + 'tyrian62023', + 'thmthmthm', + 'psymon', + 'andr', + 'JEAN DUCHENE', + 'diggin', + 'shekyt', + 'Swoppy', + 'yooz', + 'psychocerebrall', + 'HORSESHIT70', + 'Head_In_the_Clouds', + 'whocares', + 'Milvus', + 'youlwin2', + 'Aseremorgan', + 'thccertified', + '[a c c e l e r a t o r]', + 'noyou', + 'rbryant', + 'soundinsight', + 'deichdirk', + 'debector', + 'jaB', + 'cawamor', + 'djhypnos', + 'Progressive Relics', + 'mojo_navigator_2', + 'Stalker98', + 'mthanus', + 'kiranotter', + 'mousey', + 'hocchiemama', + 'kkurman', + 'Hemogoblin', + 'ht1', + 'Daboose', + 'schaum', + 'radickalus', + 'LionelLove', + 'mike13x', + 'RatPfink', + 'elcabong', + 'magnum2606', + 'fkarg', + 'pigro', + 'koremoran', + 'keilamym', + 'crueball05', + 'haifa1919', + 'sardo numspa', + 'kiddyraver', + 'TC80', + 'djskripta', + 'hectotem', + 'Fjordnaer', + 'beatfreaq', + 'spoorhuis', + 'kcj', + 'fiend23', + 'dirk gently', + 'sadnilmusic', + 'GrahameUK', + 'pilch', + 'Nomi04', + 'Sleepingbeauty', + 'Detroit Fingers', + 'andy2639', + 'pjoomby', + 'tnigz', + 'robini71', + 'DJ32181', + 'cronosNS', + 'progknight', + 'ShoddyGoods', + 'mrfunk', + 'meganova', + 'Phytotechnic', + 'Mark4622', + 'M.L.F.', + 'CEBEP', + 'dive_od', + 'Kupak', + 'realproblems', + 'gojoparadiso', + 'jernest', + 'eliasmazian', + 'Bert Is Evil', + 'Sista Jedi (jennifer davis)', + 'matjas', + 'soulio', + 'rot gut', + 'aliSH', + 'nm2', + 'Soul Sister', + 'icjdomer', + 'infojungle', + 'tpagy', + 'goodude', + 'rvrzl', + 'metalmaniac93', + 'Matheron', + 'stwali', + 'dansusz', + 'tahitidask', + 'rabbitofdoom', + '1luv', + 'randumb azz kneeya', + 'Speedy', + 'murph2323', + 'p_g', + 'moe', + 'agloxton', + 'jon370', + 'lemak', + 'mra', + 'zuff', + 'goatguy2', + 'Onieros', + 'ivand', + 'harrolz', + 'avix', + 'pax', + 'Nim Chimpsky', + 'w0dk4', + 'RoboDroid', + 'cunny_g', + 'Jennifer Davis (SISTA JEDI)', + 'jmmountain', + 'DarkestofStars', + 'onlyjimbo', + 'hoagystevie', + 'drspide', + 'shadreck', + 'BinaryNeuronaut', + 'mattstarr4444', + 'donovan', + 'jextra', + 'n4ye', + 'obanraohanrahan', + 'DJ PaulyPaul', + 'Carnamagos', + '..::MM::..', + 'klaus', + 'DJ_FUTURAMA', + 'motherfunk', + 'joedaco', + 'Jembry Malikwakwa', + 'jenga139', + '2ndline', + 'brootlyn', + 'soultaker', + 'aqueduct', + 'Asiatranceboy', + 'miffilka', + 'I Lurv yu', + 'GZoST', + 'jordan90%', + 'bfdscarecrow1', + 'skylamb', + 'mlarson1', + 'Knax', + 'fulltext', + 'jsztein', + 'Outdoormetalrocker', + 'thecsjvampire', + 'roc', + 'brooklyndisco', + 'withdrawfromnine', + 'Trancet', + 'tomgi', + 'molly_dog', + 'snaggel', + 'mcjeangab', + 'slappydapimp', + 'man_with_a_temper', + 'brucie27', + 'grog4u', + 'havaham', + 'lexdiamond', + 'skylary', + 'donadoni', + 'davemmusic', + 'perogie55', + 'dlog', + 'faircity', + 'TheDjKyleJ', + 'video1', + 'phantom_yo', + 'fjgraysoulman', + 'chocoloatechipcharlie', + 'dingdong2005', + 'mcindoo2', + 'username49', + 'winter1610', + 'nemoinoz', + 'verboverbo', + 'keepsleeping', + 'Asparagus Dave', + 'tattvamasi', + 'sstpd', + 'paroxetin', + 'timhoeben', + 'ciliege', + 'jessesamuel', + 'halibutt', + 'hh73', + 'fidlstik', + 'wjhoffman', + 'bambammuzak', + 'walex', + 'bosstweed', + 'ab0rted_fetus', + 'pnk77', + 'smie666', + 'doctae', + 'soulfree', + 'wigwam7', + 'addambombb', + 'liamb', + 'altcountry', + 'sylverfalcon', + 'lewdd', + 'agentrelaxed', + 'rampy', + 'smiles', + 'carxa', + 'lisenok', + 'Mine', + 'coppertop418', + 'hkbabel', + 'Nolsons', + 'cassy', + 'stubb', + 'dodisman', + 'ploom2', + 'Giant Steps', + 'deejaydoug', + 'velocifer', + 'dadi70', + 'lofi303', + 'bigdaddyR', + 'djcury', + 'czar', + 'jedijm', + 'sgian dearg', + 'fz', + 'Foxxy72', + 'Drei21', + 'morts2986', + 'HannahTrash', + 'blinddave', + 'sonikmike', + 'Uncleeddie22', + 'alconrrojo', + 'lo', + 'lifesuncertainty', + 'Nemoinoz', + 'Neo-Progger', + 'pefrase', + 'fractalmind', + 'Hidebound', + 'rstanton', + 'groovintx', + 'kickdrum', + 'kittenmittonz', + 'DiscoPunk', + 'abortiontrash', + 'srkredliner', + 'pjotr56', + 'kodetwo', + 'Zaede', + 'bottanyB', + 'XATIADO', + 'Edryl', + 'BBallerBrian', + 'gght', + 'TechnicalTrouble', + 'DjJVilla', + 'dncee11', + 'bookworm', + 'peterson32564', + 'rugby10', + 'decatur555', + 'DJsyNRG', + 'Thullin187', + 'Hubajube', + 'the breeze', + 'lazybobby', + 'Squidtopia', + 'knuftobor', + 'Metal Girl', + 'gidy', + 'Nita', + 'jdmf62', + 'ZamGe', + 'rbartheil', + 'tobali', + 'pierus', + 'acidrop', + 'saintschultz', + 'wusher', + 'Underdog340', + 'nickbug', + 'olskidin', + 'Hellfrick', + 'cally999', + 'ekberg', + 'boeziebee', + 'Nostalgia of mud', + 'Lupa', + 'GNACi', + 'blaxthos', + 'itscooltorock', + 'lalababab', + 'karaokemdb@me.com', + 'Eyesore', + 'WEXFORDRAIDER', + 'detshok', + 'Oh_Synthesizer', + 'rogueprimate419', + 'ghost', + 'RevelationNo9', + 'randolph1156', + 'Mothman', + 'b.webby', + 'redshirt', + 'CowboyRon', + 'dimarray', + 'NocturnalStalker', + 'Red Astaire', + 'RustyTrumpet', + 'tbrece', + 'NKDMusic', + 'malaclipse_tfd', + 'cherylb', + 'psychocpv', + 'jazzmann1', + 'gotitlikethat', + 'sundread', + 'Tamahone', + 'OneCrazyDJ', + 'PracticalChaos', + 'jazzyjo', + 'ritxiskatalite69', + 'birck', + 'sfdirtybird', + 'meteoro_808', + 'bunnyip2', + 'pacodos22', + 'havedat', + 'labswift', + 'tobelz', + 'see_bass', + 'danborgo45', + 'WHUU', + 'bnkroz', + 'darkfader666', + 'Yerba', + 'ftp-server-access', + 'Bal Moral', + 'Kawwaveh', + 'phanto_EKG', + 'j2mcrusoe', + 'srush242', + 'spacestronaut', + 'LahDeeDah', + 'Phef', + 'mekas', + 'pannonica', + 'PFunkFan', + 'Juliem', + 'D_Fiuza123', + 'Canuckistani', + 'L_Dopa', + 'punkadelic', + 'Superlogico', + 'psalmist', + 'silente', + 'peverything', + 'GrandPiano', + 'Proteus93', + 'embryofile', + 'xman1980', + 'DrinkyCrow', + '_PooPooStinks_', + 'mazgan', + 'Lukie D', + 'sierracat', + 'jimbrawn@rogers.com', + 'meretrix', + 'vceller8', + 'shakashakaa', + 'fonfy', + 'mazi_a', + 'CiriloSegundo', + 'hangman187', + 'monsterfood', + 'jefelex', + 'stmirren', + 'lolakent', + 'MusicMan29', + 'Fireface', + 'kikishmiki', + 'kk49', + 'kimariskobal', + 'USCLM', + 'abierto24horas2', + 'Anonyme63', + 'anton.styles', + 'People', + 'louisazazax', + 'BurningWitch', + 'djezekielnc', + 'StarsOvTheLid', + 'MatGaw', + 'prof_lofi', + 'doctor meds', + 'tim0thyb', + 'wamguohong', + 'wa.Sharky', + 'bowie77', + 'luminus', + 'schmidtlef', + 'polis', + 'Babbler', + 'dabura', + 'mentalfee', + 'cobra417', + 'travelinbae', + 'redmonkeyrapper', + 'Luc Oz', + 'Guurk', + 'chubbs', + 'Bobmack13', + 'groman1', + 'ianai', + 'forge', + 'MuzikFreak', + 'pocono', + 'hinkelsnitz', + 'andreusvaults', + 'suture', + 'Alraomon', + 'ivanbmalone', + 'Musicsavedmylife', + 'satinsoul', + 'JustMyNipples', + 'tryce', + 'dangermoose', + 'drosophila71', + 'Throbber', + 'ramondero', + 'djwick68', + 'linusoli', + 'zobilamouche', + 'bendelcor', + 'Moonstone', + 'qwertzui1', + 'DoctorMemory', + 'Spirea', + 'musicma000000', + 'djanson', + 'PlantastiK', + 'icekobra', + 'bigragupdx', + 'SalBoogie', + 'tobesojr', + 'grindedpone', + 'dbband', + 'kosho', + 'Dr_saxaholic', + 'funkdamental', + 'djbillyde7777', + 'andywelt', + 'queromaisum', + 'dgrocker', + 'purebsd', + 'keir', + 'Breil17', + 'tatami50', + 'kotjm', + 'dirgekeeper', + 'Commune', + 'mjf2u', + 'adski21', + 'tfunk70', + 'baybkge', + 'mike7051', + 'mrsflowerzz', + 'Optimus_Prime_79', + 'gjkirby', + 'kubjay', + 'lonepine', + 'Corrupted_dB', + 'leesaynor', + 'evilclubber', + 'Surcouf 42', + 'COLEMINE199', + 'bokkeman', + 'InkMinioN', + 'galleherjazz', + 'yourstruly', + '..:rain:..', + 'ciges', + 'DaKraut', + 'drvansteiner', + 'chryco', + 'PEPE GUNN', + 'scolep', + 'adadadia', + 'tangier!', + 'niavasha', + 'DevilDeville', + 'the13thour', + 'xyrix', + 'katbastard', + 'jusla', + 'DjSimond', + 'dirtyjak', + 'daydreamnational', + 'teephish', + 'wiseguyro', + 'litebeat', + 'chavichonty', + 'pbad03', + 'midnight tramp', + 'Proxima6142', + 'day_v', + 'kjhkjh', + 'ricin', + 'w1i1n1k1y', + 'whoknew', + 'Reg237', + 'original soundboy', + 'galliwasp', + 'MannyD', + 'edstar22', + 'jamiemadrox', + 'Trakse', + 'streetwalkin\'cheetah', + 'SergeMech', + 'Doornappeltje59', + 'doodoobrown', + 'clepington', + 'krlfc', + 'emperor_muabo', + 'sg8505', + 'reggez', + 'ludaphunk', + 'nelsone', + 'prestonspal', + 'gilesku', + 'Son of Creedence', + 'linoleum_blownapart', + 'DavGins', + 'usclm', + '3days', + 'opensociety', + 'RedMonarch', + 'gtkallday', + 'DJHiDefBK', + 'Xtreme memez', + 'harten74', + 'catbird', + 'tussebo', + 'Shyyde', + 'SyreetaJaelsbak', + 'koby', + 'necks', + 'CorpsRR', + 'skizm63', + 'Brucesp', + 'fergalc', + 'meowhugs', + 'Moses188', + 'Barley UK', + 'mdh6262', + 'FieryAngel', + 'macromuncher', + 'hedgestone61@hotmail.com', + 'musik_musik_musik', + 'indeterminacy', + 'drunkmonkeysir', + 'drainedcolors', + 'Novae7', + 'scy1e', + 'djjurni', + 'anpoxx', + 'ptds7', + 'threethreee', + 'vegetam', + 'coreyk1', + '(?}', + 'Basha', + 'twitch_', + '2molly', + 'hunterjonhson', + 'doffavoffid', + 'speedbumps', + 'christomi34', + 'delugt01', + 'llog', + 'Chestnut', + 'user2246', + 'Virunga08', + 'cashless', + 'miez', + 'heywoodyorke', + 'matts90r', + 'astroneff', + 'Ivan_Magoo', + 'fa ce la', + 'drbmbay', + 'MuckyPup', + 'mctext', + 'sillas', + 'ebarn', + 'hoitel', + 'mu0p', + 'scott', + 'Tiesmaki', + 'xx2mu2ch2xx', + 'jubilee77', + 'discod', + 'sherakapod', + 'ibmarco', + 'Lucrezia Borgia', + 'deniedmusic', + 'moleygunn', + 'avclhb', + 'lennoxb', + 'snowwalker', + 'Izzy Loft', + 'juleedet313', + 'jwb-jwb', + 'john galt', + 'growBeard', + 'Jacky64', + '_Korps_', + 'karinasayed', + 'lt_J', + 'pascualladrillo7', + 'greynurse', + 'chrissh', + 'ProgRockRules', + 'jivemusic', + 'm.stoermer2@gmail.com', + 'zetko12', + 'anyanya', + 'blueshound2', + 'mightyIcculus', + 'baldheadedgrl', + 'gwardragonrelic', + 'skweezer', + 'CNTS', + 'link_rae', + 'spitchell', + 'mitzythecat', + 'Oral Enterprises', + 'housemotion2', + 'donricoloco', + 'nir2', + 'stainboybeck', + 'nir3', + 'robalone', + 'ddildovic', + 'roby718', + 'hesnotthemessiah', + 'Khameleon808', + 'bigroby', + 'swimminwitsharks', + 'xena1', + 'greenfirn', + 'anonguy123', + 'Shiro671', + 'LucasKeoro', + 'fuse1002', + 'grala', + 'rhpassos', + 'PopeMike', + 'MrWSick', + 'curtandsheila', + 'SerpienteAzul', + 'twinkler', + 'ringor', + 'justmyname', + 'xdisney', + 'loveisafisheye', + 'Mochrie99', + 'grahambristle', + 'rtjadu', + 'perocoo', + 'mrwhitti', + 'jackBeq', + 'Unfo', + 'discrow', + 'AmadeuJoao', + '_beatroots', + 'LucieBDub', + 'gpnet', + 'chopper32', + 'Impetus Induction', + 'mapenzi', + 'MrFonktrain', + 'campeon', + 'alfdvs', + 'hellinterface', + 'taq666', + 'euRonny', + 'moi ?', + 'FunkyLayla', + 'justajourney', + 'TheRevZell', + 'webetts', + 'deodar2', + 'aetheon', + 'VincentH2', + 'KatieK', + 'SpaceDubDisco', + 'Divine Wind', + 'djgeorgewilliam', + 'the_original', + 'waterday', + 'supertrash', + 'subdeath', + 'mixja', + 'gito66', + 'benny profane', + 'slackwerker', + 'atomsdivided16', + 'ninamallory@rogers.com', + 'o\'bryan', + 'simpim', + 'kraft75', + 'boyce', + 'funkateer45', + 'nadamusicjunkie', + 'JohnS', + 'melomano1960', + 'HAWK399', + 'scienex', + 'cometothesabbat', + 'JaBluz', + 'awas69', + 'djriost', + 'judy.lets.go.for.a.walk', + 'tamok', + 'Jeancopain', + 'shadeaux', + '00-day release', + 'zenvision', + 'jazzeo-10', + 'revengebooty', + 'catmadwoman', + 'Greenman', + 'stayawhile', + 'suhailamjed', + 'ailqas12', + 'IKOPIKE', + 'jimbo60', + 'PracticalMan', + 'Akyaka', + 'foxxy72', + 'sonicsoular', + 'knowledge1129', + 'nick78447', + 'mvns', + 'RetsamTsahg', + 'edgarundsusanne', + 'Zwatte', + 'fabreal', + 'jplaguna', + 'silenageige', + 'dedjr21', + 'zeroboys78', + 'arlucasinc', + 'Shmalistair', + 'DustinW78', + 'BlackBounder', + 'fauxfaux', + 'cambor', + 'gemseeker', + 'paradive', + 'btard', + 'siqbal', + 'tomlayland', + 'jaren80', + 'triforce\'d', + 'bdaddyp', + 'mrsecquo', + 'Taosum', + 'nlbiok', + '891sj51', + 'josema rojo', + '@@@user', + 'mrtrix', + 'hadasul', + 'Solwann', + 'chaos factor', + 'benkenobi', + 'djlooze', + 'joeluft', + 'Eaten_Oedipus', + 'solesneak', + 'greshim', + 'theurso', + 'm2trip', + 'bposenergy@aol.com', + 'Yes! A Bastard!', + 'jamesm34', + 'jaflorian', + 'swrose', + 'pasteitje', + 'kb3grz', + 'rugbyman60', + 'soulridda10000', + 'bas2003', + 'dleone', + 'shiekie', + 'catewern234', + 'LouWeed', + 'fudgiraffe', + 'soulsis1', + 'PoUpA', + 'lalocurto', + 'gabe217', + 'moraesmf', + 'yashu', + 'soundpicnic', + 'schizma', + 'beatfreak79', + 'minipimer', + 'kimch00', + 'DeaDAnDGonE', + 'qst23', + 'PorousHorace', + 'Red-5', + 'lobo500', + 'chrisg02176', + 'BlackGoat138', + '*BELLE\'n\'BLUE*', + 'imdxlr8r', + 'littlefluffyclouds', + 'SammichBoy', + 'TheJunkie', + 'bootsa22', + 'fermi85', + 'Jazz From Hell', + 'WisdomToTheWise', + 'lagattas', + 'schlock', + 'siraly', + 'Khalinore', + 'milobaby', + 'alexsb', + 'PumukliFunClub', + 'naholm', + 'lennn-', + 'ali1234', + 'BoHaG', + 'ambienator', + 'ghalik', + 'nosumdorma', + 'dustedvinyl', + 'w03rts02', + 'FastNBulbous', + 'headphonejack-123', + 'Corvus CZ', + 'begreift23', + 'vickersspencer', + 'CCG', + 'jobbymacbean', + 'xxDeadDisneyxx', + 'careysherman', + 'Tigrou du Rouergue', + 'donttellmama', + 'mixedemotions', + 'vinylust', + 'exitplotter', + '*LeeroyCowPunkTrash*', + 'estoniette', + 'jrufusj', + 'simbi', + 'AArtaud', + 'thinkfloyd85', + 'llev01', + 'planetjunior', + 'DeepHouseNYC', + 'rkfoss', + 'PlintuZz', + 'cliffb', + 'israhim', + 'WeekenderAFC', + 'annoyance', + 'shmoe19', + 'dogbrain', + 'bonequicha', + 'papaqueque', + 'Hightechobo', + 'DJA-100', + 'ceglediguy', + 'cheath', + 'TisketTasket', + 'patiencevice', + 'goettel', + 'futuregibbon', + 'Cardhu2', + 'rogue', + 'SoulmanWOB', + 'shaq', + 'm@lk0vich', + 'soggypee', + 'IRIE CYRUS', + 'chevastian', + 'd[^_^]b', + 'bls0016', + 'Ironwood', + 'tdcc', + 'alexrubio', + 'kryspypuff', + 'Orido', + 'Hygrain', + 'topshelfsounds', + 'agenda85', + 'gurumeditation', + 'Grendel666', + 'humblebee3', + 'shunyata', + 'error32690234', + 'O2cool655', + 'fac013', + 'the.old.ent', + 'cinnabar', + 'Ammon', + 'supergill', + 'Tazanova', + 'raikoff', + 'Snowboard Surge', + 'doc2g', + 'dklik', + 'diggerdeep', + 'colrose', + 'davidrosen2001', + 'Orkan', + 'u.g. krishnamurti', + 'GMN', + 'reVerse', + 'tr826', + 'startoursg24t', + 'Susee', + 'ZooFactory', + 'DreamHouse', + '*stevefrench*', + 'yourbandneedsxylophone', + '3141592638', + 'ontheone', + 'BJBigO', + 'thirdivan', + 'mikeyhighjinks', + 'csp9999', + 'carters', + 'djrjr', + 'crem8', + 'opera_de_nuit', + 'tacobus', + 'gusparof', + 'famousmortimer', + 'joejackson', + 'H\'Daer', + 'DJ_Monkfish', + 'Aspirations', + 'duders25', + 'carbureatordung', + 'Plutonic Love', + 'rpierre', + 'NEone', + 'Makroscope', + 'JLG', + 'kid-sister', + 'jogo_bonito', + 'JKO', + 'fungidelix', + 'ssoak54', + 'slavlab', + 'fashoom', + 's33m3s33', + 'coryhalo', + 'doomjazz', + 'regtone', + 'YurigV', + 'SamsonHB', + 'KMD', + 'trotsky', + 'Chukwudi1994', + 'alexfcjones', + 'jim02', + 'chaunceygardiner', + 'DJ-lucious-flajore', + 'Zohr', + 'djholly', + 'gypsypipeliner', + 'roomx', + 'wisant', + 'WhenLoveFails', + 'yeahhbuzz', + 'Rodrigo', + 'akmuso', + 'gsduncan', + 'f1lby', + 'taxperts1', + 'Proventile', + 'Fogass', + 'kidyang', + 'oneloves', + 'qtrer', + 'UKGAND2STEP', + 'GardenOfForkingPaths', + 'elvis_telecom', + 'sola', + 'davidian', + 'leijsten', + 'imunnen', + 'dorsal', + 'noracat2', + 'Etc', + 'the_joksim', + 'hallmonitor', + 'Locode', + 'bmunch23', + 'hoverproject', + 'analoguedj', + 'Shiwla', + 'lordshine', + 'jim_murple', + 'devant', + 'mantisirl', + 'telestar', + 'catfdkid', + 'alandean30', + 'ba$e_god', + 'Shskabobb', + 'marco565', + 'paquerette', + 'brbttyl', + 'drew33', + 'buddhakip', + 'bubbahbaloeha', + 'dbm_sf', + 'sirlord', + 'cschorno', + 'brotherdro', + 'bobinobobino', + 'swandrie', + 'dougdi', + 'magnum266', + 'stby', + 'derkkrieger', + 'WilliamCaycedo', + 'The_Carpet', + 'swee_pee', + 'Lost Master', + 'S.O.S.A.', + 'softlord', + 'windycity', + 'khamsun', + 'dubcoffman', + 'slobe', + 'ezirider', + 'LINOSQUARE', + 'pepefouz', + 'omega_21', + 'aeolus2', + 'therewillbesnacks', + 'Tuffa', + 'cheesy_rice', + 'psgabriel', + 'Paradise Found', + 'I Got What You Need', + 'TARBYCHARK', + 'Xphysics69', + 'ways_out', + 'Hitherto', + 'olivergrund', + 'trim_that_tash', + 'prophet840', + 'mananman', + 'kingtobbe', + 'ztarpagos', + 'musicmatt52', + '02musickevin', + 'macscully', + 'apollo448', + 'krezmuzik', + 'theycutup', + 'titlis', + 'pacebreaker', + 'Ruba45', + 'MC Pingu', + 'EarInfection', + 'special23', + 'thirtythree', + 'TJT74', + 'seankmchenry', + 'mattphrench', + 'rollinsolo', + 'DJ SENSI', + 'Beno von Archimboldi', + 'takamba', + 'im2quiet', + 'MaunaLoa', + 'lan04', + 'someone somewhere', + 'esfera04', + 'btswrkng', + 'The Tax man', + 'zwinksta', + 'ilovewhat', + 'B@@mB@@m', + 'louinkenny', + 'Roger Ball', + 'redball729@gmail.com', + 'presario25', + 'lightfinger', + 'poohsticks', + 'dinamo2222', + 'OzRambler', + 'skippy_dc', + 'ol\'skoolfool', + 'rickspencer', + 'Fredy', + 'GadgetMan', + 'eura_b', + 'davidrd_123', + 'MarkMiwurdz', + 'lare96', + 'audiophilepj', + 'hind sight', + 'dj_george_william', + 'sista jedi (Jennifer Davis)', + 'SplashT', + 'HOLLOWTRVCE', + 'papertiger', + 'greyfus', + 'dfs_music', + 'jivefresh', + 'pannythief', + 'gowings', + 'svelte', + 'xpk11', + 'quitty', + 'mineciarz', + 'phacopscassi', + 'neoraga', + 'julianahuxtable', + 'Elasticboy', + 'Lord Noire', + 'blushresponse', + 'mcbuth', + 'garynoakes@blueyonder.co.uk', + '<<< Chad >>>', + 'ryeadams', + 'shipping news', + 'mixing', + 'curbmusic3', + 'melechyoav', + 'kutaratuk', + 'outofsync', + 'snacknasty', + 'DarkyNoise', + 'joshwa4444', + 'panoptikon', + 'gazefuzzy', + 'notthateasy', + 'iluzz', + 'altobelli', + 'ckpsjp', + 'rolllnsolo', + 'the_robot_is_your_friend', + 'dawnofthedead', + 'wooster', + 'marsas333', + 'rramjett577', + 'Peter North', + 'Euphonic', + 'zampano2004', + 'housefrau', + 'justfunk', + 'orangetag', + 'jkgfu', + 'ROADRUNNER4', + 'donjuan', + 'Bribaba', + 'daviesfj', + 'Zefrem23', + 'kamaraadski', + 'VincentH', + 'achron', + 'illdub', + 'OKIDOKI-4U', + 'willem33', + 'Lopez skill', + 'nowheregirlnd', + 'hitjager', + 'nularula', + 'The_Unforgiven', + 'jongoodman783', + 'afonsof', + 'mugic', + 'KIDrorschach', + 'JaZzY', + 'astral_firefly', + 'field_grave', + 'Jaramo 419', + 'rgarc2000', + 'bisquitodoom', + 'rgarciad', + 'zbydx', + 'wode', + 'portis*', + 'OldDog', + 'Matcy_P', + 't0mekk', + 'chicago95', + 'thunk', + 'progressive slewt', + 'nrj2k', + 'elhim', + 'priitamg', + 'psychopants', + 'Sheffieldie', + 'djsage778', + 'viva_la_vita', + 'Lloyd', + 'spaceface', + 'potele', + 'nightgoat74', + 'bigbag', + 'thebeekeeper', + 'happy gilmore', + 'harry19722', + 'mysticworks', + 'albeckley73', + 'RICKJAMES', + 'ginatonica', + 'bujoneil', + 'wbutterworth', + 'FloydMorrison', + 'pearlclutcher', + 'hans liefhebber', + 'sohrab.rd', + 'NeilJT', + 'pegger67', + 'mariopo59', + 'priory of ions', + 'diavolino', + 'sonjablue9', + 'Frisian', + 'castrationfear', + 'Shokyy', + 'itk168', + 'zart', + 'BondRm', + 'Groovin You', + 'informavore', + 'aprusso', + 'andrez', + 'lasertooth', + 'ggoboy', + 'sobblade', + 'orbscure', + 'corbyem52', + 'm2kinho', + 'jaydee76', + 'belenus', + 'djjonnyp', + 'pepitopea', + 'mikeajblack', + 'n2music', + '3fran6sou', + 'cvizz', + 'edgar1', + 'scrimshander', + 'asciimov', + 'kerry malice', + 'mrhaha', + 'moveme', + 'nippezfunk', + 'Mister335', + 'montrealpunk', + 'spinsparx', + 'nvrvgv303', + 'kouri45', + 'bassg', + 'ellybee', + 'bnakbak', + 'brownsugarDTD', + 'BillyWalnuts', + 'ketwoc', + 'digital_self', + 'bEYOND20K14', + 'r0b0c0p', + 'libralady', + 'bdid', + 'necs222', + 'huangguoxiong', + 'DJLinus', + 'Anonymous666NL', + 'robbinmco', + 'johnvaleri' ], + _message: + Message { + name: 'privileged users', + _cursor: 17655, + _buffers: + Buffers { + buffers: + [ , + , + , + , + ], + length: 17655 } } } +nslsk> \ No newline at end of file From 3f7b10001ac6e43fa4b28e4cf27c4072e85d823e Mon Sep 17 00:00:00 2001 From: Arthur Elsenaar Date: Sat, 17 Oct 2015 14:32:51 +0200 Subject: [PATCH 3/3] Changed bigint to bignum --- lib/message/index.js | 263 +++++++ test.txt | 1581 ------------------------------------------ 2 files changed, 263 insertions(+), 1581 deletions(-) create mode 100644 lib/message/index.js delete mode 100644 test.txt diff --git a/lib/message/index.js b/lib/message/index.js new file mode 100644 index 0000000..9fc18e3 --- /dev/null +++ b/lib/message/index.js @@ -0,0 +1,263 @@ + +/** + * Module dependencies. + */ + +var debug = require('debug')('nslsk:message') + , zlib = require('zlib') + , Buffers = require('buffers') + , bignum = require('bignum'); + +/** + * Expose `Message`. + */ + +module.exports = Message; + +/** + * Server message. + */ + +Message.SERVER = require('./server'); + +/** + * Peer message. + */ + +Message.PEER = require('./peer'); + +/** + * Distributed message. + */ + +Message.DISTRIBUTED = require('./distributed'); + +/** + * Message constructor. + * + * @param {Buffers|Number} [optional] + */ + +function Message(buffers) { + if (!(this instanceof Message)) { + return new Message(buffers); + } + + this.name = 'unknown'; + this._cursor = 0; + + if (buffers instanceof Buffers) { + this._buffers = buffers; + } else { + this._buffers = new Buffers(); + } + + if ('[object Number]' === Object.prototype.toString.call(buffers)) { + this.uint32(buffers); // code + } +} + +/** + * @param {Number} val [optional] + * @return {Message|Number} + */ + +Message.prototype.uint32 = function(val) { + if (val) { + var buf = new Buffer(4); + + buf.writeUInt32LE(val, 0); + this._buffers.push(buf); + + return this; + } + var ret = this._buffers.slice(this._cursor, this._cursor + 4).readUInt32LE(0); + this._cursor += 4; + return ret; +}; + +/** + * @param {Number} val [optional] + * @return {Message|Number} + */ + +Message.prototype.uchar = function(val) { + if (val || 0 === val) { + this._buffers.push(new Buffer([val])); + return this; + } + var ret = this._buffers.get(this._cursor); + ++this._cursor; + return ret; +}; + +/** + * @param {String} val [optional] + * @return {Message|String} + */ + +Message.prototype.string = function(val) { + if (val) { + var buf = new Buffer(val, 'utf8'); + + this.uint32(buf.length); + this._buffers.push(buf); + + return this; + } + var len = this.uint32(); + var ret = this._buffers.slice(this._cursor, this._cursor + len).toString('utf8'); + this._cursor += len; + return ret; +}; + +/** + * @param {Number} val [optional] + * @return {Message|Number} + */ + +Message.prototype.int32 = function(val) { + if (val) { + var buf = new Buffer(4); + + buf.writeInt32LE(val, 0); + this._buffers.push(buf); + + return this; + } + var ret = this._buffers.slice(this._cursor, this._cursor + 4).readInt32LE(0); + this._cursor += 4; + return ret; +}; + +/** + * @param {Number} val [optional] + * @return {Message|bignum} + */ + +Message.prototype.int64 = function(val) { + if (val) { + // TODO: + } + var buf = this._buffers.slice(this._cursor, this._cursor + 8); + this._cursor += 8; + return bignum.fromBuffer(buf, { endinan: 'little' }); +}; + +/** + * @param {Boolean} val + * @return {Boolean} + */ + +Message.prototype.bool = function(val) { + if (val || false === val) { + return this.uchar(val ? 1 : 0); + } + return !!this.uchar(); +}; + +/** + * @return {String} + */ + +Message.prototype.ip = function() { + var ip = this.uint32() + , buf = new Buffer(4); + + buf.writeUInt32BE(ip, 0); + return [buf[0], buf[1], buf[2], buf[3]].join('.'); +}; + +/** + * @param {Buffer} buffer + * @return {Message} + */ + +Message.prototype.push = function(buffer) { + this._buffers.push(buffer); + return this; +}; + +/** + * Decompress gzipped message. + * + * @param {Function} callback + * @return {Message} + */ + +Message.prototype.decompress = function(callback) { + var buf = this._buffers.splice(4).toBuffer(); + + zlib.unzip(buf, function(err, buf) { + if (err) { + return callback.call(this, err, buf); + } + this._buffers.push(buf); + callback.call(this, err, this); + }.bind(this)); + + return this; +}; + +/** + * Decode buffered message. + * + * @param {String} type + * @param {Function} callback + * @return {Message} + */ + +Message.prototype.decode = function(type, callback) { + this._cursor = 0; + var code = this.uint32(); + + debug('%s:%s', type, code/*, this._buffers */); + + switch (type) { + case 'server': + var message = Message.SERVER[code]; + break; + case 'peer': + var message = Message.PEER[code]; + break; + case 'distributed': + var message = Message.DISTRIBUTED[code]; + break; + default: + throw new TypeError('Unknown message type [' + type + ']'); + } + + if (!message) { + throw new Error('Unknown ' + type + ' message code [' + code + ']'); + } + + this.name = message.name; + + switch (message.decode.length) { + case 2: + message.decode.call(this, this, callback); + break; + case 1: + var decoded = message.decode.call(this, this); + callback(null, decoded); + break; + default: + throw new Error('invalid parameters'); + } + + return this; +}; + +/** + * @param {Function} callback + */ + +Message.prototype.end = function(callback) { + var buf = new Buffer(4); + + buf.writeUInt32LE(this._buffers.length, 0); + this._buffers.unshift(buf); + this._cursor += 4; + + return callback.call(this, this._buffers); +}; diff --git a/test.txt b/test.txt deleted file mode 100644 index a11c4fd..0000000 --- a/test.txt +++ /dev/null @@ -1,1581 +0,0 @@ -{ success: 1, - greet: '', - _message: - Message { - name: 'login', - _cursor: 9, - _buffers: - Buffers { - buffers: [ ], - length: 14 } } } -nslsk> [ { name: '! ! Slsk Idiots ! !', users: 10 }, - { name: '! Italo Disco', users: 17 }, - { name: '!!! 90\'s Rare Riddim !!!', users: 13 }, - { name: '!!RIDDIM!!', users: 14 }, - { name: '!ReGGaeGaLaXy', users: 38 }, - { name: '#Filmzone', users: 23 }, - { name: '#Horrorcore', users: 16 }, - { name: '#La France', users: 52 }, - { name: '#icilombre-hardcore', users: 10 }, - { name: '#polska', users: 28 }, - { name: '#teqnix', users: 5 }, - { name: '* + Neverland + *', users: 12 }, - { name: '**RIDDIM**', users: 11 }, - { name: '+BlackMetal+', users: 117 }, - { name: '+Slsk Vip+', users: 5 }, - { name: '/mu/', users: 76 }, - { name: '60lover', users: 8 }, - { name: '70 Rare groove Soul Jazz', users: 13 }, - { name: '90\'s emo', users: 9 }, - { name: ':-)', users: 60 }, - { name: '<>Electronics Labels<>', users: 35 }, - { name: 'ACID', users: 16 }, - { name: 'ARGENTINA', users: 14 }, - { name: 'AUSTRALIA', users: 7 }, - { name: 'Ambient', users: 93 }, - { name: 'Anime', users: 25 }, - { name: 'Avantgarde', users: 13 }, - { name: 'BLUES BUNKER MUSIC', users: 34 }, - { name: 'BOB DYLAN ROOM', users: 8 }, - { name: 'Brasil', users: 34 }, - { name: 'Breakcore', users: 31 }, - { name: 'CHILE', users: 34 }, - { name: 'Canada', users: 16 }, - { name: 'Chiptunes', users: 6 }, - { name: 'Christians', users: 7 }, - { name: 'Classical', users: 16 }, - { name: 'DEATH METAL CLUB', users: 29 }, - { name: 'DUB', users: 17 }, - { name: 'Dark Ambient', users: 21 }, - { name: 'De Koffie Shop', users: 15 }, - { name: 'De Kroeg', users: 26 }, - { name: 'Deathrock', users: 11 }, - { name: 'DieMilitarmusik', users: 13 }, - { name: 'Disco Classics', users: 13 }, - { name: 'Doom Metal', users: 6 }, - { name: 'Dub Techno', users: 20 }, - { name: 'Dubstep', users: 21 }, - { name: 'Dynamic-Musique', users: 10 }, - { name: 'EBM-GOTHIC-INDUSTRIAL', users: 23 }, - { name: 'EBooks', users: 19 }, - { name: 'Eurodance', users: 7 }, - { name: 'Eurovision Song Contest', users: 7 }, - { name: 'Experimental Electronica', users: 13 }, - { name: 'FOLK MUSIC', users: 11 }, - { name: 'FUNK CLASSICS', users: 10 }, - { name: 'FUNK FRANCE', users: 13 }, - { name: 'Free Jazz', users: 5 }, - { name: 'GarageTrashPunk&OMB\'s', users: 6 }, - { name: 'Gay', users: 11 }, - { name: 'Gothic', users: 22 }, - { name: 'Grindcore', users: 10 }, - { name: 'Guerre Froide', users: 5 }, - { name: 'HORDES!!!!!!', users: 7 }, - { name: 'HOUSE MUSIC LOVERS (AG)', users: 63 }, - { name: 'Hardcore NL', users: 25 }, - { name: 'Hardcore/punk', users: 40 }, - { name: 'Hip Hop', users: 25 }, - { name: 'IDM', users: 42 }, - { name: 'INDUSTRIAL', users: 30 }, - { name: 'ITALIA HC / PUNK', users: 5 }, - { name: 'Incredibly Strange Music', users: 10 }, - { name: 'Israel', users: 17 }, - { name: 'Italia', users: 12 }, - { name: 'Jazz', users: 9 }, - { name: 'Jazz (Full CDs)', users: 35 }, - { name: 'Jazz-Rock-Fusion-Guitar', users: 10 }, - { name: 'Juggalo Family', users: 13 }, - { name: 'Jungle', users: 15 }, - { name: 'Kraut-rock', users: 7 }, - { name: 'Linux', users: 16 }, - { name: 'Lossless Scores', users: 22 }, - { name: 'MOVIES', users: 8 }, - { name: 'Mac Users', users: 11 }, - { name: 'Metal', users: 25 }, - { name: 'MovieMusic', users: 25 }, - { name: 'New Crystal Vibrations', users: 11 }, - { name: 'New Wave', users: 10 }, - { name: 'Nocturna', users: 65 }, - { name: 'Nu-Disco/Funky/Balearic', users: 5 }, - { name: 'OLD SKOOL GANGSTA SHIT', users: 11 }, - { name: 'OLDSCHOOL 88-94', users: 46 }, - { name: 'OLDSKOOL GOA', users: 11 }, - { name: 'Oi!', users: 14 }, - { name: 'Only Blues', users: 9 }, - { name: 'Otaku-Anime', users: 9 }, - { name: 'PSYCHEDELIA', users: 15 }, - { name: 'PSYCHOBILLY-PUNK-ECT..', users: 7 }, - { name: 'PUNK/HARDCORE/GRIND', users: 9 }, - { name: 'Portugal', users: 9 }, - { name: 'Post Punk', users: 14 }, - { name: 'Progressive Rock', users: 13 }, - { name: 'Psychedelic/Acid Rock', users: 14 }, - { name: 'Psytrance', users: 43 }, - { name: 'RAC', users: 7 }, - { name: 'REGGAE', users: 16 }, - { name: 'RUSSIA', users: 44 }, - { name: 'Rare Music', users: 32 }, - { name: 'Records Records Records', users: 7 }, - { name: 'Retro Gaming', users: 16 }, - { name: 'SLUDGE!', users: 5 }, - { name: 'SOCA / CALYPSO', users: 7 }, - { name: 'SOUL \'70s FUNKY & DISCO!', users: 13 }, - { name: 'Salsa CD\'s', users: 10 }, - { name: 'Scene_Rip', users: 8 }, - { name: 'Scores', users: 47 }, - { name: 'Soundscapes', users: 5 }, - { name: 'Soundtracks&Scores', users: 16 }, - { name: 'Spain', users: 19 }, - { name: 'Stoner HiVe', users: 11 }, - { name: 'Stoner Rock', users: 29 }, - { name: 'TECHNO, Mixes and Tunes', users: 87 }, - { name: 'THC', users: 31 }, - { name: 'The Dangerous Kitchen', users: 7 }, - { name: 'The Solar Lodge', users: 7 }, - { name: 'TheScoreZone', users: 8 }, - { name: 'Thrash Metal', users: 6 }, - { name: 'Trip-Hop', users: 7 }, - { name: 'Twee Folks', users: 12 }, - { name: 'UK DUB', users: 6 }, - { name: 'Underground Hiphop', users: 47 }, - { name: 'Venezuela', users: 9 }, - { name: 'Video Game Chat', users: 35 }, - { name: 'Vinyl Addicts', users: 20 }, - { name: 'Ween', users: 6 }, - { name: 'World Music', users: 10 }, - { name: 'Zenith', users: 5 }, - { name: 'Zoukmania', users: 7 }, - { name: '[B]', users: 7 }, - { name: '][German][Deutsch][', users: 29 }, - { name: '^ILLUMINATI^awareness', users: 52 }, - { name: 'aphextwin.nu', users: 12 }, - { name: 'breakbeat', users: 14 }, - { name: 'comics', users: 9 }, - { name: 'deep house connection', users: 14 }, - { name: 'drum\'n\'bass', users: 64 }, - { name: 'eesti mehed', users: 12 }, - { name: 'electro', users: 17 }, - { name: 'food', users: 50 }, - { name: 'garagepunk.com', users: 9 }, - { name: 'heb-history', users: 11 }, - { name: 'hi', users: 6 }, - { name: 'hungary', users: 12 }, - { name: 'indie', users: 150 }, - { name: 'industrial hardcore', users: 5 }, - { name: 'japanese music', users: 15 }, - { name: 'library music', users: 12 }, - { name: 'lossless', users: 19 }, - { name: 'minimal music', users: 27 }, - { name: 'museek', users: 69 }, - { name: 'mush*room', users: 10 }, - { name: 'neofolk', users: 7 }, - { name: 'noise', users: 31 }, - { name: 'postrock', users: 19 }, - { name: 'progressive house', users: 24 }, - { name: 'rapstyle', users: 5 }, - { name: 'rotterdam', users: 7 }, - { name: 'rym', users: 16 }, - { name: 'shoegaze', users: 19 }, - { name: 'ssX', users: 6 }, - { name: 'star trek', users: 9 }, - { name: 'trancEaddict', users: 20 }, - _message: Message { - name: 'room list', - _cursor: 3297, - _buffers: - Buffers { - buffers: - [ , - ], - length: 3317 } } ] -{ speed: 1, - _message: - Message { - name: 'parent min speed', - _cursor: 8, - _buffers: Buffers { buffers: [ ], length: 8 } } } -{ ratio: 50, - _message: - Message { - name: 'parent speed ratio', - _cursor: 8, - _buffers: Buffers { buffers: [ ], length: 8 } } } -{ interval: 720, - _message: - Message { - name: 'wishlist interval', - _cursor: 8, - _buffers: Buffers { buffers: [ ], length: 8 } } } -{ users: - [ 'jiggityvonbubbels', - 'yesbut', - 'lenaswa', - 'deadbodyinthtrunk', - 'patatamecanica', - 'paulblack', - 'Johan 60', - 'drydustravel', - 'chihuahua74', - 'thesultan', - 'BondRm321', - 'humanleather', - 'gauna', - 'banapscotch1', - 'foxxxxman', - 'Lost-in-Sound', - 'dwilow', - 'kenhartsel', - 'astronovist', - 'sblackman1', - 'michho', - 'martin65807', - 'suckedjs', - 'thib180', - 'rudierudierudie', - 'imwinnin', - 'Janeymac', - '[nifluril]', - 'AbandandCat', - 'ada!!!', - 'zackaira', - 'cccp', - 'bigD', - 'roaddonkey', - 'moliere', - 'joustt', - 'myprofilenl', - 'malc101', - 'enika', - 'drumfuck', - 'Quasar', - 'harryc', - 'atty8888', - 'sprks', - 'carn', - 'gender_student', - 'thelis', - 'fm_synth', - 'tyrian62023', - 'thmthmthm', - 'psymon', - 'andr', - 'JEAN DUCHENE', - 'diggin', - 'shekyt', - 'Swoppy', - 'yooz', - 'psychocerebrall', - 'HORSESHIT70', - 'Head_In_the_Clouds', - 'whocares', - 'Milvus', - 'youlwin2', - 'Aseremorgan', - 'thccertified', - '[a c c e l e r a t o r]', - 'noyou', - 'rbryant', - 'soundinsight', - 'deichdirk', - 'debector', - 'jaB', - 'cawamor', - 'djhypnos', - 'Progressive Relics', - 'mojo_navigator_2', - 'Stalker98', - 'mthanus', - 'kiranotter', - 'mousey', - 'hocchiemama', - 'kkurman', - 'Hemogoblin', - 'ht1', - 'Daboose', - 'schaum', - 'radickalus', - 'LionelLove', - 'mike13x', - 'RatPfink', - 'elcabong', - 'magnum2606', - 'fkarg', - 'pigro', - 'koremoran', - 'keilamym', - 'crueball05', - 'haifa1919', - 'sardo numspa', - 'kiddyraver', - 'TC80', - 'djskripta', - 'hectotem', - 'Fjordnaer', - 'beatfreaq', - 'spoorhuis', - 'kcj', - 'fiend23', - 'dirk gently', - 'sadnilmusic', - 'GrahameUK', - 'pilch', - 'Nomi04', - 'Sleepingbeauty', - 'Detroit Fingers', - 'andy2639', - 'pjoomby', - 'tnigz', - 'robini71', - 'DJ32181', - 'cronosNS', - 'progknight', - 'ShoddyGoods', - 'mrfunk', - 'meganova', - 'Phytotechnic', - 'Mark4622', - 'M.L.F.', - 'CEBEP', - 'dive_od', - 'Kupak', - 'realproblems', - 'gojoparadiso', - 'jernest', - 'eliasmazian', - 'Bert Is Evil', - 'Sista Jedi (jennifer davis)', - 'matjas', - 'soulio', - 'rot gut', - 'aliSH', - 'nm2', - 'Soul Sister', - 'icjdomer', - 'infojungle', - 'tpagy', - 'goodude', - 'rvrzl', - 'metalmaniac93', - 'Matheron', - 'stwali', - 'dansusz', - 'tahitidask', - 'rabbitofdoom', - '1luv', - 'randumb azz kneeya', - 'Speedy', - 'murph2323', - 'p_g', - 'moe', - 'agloxton', - 'jon370', - 'lemak', - 'mra', - 'zuff', - 'goatguy2', - 'Onieros', - 'ivand', - 'harrolz', - 'avix', - 'pax', - 'Nim Chimpsky', - 'w0dk4', - 'RoboDroid', - 'cunny_g', - 'Jennifer Davis (SISTA JEDI)', - 'jmmountain', - 'DarkestofStars', - 'onlyjimbo', - 'hoagystevie', - 'drspide', - 'shadreck', - 'BinaryNeuronaut', - 'mattstarr4444', - 'donovan', - 'jextra', - 'n4ye', - 'obanraohanrahan', - 'DJ PaulyPaul', - 'Carnamagos', - '..::MM::..', - 'klaus', - 'DJ_FUTURAMA', - 'motherfunk', - 'joedaco', - 'Jembry Malikwakwa', - 'jenga139', - '2ndline', - 'brootlyn', - 'soultaker', - 'aqueduct', - 'Asiatranceboy', - 'miffilka', - 'I Lurv yu', - 'GZoST', - 'jordan90%', - 'bfdscarecrow1', - 'skylamb', - 'mlarson1', - 'Knax', - 'fulltext', - 'jsztein', - 'Outdoormetalrocker', - 'thecsjvampire', - 'roc', - 'brooklyndisco', - 'withdrawfromnine', - 'Trancet', - 'tomgi', - 'molly_dog', - 'snaggel', - 'mcjeangab', - 'slappydapimp', - 'man_with_a_temper', - 'brucie27', - 'grog4u', - 'havaham', - 'lexdiamond', - 'skylary', - 'donadoni', - 'davemmusic', - 'perogie55', - 'dlog', - 'faircity', - 'TheDjKyleJ', - 'video1', - 'phantom_yo', - 'fjgraysoulman', - 'chocoloatechipcharlie', - 'dingdong2005', - 'mcindoo2', - 'username49', - 'winter1610', - 'nemoinoz', - 'verboverbo', - 'keepsleeping', - 'Asparagus Dave', - 'tattvamasi', - 'sstpd', - 'paroxetin', - 'timhoeben', - 'ciliege', - 'jessesamuel', - 'halibutt', - 'hh73', - 'fidlstik', - 'wjhoffman', - 'bambammuzak', - 'walex', - 'bosstweed', - 'ab0rted_fetus', - 'pnk77', - 'smie666', - 'doctae', - 'soulfree', - 'wigwam7', - 'addambombb', - 'liamb', - 'altcountry', - 'sylverfalcon', - 'lewdd', - 'agentrelaxed', - 'rampy', - 'smiles', - 'carxa', - 'lisenok', - 'Mine', - 'coppertop418', - 'hkbabel', - 'Nolsons', - 'cassy', - 'stubb', - 'dodisman', - 'ploom2', - 'Giant Steps', - 'deejaydoug', - 'velocifer', - 'dadi70', - 'lofi303', - 'bigdaddyR', - 'djcury', - 'czar', - 'jedijm', - 'sgian dearg', - 'fz', - 'Foxxy72', - 'Drei21', - 'morts2986', - 'HannahTrash', - 'blinddave', - 'sonikmike', - 'Uncleeddie22', - 'alconrrojo', - 'lo', - 'lifesuncertainty', - 'Nemoinoz', - 'Neo-Progger', - 'pefrase', - 'fractalmind', - 'Hidebound', - 'rstanton', - 'groovintx', - 'kickdrum', - 'kittenmittonz', - 'DiscoPunk', - 'abortiontrash', - 'srkredliner', - 'pjotr56', - 'kodetwo', - 'Zaede', - 'bottanyB', - 'XATIADO', - 'Edryl', - 'BBallerBrian', - 'gght', - 'TechnicalTrouble', - 'DjJVilla', - 'dncee11', - 'bookworm', - 'peterson32564', - 'rugby10', - 'decatur555', - 'DJsyNRG', - 'Thullin187', - 'Hubajube', - 'the breeze', - 'lazybobby', - 'Squidtopia', - 'knuftobor', - 'Metal Girl', - 'gidy', - 'Nita', - 'jdmf62', - 'ZamGe', - 'rbartheil', - 'tobali', - 'pierus', - 'acidrop', - 'saintschultz', - 'wusher', - 'Underdog340', - 'nickbug', - 'olskidin', - 'Hellfrick', - 'cally999', - 'ekberg', - 'boeziebee', - 'Nostalgia of mud', - 'Lupa', - 'GNACi', - 'blaxthos', - 'itscooltorock', - 'lalababab', - 'karaokemdb@me.com', - 'Eyesore', - 'WEXFORDRAIDER', - 'detshok', - 'Oh_Synthesizer', - 'rogueprimate419', - 'ghost', - 'RevelationNo9', - 'randolph1156', - 'Mothman', - 'b.webby', - 'redshirt', - 'CowboyRon', - 'dimarray', - 'NocturnalStalker', - 'Red Astaire', - 'RustyTrumpet', - 'tbrece', - 'NKDMusic', - 'malaclipse_tfd', - 'cherylb', - 'psychocpv', - 'jazzmann1', - 'gotitlikethat', - 'sundread', - 'Tamahone', - 'OneCrazyDJ', - 'PracticalChaos', - 'jazzyjo', - 'ritxiskatalite69', - 'birck', - 'sfdirtybird', - 'meteoro_808', - 'bunnyip2', - 'pacodos22', - 'havedat', - 'labswift', - 'tobelz', - 'see_bass', - 'danborgo45', - 'WHUU', - 'bnkroz', - 'darkfader666', - 'Yerba', - 'ftp-server-access', - 'Bal Moral', - 'Kawwaveh', - 'phanto_EKG', - 'j2mcrusoe', - 'srush242', - 'spacestronaut', - 'LahDeeDah', - 'Phef', - 'mekas', - 'pannonica', - 'PFunkFan', - 'Juliem', - 'D_Fiuza123', - 'Canuckistani', - 'L_Dopa', - 'punkadelic', - 'Superlogico', - 'psalmist', - 'silente', - 'peverything', - 'GrandPiano', - 'Proteus93', - 'embryofile', - 'xman1980', - 'DrinkyCrow', - '_PooPooStinks_', - 'mazgan', - 'Lukie D', - 'sierracat', - 'jimbrawn@rogers.com', - 'meretrix', - 'vceller8', - 'shakashakaa', - 'fonfy', - 'mazi_a', - 'CiriloSegundo', - 'hangman187', - 'monsterfood', - 'jefelex', - 'stmirren', - 'lolakent', - 'MusicMan29', - 'Fireface', - 'kikishmiki', - 'kk49', - 'kimariskobal', - 'USCLM', - 'abierto24horas2', - 'Anonyme63', - 'anton.styles', - 'People', - 'louisazazax', - 'BurningWitch', - 'djezekielnc', - 'StarsOvTheLid', - 'MatGaw', - 'prof_lofi', - 'doctor meds', - 'tim0thyb', - 'wamguohong', - 'wa.Sharky', - 'bowie77', - 'luminus', - 'schmidtlef', - 'polis', - 'Babbler', - 'dabura', - 'mentalfee', - 'cobra417', - 'travelinbae', - 'redmonkeyrapper', - 'Luc Oz', - 'Guurk', - 'chubbs', - 'Bobmack13', - 'groman1', - 'ianai', - 'forge', - 'MuzikFreak', - 'pocono', - 'hinkelsnitz', - 'andreusvaults', - 'suture', - 'Alraomon', - 'ivanbmalone', - 'Musicsavedmylife', - 'satinsoul', - 'JustMyNipples', - 'tryce', - 'dangermoose', - 'drosophila71', - 'Throbber', - 'ramondero', - 'djwick68', - 'linusoli', - 'zobilamouche', - 'bendelcor', - 'Moonstone', - 'qwertzui1', - 'DoctorMemory', - 'Spirea', - 'musicma000000', - 'djanson', - 'PlantastiK', - 'icekobra', - 'bigragupdx', - 'SalBoogie', - 'tobesojr', - 'grindedpone', - 'dbband', - 'kosho', - 'Dr_saxaholic', - 'funkdamental', - 'djbillyde7777', - 'andywelt', - 'queromaisum', - 'dgrocker', - 'purebsd', - 'keir', - 'Breil17', - 'tatami50', - 'kotjm', - 'dirgekeeper', - 'Commune', - 'mjf2u', - 'adski21', - 'tfunk70', - 'baybkge', - 'mike7051', - 'mrsflowerzz', - 'Optimus_Prime_79', - 'gjkirby', - 'kubjay', - 'lonepine', - 'Corrupted_dB', - 'leesaynor', - 'evilclubber', - 'Surcouf 42', - 'COLEMINE199', - 'bokkeman', - 'InkMinioN', - 'galleherjazz', - 'yourstruly', - '..:rain:..', - 'ciges', - 'DaKraut', - 'drvansteiner', - 'chryco', - 'PEPE GUNN', - 'scolep', - 'adadadia', - 'tangier!', - 'niavasha', - 'DevilDeville', - 'the13thour', - 'xyrix', - 'katbastard', - 'jusla', - 'DjSimond', - 'dirtyjak', - 'daydreamnational', - 'teephish', - 'wiseguyro', - 'litebeat', - 'chavichonty', - 'pbad03', - 'midnight tramp', - 'Proxima6142', - 'day_v', - 'kjhkjh', - 'ricin', - 'w1i1n1k1y', - 'whoknew', - 'Reg237', - 'original soundboy', - 'galliwasp', - 'MannyD', - 'edstar22', - 'jamiemadrox', - 'Trakse', - 'streetwalkin\'cheetah', - 'SergeMech', - 'Doornappeltje59', - 'doodoobrown', - 'clepington', - 'krlfc', - 'emperor_muabo', - 'sg8505', - 'reggez', - 'ludaphunk', - 'nelsone', - 'prestonspal', - 'gilesku', - 'Son of Creedence', - 'linoleum_blownapart', - 'DavGins', - 'usclm', - '3days', - 'opensociety', - 'RedMonarch', - 'gtkallday', - 'DJHiDefBK', - 'Xtreme memez', - 'harten74', - 'catbird', - 'tussebo', - 'Shyyde', - 'SyreetaJaelsbak', - 'koby', - 'necks', - 'CorpsRR', - 'skizm63', - 'Brucesp', - 'fergalc', - 'meowhugs', - 'Moses188', - 'Barley UK', - 'mdh6262', - 'FieryAngel', - 'macromuncher', - 'hedgestone61@hotmail.com', - 'musik_musik_musik', - 'indeterminacy', - 'drunkmonkeysir', - 'drainedcolors', - 'Novae7', - 'scy1e', - 'djjurni', - 'anpoxx', - 'ptds7', - 'threethreee', - 'vegetam', - 'coreyk1', - '(?}', - 'Basha', - 'twitch_', - '2molly', - 'hunterjonhson', - 'doffavoffid', - 'speedbumps', - 'christomi34', - 'delugt01', - 'llog', - 'Chestnut', - 'user2246', - 'Virunga08', - 'cashless', - 'miez', - 'heywoodyorke', - 'matts90r', - 'astroneff', - 'Ivan_Magoo', - 'fa ce la', - 'drbmbay', - 'MuckyPup', - 'mctext', - 'sillas', - 'ebarn', - 'hoitel', - 'mu0p', - 'scott', - 'Tiesmaki', - 'xx2mu2ch2xx', - 'jubilee77', - 'discod', - 'sherakapod', - 'ibmarco', - 'Lucrezia Borgia', - 'deniedmusic', - 'moleygunn', - 'avclhb', - 'lennoxb', - 'snowwalker', - 'Izzy Loft', - 'juleedet313', - 'jwb-jwb', - 'john galt', - 'growBeard', - 'Jacky64', - '_Korps_', - 'karinasayed', - 'lt_J', - 'pascualladrillo7', - 'greynurse', - 'chrissh', - 'ProgRockRules', - 'jivemusic', - 'm.stoermer2@gmail.com', - 'zetko12', - 'anyanya', - 'blueshound2', - 'mightyIcculus', - 'baldheadedgrl', - 'gwardragonrelic', - 'skweezer', - 'CNTS', - 'link_rae', - 'spitchell', - 'mitzythecat', - 'Oral Enterprises', - 'housemotion2', - 'donricoloco', - 'nir2', - 'stainboybeck', - 'nir3', - 'robalone', - 'ddildovic', - 'roby718', - 'hesnotthemessiah', - 'Khameleon808', - 'bigroby', - 'swimminwitsharks', - 'xena1', - 'greenfirn', - 'anonguy123', - 'Shiro671', - 'LucasKeoro', - 'fuse1002', - 'grala', - 'rhpassos', - 'PopeMike', - 'MrWSick', - 'curtandsheila', - 'SerpienteAzul', - 'twinkler', - 'ringor', - 'justmyname', - 'xdisney', - 'loveisafisheye', - 'Mochrie99', - 'grahambristle', - 'rtjadu', - 'perocoo', - 'mrwhitti', - 'jackBeq', - 'Unfo', - 'discrow', - 'AmadeuJoao', - '_beatroots', - 'LucieBDub', - 'gpnet', - 'chopper32', - 'Impetus Induction', - 'mapenzi', - 'MrFonktrain', - 'campeon', - 'alfdvs', - 'hellinterface', - 'taq666', - 'euRonny', - 'moi ?', - 'FunkyLayla', - 'justajourney', - 'TheRevZell', - 'webetts', - 'deodar2', - 'aetheon', - 'VincentH2', - 'KatieK', - 'SpaceDubDisco', - 'Divine Wind', - 'djgeorgewilliam', - 'the_original', - 'waterday', - 'supertrash', - 'subdeath', - 'mixja', - 'gito66', - 'benny profane', - 'slackwerker', - 'atomsdivided16', - 'ninamallory@rogers.com', - 'o\'bryan', - 'simpim', - 'kraft75', - 'boyce', - 'funkateer45', - 'nadamusicjunkie', - 'JohnS', - 'melomano1960', - 'HAWK399', - 'scienex', - 'cometothesabbat', - 'JaBluz', - 'awas69', - 'djriost', - 'judy.lets.go.for.a.walk', - 'tamok', - 'Jeancopain', - 'shadeaux', - '00-day release', - 'zenvision', - 'jazzeo-10', - 'revengebooty', - 'catmadwoman', - 'Greenman', - 'stayawhile', - 'suhailamjed', - 'ailqas12', - 'IKOPIKE', - 'jimbo60', - 'PracticalMan', - 'Akyaka', - 'foxxy72', - 'sonicsoular', - 'knowledge1129', - 'nick78447', - 'mvns', - 'RetsamTsahg', - 'edgarundsusanne', - 'Zwatte', - 'fabreal', - 'jplaguna', - 'silenageige', - 'dedjr21', - 'zeroboys78', - 'arlucasinc', - 'Shmalistair', - 'DustinW78', - 'BlackBounder', - 'fauxfaux', - 'cambor', - 'gemseeker', - 'paradive', - 'btard', - 'siqbal', - 'tomlayland', - 'jaren80', - 'triforce\'d', - 'bdaddyp', - 'mrsecquo', - 'Taosum', - 'nlbiok', - '891sj51', - 'josema rojo', - '@@@user', - 'mrtrix', - 'hadasul', - 'Solwann', - 'chaos factor', - 'benkenobi', - 'djlooze', - 'joeluft', - 'Eaten_Oedipus', - 'solesneak', - 'greshim', - 'theurso', - 'm2trip', - 'bposenergy@aol.com', - 'Yes! A Bastard!', - 'jamesm34', - 'jaflorian', - 'swrose', - 'pasteitje', - 'kb3grz', - 'rugbyman60', - 'soulridda10000', - 'bas2003', - 'dleone', - 'shiekie', - 'catewern234', - 'LouWeed', - 'fudgiraffe', - 'soulsis1', - 'PoUpA', - 'lalocurto', - 'gabe217', - 'moraesmf', - 'yashu', - 'soundpicnic', - 'schizma', - 'beatfreak79', - 'minipimer', - 'kimch00', - 'DeaDAnDGonE', - 'qst23', - 'PorousHorace', - 'Red-5', - 'lobo500', - 'chrisg02176', - 'BlackGoat138', - '*BELLE\'n\'BLUE*', - 'imdxlr8r', - 'littlefluffyclouds', - 'SammichBoy', - 'TheJunkie', - 'bootsa22', - 'fermi85', - 'Jazz From Hell', - 'WisdomToTheWise', - 'lagattas', - 'schlock', - 'siraly', - 'Khalinore', - 'milobaby', - 'alexsb', - 'PumukliFunClub', - 'naholm', - 'lennn-', - 'ali1234', - 'BoHaG', - 'ambienator', - 'ghalik', - 'nosumdorma', - 'dustedvinyl', - 'w03rts02', - 'FastNBulbous', - 'headphonejack-123', - 'Corvus CZ', - 'begreift23', - 'vickersspencer', - 'CCG', - 'jobbymacbean', - 'xxDeadDisneyxx', - 'careysherman', - 'Tigrou du Rouergue', - 'donttellmama', - 'mixedemotions', - 'vinylust', - 'exitplotter', - '*LeeroyCowPunkTrash*', - 'estoniette', - 'jrufusj', - 'simbi', - 'AArtaud', - 'thinkfloyd85', - 'llev01', - 'planetjunior', - 'DeepHouseNYC', - 'rkfoss', - 'PlintuZz', - 'cliffb', - 'israhim', - 'WeekenderAFC', - 'annoyance', - 'shmoe19', - 'dogbrain', - 'bonequicha', - 'papaqueque', - 'Hightechobo', - 'DJA-100', - 'ceglediguy', - 'cheath', - 'TisketTasket', - 'patiencevice', - 'goettel', - 'futuregibbon', - 'Cardhu2', - 'rogue', - 'SoulmanWOB', - 'shaq', - 'm@lk0vich', - 'soggypee', - 'IRIE CYRUS', - 'chevastian', - 'd[^_^]b', - 'bls0016', - 'Ironwood', - 'tdcc', - 'alexrubio', - 'kryspypuff', - 'Orido', - 'Hygrain', - 'topshelfsounds', - 'agenda85', - 'gurumeditation', - 'Grendel666', - 'humblebee3', - 'shunyata', - 'error32690234', - 'O2cool655', - 'fac013', - 'the.old.ent', - 'cinnabar', - 'Ammon', - 'supergill', - 'Tazanova', - 'raikoff', - 'Snowboard Surge', - 'doc2g', - 'dklik', - 'diggerdeep', - 'colrose', - 'davidrosen2001', - 'Orkan', - 'u.g. krishnamurti', - 'GMN', - 'reVerse', - 'tr826', - 'startoursg24t', - 'Susee', - 'ZooFactory', - 'DreamHouse', - '*stevefrench*', - 'yourbandneedsxylophone', - '3141592638', - 'ontheone', - 'BJBigO', - 'thirdivan', - 'mikeyhighjinks', - 'csp9999', - 'carters', - 'djrjr', - 'crem8', - 'opera_de_nuit', - 'tacobus', - 'gusparof', - 'famousmortimer', - 'joejackson', - 'H\'Daer', - 'DJ_Monkfish', - 'Aspirations', - 'duders25', - 'carbureatordung', - 'Plutonic Love', - 'rpierre', - 'NEone', - 'Makroscope', - 'JLG', - 'kid-sister', - 'jogo_bonito', - 'JKO', - 'fungidelix', - 'ssoak54', - 'slavlab', - 'fashoom', - 's33m3s33', - 'coryhalo', - 'doomjazz', - 'regtone', - 'YurigV', - 'SamsonHB', - 'KMD', - 'trotsky', - 'Chukwudi1994', - 'alexfcjones', - 'jim02', - 'chaunceygardiner', - 'DJ-lucious-flajore', - 'Zohr', - 'djholly', - 'gypsypipeliner', - 'roomx', - 'wisant', - 'WhenLoveFails', - 'yeahhbuzz', - 'Rodrigo', - 'akmuso', - 'gsduncan', - 'f1lby', - 'taxperts1', - 'Proventile', - 'Fogass', - 'kidyang', - 'oneloves', - 'qtrer', - 'UKGAND2STEP', - 'GardenOfForkingPaths', - 'elvis_telecom', - 'sola', - 'davidian', - 'leijsten', - 'imunnen', - 'dorsal', - 'noracat2', - 'Etc', - 'the_joksim', - 'hallmonitor', - 'Locode', - 'bmunch23', - 'hoverproject', - 'analoguedj', - 'Shiwla', - 'lordshine', - 'jim_murple', - 'devant', - 'mantisirl', - 'telestar', - 'catfdkid', - 'alandean30', - 'ba$e_god', - 'Shskabobb', - 'marco565', - 'paquerette', - 'brbttyl', - 'drew33', - 'buddhakip', - 'bubbahbaloeha', - 'dbm_sf', - 'sirlord', - 'cschorno', - 'brotherdro', - 'bobinobobino', - 'swandrie', - 'dougdi', - 'magnum266', - 'stby', - 'derkkrieger', - 'WilliamCaycedo', - 'The_Carpet', - 'swee_pee', - 'Lost Master', - 'S.O.S.A.', - 'softlord', - 'windycity', - 'khamsun', - 'dubcoffman', - 'slobe', - 'ezirider', - 'LINOSQUARE', - 'pepefouz', - 'omega_21', - 'aeolus2', - 'therewillbesnacks', - 'Tuffa', - 'cheesy_rice', - 'psgabriel', - 'Paradise Found', - 'I Got What You Need', - 'TARBYCHARK', - 'Xphysics69', - 'ways_out', - 'Hitherto', - 'olivergrund', - 'trim_that_tash', - 'prophet840', - 'mananman', - 'kingtobbe', - 'ztarpagos', - 'musicmatt52', - '02musickevin', - 'macscully', - 'apollo448', - 'krezmuzik', - 'theycutup', - 'titlis', - 'pacebreaker', - 'Ruba45', - 'MC Pingu', - 'EarInfection', - 'special23', - 'thirtythree', - 'TJT74', - 'seankmchenry', - 'mattphrench', - 'rollinsolo', - 'DJ SENSI', - 'Beno von Archimboldi', - 'takamba', - 'im2quiet', - 'MaunaLoa', - 'lan04', - 'someone somewhere', - 'esfera04', - 'btswrkng', - 'The Tax man', - 'zwinksta', - 'ilovewhat', - 'B@@mB@@m', - 'louinkenny', - 'Roger Ball', - 'redball729@gmail.com', - 'presario25', - 'lightfinger', - 'poohsticks', - 'dinamo2222', - 'OzRambler', - 'skippy_dc', - 'ol\'skoolfool', - 'rickspencer', - 'Fredy', - 'GadgetMan', - 'eura_b', - 'davidrd_123', - 'MarkMiwurdz', - 'lare96', - 'audiophilepj', - 'hind sight', - 'dj_george_william', - 'sista jedi (Jennifer Davis)', - 'SplashT', - 'HOLLOWTRVCE', - 'papertiger', - 'greyfus', - 'dfs_music', - 'jivefresh', - 'pannythief', - 'gowings', - 'svelte', - 'xpk11', - 'quitty', - 'mineciarz', - 'phacopscassi', - 'neoraga', - 'julianahuxtable', - 'Elasticboy', - 'Lord Noire', - 'blushresponse', - 'mcbuth', - 'garynoakes@blueyonder.co.uk', - '<<< Chad >>>', - 'ryeadams', - 'shipping news', - 'mixing', - 'curbmusic3', - 'melechyoav', - 'kutaratuk', - 'outofsync', - 'snacknasty', - 'DarkyNoise', - 'joshwa4444', - 'panoptikon', - 'gazefuzzy', - 'notthateasy', - 'iluzz', - 'altobelli', - 'ckpsjp', - 'rolllnsolo', - 'the_robot_is_your_friend', - 'dawnofthedead', - 'wooster', - 'marsas333', - 'rramjett577', - 'Peter North', - 'Euphonic', - 'zampano2004', - 'housefrau', - 'justfunk', - 'orangetag', - 'jkgfu', - 'ROADRUNNER4', - 'donjuan', - 'Bribaba', - 'daviesfj', - 'Zefrem23', - 'kamaraadski', - 'VincentH', - 'achron', - 'illdub', - 'OKIDOKI-4U', - 'willem33', - 'Lopez skill', - 'nowheregirlnd', - 'hitjager', - 'nularula', - 'The_Unforgiven', - 'jongoodman783', - 'afonsof', - 'mugic', - 'KIDrorschach', - 'JaZzY', - 'astral_firefly', - 'field_grave', - 'Jaramo 419', - 'rgarc2000', - 'bisquitodoom', - 'rgarciad', - 'zbydx', - 'wode', - 'portis*', - 'OldDog', - 'Matcy_P', - 't0mekk', - 'chicago95', - 'thunk', - 'progressive slewt', - 'nrj2k', - 'elhim', - 'priitamg', - 'psychopants', - 'Sheffieldie', - 'djsage778', - 'viva_la_vita', - 'Lloyd', - 'spaceface', - 'potele', - 'nightgoat74', - 'bigbag', - 'thebeekeeper', - 'happy gilmore', - 'harry19722', - 'mysticworks', - 'albeckley73', - 'RICKJAMES', - 'ginatonica', - 'bujoneil', - 'wbutterworth', - 'FloydMorrison', - 'pearlclutcher', - 'hans liefhebber', - 'sohrab.rd', - 'NeilJT', - 'pegger67', - 'mariopo59', - 'priory of ions', - 'diavolino', - 'sonjablue9', - 'Frisian', - 'castrationfear', - 'Shokyy', - 'itk168', - 'zart', - 'BondRm', - 'Groovin You', - 'informavore', - 'aprusso', - 'andrez', - 'lasertooth', - 'ggoboy', - 'sobblade', - 'orbscure', - 'corbyem52', - 'm2kinho', - 'jaydee76', - 'belenus', - 'djjonnyp', - 'pepitopea', - 'mikeajblack', - 'n2music', - '3fran6sou', - 'cvizz', - 'edgar1', - 'scrimshander', - 'asciimov', - 'kerry malice', - 'mrhaha', - 'moveme', - 'nippezfunk', - 'Mister335', - 'montrealpunk', - 'spinsparx', - 'nvrvgv303', - 'kouri45', - 'bassg', - 'ellybee', - 'bnakbak', - 'brownsugarDTD', - 'BillyWalnuts', - 'ketwoc', - 'digital_self', - 'bEYOND20K14', - 'r0b0c0p', - 'libralady', - 'bdid', - 'necs222', - 'huangguoxiong', - 'DJLinus', - 'Anonymous666NL', - 'robbinmco', - 'johnvaleri' ], - _message: - Message { - name: 'privileged users', - _cursor: 17655, - _buffers: - Buffers { - buffers: - [ , - , - , - , - ], - length: 17655 } } } -nslsk> \ No newline at end of file