(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:tempfile)
          op: Equal
          rhs: {(DQ (/tmp/available.) ($ VSub_Dollar '$$'))}
          spids: [11]
        )
      ]
      spids: [11]
    )
    (C {(trap)} {(DQ ('rm -f ') ($ VSub_Name '$tempfile'))} {(EXIT)})
    (SimpleCommand
      words: [{(cat)}]
      redirects: [
        (HereDoc
          op_id: Redir_DLess
          fd: -1
          body: 
            {('    { sum += $4 }\n') ('END { mb = sum / 1024\n') ('      gb = mb / 1024\n') 
              ('      printf "%.0f MB (%.2fGB) of available disk space\\n", mb, gb\n') ('    }\n')
            }
          do_expansion: False
          here_end: EOF
          was_filled: True
          spids: [30]
        )
        (Redir op_id:Redir_Great fd:-1 arg_word:{($ VSub_Name '$tempfile')} spids:[36])
      ]
    )
    (Pipeline
      children: [(C {(df)} {(-k)}) (C {(awk)} {(-f)} {($ VSub_Name '$tempfile')})]
      negated: False
    )
    (C {(exit)} {(0)})
  ]
)