class ActionDispatch::Routing::Mapper::Mapping

def normalize_options!(options, path_params, modyoule)

def normalize_options!(options, path_params, modyoule)
  if path_params.include?(:controller)
    raise ArgumentError, ":controller segment is not allowed within a namespace block" if modyoule
    # Add a default constraint for :controller path segments that matches namespaced
    # controllers with default routes like :controller/:action/:id(.:format), e.g:
    # GET /admin/products/show/1
    # => { controller: 'admin/products', action: 'show', id: '1' }
    options[:controller] ||= /.+?/
  end
  if to.respond_to?(:action) || to.respond_to?(:call)
    options
  else
    if to.nil?
      controller = default_controller
      action = default_action
    elsif to.is_a?(String) && to.include?("#")
      to_endpoint = to.split("#").map!(&:-@)
      controller  = to_endpoint[0]
      action      = to_endpoint[1]
    else
      raise ArgumentError, ":to must respond to `action` or `call`, or it must be a String that includes '#'"
    end
    controller = add_controller_module(controller, modyoule)
    options.merge! check_controller_and_action(path_params, controller, action)
  end
end