rem: word.state = Word.REQUESTING; 
add: wordInfo[word.text.hash()].state = Word.REQUESTING; 
context:   updateHaiku: function() {    var wordInfo = this.wordInfo;    var oldWordHash = $H();    textToWords(this.lastHaikuText, wordInfo).each(function(word){        oldWordHash[word.text.hash()] = word;    });    var newWordArray = textToWords($F(this.textArea), this.wordInfo);    var wordSet = "";    newWordArray.findAll(function(word){        return wordInfo[word.text.hash()] != undefined &&             wordInfo[word.text.hash()].state == Word.NEW;    }).each(function(word){        wordSet += (wordSet != "" ? "-" : "") + word.encoded();        word.state = Word.REQUESTING;    });        if (wordSet != "") {      new Ajax.Request("/syllables/" + wordSet + ".json", {          method: "get",          onComplete: this.updateWordCacheHash.bind(this)});    }    // Find the changed words from last cycle    newWordArray.each(function(word){      if (oldWordHash[word.text.hash()] != undefined && wordInfo[word.text.hash()] == undefined ){        wordInfo[word.text.hash()] = word;      }    });        // render the haiku    newHaiku = new Haiku($F(this.textArea), wordInfo);    $(this.previewElement).innerHTML = newHaiku.toHTML();      document.getElementsByClassName(Word.RESPONDED, $(this.previewElement)).each(function(element) {      new Effect.Highlight(element, {startcolor: '#77db08'});    });        wordInfo.values().each(function(word){        if (word.state == Word.RESPONDED){          word.state = Word.COMPLETE;        }    });    this.lastHaikuText = $F(this.textArea);  }
meta: 8786	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/8786/fd07b4a2899231ff903e7b6567672a98b24360e8/haiku.js/clean/ruby/public/javascripts/haiku.js