 
   defmacro import_routes(module) do
     quote do
-      plug unquote(module)
+      defp external_match(conn, [module: unquote(module)]) do
+        unquote(module).match(conn, [])
+      end
+      plug :external_match, module: unquote(module)
     end
   end
 


  defmacro __before_compile__(_env) do
    quote do
      plug :match
      plug :dispatch

      @doc """
      Pass-through route that matches all parametes. This ensures that the plug
      pipeline won't die if there are more plugs after this module.

      @plug_builder_opts []
      Module.register_attribute(__MODULE__, :plugs, accumulate: true)

      def match(conn = %Plug.Conn{state: :unset}, _opts) do
        fun = do_match(conn.method, Enum.map(conn.path_info, &URI.decode/1), conn.host, conn.assigns[:version])
        fun.(conn)
      end
      def match(conn, _opts), do: conn

      def init(opts), do: opts
      def call(conn, opts) do
