les.duration);
      context.globalAlpha = 1 - this.age / settings.particles.duration;
      context.drawImage(image, this.position.x - size / 2, this.position.y - size / 2, size, size);
    };
    return Particle;
  })();
  /*

  * ParticlePool class

  */
  var ParticlePool = (function() {
    var particles,
            firstActive = 0,
            firstFree = 0,
            duration = settings.particles.duration;
    function ParticlePool(length) {
// create and populate particle pool
 