with c-m-i-n, the contract would be: - PAC must define exactly one enum implementing `InterruptNumber`, where - The value of the variant must be the interrupt number - The name of the variant must be the symbol name - PAC must define a `device.x` defaulting all interrupts to DefaultHandler - PAC must define a `#[link_section = ".vector_table.interrupts"] #[no_mangle] pub static __INTERRUPTS = ...`