polish active state, refactor, fill in all the gaps
body swipe