class ThymeleafEngine extends EngineTemplate<TemplateEngine> {

    @Override
    public Tpl.Engine engine() {
        return Tpl.Engine.Thymeleaf;
    }

    @Override
    public TemplateEngine init() {<FILL_FUNCTION_BODY>}

    @SneakyThrows
    @Override
    public void render(TemplateEngine templateEngine, String filePath, Map<String, Object> bindingMap, Writer out) {
        Context ctx = new Context();
        ctx.setVariables(bindingMap);
        out.write(templateEngine.process(filePath, ctx));
    }
}

        ClassLoaderTemplateResolver resolver = new ClassLoaderTemplateResolver();
        resolver.setCacheable(false);
        resolver.setPrefix("/");
        resolver.setTemplateMode(TemplateMode.HTML);
        resolver.setCheckExistence(true);
        resolver.setUseDecoupledLogic(true);
        TemplateEngine templateEngine = new TemplateEngine();
        templateEngine.addTemplateResolver(resolver);
        return templateEngine;
    
<methods>public non-sealed void <init>() ,public abstract xyz.erupt.annotation.sub_erupt.Tpl.Engine engine() ,public TemplateEngine getEngine() ,public abstract TemplateEngine init() ,public abstract void render(TemplateEngine, java.lang.String, Map<java.lang.String,java.lang.Object>, java.io.Writer) ,public void setEngine(TemplateEngine) <variables>private TemplateEngine engine