redo collision
finally works
merge