code: func (s *Engine) ExecuteWriter(out io.Writer, name string, binding interface{}, options ...map[string]interface{}) error {
  	layout := s.Config.Layout
  
  	if len(options) > 0 {
  		layoutOpt := options[0]["layout"]
  		if layoutOpt != nil {
  			if l, ok := layoutOpt.(string); ok {
  				if l != "" {
  					layout = l
  				}
  			}
  		}
  	}
  
  	if layout != "" && layout != NoLayout {
  		s.layoutFuncsFor(name, binding)
  		name = layout
  	} else {
  		s.runtimeFuncsFor(name, binding)
  	}
  
  	return s.Templates.ExecuteTemplate(out, name, binding)
  }
docs: // ExecuteWriter executes a templates and write its results to the out writer