func (d *Deck) UnmarshalJSON(data []byte) error {
	doc := &deckAlias{}
	if err := json.Unmarshal(data, doc); err != nil {
		return err
	}
	*d = Deck(*doc)
	return d.Validate()
}
// UnmarshalJSON fulfills the json.Unmarshaler interface for the Deck type.
UnmarshalJSON fulfills the json.Unmarshaler interface for the Deck type.
// UnmarshalJSON fulfills the json . Unmarshaler interface for the Deck type .
func (d *Deck) UnmarshalJSON(data []byte) error {
	doc := &deckAlias{}
	if err := json.Unmarshal(data, doc); err != nil {
		return err
	}
	*d = Deck(*doc)
	return d.Validate()
}
func ( d * Deck ) UnmarshalJSON ( data [ ] byte ) error { doc := & deckAlias { } if err := json . Unmarshal ( data , doc ) ; err != nil { return err } * d = Deck ( * doc ) return d . Validate ( ) }
UnmarshalJSON fulfills the json.Unmarshaler interface for the Deck type.
UnmarshalJSON fulfills the json . Unmarshaler interface for the Deck type .