commented and cleaned up
commented