try_swap