rem: if(!this.options.sync) if(this.options.delay > 0) { this.timeout = setTimeout(this.loop.bind(this), this.options.delay*1000); } else { this.loop(); } 
add: if(!this.options.sync) Effect.Queue.add(this); 
context:   start: function(options) {    this.setOptions(options || {});    this.currentFrame = 0;    this.startOn      = new Date().getTime() + (this.options.delay*1000);    this.finishOn     = this.startOn + (this.options.duration*1000);    if(this.options.beforeStart) this.options.beforeStart(this);    if(!this.options.sync)       if(this.options.delay > 0) {        this.timeout = setTimeout(this.loop.bind(this), this.options.delay*1000);      } else {        this.loop();      }  },
meta: 4973	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/4973/cd20286092d311391869aa6031bdd86b5e047d0f/effects.js/clean/src/effects.js