implemented edge edge collision response