add swap

add swap function
fix conflict