* @return the given api command string with the binding environment for bookkeeping assertions
   */
  public String wrapBookkeeping(String command) {
    final String projectName = (project == null) ? "nil" : project.stringApiValue();
    final String cyclistName = (cyclist == null) ? "nil" : cyclist.stringApiValue();

    String wrappedCommand = "(with-bookkeeping-info (new-bookkeeping-info " + cyclistName
            + " (the-date) " + projectName + " (the-second))\n"
            + wrapCyclistAndPurpose(command, cyclistName, projectName)
            + "\n)";

    return wrappedCommand;
  }