rem: if(this.stock && !this.waste && !this.stockDealTargets) this.stockDealTargets = this.stacks; 
add: if(this.stock && !this.waste && !this.stockDealTargets) this.stockDealTargets = this.piles; 
context:   initialise: function() {    this.initialised = true;    if(!this.mouseHandler) this.mouseHandler = MouseHandlers[this.mouseHandling];    this.initXulElement();    this.initPiles();    // if layout from another game has been cloned we need to throw away any cards in it    for(var i in this.allstacks) {      var s = this.allstacks[i];      while(s.hasChildNodes()) s.removeChild(s.lastChild);    }    this.init(); // game specific stuff    // see comments above    if(typeof this.cards == "number") this.cards = getDecks(this.cards);    // if the game doesn't specify something    // xxx still required for init'ing stock.counter, but not for anything else!    if(this.stock && !this.waste && !this.stockDealTargets) this.stockDealTargets = this.stacks;    // see rules.js    // if any of various members that should be functions are instead strings then substitute appropriate function    var rules = ["canMoveCard","canMoveToPile","canMoveToFoundation","dealFromStock","getLowestMovableCard"];    for(var r in rules) {      r = rules[r];      if(typeof this[r] == "string") this[r] = Rules[r][this[r]];    }  },
meta: 3385	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/3385/15f3df693ddf02fb9ee6a2662189220868368b23/cardgame.js/buggy/cardgame.js