// Path: src/main/java/spark/routematch/RouteMatch.java
// public class RouteMatch {
// 
//     private Object target;
//     private String matchUri;
//     private String requestURI;
//     private String acceptType;
//     private HttpMethod httpMethod;
// 
//     public RouteMatch(Object target, String matchUri, String requestUri, String acceptType) {
//         this(target, matchUri, requestUri, acceptType, null);
//      }
// 
//     public RouteMatch(Object target, String matchUri, String requestUri, String acceptType, HttpMethod httpMethod) {
//         super();
//         this.target = target;
//         this.matchUri = matchUri;
//         this.requestURI = requestUri;
//         this.acceptType = acceptType;
//         this.httpMethod = httpMethod;
//     }
// 
//     /**
//      * @return the accept type
//      */
//     public HttpMethod getHttpMethod() {
//         return httpMethod;
//     }
// 
//     /**
//      * @return the accept type
//      */
//     public String getAcceptType() {
//         return acceptType;
//     }
// 
//     /**
//      * @return the target
//      */
//     public Object getTarget() {
//         return target;
//     }
// 
// 
//     /**
//      * @return the matchUri
//      */
//     public String getMatchUri() {
//         return matchUri;
//     }
// 
// 
//     /**
//      * @return the requestUri
//      */
//     public String getRequestURI() {
//         return requestURI;
//     }
// 
// 
// }
// 
// Path: src/main/java/spark/Service.java
// public static Service ignite() {
//     return new Service();
// }


import spark.routematch.RouteMatch;
import java.util.List;
import java.util.function.Consumer;
import static spark.Service.ignite;

    /**
     * Sets Spark to NOT trust Forwarded, X-Forwarded-Host, X-Forwarded-Server, X-Forwarded-For, X-Forwarded-Proto, X-Proxied-Https headers
     * as defined at https://www.eclipse.org/jetty/javadoc/current/org/eclipse/jetty/server/ForwardedRequestCustomizer.html
     */
    public static void untrustForwardHeaders() {
        getInstance().untrustForwardHeaders();
    }

    /**
     * Initializes the Spark server. SHOULD just be used when using the Websockets functionality.
     */
    public static void init() {
        getInstance().init();
    }

    /**
     * Constructs a ModelAndView with the provided model and view name
     *
     * @param model    the model
     * @param viewName the view name
     * @return the model and view
     */
    public static ModelAndView modelAndView(Object model, String viewName) {
        return new ModelAndView(model, viewName);
    }

    /**
     * @return All routes available
     */
// Path: src/main/java/spark/routematch/RouteMatch.java
// public class RouteMatch {
// 
//     private Object target;
//     private String matchUri;
//     private String requestURI;
//     private String acceptType;
//     private HttpMethod httpMethod;
// 
//     public RouteMatch(Object target, String matchUri, String requestUri, String acceptType) {
//         this(target, matchUri, requestUri, acceptType, null);
//      }
// 
//     public RouteMatch(Object target, String matchUri, String requestUri, String acceptType, HttpMethod httpMethod) {
//         super();
//         this.target = target;
//         this.matchUri = matchUri;
//         this.requestURI = requestUri;
//         this.acceptType = acceptType;
//         this.httpMethod = httpMethod;
//     }
// 
//     /**
//      * @return the accept type
//      */
//     public HttpMethod getHttpMethod() {
//         return httpMethod;
//     }
// 
//     /**
//      * @return the accept type
//      */
//     public String getAcceptType() {
//         return acceptType;
//     }
// 
//     /**
//      * @return the target
//      */
//     public Object getTarget() {
//         return target;
//     }
// 
// 
//     /**
//      * @return the matchUri
//      */
//     public String getMatchUri() {
//         return matchUri;
//     }
// 
// 
//     /**
//      * @return the requestUri
//      */
//     public String getRequestURI() {
//         return requestURI;
//     }
// 
// 
// }
// 
// Path: src/main/java/spark/Service.java
// public static Service ignite() {
//     return new Service();
// }


// Path: src/main/java/spark/Spark.java
import spark.routematch.RouteMatch;
import java.util.List;
import java.util.function.Consumer;
import static spark.Service.ignite;


    /**
     * Sets Spark to NOT trust Forwarded, X-Forwarded-Host, X-Forwarded-Server, X-Forwarded-For, X-Forwarded-Proto, X-Proxied-Https headers
     * as defined at https://www.eclipse.org/jetty/javadoc/current/org/eclipse/jetty/server/ForwardedRequestCustomizer.html
     */
    public static void untrustForwardHeaders() {
        getInstance().untrustForwardHeaders();
    }

    /**
     * Initializes the Spark server. SHOULD just be used when using the Websockets functionality.
     */
    public static void init() {
        getInstance().init();
    }

    /**
     * Constructs a ModelAndView with the provided model and view name
     *
     * @param model    the model
     * @param viewName the view name
     * @return the model and view
     */
    public static ModelAndView modelAndView(Object model, String viewName) {
        return new ModelAndView(model, viewName);
    }

    /**
     * @return All routes available
     */
    public static List<RouteMatch> routes() {