     }
   
     
-    private func search(node: Node, var paths: [String], request: Request) -> (Request -> Response)? {
+    private func search(node: Node, paths: [String], request: Request) -> (Request -> Response)? {
+        var paths = paths
+        
         if paths.count == 0 {
             return node.handler
         }

        Recurses the routing tree to return nodes for assigning
        handlers and create child nodes where needed.
    */
    func inflate(node: Node, var paths: [String]) -> Node {
        if paths.count == 0 {
            return node
        }

    func printNode(node: Node, depth: Int) {
        for (key, node) in node.nodes {
            var prefix = ""
            for _ in 0 ..< depth {
                prefix += "\t"
            }
            print("\(prefix)\(key)")
