class PreviewTemplate {

    String evaluate(String text) {
        if (text != null) {
            if (text.contains("${")) {
                for (String key : context.keySet()) {
                    if (text.contains(expression(key))) {
                        text = evaluate(text, key);
                    }
                }
            }
        }
        return text;
    }

    private  PreviewTemplate(Map<String, String> context);

}