When the next expected screen is not well defined (it may be one of many screens based on user inputs for example) we need
to define branches. Branches give you the ability to choose among more than one screen to be the next one. This choice is
based on a set of conditions that you define according to your needs and this we call branching conditions.
When a navigation comes across a branch, it looks at the first screen in the branch that we call the branch screen. If this
branch screen matches the currently displayed screen then the navigation enters this branch. If not, then it looks for the
next matching screen either in the subsequent branch navigation or in the main track.
When the current screen is the last screen of a branch, the next expected screen will be the first screen that follows the
branch - it may be the first screen of the next branch or the first screen in the main track.
Important
If more than one branch has a valid condition (first screen’s definition) that matches the displayed screen then ONLY the
first branch will be visited.