revise 4
last few problems clean up