enum TYPE {
    COMMA,
    DOTS,
    LINE
}

interface PrintStrategy {
    public (1);
}

class Interval {
    private double lower;
    private double upper;

    public Interval(double lower, double upper) {
        this.lower = lower;
        this.upper = upper;
    }

    public double getLower() {
        return lower;
    }

    public double getUpper() {
        return upper;
    }

    public void printIntervals(PrintStrategy ptr) {
        (2);
    }
}

class PrintIntervalsComma implements PrintStrategy {
    public void doPrint(Interval val) {
        System.out.println("[" + val.getLower() + "," + val.getUpper() + "]");
    }
}

class PrintIntervalsDots implements PrintStrategy {
    public void doPrint(Interval val) {
        System.out.println("[" + val.getLower() + "..." + val.getUpper() + "]");
    }
}

class PrintIntervalsLine implements PrintStrategy {
    public void doPrint(Interval val) {
        System.out.println("[" + val.getLower() + "-" + val.getUpper() + "]");
    }
}

public class Main {
    public static PrintStrategy getStrategy(TYPE type) {
        PrintStrategy st = null;
        switch (type) {
            case COMMA:
                (3);
                break;
            case DOTS:
                (4);
                break;
            case LINE:
                (5);
                break;
        }
        return st;
    }

    public static void main(String[] args) {
        Interval a = new Interval(1.7, 2.1);
        a.printIntervals(getStrategy(TYPE.COMMA));
        a.printIntervals(getStrategy(TYPE.DOTS));
        a.printIntervals(getStrategy(TYPE.LINE));
    }
}