// https://conjure-cp.github.io/conjure-oxide/docs/conjure_core/representation/trait.Representation.html
.unwrap_or_else(|| bug!("Should never be reached: i32 integer should always be with storable with 32 bits.")); // safe unwrap as i32 fits in 32 bits
/// Given the integer assignment for `self`, creates assignments for its representation variables.
/// Given the values for its boolean representation variables, creates an assignment for `self` - the integer form.
// Machine names are used so that the derived ordering matches the correct ordering of the representation variables