anchor.diff:              | None -> Plan.zero
               | Some id ->
                   showHierarchyWithPermissions userId (Some id)
  +        | "rmdir", [| idStr |] ->
  +            match parseFolderId idStr with
  +            | None -> Plan.zero
  +            | Some id ->
  +                Domain.recycleFolder userId id
           | _ ->
               eprintfn "Unrecognized command."
               Plan.ret ()
  
positive.code:                 let split = input.Split([|' '|], StringSplitOptions.RemoveEmptyEntries)
                  split.[0], Array.skip 1 split
              let plan = planCommand cmd args
              bench input plan
  
  [<EntryPoint>]
  let main argv =
  
negative.code:         | "smart", [||] ->
              dumbMode <- false
              Plan.zero
          | "reset", [||] ->
              plan {
                  do! DemoSetup.setUpDemoData
                  let! id = Domain.getUserByName DemoSetup.defaultUserName |> Plan.map Option.get
                  userId <- id
              }
          | "become", [| name |] ->
              plan {
                  let! resolved = Domain.getUserByName name
  