code: func (t *Template) Execute(i *ExecuteInput) (*ExecuteResult, error) {
  	if i == nil {
  		i = &ExecuteInput{}
  	}
  
  	var used, missing dep.Set
  
  	tmpl := template.New("")
  	tmpl.Delims(t.leftDelim, t.rightDelim)
  	tmpl.Funcs(funcMap(&funcMapInput{
  		t:       tmpl,
  		brain:   i.Brain,
  		env:     i.Env,
  		used:    &used,
  		missing: &missing,
  	}))
  
  	if t.errMissingKey {
  		tmpl.Option("missingkey=error")
  	} else {
  		tmpl.Option("missingkey=zero")
  	}
  
  	tmpl, err := tmpl.Parse(t.contents)
  	if err != nil {
  		return nil, errors.Wrap(err, "parse")
  	}
  
  	// Execute the template into the writer
  	var b bytes.Buffer
  	if err := tmpl.Execute(&b, nil); err != nil {
  		return nil, errors.Wrap(err, "execute")
  	}
  
  	return &ExecuteResult{
  		Used:    &used,
  		Missing: &missing,
  		Output:  b.Bytes(),
  	}, nil
  }
docs: // Execute evaluates this template in the provided context.