docs: function interpolate(table, skey, sval, tkey) {
  	var range = lookup(table, skey, sval);
  
  	// Note: the lookup table ALWAYS contains at least 2 items (min and max)
  	var prev = !range.lo ? table[0] : !range.hi ? table[table.length - 2] : range.lo;
  	var next = !range.lo ? table[1] : !range.hi ? table[table.length - 1] : range.hi;
  
  	var span = next[skey] - prev[skey];
  	var ratio = span ? (sval - prev[skey]) / span : 0;
  	var offset = (next[tkey] - prev[tkey]) * ratio;
  
  	return prev[tkey] + offset;
  }