code: func Parse(input string) (*Template, error) {
  	moot.Lock()
  	defer moot.Unlock()
  	if t, ok := cache[input]; ok {
  		return t, nil
  	}
  	t, err := NewTemplate(input)
  
  	if err == nil {
  		cache[input] = t
  	}
  
  	if err != nil {
  		return t, errors.WithStack(err)
  	}
  
  	return t, nil
  }
docs: // Parse an input string and return a Template.