class FreeBefore2DaysWithAWorkDayPattern extends Pattern {

    private DayOfWeek freeDayOfWeek;

    public FreeBefore2DaysWithAWorkDayPattern() {
    }

    public FreeBefore2DaysWithAWorkDayPattern(long id, String code) {
        super(id, code);
    }

    public FreeBefore2DaysWithAWorkDayPattern(long id, String code, DayOfWeek freeDayOfWeek) {
        this(id, code);
        this.freeDayOfWeek = freeDayOfWeek;
    }

    public DayOfWeek getFreeDayOfWeek() {
        return freeDayOfWeek;
    }

    public void setFreeDayOfWeek(DayOfWeek freeDayOfWeek) {
        this.freeDayOfWeek = freeDayOfWeek;
    }

    @Override
    public String toString() {<FILL_FUNCTION_BODY>}

}

        return "Free on " + freeDayOfWeek + " followed by a work day within 2 days";
    
<methods>public java.lang.String getCode() ,public int getWeight() ,public void setCode(java.lang.String) ,public void setWeight(int) ,public java.lang.String toString() <variables>protected java.lang.String code,protected int weight