rem: var ds = []; const ps = this.piles, num = ps.length; for(var i = 0; i != num; i++) { var p = ps[i]; if(p.hasCards && p.mayAddCard(card)) ds.push(p); } 
add: const src = card.pile; const ps = Array.concat(this.piles, this.foundations); const ds = [p for each(p in this.piles) if(p != src && p.mayAddCard(card))]; 
context:   addHintsFor: function(card) {    if(!card) return;    var ds = [];    const ps = this.piles, num = ps.length;    for(var i = 0; i != num; i++) {      var p = ps[i];      if(p.hasCards && p.mayAddCard(card)) ds.push(p);    }    if(ds.length) this.addHints(card, ds);    this.addFoundationHintsFor(card);  },
meta: 3385	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/3385/e47caa955575dff800723e6b52a9b3557ed7b425/lib-game.js/clean/code/lib-game.js