(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:dirname)
          op: assign_op.Equal
          rhs: 
            {
              (braced_var_sub
                token: <Id.VSub_Name BASH_SOURCE>
                suffix_op: 
                  (suffix_op.Unary
                    tok: <Id.VOp1_Percent '%'>
                    arg_word: {<Id.Lit_Slash '/'> <Id.Lit_Other '*'>}
                  )
              )
            }
          spids: [12]
        )
      ]
    )
    (C {<source>} {(${ Id.VSub_Name dirname) <'/library.sh'>})
    (C {<echo>} {(SQ <'script line 7'>)})
    (C {<library-function>})
    (C {<echo>} {(SQ <'script line 11'>)})
  ]
)