         let route = self.routes
             .map { closure -> (RouteHandler?, Parameters) in
                 if case let .Route(f) = closure { return f(proxy?.0 ?? path) }
-                else { return (nil, [String : String]())}
+                else { return (nil, [String: String]())}
             }
             .filter { $0.0 != nil }
             .first

    public func proxy(pattern: String, handler: ProxyHandler) -> Void { self.routes.append(.Proxy(self.matcher(pattern, handler: handler))) }
    public func map(pattern: String, handler: RouteHandler) -> Void { self.routes.append(.Route(self.matcher(pattern, handler: handler))) }
    
    public func open(URL: NSURL) -> Bool {
        guard let components = NSURLComponents(URL: URL, resolvingAgainstBaseURL: false) else {
            return false

        
        let path = "/" + (components.host ?? "") + (components.path ?? "")
        
        var queryItems: [String: String] = [:]
        components.queryItems?.forEach() {
            queryItems.updateValue(($0.value ?? ""), forKey: $0.name)
        }
        
        let proxy = self.routes
            .map { closure -> (ProxyHandler?, Parameters) in
