@SuppressWarnings("unchecked")
 public void execute(
     Environment env, Map params, TemplateModel[] loopVars, TemplateDirectiveBody body)
     throws TemplateException, IOException {
   String s = DirectiveUtils.getString(PARAM_S, params);
   Integer len = DirectiveUtils.getInt(PARAM_LEN, params);
   String append = DirectiveUtils.getString(PARAM_APPEND, params);
   if (s != null) {
     Writer out = env.getOut();
     if (len != null) {
       out.append(StrUtils.textCut(s, len, append));
     } else {
       out.append(s);
     }
   }
 }