var util = require('util')
var Transform = require('stream').Transform
util.inherits(Concat, Transform)

function Concat(cb) {
  Transform.call(this)
  this.cb = cb
  this.buffers = []
}

Concat.prototype._transform = function(chunk, encoding, done) {
  this.buffers.push(chunk)
  this.push(chunk)
  done()
}

Concat.prototype._flush = function(done) {
  this.cb(this.buffers)
  done()
}

process.stdin.pipe(new Concat(log))

function log(buffs) {
  console.log(Buffer.concat(buffs))
}

@@ -1,263 +1,134 @@
 var 
-util = require('util')%0Avar Transform = require('stream').Transform%0Autil.inherits(Concat, Transform)%0A%0Afunction Concat(cb) %7B%0A  Transform.call(this)%0A  this.cb = cb%0A  this.buffers = %5B%5D%0A%7D%0A%0AConcat.prototype._transform = function(chunk, encoding, done
+buffers = %5B%5D;%0A%0Aprocess.stdin.on('readable', function(chunk) %7B%0A  var chunk = process.stdin.read();%0A  if (chunk !== null
 ) %7B%0A  
-this.
+  
 buff
@@ -146,174 +146,52 @@
 unk)
+;
 %0A  
-this.push(chunk)%0A  done()%0A%7D%0A%0AConcat.prototype._flush = function(done) %7B%0A  this.cb(this.buffers)%0A  done()%0A%7D%0A%0Aprocess.stdin.pipe(new Concat(log))%0A%0Afunction log(buffs
+%7D%0A%7D);%0A%0Aprocess.stdin.on('end', function(
 ) %7B%0A
@@ -226,10 +226,15 @@
 buff
+er
 s))
+;
 %0A%7D
+);
 %0A

make solution more apparent to the beginner. this isn't stream adventure