**** New globals: {i1:i1, i2:i2, i4:i4, i8:i8, qi1:i1?, qi2:i2?, qi4:i4?, qi8:i8?, qr4:r4?, qr8:r8?, qu1:u1?, qu2:u2?, qu4:u4?, qu8:u8?, r4:r4, r8:r8, s:s, u1:u1, u2:u2, u4:u4, u8:u8}

> Mod(Wrap(3), 4)
Mod(Wrap(3), 4) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(3:i8):i8), 4:i8):i8))
Func sig: () to i8
Type: i8, Value: 3
###
> Mod(Wrap(3), -4)
Mod(Wrap(3), -4) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(3:i8):i8), -4:i8):i8))
Func sig: () to i8
Type: i8, Value: 3
###
> Mod(Wrap(2), -1)
Mod(Wrap(2), -1) : i8
BndKind:Int, Type:i8, Bnd:(0:i8)
Func sig: () to i8
Type: i8, Value: 0
###
> Mod(Wrap(2), Wrap(-1))
Mod(Wrap(2), Wrap(-1)) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(2:i8):i8), Call(∂.Test.Wrap(-1:i8):i8)):i8))
Func sig: () to i8
Type: i8, Value: 0
###
> Mod(Wrap(2), 0)
Mod(Wrap(2), 0) : i8
BndKind:Int, Type:i8, Bnd:(0:i8)
Func sig: () to i8
Type: i8, Value: 0
###
> Mod(Wrap(2), Wrap(0))
Mod(Wrap(2), Wrap(0)) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(2:i8):i8), Call(∂.Test.Wrap(0:i8):i8)):i8))
Func sig: () to i8
Type: i8, Value: 0
###
> Mod(Wrap(0x3FFFFFFF), 2)
Mod(Wrap(1073741823), 2) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(1073741823:i8):i8), 2:i8):i8))
Func sig: () to i8
Type: i8, Value: 1
###
> Mod(Wrap(0x3FFFFFFF), 4)
Mod(Wrap(1073741823), 4) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(1073741823:i8):i8), 4:i8):i8))
Func sig: () to i8
Type: i8, Value: 3
###
> Mod(Wrap(0x3FFFFFFF), Wrap(0))
Mod(Wrap(1073741823), Wrap(0)) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(1073741823:i8):i8), Call(∂.Test.Wrap(0:i8):i8)):i8))
Func sig: () to i8
Type: i8, Value: 0
###
> Mod(Wrap(-0), 2)
Mod(Wrap(-0), 2) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(0:i8):i8), 2:i8):i8))
Func sig: () to i8
Type: i8, Value: 0
###
> Mod(Wrap(-2), -0)
Mod(Wrap(-2), -0) : i8
BndKind:Int, Type:i8, Bnd:(0:i8)
Func sig: () to i8
Type: i8, Value: 0
###
> Mod(i4, 3)
Mod(i4, 3) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Num<i8>(Global(i4)), 3:i8):i8))
Func sig: (i4:i4) to i8
Type: i8, Value: 0
###
> Mod(3, i4)
Mod(3, i4) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(3:i8, Num<i8>(Global(i4))):i8))
Func sig: (i4:i4) to i8
Type: i8, Value: 0
###
> Mod(Wrap(0x80000000i4), -1)
Mod(Wrap(2147483648), -1) : i8
BndKind:Int, Type:i8, Bnd:(0:i8)
Func sig: () to i8
Type: i8, Value: 0
###
> Mod(Wrap(0x80000000i4), Wrap(-1))
Mod(Wrap(2147483648), Wrap(-1)) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Num<i8>(Call(∂.Test.Wrap(-2147483648:i4):i4)), Call(∂.Test.Wrap(-1:i8):i8)):i8))
Func sig: () to i8
Type: i8, Value: 0
###
> Mod(i8+3, 4)
Mod(i8 + 3, 4) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Add(Global(i8), 3:i8), 4:i8):i8))
Func sig: (i8:i8) to i8
Type: i8, Value: 3
###
> Mod(i8+2, -1)
Mod(i8 + 2, -1) : i8
BndKind:Int, Type:i8, Bnd:(0:i8)
Func sig: () to i8
Type: i8, Value: 0
###
> Mod(i8+2, Wrap(-1))
Mod(i8 + 2, Wrap(-1)) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Add(Global(i8), 2:i8), Call(∂.Test.Wrap(-1:i8):i8)):i8))
Func sig: (i8:i8) to i8
Type: i8, Value: 0
###
> Mod(Wrap(0x3FFFFFFFF), 2)
Mod(Wrap(17179869183), 2) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(17179869183:i8):i8), 2:i8):i8))
Func sig: () to i8
Type: i8, Value: 1
###
> Mod(Wrap(0x3FFFFFFFF), 4)
Mod(Wrap(17179869183), 4) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(17179869183:i8):i8), 4:i8):i8))
Func sig: () to i8
Type: i8, Value: 3
###
> Mod(Wrap(0x3FFFFFFFF), Wrap(0))
Mod(Wrap(17179869183), Wrap(0)) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(17179869183:i8):i8), Call(∂.Test.Wrap(0:i8):i8)):i8))
Func sig: () to i8
Type: i8, Value: 0
###
> Mod(Wrap(0x8000000000000000i8), -1)
Mod(Wrap(9223372036854775808), -1) : i8
BndKind:Int, Type:i8, Bnd:(0:i8)
Func sig: () to i8
Type: i8, Value: 0
###
> Mod(Wrap(0x8000000000000000i8), Wrap(-1))
Mod(Wrap(9223372036854775808), Wrap(-1)) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(-9223372036854775808:i8):i8), Call(∂.Test.Wrap(-1:i8):i8)):i8))
Func sig: () to i8
Type: i8, Value: 0
###
> Mod(u4+2u, 2)
Mod(u4 + 2, 2) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Num<i8>(Add(Num<u8>(Global(u4)), 2:u8)), 2:i8):i8))
*** Warning: (6,7) Node: u4 + 2, Message: Conversion from unsigned to signed integer can reinterpret large values as negative
Func sig: (u4:u4) to i8
Type: i8, Value: 0
###
> Mod(u4+10u, 4)
Mod(u4 + 10, 4) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Num<i8>(Add(Num<u8>(Global(u4)), 10:u8)), 4:i8):i8))
*** Warning: (6,7) Node: u4 + 10, Message: Conversion from unsigned to signed integer can reinterpret large values as negative
Func sig: (u4:u4) to i8
Type: i8, Value: 2
###
> Mod(Wrap(0x7FFFFFFFU), 2)
Mod(Wrap(2147483647), 2) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Num<i8>(Call(∂.Test.Wrap(2147483647:u8):u8)), 2:i8):i8))
*** Warning: (8,9) Node: Wrap(2147483647), Message: Conversion from unsigned to signed integer can reinterpret large values as negative
Func sig: () to i8
Type: i8, Value: 1
###
> Mod(Wrap(0x7FFFFFFFU), 2U)
Mod(Wrap(2147483647), 2) : u8
BndKind:Call, Type:u8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(2147483647:u8):u8), 2:u8):u8))
Func sig: () to u8
Type: u8, Value: 1
###
> Mod(Wrap(0x7FFFFFFFU), Wrap(0U))
Mod(Wrap(2147483647), Wrap(0)) : u8
BndKind:Call, Type:u8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(2147483647:u8):u8), Call(∂.Test.Wrap(0:u8):u8)):u8))
Func sig: () to u8
Type: u8, Value: 0
###
> Mod(Wrap(0x7FFFFFFFU), 4)
Mod(Wrap(2147483647), 4) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Num<i8>(Call(∂.Test.Wrap(2147483647:u8):u8)), 4:i8):i8))
*** Warning: (8,9) Node: Wrap(2147483647), Message: Conversion from unsigned to signed integer can reinterpret large values as negative
Func sig: () to i8
Type: i8, Value: 3
###
> Mod(Wrap(0x812345u4), 0x81234567u4)
Mod(Wrap(8463173), 2166572391) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Num<i8>(Call(∂.Test.Wrap(8463173:u4):u4)), 2166572391:i8):i8))
Func sig: () to i8
Type: i8, Value: 8463173
###
> Mod(Wrap(0x80123456u4), 0x81234567u4)
Mod(Wrap(2148676694), 2166572391) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Num<i8>(Call(∂.Test.Wrap(2148676694:u4):u4)), 2166572391:i8):i8))
Func sig: () to i8
Type: i8, Value: 2148676694
###
> Mod(Wrap(0x81234567u4), 0x80123456u4)
Mod(Wrap(2166572391), 2148676694) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Num<i8>(Call(∂.Test.Wrap(2166572391:u4):u4)), 2148676694:i8):i8))
Func sig: () to i8
Type: i8, Value: 17895697
###
> Mod(Wrap(0x81234567u4), 0x812345u4)
Mod(Wrap(2166572391), 8463173) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Num<i8>(Call(∂.Test.Wrap(2166572391:u4):u4)), 8463173:i8):i8))
Func sig: () to i8
Type: i8, Value: 103
###
> Mod(Wrap(0x7FFFFFFFFFU), 2U)
Mod(Wrap(549755813887), 2) : u8
BndKind:Call, Type:u8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(549755813887:u8):u8), 2:u8):u8))
Func sig: () to u8
Type: u8, Value: 1
###
> Mod(Wrap(0x7FFFFFFFFFU), Wrap(0U))
Mod(Wrap(549755813887), Wrap(0)) : u8
BndKind:Call, Type:u8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(549755813887:u8):u8), Call(∂.Test.Wrap(0:u8):u8)):u8))
Func sig: () to u8
Type: u8, Value: 0
###
> Mod(Wrap(-0f), 2f)
Mod(Wrap(-0), 2) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(Num<r8>(Call(∂.Test.Wrap(-0:r4):r4)), 2:r8):r8))
Func sig: () to r8
Type: r8, Value: -0
###
> Mod(Wrap(-0.0), 2.0)
Mod(Wrap(-0), 2) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(-0:r8):r8), 2:r8):r8))
Func sig: () to r8
Type: r8, Value: -0
###
> Mod(Wrap(2f), 0f)
Mod(Wrap(2), 0) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(Num<r8>(Call(∂.Test.Wrap(2:r4):r4)), 0:r8):r8))
Func sig: () to r8
Type: r8, Value: 0
###
> Mod(Wrap(-2.0), -0.0)
Mod(Wrap(-2), -0) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(-2:r8):r8), -0:r8):r8))
Func sig: () to r8
Type: r8, Value: -0
###
> Mod(Wrap(2.0), 4.0)
Mod(Wrap(2), 4) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(2:r8):r8), 4:r8):r8))
Func sig: () to r8
Type: r8, Value: 2
###
> Mod(Wrap(2.0), 3.0)
Mod(Wrap(2), 3) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(2:r8):r8), 3:r8):r8))
Func sig: () to r8
Type: r8, Value: 2
###
> Mod(r8+1.0, 2.0)
Mod(r8 + 1, 2) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(Add(Global(r8), 1:r8), 2:r8):r8))
Func sig: (r8:r8) to r8
Type: r8, Value: 1
###
> Mod(r8-2.0, 2.0)
Mod(r8 - 2, 2) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(Add(Global(r8), [-] 2:r8), 2:r8):r8))
Func sig: (r8:r8) to r8
Type: r8, Value: -0
###
> Mod(r8-2.0, -0.0)
Mod(r8 - 2, -0) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(Add(Global(r8), [-] 2:r8), -0:r8):r8))
Func sig: (r8:r8) to r8
Type: r8, Value: -0
###
> Mod(r8, 0f)
Mod(r8, 0) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(Global(r8), 0:r8):r8))
Func sig: (r8:r8) to r8
Type: r8, Value: 0
###
> Mod(r8, -0f)
Mod(r8, -0) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(Global(r8), -0:r8):r8))
Func sig: (r8:r8) to r8
Type: r8, Value: 0
###
> Mod(r8, 2.0)
Mod(r8, 2) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(Global(r8), 2:r8):r8))
Func sig: (r8:r8) to r8
Type: r8, Value: 0
###
> Mod(Wrap(-2e100), -0f)
Mod(Wrap(-2E+100), -0) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(-2E+100:r8):r8), -0:r8):r8))
Func sig: () to r8
Type: r8, Value: -0
###
> Mod(Wrap(2e100), 2)
Mod(Wrap(2E+100), 2) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(2E+100:r8):r8), 2:r8):r8))
Func sig: () to r8
Type: r8, Value: 0
###
> Mod(Wrap(2e100), 3)
Mod(Wrap(2E+100), 3) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(2E+100:r8):r8), 3:r8):r8))
Func sig: () to r8
Type: r8, Value: 2
###
> Mod(1.0/0, r8)
Mod(1 / 0, r8) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(∞:r8, Global(r8)):r8))
Func sig: (r8:r8) to r8
Type: r8, Value: 0
###
> Mod(-1.0/0, r8)
Mod(-1 / 0, r8) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(-∞:r8, Global(r8)):r8))
Func sig: (r8:r8) to r8
Type: r8, Value: -0
###
> Mod(0.0/0, r8)
Mod(0 / 0, r8) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(NaN:r8, Global(r8)):r8))
Func sig: (r8:r8) to r8
Type: r8, Value: NaN
###
> Mod(-0.0/0, r8)
Mod(-0 / 0, r8) : r8
BndKind:Call, Type:r8, Bnd:(Call(∂.Mod(NaN:r8, Global(r8)):r8))
Func sig: (r8:r8) to r8
Type: r8, Value: NaN
###
> Mod(Wrap(0x7FFFFFFFFFU), 2)
Mod(Wrap(549755813887), 2) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Num<i8>(Call(∂.Test.Wrap(549755813887:u8):u8)), 2:i8):i8))
*** Warning: (8,9) Node: Wrap(549755813887), Message: Conversion from unsigned to signed integer can reinterpret large values as negative
Func sig: () to i8
Type: i8, Value: 1
###
> Mod(Wrap(0x7FFFFFFFFFU), 4)
Mod(Wrap(549755813887), 4) : i8
BndKind:Call, Type:i8, Bnd:(Call(∂.Mod(Num<i8>(Call(∂.Test.Wrap(549755813887:u8):u8)), 4:i8):i8))
*** Warning: (8,9) Node: Wrap(549755813887), Message: Conversion from unsigned to signed integer can reinterpret large values as negative
Func sig: () to i8
Type: i8, Value: 3
###
> Mod(Wrap(0x3FFFFFFFFFFFFFFFF), 2)
Mod(Wrap(73786976294838206463), 2) : i
BndKind:Call, Type:i, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(73786976294838206463:i):i), 2:i):i))
Func sig: () to i
Type: ia, Value: 1
###
> Mod(Wrap(0x3FFFFFFFFFFFFFFFF), -4)
Mod(Wrap(73786976294838206463), -4) : i
BndKind:Call, Type:i, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(73786976294838206463:i):i), -4:i):i))
Func sig: () to i
Type: ia, Value: 3
###
> Mod(Wrap(0x3FFFFFFFFFFFFFFFF), Wrap(0))
Mod(Wrap(73786976294838206463), Wrap(0)) : i
BndKind:Call, Type:i, Bnd:(Call(∂.Mod(Call(∂.Test.Wrap(73786976294838206463:i):i), Num<i>(Call(∂.Test.Wrap(0:i8):i8))):i))
Func sig: () to i
Type: ia, Value: 0
###
> Mod(Wrap(3), 4) = Mod(3, 4)
Mod(Wrap(3), 4) @= Mod(3, 4) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Call(∂.Test.Wrap(3:i8):i8), 4:i8):i8) @= 3:i8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(3i8), 4) = Mod(3i8, 4)
Mod(Wrap(3), 4) @= Mod(3, 4) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Call(∂.Test.Wrap(3:i8):i8), 4:i8):i8) @= 3:i8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(0x80000000i4), Wrap(-1)) = Mod(0x80000000i4, -1)
Mod(Wrap(2147483648), Wrap(-1)) @= Mod(2147483648, -1) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Num<i8>(Call(∂.Test.Wrap(-2147483648:i4):i4)), Call(∂.Test.Wrap(-1:i8):i8)):i8) @= 0:i8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(0x8000000000000000i8), Wrap(-1)) = Mod(0x8000000000000000i8, -1)
Mod(Wrap(9223372036854775808), Wrap(-1)) @= Mod(9223372036854775808, -1) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Call(∂.Test.Wrap(-9223372036854775808:i8):i8), Call(∂.Test.Wrap(-1:i8):i8)):i8) @= 0:i8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(2), Wrap(0)) = Mod(2, 0)
Mod(Wrap(2), Wrap(0)) @= Mod(2, 0) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Call(∂.Test.Wrap(2:i8):i8), Call(∂.Test.Wrap(0:i8):i8)):i8) @= 0:i8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(2i8), Wrap(0)) = Mod(2i8, 0)
Mod(Wrap(2), Wrap(0)) @= Mod(2, 0) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Call(∂.Test.Wrap(2:i8):i8), Call(∂.Test.Wrap(0:i8):i8)):i8) @= 0:i8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(3u), 4u) = Mod(3u, 4u)
Mod(Wrap(3), 4) @= Mod(3, 4) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Call(∂.Test.Wrap(3:u8):u8), 4:u8):u8) @= 3:u8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(3u8), 4u) = Mod(3u8, 4u)
Mod(Wrap(3), 4) @= Mod(3, 4) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Call(∂.Test.Wrap(3:u8):u8), 4:u8):u8) @= 3:u8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(3), -4) = Mod(3, -4)
Mod(Wrap(3), -4) @= Mod(3, -4) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Call(∂.Test.Wrap(3:i8):i8), -4:i8):i8) @= 3:i8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(2u), Wrap(0u)) = Mod(2u, 0u)
Mod(Wrap(2), Wrap(0)) @= Mod(2, 0) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Call(∂.Test.Wrap(2:u8):u8), Call(∂.Test.Wrap(0:u8):u8)):u8) @= 0:u8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(2u8), Wrap(0u)) = Mod(2u8, 0u)
Mod(Wrap(2), Wrap(0)) @= Mod(2, 0) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Call(∂.Test.Wrap(2:u8):u8), Call(∂.Test.Wrap(0:u8):u8)):u8) @= 0:u8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(2.0), 4.0) = Mod(2.0, 4.0)
Mod(Wrap(2), 4) @= Mod(2, 4) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Call(∂.Test.Wrap(2:r8):r8), 4:r8):r8) @= 2:r8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(2f), 0f) = Mod(2f, 0f)
Mod(Wrap(2), 0) @= Mod(2, 0) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Num<r8>(Call(∂.Test.Wrap(2:r4):r4)), 0:r8):r8) @= 0:r8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(-2.0), -0.0) = Mod(-2.0, -0.0)
Mod(Wrap(-2), -0) @= Mod(-2, -0) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Call(∂.Test.Wrap(-2:r8):r8), -0:r8):r8) @= -0:r8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(0.0), 0.0) = Mod(0.0, 0.0)
Mod(Wrap(0), 0) @= Mod(0, 0) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Call(∂.Test.Wrap(0:r8):r8), 0:r8):r8) @= 0:r8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(-0.0), 0.0) = Mod(-0.0, 0.0)
Mod(Wrap(-0), 0) @= Mod(-0, 0) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Call(∂.Test.Wrap(-0:r8):r8), 0:r8):r8) @= -0:r8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(r8+1.0, 2.0) = Mod(1.0r8, 2.0)
Mod(r8 + 1, 2) @= Mod(1, 2) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Add(Global(r8), 1:r8), 2:r8):r8) @= 1:r8))
Func sig: (r8:r8) to b
Type: bool, Value: true 
###
> Mod(Wrap(-2e100), -0f) = Mod(-2e100, -0f)
Mod(Wrap(-2E+100), -0) @= Mod(-2E+100, -0) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Call(∂.Test.Wrap(-2E+100:r8):r8), -0:r8):r8) @= -0:r8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(0x812345u4), 0x81234567u4) = Mod(0x812345u4, 0x81234567u4)
Mod(Wrap(8463173), 2166572391) @= Mod(8463173, 2166572391) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Num<i8>(Call(∂.Test.Wrap(8463173:u4):u4)), 2166572391:i8):i8) @= 8463173:i8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(0x80123456u4), 0x81234567u4) = Mod(0x80123456u4, 0x81234567u4)
Mod(Wrap(2148676694), 2166572391) @= Mod(2148676694, 2166572391) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Num<i8>(Call(∂.Test.Wrap(2148676694:u4):u4)), 2166572391:i8):i8) @= 2148676694:i8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(0x81234567u4), 0x80123456u4) = Mod(0x81234567u4, 0x80123456u4)
Mod(Wrap(2166572391), 2148676694) @= Mod(2166572391, 2148676694) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Num<i8>(Call(∂.Test.Wrap(2166572391:u4):u4)), 2148676694:i8):i8) @= 17895697:i8))
Func sig: () to b
Type: bool, Value: true 
###
> Mod(Wrap(0x81234567u4), 0x812345u4) = Mod(0x81234567u4, 0x812345u4)
Mod(Wrap(2166572391), 8463173) @= Mod(2166572391, 8463173) : b
BndKind:Compare, Type:b, Bnd:(Cmp(Call(∂.Mod(Num<i8>(Call(∂.Test.Wrap(2166572391:u4):u4)), 8463173:i8):i8) @= 103:i8))
Func sig: () to b
Type: bool, Value: true 
###
