///|
/// Upstream intentionally appends a full modulus even when already aligned.
pub fn Block::aligned(
self : Block,
modulus : Int,
pattern? : Bytes = b"\x00",
) -> Block raise ModelError {
guard modulus > 0 && !pattern.is_empty() else {
raise Invalid("alignment requires positive modulus and nonempty pattern")
}
{ ..self, alignment: Some((modulus, pattern)), }
}