add swap-state