redo startup logic