int (final int step) { ModuleWizardStep previousStep = null; final StepSequence stepSequence = getSequence(); if (stepSequence != null) { final ModuleWizardStep current = mySteps.get(step); if (isNotFirstSubStepInStep(current)) { return step; } previousStep = stepSequence.getPreviousStep(current); while (previousStep != null && !previousStep.isStepVisible()) { previousStep = stepSequence.getPreviousStep(previousStep); } } return previousStep == null ? 0 : mySteps.indexOf(previousStep); }