reengineered collisionhandler