add user timeout and improved collision checking