added some functionality to particles