add remove dup
add swap in pairs