use snake.u/v, also document the api