separated out the 'branching' section