collider refactor