/// Narrow i32 to i8.
fn i32ToI8(x: i32) -> i8 {
    return x as i8;
}

/// Narrow i32 to u8.
fn i32ToU8(x: i32) -> u8 {
    return x as u8;
}

/// Narrow i32 to i16.
fn i32ToI16(x: i32) -> i16 {
    return x as i16;
}

/// Narrow i32 to u16.
fn i32ToU16(x: i32) -> u16 {
    return x as u16;
}

/// Narrow i16 to i8.
fn i16ToI8(x: i16) -> i8 {
    return x as i8;
}

/// Narrow i16 to u8.
fn i16ToU8(x: i16) -> u8 {
    return x as u8;
}

/// Narrow u32 to u8.
fn u32ToU8(x: u32) -> u8 {
    return x as u8;
}

/// Narrow u16 to u8.
fn u16ToU8(x: u16) -> u8 {
    return x as u8;
}
