backward substitution completed