add swap! to mutation section