A working swap.clj.