(CommandList
  children: [
    (FuncDef
      name: plugin_remove_command
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:plugin_name)
                  op: Equal
                  rhs: {($ VSub_Number "$1")}
                  spids: [9]
                )
              ]
              spids: [7]
            )
            (C {(check_if_plugin_exists)} {(DQ ($ VSub_Name "$plugin_name"))})
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:plugin_path) op:Equal spids:[23])]
              spids: [21]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:plugin_path)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [(C {(get_plugin_path)} {(DQ ($ VSub_Name "$plugin_name"))})]
                          )
                        left_token: <Left_CommandSub "$(">
                        spids: [27 33]
                      )
                    }
                  spids: [26]
                )
              ]
              spids: [26]
            )
            (C {(rm)} {(-rf)} {(DQ ($ VSub_Name "$plugin_path"))})
            (C {(rm)} {(-rf)} 
              {
                (DQ 
                  (CommandSubPart
                    command_list: (CommandList children:[(C {(asdf_dir)})])
                    left_token: <Left_CommandSub "$(">
                    spids: [51 53]
                  ) (/installs/) (${ VSub_Name plugin_name)
                )
              }
            )
            (Pipeline
              children: [
                (SimpleCommand
                  words: [
                    {(grep)}
                    {(-l)}
                    {(DQ ("asdf-plugin: ") (${ VSub_Name plugin_name))}
                    {
                      (DQ 
                        (CommandSubPart
                          command_list: (CommandList children:[(C {(asdf_dir)})])
                          left_token: <Left_CommandSub "$(">
                          spids: [74 76]
                        )
                      ) (/shims/) (Lit_Other "*")
                    }
                  ]
                  redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[81])]
                )
                (C {(xargs)} {(rm)} {(-f)})
              ]
              negated: False
            )
          ]
          spids: [4]
        )
      spids: [0 3]
    )
  ]
)