// Path: kheera-testrunner/src/main/java/gherkin/ast/Location.java
// public class Location {
//     private final int line;
//     private final int column;
// 
//     public Location(int line, int column) {
//         this.line = line;
//         this.column = column;
//     }
// 
//     public int getLine() {
//         return line;
//     }
// 
//     public int getColumn() {
//         return column;
//     }
// }


import com.google.gson.Gson;
import java.util.Map;
import gherkin.ast.Location;
package gherkin;




public class GherkinDialectProvider implements IGherkinDialectProvider {
    private final String default_dialect_name;
    private Map dialects;

    public void loadDialects(String source) {
        Gson gson = new Gson();
        this.dialects = gson.fromJson(source, Map.class);
    }

    public GherkinDialectProvider(String default_dialect_name, String dialectFile) {
        this.default_dialect_name = default_dialect_name;
        if(dialectFile != null)
            this.loadDialects(dialectFile);
    }

    public GherkinDialectProvider() {
        this("en", null);
    }

    public GherkinDialect getDefaultDialect() {
        return getDialect(default_dialect_name, null);
    }

    @Override
// Path: kheera-testrunner/src/main/java/gherkin/ast/Location.java
// public class Location {
//     private final int line;
//     private final int column;
// 
//     public Location(int line, int column) {
//         this.line = line;
//         this.column = column;
//     }
// 
//     public int getLine() {
//         return line;
//     }
// 
//     public int getColumn() {
//         return column;
//     }
// }


// Path: kheera-testrunner/src/main/java/gherkin/GherkinDialectProvider.java
import com.google.gson.Gson;
import java.util.Map;
import gherkin.ast.Location;

package gherkin;




public class GherkinDialectProvider implements IGherkinDialectProvider {
    private final String default_dialect_name;
    private Map dialects;

    public void loadDialects(String source) {
        Gson gson = new Gson();
        this.dialects = gson.fromJson(source, Map.class);
    }

    public GherkinDialectProvider(String default_dialect_name, String dialectFile) {
        this.default_dialect_name = default_dialect_name;
        if(dialectFile != null)
            this.loadDialects(dialectFile);
    }

    public GherkinDialectProvider() {
        this("en", null);
    }

    public GherkinDialect getDefaultDialect() {
        return getDialect(default_dialect_name, null);
    }

    @Override
    public GherkinDialect getDialect(String language, Location location) {