redo of the fixes