this branching seems strange still.