cleanup step3
updated to do tags here
last
remove extra
no monads yet
add tags into 3