(command.CommandList
  children: [
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Id.Lit_LBracket '[')} {($ Id.VSub_Pound '$#')} {(-ne)} {(1)} {(Id.Lit_RBracket ']')})
              terminator: (Token id:Id.Op_Semi val:';' span_id:23)
            )
          ]
          action: [
            (command.Simple
              words: [
                {(echo)}
                {
                  (DQ ('Usage: ') 
                    (command_sub
                      left_token: (Token id:Id.Left_Backtick val:'`' span_id:32)
                      command_list: 
                        (command.CommandList
                          children: [(C {(basename)} {($ Id.VSub_Number '$0')})]
                        )
                    ) (' path')
                  )
                }
              ]
              redirects: [
                (redir.Redir
                  op: (Token id:Id.Redir_GreatAnd val:'>&' span_id:42)
                  fd: -1
                  arg_word: {(2)}
                )
              ]
            )
            (command.ControlFlow
              token: (Token id:Id.ControlFlow_Exit val:exit span_id:46)
              arg_word: {(1)}
            )
          ]
          spids: [12 25]
        )
      ]
    )
    (command.Pipeline
      children: [
        (C {(stat)} {($ Id.VSub_Number '$1')})
        (C {(sed)} {(-n)} 
          {(SQ (Token id:Id.Lit_Chars val:'s/^Access: (\\([0-9]\\{1,\\}\\).*/\\1/p' span_id:64))}
        )
      ]
      negated: F
    )
  ]
)