(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:awkscript)
          op: assign_op.Equal
          rhs: {(DQ <'/tmp/newdf.'> ($ Id.VSub_Dollar '$$'))}
          spids: [8]
        )
      ]
    )
    (C {<trap>} {(DQ <'rm -f '> ($ Id.VSub_DollarName '$awkscript'))} {<EXIT>})
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {(SQ <EOF>)}
              here_end_span_id: 62
              stdin_parts: [
                <'function showunit(size)\n'>
                <'{ mb = size / 1024; prettymb=(int(mb * 100)) / 100;\n'>
                <'  gb = mb / 1024; prettygb=(int(gb * 100)) / 100;\n'>
                <'\n'>
                <'  if ( substr(size,1,1) !~ "[0-9]" ||\n'>
                <'       substr(size,2,1) !~ "[0-9]" ) { return size }\n'>
                <'  else if ( mb < 1) { return size "K" }\n'>
                <'  else if ( gb < 1) { return prettymb "M" }\n'>
                <'  else              { return prettygb "G" }\n'>
                <'}\n'>
                <'\n'>
                <'BEGIN { \n'>
                <'  printf "%-37s %10s %7s %7s %8s  %-s\\n",\n'>
                <'        "Filesystem", "Size", "Used", "Avail", "Capacity", "Mounted"\n'>
                <'}\n'>
                <'\n'>
                <'!/Filesystem/ {\n'>
                <'\n'>
                <'  size=showunit($2); \n'>
                <'  used=showunit($3); \n'>
                <'  avail=showunit($4);\n'>
                <'\n'>
                <'  printf "%-37s %10s %7s %7s %8s  %-s\\n",\n'>
                <'        $1, size, used, avail, $5, $6\n'>
                <'}\n'>
              ]
            )
        )
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$awkscript')}
        )
      ]
      do_fork: T
    )
    (command.Pipeline
      children: [(C {<df>} {<-k>}) (C {<awk>} {<-f>} {($ Id.VSub_DollarName '$awkscript')})]
      negated: F
    )
    (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>})
  ]
)