text: 
  
  function fastCopy(arr, i) {
      var a = [], len, j;
      for (j = 0, i = i || 0, len = arr.length; i < len; j++, i++) {
          a[j] = arr[i];
      }
      return a;
  }
  
  function fastCatSkipNulls(arr1, arr2) {
      var a = [], i, len, j;
      for (i = 0, len = arr1.length; i < len; i++) {
          a[i] = arr1[i];
      }
      for (j = 0, len = arr2.length; j < len; j++) {
          if (arr2[j] !== null) {
              a[i++] = arr2[j];
          }
      }
      return a;
  }
  
  function fastCat(arr1, arr2) {
      var a = [], i, len, j;
      for (i = 0, len = arr1.length; i < len; i++) {
          a[i] = arr1[i];
      }
      for (j = 0, len = arr2.length; j < len; j++) {
          a[i++] = arr2[j];
      }
      return a;
  }
  
  
  
  module.exports = {
      fastCat: fastCat,
      fastCatSkipNulls: fastCatSkipNulls,
      fastCopy: fastCopy
  };
  