old_contents: 'use strict';
  var numberIsNan = require('number-is-nan');
  
  module.exports = function (num) {
  	if (typeof num !== 'number' || numberIsNan(num)) {
  		throw new TypeError('Expected a number, got ' + typeof num);
  	}
  
  	var exponent;
  	var unit;
  	var neg = num < 0;
  	var units = ['B', 'kB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
  
  	if (neg) {
  		num = -num;
  	}
  
  	if (num < 1) {
  		return (neg ? '-' : '') + num + ' B';
  	}
  
  	exponent = Math.min(Math.floor(Math.log(num) / Math.log(1000)), units.length - 1);
  	num = Number((num / Math.pow(1000, exponent)).toFixed(2));
  	unit = units[exponent];
  
  	return (neg ? '-' : '') + num + ' ' + unit;
  };
  
new_contents: 'use strict';
  var numberIsNan = require('number-is-nan');
  
  module.exports = function (num) {
  	if (typeof num !== 'number' || numberIsNan(num)) {
  		throw new TypeError('Expected a number, got ' + typeof num);
  	}
  
  	var exponent;
  	var unit;
  	var neg = num < 0;
  	var units = ['B', 'kB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
  
  	if (neg) {
  		num = -num;
  	}
  
  	if (num < 1) {
  		return (neg ? '-' : '') + num + ' B';
  	}
  
  	exponent = Math.min(Math.floor(Math.log(num) / Math.log(1000)), units.length - 1);
  	num = Number((num / Math.pow(1000, exponent)).toPrecision(3));
  	unit = units[exponent];
  
  	return (neg ? '-' : '') + num + ' ' + unit;
  };
  
subject: Use Number.toPrecision(3) instead of Number.toFixed(2) (#20)