 var position = (typeof effect.options.queue == 'string') ? 
 var position = (typeof effect.options.queue == 'string') ? 
  add: function(effect) {    var timestamp = new Date().getTime();        var position = (typeof effect.options.queue == 'string') ?       effect.options.queue : effect.options.queue.position;        switch(position) {      case 'front':        // move unstarted effects after this effect          this.effects.findAll(function(e){ return e.state=='idle' }).each( function(e) {            e.startOn  += effect.finishOn;            e.finishOn += effect.finishOn;          });        break;      case 'end':        // start effect after last queued effect has finished        timestamp = this.effects.pluck('finishOn').max() || timestamp;        break;    }        effect.startOn  += timestamp;    effect.finishOn += timestamp;    if(!effect.options.queue.limit || (this.effects.length < effect.options.queue.limit))      this.effects.push(effect);        if(!this.interval)       this.interval = setInterval(this.loop.bind(this), 40);  },
3727	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/3727/f26de598115946c975d7d8c1f9a3c34da03381fa/effects.js/buggy/gallery/js/cropper/effects.js