code: func (i *TemplateInspector) tryRawInspectFallback(rawElement []byte) error {
  	var raw interface{}
  	buffer := new(bytes.Buffer)
  	rdr := bytes.NewReader(rawElement)
  	dec := json.NewDecoder(rdr)
  	dec.UseNumber()
  
  	if rawErr := dec.Decode(&raw); rawErr != nil {
  		return errors.Errorf("unable to read inspect data: %v", rawErr)
  	}
  
  	tmplMissingKey := i.tmpl.Option("missingkey=error")
  	if rawErr := tmplMissingKey.Execute(buffer, raw); rawErr != nil {
  		return errors.Errorf("Template parsing error: %v", rawErr)
  	}
  
  	i.buffer.Write(buffer.Bytes())
  	i.buffer.WriteByte('\n')
  	return nil
  }
docs: // tryRawInspectFallback executes the inspect template with a raw interface.
  // This allows docker cli to parse inspect structs injected with Swarm fields.