(CommandList
  children: [
    (SimpleCommand
      words: [{(git)} {(log)} {(HEAD) (Lit_Tilde '~') (..HEAD)}]
      redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(last-commit)} spids:[19])]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(grep)} {(-qE)} {(SQ <'\\[ci skip\\]|\\[skip ci\\]'>)} {(last-commit)})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(cat)} {(last-commit)})
            (C {(echo)})
            (C {(echo)} {(DQ ('Build skipped as requested in the last commit.'))})
            (C {(touch)} {(ci-skip)})
            (C {(exit)} {(0)})
          ]
          spids: [-1 37]
        )
      ]
      spids: [-1 64]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(Lit_Other '[')} 
                  {
                    (DQ 
                      (BracedVarSub
                        token: <VSub_Name CI>
                        suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(SQ )})
                        spids: [72 75]
                      )
                    )
                  } {(Lit_Other '=') (Lit_Other '=')} {(true)} {(Lit_Other ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} 
                          {
                            (DQ 
                              (BracedVarSub
                                token: <VSub_Name SEMAPHORE>
                                suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(SQ )})
                                spids: [99 102]
                              )
                            )
                          } {(Lit_Other '=') (Lit_Other '=')} {(true)} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (AndOr
                      children: [(C {(sudo)} {(apt-get)} {(update)} {(-qq)}) (C {(true)})]
                      op_id: Op_DPipe
                    )
                    (C {(sudo)} {(apt-get)} {(install)} {(-y)} {(libacl1-dev)} {(bc)} 
                      {(libsystemd-journal-dev)}
                    )
                    (C {(sudo)} {(add-apt-repository)} {(--yes)} 
                      {(ppa) (Lit_Other ':') (pitti/systemd-semaphore)}
                    )
                    (AndOr
                      children: [(C {(sudo)} {(apt-get)} {(update)} {(-qq)}) (C {(true)})]
                      op_id: Op_DPipe
                    )
                    (C {(sudo)} {(apt-get)} {(install)} {(-y)} {(libmount-dev)} {(libmount1)})
                    (C {(sudo)} {(add-apt-repository)} {(ppa) (Lit_Other ':') (ubuntu-toolchain-r/test)} 
                      {(-y)}
                    )
                    (C {(sudo)} {(apt-get)} {(update)} {(-qq)})
                    (C {(sudo)} {(apt-get)} {(install)} {(gcc-5)} {(gcc-5-base)} {(libgcc-5-dev)} 
                      {(g) (Lit_Other '+') (Lit_Other '+') (-5)} {(libstdc) (Lit_Other '+') (Lit_Other '+') (-5-dev)} {(libseccomp-dev)} {(-y)} {(-qq)}
                    )
                    (C {(sudo)} {(update-alternatives)} {(--remove-all)} {(gcc)})
                    (C {(sudo)} {(update-alternatives)} {(--install)} {(/usr/bin/gcc)} {(gcc)} 
                      {(/usr/bin/gcc-5)} {(20)}
                    )
                    (C {(sudo)} {(update-alternatives)} {(--install)} 
                      {(/usr/bin/g) (Lit_Other '+') (Lit_Other '+')} {(g) (Lit_Other '+') (Lit_Other '+')} {(/usr/bin/g) (Lit_Other '+') (Lit_Other '+') (-5)} {(20)}
                    )
                  ]
                  spids: [-1 114]
                )
              ]
              spids: [-1 317]
            )
          ]
          spids: [-1 87]
        )
      ]
      spids: [-1 319]
    )
  ]
)