rem: destination[property] = cache.findOrStore(value); 
add: if (!onlyIfAbsent || !(property in destination)) destination[property] = cache.findOrStore(value); 
context: Element.addMethods = function(methods) {  Object.extend(Element.Methods, methods || {});  function copy(methods, destination) {    var cache = Element.extend.cache;    for (var property in methods) {      var value = methods[property];      destination[property] = cache.findOrStore(value);    }  }  if (typeof HTMLElement != 'undefined') {    copy(Element.Methods, HTMLElement.prototype);    copy(Form.Methods, HTMLFormElement.prototype);    [HTMLInputElement, HTMLTextAreaElement, HTMLSelectElement].each(function(klass) {      copy(Form.Element.Methods, klass.prototype);    });    _nativeExtensions = true;  }}
meta: 4707	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/4707/50c3492c4c3c825dbd3401e134a19ed46799c456/prototype.js/clean/www/resources/prototype/prototype.js