@Override
    @NotNull
    public TemplateField withRange(@NotNull TextRange range) {
      return new ExpressionField(range, varName, expression);
    }
@Override
    @NotNull
    public TemplateField withRange(@NotNull TextRange range)