code: func (fs *FailState) MarshalJSON() ([]byte, error) {
  	additionalParams := make(map[string]interface{})
  	additionalParams["Error"] = fs.ErrorName
  	if fs.Cause != nil {
  		additionalParams["Cause"] = fs.Cause.Error()
  	}
  	return fs.marshalStateJSON("Fail", additionalParams)
  }
docs: // MarshalJSON for custom marshaling