with Collision detection