rem: this.transforms = this.options.style.parseStyle().map(function(property){ var originalValue = this.element.getStyle(property[0]); 
add: this.transforms = this.style.map(function(pair){ var property = pair[0].underscore().dasherize(), value = pair[1], unit = null;  if(value.parseColor('#zzzzzz') != '#zzzzzz') { value = value.parseColor(); unit  = 'color'; } else if(property == 'opacity') { value = parseFloat(value); if(/MSIE/.test(navigator.userAgent) && !window.opera && (!this.element.currentStyle.hasLayout)) this.element.setStyle({zoom: 1}); } else if(Element.CSS_LENGTH.test(value)) var components = value.match(/^([\+\-]?[0-9\.]+)(.*)$/), value = parseFloat(components[1]), unit = (components.length == 3) ? components[2] : null;  var originalValue = this.element.getStyle(property); 
context:   setup: function(){    function parseColor(color){      if(!color || ['rgba(0, 0, 0, 0)','transparent'].include(color)) color = '#ffffff';      color = color.parseColor();      return $R(0,2).map(function(i){        return parseInt( color.slice(i*2+1,i*2+3), 16 )       });    }    this.transforms = this.options.style.parseStyle().map(function(property){      var originalValue = this.element.getStyle(property[0]);      return $H({         style: property[0],         originalValue: property[1].unit=='color' ?           parseColor(originalValue) : parseFloat(originalValue || 0),         targetValue: property[1].unit=='color' ?           parseColor(property[1].value) : property[1].value,        unit: property[1].unit      });    }.bind(this)).reject(function(transform){      return (        (transform.originalValue == transform.targetValue) ||        (          transform.unit != 'color' &&          (isNaN(transform.originalValue) || isNaN(transform.targetValue))        )      )    });  },
meta: 7994	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/7994/2ee7ad789e4782f0bfb6757c6989a3000962b116/effects.js/clean/src/effects.js