Collection paths = new ArrayList();
	public final void run(final PrintStream out, PrintStream err) throws SVNException {        Collection paths = new ArrayList();         if (!getCommandLine().hasURLs()) {            for(int i = 0; i < getCommandLine().getPathCount(); i++) {                paths.add(getCommandLine().getPathAt(i));            }        } else {            for(int i = 0; i < getCommandLine().getURLCount(); i++) {                paths.add(getCommandLine().getURL(i));            }        }        String[] pathsArray = (String[]) paths.toArray(new String[paths.size()]);        final String root = PathUtil.getFSCommonRoot(pathsArray);        DebugLog.log("MKDIR root: " + root);        if (getCommandLine().hasURLs()) {            String message = (String) getCommandLine().getArgumentValue(SVNArgument.MESSAGE);            for(int i = 0; i < pathsArray.length; i++) {                String dir = pathsArray[i].substring(root.length());                dir = PathUtil.removeLeadingSlash(dir);                pathsArray[i] = dir;            }            ISVNEditor editor = null;            SVNRepository repository = createRepository(root);            editor = repository.getCommitEditor(message, null);            editor.openRoot(-1);            for(int i = 0; i < pathsArray.length; i++) {                editor.addDir(PathUtil.decode(pathsArray[i]), null, -1);                editor.closeDir();            }            editor.closeDir();            SVNCommitInfo info = editor.closeEdit();            out.println();            out.println("Committed revision " + info.getNewRevision() + ".");        } else {            final ISVNWorkspace ws = createWorkspace(root);            ws.addWorkspaceListener(new SVNWorkspaceAdapter() {                public void modified(String path, int kind) {                    try {                        path = convertPath(root, ws, path);                    }                    catch (IOException e) {                    }                    DebugLog.log("A  " + path);                    out.println("A  " + path);                }            });            for(int i = 0; i < pathsArray.length; i++) {                ws.add(SVNUtil.getWorkspacePath(ws, pathsArray[i]), true, false);            }        }	}