:If Statement

 
       |
       :If bexp
       |
       .-------.
       |       |
       |       andor
       |       |
       |<------'
       |
       code
       |
       |<------------------------------.
       |                               |
       .-------.-------.               |
       |       |       |               |
       |       :Else   :ElseIf bexp    |
       |       |       |               |
       |       |       .-------.       |
       |       |       |       |       |
       |       |       |       andor   |
       |       |       |       |       |
       |       |       |<------'       |
       |       |       |               |
       |       code    code            |
       |       |       |               |
       |<------'       `---------------'
       |
       :End[If]
       |