pub fn rem(a: i64, b: i64) -> i64 {
    let r = a % b;
    if r < 0 {
        b.abs() - r.abs()
    } else {
        r
    }
}
/// Remainder of division. Result is signed, but always
/// non-negative in any case.
Remainder of division. Result is signed, but always
non-negative in any case.
Remainder of division . Result is signed but always non - negative in any case .
pub fn rem(a: i64, b: i64) -> i64 {
    let r = a % b;
    if r < 0 {
        b.abs() - r.abs()
    } else {
        r
    }
}
pub fn rem ( a : i64 , b : i64 ) -> i64 { let r = a % b ; if r < 0 { b . abs ( ) - r . abs ( ) } else { r } }
Remainder of division.
Remainder of division .
a
i64
b
i64
a
i64
b
i64