rem: this.handleEvent = function(evt) { if (!pile.dragCheck) return; var tgt = evt.target; var e = tgt; var p = e.parentNode; while (p && (p != pile.g)) { e = p; p = e.parentNode; }  if (!p) return; var c, i; var num = pile.cards.length; for (i=num-1; i>=0; i--) { c = pile.cards[i]; if (e == c.elem) break; c = null; } if (!c) return;  var g = pile.dragCheck(pile, c, i); if (!g) return; var cards = pile.cards.splice(i, num-i);  new CardMoveManager(g, this.pile, cards, evt.clientX, evt.clientY); } 
context: function PileMouseDownHandler(pile) {  this.pile = pile;  this.handleEvent = function(evt) {    if (!pile.dragCheck) return;    var tgt = evt.target;    var e = tgt;    var p = e.parentNode;    while (p && (p != pile.g)) {      e = p;      p = e.parentNode;    }    if (!p) return;    var c, i;    var num = pile.cards.length;    for (i=num-1; i>=0; i--) {      c = pile.cards[i];      if (e == c.elem)        break;      c = null;    }    if (!c) return;        var g = pile.dragCheck(pile, c, i);    if (!g) return;    var cards = pile.cards.splice(i, num-i);    new CardMoveManager(g, this.pile, cards,                         evt.clientX, evt.clientY);  }}
meta: 1407	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/1407/2c46850987c1b7c044d71489fa0fa367c5fa768a/pile.js/buggy/samples/solitaire/script/pile.js