(command.CommandList
  children: [
    (C {<.>} {<library.sh>})
    (C {<initializeANSI>})
    (C {<echon>} {(DQ <'First off, do you have echo in your path? (1=yes, 2=no) '>)})
    (C {<read>} {<answer>})
    (command.WhileUntil
      keyword: <Id.KW_While while>
      cond: 
        (condition.Shell
          commands: [
            (command.Sentence
              child: 
                (command.Pipeline
                  children: [(C {<validint>} {($ Id.VSub_DollarName '$answer')} {<1>} {<2>})]
                  negated: T
                )
              terminator: <Id.Op_Semi _>
            )
          ]
        )
      body: 
        (command.DoGroup
          children: [
            (C {<echon>} 
              {
                (DQ (${ Id.VSub_Name boldon) <'Try again'> (${ Id.VSub_Name boldoff) 
                  <'. Do you have echo '>
                )
              }
            )
            (C {<echon>} {(DQ <'in your path? (1=yes, 2=no) '>)})
            (C {<read>} {<answer>})
          ]
        )
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (command.Pipeline
                      children: [(C {<checkForCmdInPath>} {(DQ <echo>)})]
                      negated: T
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [(C {<echo>} {(DQ <'Nope, can\'t find the echo command.'>)})]
          spids: [82 94]
        )
      ]
      else_action: [(C {<echo>} {(DQ <'The echo command is in the PATH.'>)})]
    )
    (C {<echo>} {(DQ )})
    (C {<echon>} {(DQ <'Enter a year you think might be a leap year: '>)})
    (C {<read>} {<year>})
    (command.WhileUntil
      keyword: <Id.KW_While while>
      cond: 
        (condition.Shell
          commands: [
            (command.Sentence
              child: 
                (command.Pipeline
                  children: [(C {<validint>} {($ Id.VSub_DollarName '$year')} {<1>} {<9999>})]
                  negated: T
                )
              terminator: <Id.Op_Semi _>
            )
          ]
        )
      body: 
        (command.DoGroup
          children: [
            (C {<echon>} 
              {
                (DQ <'Please enter a year in the '> (${ Id.VSub_Name boldon) <correct> 
                  (${ Id.VSub_Name boldoff) <' format: '>
                )
              }
            )
            (C {<read>} {<year>})
          ]
        )
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: (C {<isLeapYear>} {($ Id.VSub_DollarName '$year')})
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (C {<echo>} 
              {
                (DQ (${ Id.VSub_Name greenf) <'You\'re right!  '> ($ Id.VSub_DollarName '$year') 
                  <' was a leap year.'> (${ Id.VSub_Name reset)
                )
              }
            )
          ]
          spids: [179 187]
        )
      ]
      else_action: [
        (C {<echo>} 
          {(DQ (${ Id.VSub_Name redf) <'Nope, that\'s not a leap year.'> (${ Id.VSub_Name reset))}
        )
      ]
    )
    (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>})
  ]
)