added collisions and rotations