more code cleanup!
better collision