fixed and cleaned