result.push(pick.concat(x)); 
result.push(pick.concat(x)); 
  function combo(list, size) {    if (size == 0 || !list.length)                      // order doesn't matter      return [list.slice(0, 0)];                        // xyz == yzx    var result = [];    for (var i = 0, n = (list.length - size) + 1; i < n; i++) {      // iff enough left      var pick = list.slice(i, i+1);      var rest = list.slice(i+1);                       // drop [:i] part      for each (var x in combo(rest, size - 1))                 result.push(pick.concat(x));    }    return result;  }
5459	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/5459/3703c3c05f398a63e55992f7687ef65273b26d6a/regress-350531.js/clean/js/tests/js1_5/extensions/regress-350531.js