code: func NewFailState(failStateName string, errorName string, cause error) *FailState {
  	return &FailState{
  		baseInnerState: baseInnerState{
  			name:              failStateName,
  			id:                rand.Int63(),
  			isEndStateInvalid: true,
  		},
  		ErrorName: errorName,
  		Cause:     cause,
  	}
  }
docs: // NewFailState returns a "FailState" with the supplied
  // information