The Largest of the marbles passes over all 3 If functions as shown bellow.
i have written the code alongside in order to make it easier to follow.
i have written the code alongside in order to make it easier to follow.

The first image is simply the placement of the marble upon the ramp.
If (marble < gap) {
marble falls down and follows different track}
marble falls down and follows different track}
Else (marble > gap) {continues on down pathway;         }
If (marble < gap) {
marble falls down and follows different track}
marble falls down and follows different track}
Else (marble > gap) {continues on down pathway;         }
If (marble < gap) {
marble falls down and follows different track}
marble falls down and follows different track}
Else (marble > gap) {continues on down pathway;         }
  If (marble < gap) {
marble falls down and follows different track}
marble falls down and follows different track}
Else (marble > gap) {continues on down pathway;         }
Here is the combinations for the next marble.
....  
The marble being let go. 
If (marble < gap) {
marble falls down and follows different track}
marble falls down and follows different track}
Else (marble > gap) {continues on down pathway;         }
If (marble < gap) {
marble falls down and follows different track}
marble falls down and follows different track}
Else (marble > gap) {continues on down pathway;         }
If (marble < gap) {     marble falls down and follows different track}
Else (marble > gap) {continues on down pathway;
}
}
3rd marble combination..
Marble being let go 
If (marble < gap) {
marble falls down and follows different track}
marble falls down and follows different track}
Else (marble > gap) {continues on down pathway;         }
If (marble < gap) {     marble falls down and follows different track}
Else (marble > gap) {continues on down pathway;
}
}
4th marble combination..
Marble being let go 
If (marble < gap) {     marble falls down and follows different track}
Else (marble > gap) {continues on down pathway;
}
}
 










