Added AbstractParticleGenerator