**** New globals: {b:b, d:d, g:g, i:i, i1:i1, i2:i2, i4:i4, i8:i8, n:r8, r4:r4, r8:r8, s:s, t:t, u1:u1, u2:u2, u4:u4, u8:u8, v:v}

> ToI8(g)
ToI8(g) : i8?
*** Error: (5,6) Node: g, Message: Invalid operand type: cannot convert type 'g' to 's'
Binder : ToI8(Error(ErrBadType_Src_Dst))
###
> ToI8(s)
ToI8(s) : i8?
Binder : ToI8(s)
###
> ToI4(d)
ToI4(d) : i4?
Binder : ToI4*(d)
Reducer: ToI4(Date.TotalTicks(d))
###
> ToI4(t)
ToI4(t) : i4?
Binder : ToI4*(t)
Reducer: ToI4(Time.TotalTicks(t))
###
> ToI8(n)
ToI8(n) : i8?
Binder : ToI8(n)
###
> ToI8(r8)
ToI8(r8) : i8?
Binder : ToI8(r8)
###
> ToI8(r4)
ToI8(r4) : i8?
Binder : ToI8(r4)
###
> ToI8(i)
ToI8(i) : i8?
Binder : ToI8(i)
###
> ToI4(i8)
ToI4(i8) : i4?
Binder : ToI4(i8)
###
> ToI2(i4)
ToI2(i4) : i2?
Binder : ToI2(i4)
###
> ToI1(i2)
ToI1(i2) : i1?
Binder : ToI1(i2)
###
> ToI8(u8)
ToI8(u8) : i8?
Binder : ToI8(u8)
###
> ToI4(u4)
ToI4(u4) : i4?
Binder : ToI4(u4)
###
> ToI2(u2)
ToI2(u2) : i2?
Binder : ToI2(u2)
###
> ToI1(u1)
ToI1(u1) : i1?
Binder : ToI1(u1)
###
> ToI4(v)
ToI4(v) : i4
Binder : ToI4*(Unit<i4>(v))
Reducer: 0
###
> ToI4(b)
ToI4(b) : i4
Binder : ToI4*(b)
Reducer: Num<i4>(b)
###
> ToI8(d)
ToI8(d) : i8
Binder : ToI8*(d)
Reducer: Date.TotalTicks(d)
###
> ToI8(t)
ToI8(t) : i8
Binder : ToI8*(t)
Reducer: Time.TotalTicks(t)
###
> ToI8(i8)
ToI8(i8) : i8
Binder : ToI8*(i8)
Reducer: i8
###
> ToI8(i4)
ToI8(i4) : i8
Binder : ToI8*(i4)
Reducer: Num<i8>(i4)
###
> ToI4(i4)
ToI4(i4) : i4
Binder : ToI4*(i4)
Reducer: i4
###
> ToI4(i2)
ToI4(i2) : i4
Binder : ToI4*(i2)
Reducer: Num<i4>(i2)
###
> ToI2(i2)
ToI2(i2) : i2
Binder : ToI2*(i2)
Reducer: i2
###
> ToI2(i1)
ToI2(i1) : i2
Binder : ToI2*(i1)
Reducer: Num<i2>(i1)
###
> ToI1(i1)
ToI1(i1) : i1
Binder : ToI1*(i1)
Reducer: i1
###
> ToI8(u4)
ToI8(u4) : i8
Binder : ToI8*(u4)
Reducer: Num<i8>(u4)
###
> ToI4(u2)
ToI4(u2) : i4
Binder : ToI4*(u2)
Reducer: Num<i4>(u2)
###
> ToI2(u1)
ToI2(u1) : i2
Binder : ToI2*(u1)
Reducer: Num<i2>(u1)
###

**** New globals: {o:o, qb:b?, qd:d?, qi:i?, qi1:i1?, qi2:i2?, qi4:i4?, qi8:i8?, qn:r8?, qr4:r4?, qr8:r8?, qt:t?, qu1:u1?, qu2:u2?, qu4:u4?, qu8:u8?}

> ToI4(qd)
ToI4(qd) : i4?
Binder : Guard(?1: qd, ToI4*(?1))
Reducer: Guard(?1: qd, ToI4(Date.TotalTicks(?1)))
###
> ToI4(qt)
ToI4(qt) : i4?
Binder : Guard(?1: qt, ToI4*(?1))
Reducer: Guard(?1: qt, ToI4(Time.TotalTicks(?1)))
###
> ToI8(qn)
ToI8(qn) : i8?
Binder : Guard(?1: qn, ToI8(?1))
###
> ToI8(qr8)
ToI8(qr8) : i8?
Binder : Guard(?1: qr8, ToI8(?1))
###
> ToI8(qr4)
ToI8(qr4) : i8?
Binder : Guard(?1: qr4, ToI8(?1))
###
> ToI8(qi)
ToI8(qi) : i8?
Binder : Guard(?1: qi, ToI8(?1))
###
> ToI4(qi8)
ToI4(qi8) : i4?
Binder : Guard(?1: qi8, ToI4(?1))
###
> ToI2(qi4)
ToI2(qi4) : i2?
Binder : Guard(?1: qi4, ToI2(?1))
###
> ToI1(qi2)
ToI1(qi2) : i1?
Binder : Guard(?1: qi2, ToI1(?1))
###
> ToI8(qu8)
ToI8(qu8) : i8?
Binder : Guard(?1: qu8, ToI8(?1))
###
> ToI4(qu4)
ToI4(qu4) : i4?
Binder : Guard(?1: qu4, ToI4(?1))
###
> ToI2(qu2)
ToI2(qu2) : i2?
Binder : Guard(?1: qu2, ToI2(?1))
###
> ToI1(qu1)
ToI1(qu1) : i1?
Binder : Guard(?1: qu1, ToI1(?1))
###
> ToI8(o)
ToI8(o) : i8?
Binder : Guard(?1: o, ToI8*(Unit<i8>(?1)))
Reducer: null
###
> ToI1(qb)
ToI1(qb) : i1?
Binder : Guard(?1: qb, ToI1*(?1))
Reducer: Guard(?1: qb, Num<i1>(?1))
###
> ToI8(qd)
ToI8(qd) : i8?
Binder : Guard(?1: qd, ToI8*(?1))
Reducer: Guard(?1: qd, Date.TotalTicks(?1))
###
> ToI8(qt)
ToI8(qt) : i8?
Binder : Guard(?1: qt, ToI8*(?1))
Reducer: Guard(?1: qt, Time.TotalTicks(?1))
###
> ToI8(qi8)
ToI8(qi8) : i8?
Binder : Guard(?1: qi8, ToI8*(?1))
Reducer: qi8
###
> ToI8(qi4)
ToI8(qi4) : i8?
Binder : Guard(?1: qi4, ToI8*(?1))
Reducer: Guard(?1: qi4, Num<i8>(?1))
###
> ToI4(qi4)
ToI4(qi4) : i4?
Binder : Guard(?1: qi4, ToI4*(?1))
Reducer: qi4
###
> ToI4(qi2)
ToI4(qi2) : i4?
Binder : Guard(?1: qi2, ToI4*(?1))
Reducer: Guard(?1: qi2, Num<i4>(?1))
###
> ToI2(qi2)
ToI2(qi2) : i2?
Binder : Guard(?1: qi2, ToI2*(?1))
Reducer: qi2
###
> ToI2(qi1)
ToI2(qi1) : i2?
Binder : Guard(?1: qi1, ToI2*(?1))
Reducer: Guard(?1: qi1, Num<i2>(?1))
###
> ToI1(qi1)
ToI1(qi1) : i1?
Binder : Guard(?1: qi1, ToI1*(?1))
Reducer: qi1
###
> ToI8(qu4)
ToI8(qu4) : i8?
Binder : Guard(?1: qu4, ToI8*(?1))
Reducer: Guard(?1: qu4, Num<i8>(?1))
###
> ToI4(qu2)
ToI4(qu2) : i4?
Binder : Guard(?1: qu2, ToI4*(?1))
Reducer: Guard(?1: qu2, Num<i4>(?1))
###
> ToI2(qu1)
ToI2(qu1) : i2?
Binder : Guard(?1: qu1, ToI2*(?1))
Reducer: Guard(?1: qu1, Num<i2>(?1))
###

**** New globals: {b:b, g:g, i2:i2, i4:i4, i8:i8, o:o, qb:b?, qi2:i2?, qi4:i4?, qi8:i8?, qr4:r4?, r4:r4, v:v}

> ToI4(v)
ToI4(v) : i4
Binder : ToI4*(Unit<i4>(v))
Reducer: 0
###
> ToI4(v, v)
ToI4(v, v) : i4
*** Warning: (8,9) Node: v, Message: Second argument of 'ToI4' is not used
Binder : ToI4*(Unit<i4>(v), Unit<i4>(v))
Reducer: 0
###
> ToI4(v, o)
ToI4(v, o) : i4
*** Warning: (8,9) Node: o, Message: Second argument of 'ToI4' is not used
Binder : ToI4*(Unit<i4>(v), null)
Reducer: 0
###
> ToI4(v, qi2)
ToI4(v, qi2) : i4
*** Warning: (8,11) Node: qi2, Message: Second argument of 'ToI4' is not used
Binder : ToI4*(Unit<i4>(v), Guard(?1: qi2, Num<i4>(?1)))
Reducer: 0
###
> ToI4(v, i2)
ToI4(v, i2) : i4
*** Warning: (8,10) Node: i2, Message: Second argument of 'ToI4' is not used
Binder : ToI4*(Unit<i4>(v), Num<i4>(i2))
Reducer: 0
###
> ToI4(i2)
ToI4(i2) : i4
Binder : ToI4*(i2)
Reducer: Num<i4>(i2)
###
> ToI4(i2, v)
ToI4(i2, v) : i4
*** Warning: (9,10) Node: v, Message: Second argument of 'ToI4' is not used
Binder : ToI4*(i2, Unit<i4>(v))
Reducer: Num<i4>(i2)
###
> ToI4(i2, o)
ToI4(i2, o) : i4
*** Warning: (9,10) Node: o, Message: Second argument of 'ToI4' is not used
Binder : ToI4*(i2, null)
Reducer: Num<i4>(i2)
###
> ToI4(i2, qi2)
ToI4(i2, qi2) : i4
*** Warning: (9,12) Node: qi2, Message: Second argument of 'ToI4' is not used
Binder : ToI4*(i2, Guard(?1: qi2, Num<i4>(?1)))
Reducer: Num<i4>(i2)
###
> ToI4(i2, i2)
ToI4(i2, i2) : i4
*** Warning: (9,11) Node: i2, Message: Second argument of 'ToI4' is not used
Binder : ToI4*(i2, Num<i4>(i2))
Reducer: Num<i4>(i2)
###
> ToI4(i8)
ToI4(i8) : i4?
Binder : ToI4(i8)
###
> ToI4(i8, v)
ToI4(i8, v) : i4
Binder : ToI4(i8, Unit<i4>(v))
Reducer: ToI4(i8, 0)
###
> ToI4(i8, o)
ToI4(i8, o) : i4?
Binder : ToI4(i8, null)
###
> ToI4(i8, qi2)
ToI4(i8, qi2) : i4?
Binder : ToI4(i8, Guard(?1: qi2, Num<i4>(?1)))
###
> ToI4(i8, i2)
ToI4(i8, i2) : i4
Binder : ToI4(i8, Num<i4>(i2))
###
> ToI4(o)
ToI4(o) : i4?
Binder : Guard(?1: o, ToI4*(Unit<i4>(?1)))
Reducer: null
###
> ToI4(o, v)
ToI4(o, v) : i4?
*** Warning: (8,9) Node: v, Message: Second argument of 'ToI4' is not used
Binder : Guard(?1: o, ToI4*(Unit<i4>(?1), Unit<i4>(v)))
Reducer: null
###
> ToI4(o, o)
ToI4(o, o) : i4?
*** Warning: (8,9) Node: o, Message: Second argument of 'ToI4' is not used
Binder : Guard(?1: o, ToI4*(Unit<i4>(?1), null))
Reducer: null
###
> ToI4(o, qi2)
ToI4(o, qi2) : i4?
*** Warning: (8,11) Node: qi2, Message: Second argument of 'ToI4' is not used
Binder : Guard(?1: o, ToI4*(Unit<i4>(?1), Guard(?2: qi2, Num<i4>(?2))))
Reducer: null
###
> ToI4(o, i2)
ToI4(o, i2) : i4?
*** Warning: (8,10) Node: i2, Message: Second argument of 'ToI4' is not used
Binder : Guard(?1: o, ToI4*(Unit<i4>(?1), Num<i4>(i2)))
Reducer: null
###
> ToI4(qi2)
ToI4(qi2) : i4?
Binder : Guard(?1: qi2, ToI4*(?1))
Reducer: Guard(?1: qi2, Num<i4>(?1))
###
> ToI4(qi2, v)
ToI4(qi2, v) : i4?
*** Warning: (10,11) Node: v, Message: Second argument of 'ToI4' is not used
Binder : Guard(?1: qi2, ToI4*(?1, Unit<i4>(v)))
Reducer: Guard(?1: qi2, Num<i4>(?1))
###
> ToI4(qi2, o)
ToI4(qi2, o) : i4?
*** Warning: (10,11) Node: o, Message: Second argument of 'ToI4' is not used
Binder : Guard(?1: qi2, ToI4*(?1, null))
Reducer: Guard(?1: qi2, Num<i4>(?1))
###
> ToI4(qi2, qi2)
ToI4(qi2, qi2) : i4?
*** Warning: (10,13) Node: qi2, Message: Second argument of 'ToI4' is not used
Binder : Guard(?1: qi2, ToI4*(?1, Guard(?2: qi2, Num<i4>(?2))))
Reducer: Guard(?1: qi2, Num<i4>(?1))
###
> ToI4(qi2, i2)
ToI4(qi2, i2) : i4?
*** Warning: (10,12) Node: i2, Message: Second argument of 'ToI4' is not used
Binder : Guard(?1: qi2, ToI4*(?1, Num<i4>(i2)))
Reducer: Guard(?1: qi2, Num<i4>(?1))
###
> ToI4(qi8)
ToI4(qi8) : i4?
Binder : Guard(?1: qi8, ToI4(?1))
###
> ToI4(qi8, v)
ToI4(qi8, v) : i4?
Binder : Guard(?1: qi8, ToI4(?1, Unit<i4>(v)))
Reducer: Guard(?1: qi8, ToI4(?1, 0))
###
> ToI4(qi8, o)
ToI4(qi8, o) : i4?
Binder : Guard(?1: qi8, ToI4(?1, null))
###
> ToI4(qi8, qi2)
ToI4(qi8, qi2) : i4?
Binder : Guard(?1: qi8, ToI4(?1, Guard(?2: qi2, Num<i4>(?2))))
###
> ToI4(qi8, i2)
ToI4(qi8, i2) : i4?
Binder : Guard(?1: qi8, ToI4(?1, Num<i4>(i2)))
###
> To(g, qi4)
To(g, qi4) : i4?
*** Error: (3,4) Node: g, Message: Invalid operand type: cannot convert type 'g' to 's'
Binder : To*(Error(ErrBadType_Src_Dst), qi4)
Reducer: ToI4(Error(ErrBadType_Src_Dst), qi4)
###
> To(g, i4)
To(g, i4) : i4
*** Error: (3,4) Node: g, Message: Invalid operand type: cannot convert type 'g' to 's'
Binder : To*(Error(ErrBadType_Src_Dst), i4)
Reducer: ToI4(Error(ErrBadType_Src_Dst), i4)
###
> To(g, qb)
To(g, qb) : i8?
*** Error: (3,4) Node: g, Message: Invalid operand type: cannot convert type 'g' to 's'
Binder : To*(Error(ErrBadType_Src_Dst), Guard(?1: qb, Num<i8>(?1)))
Reducer: ToI8(Error(ErrBadType_Src_Dst), Guard(?1: qb, Num<i8>(?1)))
###
> To(g, b)
To(g, b) : i8
*** Error: (3,4) Node: g, Message: Invalid operand type: cannot convert type 'g' to 's'
Binder : To*(Error(ErrBadType_Src_Dst), Num<i8>(b))
Reducer: ToI8(Error(ErrBadType_Src_Dst), Num<i8>(b))
###
> To(v, qi4)
To(v, qi4) : i4
*** Warning: (6,9) Node: qi4, Message: Second argument of 'To' is not used
Binder : To*(Unit<i4>(v), qi4)
Reducer: 0
###
> To(v, i4)
To(v, i4) : i4
*** Warning: (6,8) Node: i4, Message: Second argument of 'To' is not used
Binder : To*(Unit<i4>(v), i4)
Reducer: 0
###
> To(v, qb)
To(v, qb) : i8
*** Warning: (6,8) Node: qb, Message: Second argument of 'To' is not used
Binder : To*(Unit<i8>(v), Guard(?1: qb, Num<i8>(?1)))
Reducer: 0
###
> To(v, b)
To(v, b) : i8
*** Warning: (6,7) Node: b, Message: Second argument of 'To' is not used
Binder : To*(Unit<i8>(v), Num<i8>(b))
Reducer: 0
###
> To(r4, qi4)
To(r4, qi4) : i4?
Binder : To*(r4, qi4)
Reducer: ToI4(r4, qi4)
###
> To(r4, i4)
To(r4, i4) : i4
Binder : To*(r4, i4)
Reducer: ToI4(r4, i4)
###
> To(r4, qb)
To(r4, qb) : i8?
Binder : To*(r4, Guard(?1: qb, Num<i8>(?1)))
Reducer: ToI8(r4, Guard(?1: qb, Num<i8>(?1)))
###
> To(r4, b)
To(r4, b) : i8
Binder : To*(r4, Num<i8>(b))
Reducer: ToI8(r4, Num<i8>(b))
###
> To(o, qi4)
To(o, qi4) : i4?
*** Warning: (6,9) Node: qi4, Message: Second argument of 'To' is not used
Binder : Guard(?1: o, To*(Unit<i4>(?1), qi4))
Reducer: null
###
> To(o, i4)
To(o, i4) : i4?
*** Warning: (6,8) Node: i4, Message: Second argument of 'To' is not used
Binder : Guard(?1: o, To*(Unit<i4>(?1), i4))
Reducer: null
###
> To(o, qb)
To(o, qb) : i8?
*** Warning: (6,8) Node: qb, Message: Second argument of 'To' is not used
Binder : Guard(?1: o, To*(Unit<i8>(?1), Guard(?2: qb, Num<i8>(?2))))
Reducer: null
###
> To(o, b)
To(o, b) : i8?
*** Warning: (6,7) Node: b, Message: Second argument of 'To' is not used
Binder : Guard(?1: o, To*(Unit<i8>(?1), Num<i8>(b)))
Reducer: null
###
> To(qr4, qi4)
To(qr4, qi4) : i4?
Binder : Guard(?1: qr4, To*(?1, qi4))
Reducer: Guard(?1: qr4, ToI4(?1, qi4))
###
> To(qr4, i4)
To(qr4, i4) : i4?
Binder : Guard(?1: qr4, To*(?1, i4))
Reducer: Guard(?1: qr4, ToI4(?1, i4))
###
> To(qr4, qb)
To(qr4, qb) : i8?
Binder : Guard(?1: qr4, To*(?1, Guard(?2: qb, Num<i8>(?2))))
Reducer: Guard(?1: qr4, ToI8(?1, Guard(?2: qb, Num<i8>(?2))))
###
> To(qr4, b)
To(qr4, b) : i8?
Binder : Guard(?1: qr4, To*(?1, Num<i8>(b)))
Reducer: Guard(?1: qr4, ToI8(?1, Num<i8>(b)))
###

**** New globals: {b:b*, d:d*, g:g*, i:i*, i1:i1*, i2:i2*, i4:i4*, i8:i8*, n:r8*, r4:r4*, r8:r8*, s:s*, t:t*, u1:u1*, u2:u2*, u4:u4*, u8:u8*, v:v*}

> ToI4(g)
ToI4(g) : i4?*
*** Error: (5,6) Node: g, Message: Invalid operand type: cannot convert type 'g' to 's'
Binder : ForEach(*1: g, ToI4(Error(ErrBadType_Src_Dst)))
###
> ToI4(s)
ToI4(s) : i4?*
Binder : ForEach(*1: s, ToI4(*1))
###
> ToI4(d)
ToI4(d) : i4?*
Binder : ForEach(*1: d, ToI4*(*1))
Reducer: ForEach(*1: d, ToI4(Date.TotalTicks(*1)))
###
> ToI4(t)
ToI4(t) : i4?*
Binder : ForEach(*1: t, ToI4*(*1))
Reducer: ForEach(*1: t, ToI4(Time.TotalTicks(*1)))
###
> ToI8(n)
ToI8(n) : i8?*
Binder : ForEach(*1: n, ToI8(*1))
###
> ToI8(r8)
ToI8(r8) : i8?*
Binder : ForEach(*1: r8, ToI8(*1))
###
> ToI8(r4)
ToI8(r4) : i8?*
Binder : ForEach(*1: r4, ToI8(*1))
###
> ToI8(i)
ToI8(i) : i8?*
Binder : ForEach(*1: i, ToI8(*1))
###
> ToI4(i8)
ToI4(i8) : i4?*
Binder : ForEach(*1: i8, ToI4(*1))
###
> ToI2(i4)
ToI2(i4) : i2?*
Binder : ForEach(*1: i4, ToI2(*1))
###
> ToI1(i2)
ToI1(i2) : i1?*
Binder : ForEach(*1: i2, ToI1(*1))
###
> ToI8(u8)
ToI8(u8) : i8?*
Binder : ForEach(*1: u8, ToI8(*1))
###
> ToI4(u4)
ToI4(u4) : i4?*
Binder : ForEach(*1: u4, ToI4(*1))
###
> ToI2(u2)
ToI2(u2) : i2?*
Binder : ForEach(*1: u2, ToI2(*1))
###
> ToI1(u1)
ToI1(u1) : i1?*
Binder : ForEach(*1: u1, ToI1(*1))
###
> ToI4(v)
ToI4(v) : i4*
Binder : ForEach(*1: v, ToI4*(Unit<i4>(*1)))
Reducer: ForEach(*1: v, 0)
###
> ToI1(b)
ToI1(b) : i1*
Binder : ForEach(*1: b, ToI1*(*1))
Reducer: ForEach(*1: b, Num<i1>(*1))
###
> ToI8(d)
ToI8(d) : i8*
Binder : ForEach(*1: d, ToI8*(*1))
Reducer: ForEach(*1: d, Date.TotalTicks(*1))
###
> ToI8(t)
ToI8(t) : i8*
Binder : ForEach(*1: t, ToI8*(*1))
Reducer: ForEach(*1: t, Time.TotalTicks(*1))
###
> ToI8(i8)
ToI8(i8) : i8*
Binder : ForEach(*1: i8, ToI8*(*1))
Reducer: i8
###
> ToI8(i4)
ToI8(i4) : i8*
Binder : ForEach(*1: i4, ToI8*(*1))
Reducer: ForEach(*1: i4, Num<i8>(*1))
###
> ToI4(i4)
ToI4(i4) : i4*
Binder : ForEach(*1: i4, ToI4*(*1))
Reducer: i4
###
> ToI4(i2)
ToI4(i2) : i4*
Binder : ForEach(*1: i2, ToI4*(*1))
Reducer: ForEach(*1: i2, Num<i4>(*1))
###
> ToI2(i2)
ToI2(i2) : i2*
Binder : ForEach(*1: i2, ToI2*(*1))
Reducer: i2
###
> ToI2(i1)
ToI2(i1) : i2*
Binder : ForEach(*1: i1, ToI2*(*1))
Reducer: ForEach(*1: i1, Num<i2>(*1))
###
> ToI1(i1)
ToI1(i1) : i1*
Binder : ForEach(*1: i1, ToI1*(*1))
Reducer: i1
###
> ToI8(u4)
ToI8(u4) : i8*
Binder : ForEach(*1: u4, ToI8*(*1))
Reducer: ForEach(*1: u4, Num<i8>(*1))
###
> ToI4(u2)
ToI4(u2) : i4*
Binder : ForEach(*1: u2, ToI4*(*1))
Reducer: ForEach(*1: u2, Num<i4>(*1))
###
> ToI2(u1)
ToI2(u1) : i2*
Binder : ForEach(*1: u1, ToI2*(*1))
Reducer: ForEach(*1: u1, Num<i2>(*1))
###

**** New globals: {o:o*, qb:b?*, qd:d?*, qi:i?*, qi1:i1?*, qi2:i2?*, qi4:i4?*, qi8:i8?*, qn:r8?*, qr4:r4?*, qr8:r8?*, qt:t?*, qu1:u1?*, qu2:u2?*, qu4:u4?*, qu8:u8?*}

> ToI4(qd)
ToI4(qd) : i4?*
Binder : ForEach(*1: qd, Guard(?2: *1, ToI4*(?2)))
Reducer: ForEach(*1: qd, Guard(?2: *1, ToI4(Date.TotalTicks(?2))))
###
> ToI4(qt)
ToI4(qt) : i4?*
Binder : ForEach(*1: qt, Guard(?2: *1, ToI4*(?2)))
Reducer: ForEach(*1: qt, Guard(?2: *1, ToI4(Time.TotalTicks(?2))))
###
> ToI8(qn)
ToI8(qn) : i8?*
Binder : ForEach(*1: qn, Guard(?2: *1, ToI8(?2)))
###
> ToI8(qr8)
ToI8(qr8) : i8?*
Binder : ForEach(*1: qr8, Guard(?2: *1, ToI8(?2)))
###
> ToI8(qr4)
ToI8(qr4) : i8?*
Binder : ForEach(*1: qr4, Guard(?2: *1, ToI8(?2)))
###
> ToI8(qi)
ToI8(qi) : i8?*
Binder : ForEach(*1: qi, Guard(?2: *1, ToI8(?2)))
###
> ToI4(qi8)
ToI4(qi8) : i4?*
Binder : ForEach(*1: qi8, Guard(?2: *1, ToI4(?2)))
###
> ToI2(qi4)
ToI2(qi4) : i2?*
Binder : ForEach(*1: qi4, Guard(?2: *1, ToI2(?2)))
###
> ToI1(qi2)
ToI1(qi2) : i1?*
Binder : ForEach(*1: qi2, Guard(?2: *1, ToI1(?2)))
###
> ToI8(qu8)
ToI8(qu8) : i8?*
Binder : ForEach(*1: qu8, Guard(?2: *1, ToI8(?2)))
###
> ToI4(qu4)
ToI4(qu4) : i4?*
Binder : ForEach(*1: qu4, Guard(?2: *1, ToI4(?2)))
###
> ToI2(qu2)
ToI2(qu2) : i2?*
Binder : ForEach(*1: qu2, Guard(?2: *1, ToI2(?2)))
###
> ToI1(qu1)
ToI1(qu1) : i1?*
Binder : ForEach(*1: qu1, Guard(?2: *1, ToI1(?2)))
###
> ToI8(o)
ToI8(o) : i8?*
Binder : ForEach(*1: o, Guard(?2: *1, ToI8*(Unit<i8>(?2))))
Reducer: ForEach(*1: o, null)
###
> ToI1(qb)
ToI1(qb) : i1?*
Binder : ForEach(*1: qb, Guard(?2: *1, ToI1*(?2)))
Reducer: ForEach(*1: qb, Guard(?2: *1, Num<i1>(?2)))
###
> ToI8(qd)
ToI8(qd) : i8?*
Binder : ForEach(*1: qd, Guard(?2: *1, ToI8*(?2)))
Reducer: ForEach(*1: qd, Guard(?2: *1, Date.TotalTicks(?2)))
###
> ToI8(qt)
ToI8(qt) : i8?*
Binder : ForEach(*1: qt, Guard(?2: *1, ToI8*(?2)))
Reducer: ForEach(*1: qt, Guard(?2: *1, Time.TotalTicks(?2)))
###
> ToI8(qi8)
ToI8(qi8) : i8?*
Binder : ForEach(*1: qi8, Guard(?2: *1, ToI8*(?2)))
Reducer: qi8
###
> ToI8(qi4)
ToI8(qi4) : i8?*
Binder : ForEach(*1: qi4, Guard(?2: *1, ToI8*(?2)))
Reducer: ForEach(*1: qi4, Guard(?2: *1, Num<i8>(?2)))
###
> ToI4(qi4)
ToI4(qi4) : i4?*
Binder : ForEach(*1: qi4, Guard(?2: *1, ToI4*(?2)))
Reducer: qi4
###
> ToI4(qi2)
ToI4(qi2) : i4?*
Binder : ForEach(*1: qi2, Guard(?2: *1, ToI4*(?2)))
Reducer: ForEach(*1: qi2, Guard(?2: *1, Num<i4>(?2)))
###
> ToI2(qi2)
ToI2(qi2) : i2?*
Binder : ForEach(*1: qi2, Guard(?2: *1, ToI2*(?2)))
Reducer: qi2
###
> ToI2(qi1)
ToI2(qi1) : i2?*
Binder : ForEach(*1: qi1, Guard(?2: *1, ToI2*(?2)))
Reducer: ForEach(*1: qi1, Guard(?2: *1, Num<i2>(?2)))
###
> ToI1(qi1)
ToI1(qi1) : i1?*
Binder : ForEach(*1: qi1, Guard(?2: *1, ToI1*(?2)))
Reducer: qi1
###
> ToI8(qu4)
ToI8(qu4) : i8?*
Binder : ForEach(*1: qu4, Guard(?2: *1, ToI8*(?2)))
Reducer: ForEach(*1: qu4, Guard(?2: *1, Num<i8>(?2)))
###
> ToI4(qu2)
ToI4(qu2) : i4?*
Binder : ForEach(*1: qu2, Guard(?2: *1, ToI4*(?2)))
Reducer: ForEach(*1: qu2, Guard(?2: *1, Num<i4>(?2)))
###
> ToI2(qu1)
ToI2(qu1) : i2?*
Binder : ForEach(*1: qu1, Guard(?2: *1, ToI2*(?2)))
Reducer: ForEach(*1: qu1, Guard(?2: *1, Num<i2>(?2)))
###
> ToI4(3.14)
ToI4(3.14) : i4?
Binder : ToI4(3.14)
Reducer: Opt<i4?>(3)
###
> ToI4(1/0)
ToI4(1 / 0) : i4?
Binder : ToI4(Mul(1, [/] 0))
Reducer: null
###
> ToI4(3.14, null)
ToI4(3.14, null) : i4?
Binder : ToI4(3.14, null)
Reducer: Opt<i4?>(3)
###
> ToI4(1/0, null)
ToI4(1 / 0, null) : i4?
Binder : ToI4(Mul(1, [/] 0), null)
Reducer: null
###
> ToI4(3.14, Null(5i2))
ToI4(3.14, Null(5)) : i4?
Binder : ToI4(3.14, Guard(?1: DefOpt*(5), Num<i4>(?1)))
Reducer: Opt<i4?>(3)
###
> ToI4(3.14, Opt (5i2))
ToI4(3.14, Opt(5)) : i4?
Binder : ToI4(3.14, Guard(?1: Opt*(5), Num<i4>(?1)))
Reducer: Opt<i4?>(3)
###
> ToI4(1/0,  Null(5i2))
ToI4(1 / 0, Null(5)) : i4?
Binder : ToI4(Mul(1, [/] 0), Guard(?1: DefOpt*(5), Num<i4>(?1)))
Reducer: null
###
> ToI4(1/0,  Opt (5i2))
ToI4(1 / 0, Opt(5)) : i4?
Binder : ToI4(Mul(1, [/] 0), Guard(?1: Opt*(5), Num<i4>(?1)))
Reducer: Opt<i4?>(5)
###
> ToI4(3.14, 5i2)
ToI4(3.14, 5) : i4
Binder : ToI4(3.14, 5)
Reducer: 3
###
> ToI4(1/0, 5i2)
ToI4(1 / 0, 5) : i4
Binder : ToI4(Mul(1, [/] 0), 5)
Reducer: 5
###
> ToI4(Null(3.14))
ToI4(Null(3.14)) : i4?
Binder : Guard(?1: DefOpt*(3.14), ToI4(?1))
Reducer: null
###
> ToI4(Opt (3.14))
ToI4(Opt(3.14)) : i4?
Binder : Guard(?1: Opt*(3.14), ToI4(?1))
Reducer: Opt<i4?>(3)
###
> ToI4(Opt (1/0 ))
ToI4(Opt(1 / 0)) : i4?
Binder : Guard(?1: Opt*(Mul(1, [/] 0)), ToI4(?1))
Reducer: null
###
> ToI4(Null(3.14), null)
ToI4(Null(3.14), null) : i4?
Binder : Guard(?1: DefOpt*(3.14), ToI4(?1, null))
Reducer: null
###
> ToI4(Opt (3.14), null)
ToI4(Opt(3.14), null) : i4?
Binder : Guard(?1: Opt*(3.14), ToI4(?1, null))
Reducer: Opt<i4?>(3)
###
> ToI4(Opt (1/0 ), null)
ToI4(Opt(1 / 0), null) : i4?
Binder : Guard(?1: Opt*(Mul(1, [/] 0)), ToI4(?1, null))
Reducer: null
###
> ToI4(Null(3.14), Null(5i2))
ToI4(Null(3.14), Null(5)) : i4?
Binder : Guard(?1: DefOpt*(3.14), ToI4(?1, Guard(?2: DefOpt*(5), Num<i4>(?2))))
Reducer: null
###
> ToI4(Null(3.14), Opt (5i2))
ToI4(Null(3.14), Opt(5)) : i4?
Binder : Guard(?1: DefOpt*(3.14), ToI4(?1, Guard(?2: Opt*(5), Num<i4>(?2))))
Reducer: null
###
> ToI4(Opt (3.14), Null(5i2))
ToI4(Opt(3.14), Null(5)) : i4?
Binder : Guard(?1: Opt*(3.14), ToI4(?1, Guard(?2: DefOpt*(5), Num<i4>(?2))))
Reducer: Opt<i4?>(3)
###
> ToI4(Opt (3.14), Opt (5i2))
ToI4(Opt(3.14), Opt(5)) : i4?
Binder : Guard(?1: Opt*(3.14), ToI4(?1, Guard(?2: Opt*(5), Num<i4>(?2))))
Reducer: Opt<i4?>(3)
###
> ToI4(Opt (1/0 ), Null(5i2))
ToI4(Opt(1 / 0), Null(5)) : i4?
Binder : Guard(?1: Opt*(Mul(1, [/] 0)), ToI4(?1, Guard(?2: DefOpt*(5), Num<i4>(?2))))
Reducer: null
###
> ToI4(Opt (1/0 ), Opt (5i2))
ToI4(Opt(1 / 0), Opt(5)) : i4?
Binder : Guard(?1: Opt*(Mul(1, [/] 0)), ToI4(?1, Guard(?2: Opt*(5), Num<i4>(?2))))
Reducer: Opt<i4?>(5)
###
> ToI4(Null(3.14), 5i2)
ToI4(Null(3.14), 5) : i4?
Binder : Guard(?1: DefOpt*(3.14), ToI4(?1, 5))
Reducer: null
###
> ToI4(Opt (3.14), 5i2)
ToI4(Opt(3.14), 5) : i4?
Binder : Guard(?1: Opt*(3.14), ToI4(?1, 5))
Reducer: Opt<i4?>(3)
###
> ToI4(Opt (1/0 ), 5i2)
ToI4(Opt(1 / 0), 5) : i4?
Binder : Guard(?1: Opt*(Mul(1, [/] 0)), ToI4(?1, 5))
Reducer: Opt<i4?>(5)
###
> To(3.14, Null(5i4))
To(3.14, Null(5)) : i4?
Binder : To*(3.14, DefOpt*(5))
Reducer: Opt<i4?>(3)
###
> To(3.14, Opt (5i4))
To(3.14, Opt(5)) : i4?
Binder : To*(3.14, Opt*(5))
Reducer: Opt<i4?>(3)
###
> To(1/0,  Null(5i4))
To(1 / 0, Null(5)) : i4?
Binder : To*(Mul(1, [/] 0), DefOpt*(5))
Reducer: null
###
> To(1/0,  Opt (5i4))
To(1 / 0, Opt(5)) : i4?
Binder : To*(Mul(1, [/] 0), Opt*(5))
Reducer: Opt<i4?>(5)
###
> To(3.14, 5i4)
To(3.14, 5) : i4
Binder : To*(3.14, 5)
Reducer: 3
###
> To(1/0,  5i4)
To(1 / 0, 5) : i4
Binder : To*(Mul(1, [/] 0), 5)
Reducer: 5
###
> To(Null(3.14), Null(5i4))
To(Null(3.14), Null(5)) : i4?
Binder : Guard(?1: DefOpt*(3.14), To*(?1, DefOpt*(5)))
Reducer: null
###
> To(Null(3.14), Opt (5i4))
To(Null(3.14), Opt(5)) : i4?
Binder : Guard(?1: DefOpt*(3.14), To*(?1, Opt*(5)))
Reducer: null
###
> To(Opt (3.14), Null(5i4))
To(Opt(3.14), Null(5)) : i4?
Binder : Guard(?1: Opt*(3.14), To*(?1, DefOpt*(5)))
Reducer: Opt<i4?>(3)
###
> To(Opt (3.14), Opt (5i4))
To(Opt(3.14), Opt(5)) : i4?
Binder : Guard(?1: Opt*(3.14), To*(?1, Opt*(5)))
Reducer: Opt<i4?>(3)
###
> To(Opt (1/0 ), Null(5i4))
To(Opt(1 / 0), Null(5)) : i4?
Binder : Guard(?1: Opt*(Mul(1, [/] 0)), To*(?1, DefOpt*(5)))
Reducer: null
###
> To(Opt (1/0 ), Opt (5i4))
To(Opt(1 / 0), Opt(5)) : i4?
Binder : Guard(?1: Opt*(Mul(1, [/] 0)), To*(?1, Opt*(5)))
Reducer: Opt<i4?>(5)
###
> To(Null(3.14), 5i4)
To(Null(3.14), 5) : i4?
Binder : Guard(?1: DefOpt*(3.14), To*(?1, 5))
Reducer: null
###
> To(Opt (3.14), 5i4)
To(Opt(3.14), 5) : i4?
Binder : Guard(?1: Opt*(3.14), To*(?1, 5))
Reducer: Opt<i4?>(3)
###
> To(Opt (1/0 ), 5i4)
To(Opt(1 / 0), 5) : i4?
Binder : Guard(?1: Opt*(Mul(1, [/] 0)), To*(?1, 5))
Reducer: Opt<i4?>(5)
###
> ToI4(false)
ToI4(false) : i4
Binder : ToI4*(false)
Reducer: 0
###
> ToI4(true)
ToI4(true) : i4
Binder : ToI4*(true)
Reducer: 1
###
> ToI1(-129)
ToI1(-129) : i1?
Binder : ToI1(-129)
Reducer: null
###
> ToI1(-128)
ToI1(-128) : i1?
Binder : ToI1(-128)
Reducer: Opt<i1?>(-128)
###
> ToI1(127)
ToI1(127) : i1?
Binder : ToI1(127)
Reducer: Opt<i1?>(127)
###
> ToI1(128)
ToI1(128) : i1?
Binder : ToI1(128)
Reducer: null
###
> To(-129, 5i1)
To(-129, 5) : i1
Binder : To*(-129, 5)
Reducer: 5
###
> ToI2(-32769)
ToI2(-32769) : i2?
Binder : ToI2(-32769)
Reducer: null
###
> ToI2(-32768)
ToI2(-32768) : i2?
Binder : ToI2(-32768)
Reducer: Opt<i2?>(-32768)
###
> ToI2(32767)
ToI2(32767) : i2?
Binder : ToI2(32767)
Reducer: Opt<i2?>(32767)
###
> ToI2(32768)
ToI2(32768) : i2?
Binder : ToI2(32768)
Reducer: null
###
> To(-32768, 5i2)
To(-32768, 5) : i2
Binder : To*(-32768, 5)
Reducer: -32768
###
> ToI4(-2147483649i8)
ToI4(-2147483649) : i4?
Binder : ToI4(-2147483649)
Reducer: null
###
> ToI4(-2147483648i8)
ToI4(-2147483648) : i4?
Binder : ToI4(-2147483648)
Reducer: Opt<i4?>(-2147483648)
###
> ToI4(2147483647i8)
ToI4(2147483647) : i4?
Binder : ToI4(2147483647)
Reducer: Opt<i4?>(2147483647)
###
> ToI4(2147483648i8)
ToI4(2147483648) : i4?
Binder : ToI4(2147483648)
Reducer: null
###
> To(2147483647i8, 5i4)
To(2147483647, 5) : i4
Binder : To*(2147483647, 5)
Reducer: 2147483647
###
> ToI8(-9223372036854775809ia)
ToI8(-9223372036854775809) : i8?
Binder : ToI8(-9223372036854775809)
Reducer: null
###
> ToI8(-9223372036854775808ia)
ToI8(-9223372036854775808) : i8?
Binder : ToI8(-9223372036854775808)
Reducer: Opt<i8?>(-9223372036854775808)
###
> ToI8(9223372036854775807ia)
ToI8(9223372036854775807) : i8?
Binder : ToI8(9223372036854775807)
Reducer: Opt<i8?>(9223372036854775807)
###
> ToI8(9223372036854775808ia)
ToI8(9223372036854775808) : i8?
Binder : ToI8(9223372036854775808)
Reducer: null
###
> To(9223372036854775808ia, 5i8)
To(9223372036854775808, 5) : i8
Binder : To*(9223372036854775808, 5)
Reducer: 5
###
> ToI4(-1/0)
ToI4(-1 / 0) : i4?
Binder : ToI4(Mul(-1, [/] 0))
Reducer: null
###
> ToI4(1/0)
ToI4(1 / 0) : i4?
Binder : ToI4(Mul(1, [/] 0))
Reducer: null
###
> ToI4(0/0)
ToI4(0 / 0) : i4?
Binder : ToI4(Mul(0, [/] 0))
Reducer: null
###
> To(-1/0, 5i4)
To(-1 / 0, 5) : i4
Binder : To*(Mul(-1, [/] 0), 5)
Reducer: 5
###
> To(1/0, 5i4)
To(1 / 0, 5) : i4
Binder : To*(Mul(1, [/] 0), 5)
Reducer: 5
###
> ToI4(0/0, 5i4)
ToI4(0 / 0, 5) : i4
Binder : ToI4(Mul(0, [/] 0), 5)
Reducer: 5
###
> ToI1(-0x10200000000000 * 2.0 ^ 45)
ToI1(-4538783999459328 * 2^45) : i1?
Binder : ToI1(Mul(-4538783999459328, Power(2, 45)))
Reducer: null
###
> ToI1(-0x101FFFFFFFFFFF * 2.0 ^ -45)
ToI1(-4538783999459327 * 2^-45) : i1?
Binder : ToI1(Mul(-4538783999459327, Power(2, -45)))
Reducer: Opt<i1?>(-128)
###
> ToI1(CastR4(-0x800000  * 2.0 ^ -16))
ToI1(CastR4(-8388608 * 2^-16)) : i1?
Binder : ToI1(CastR4(Mul(-8388608, Power(2, -16))))
Reducer: Opt<i1?>(-128)
###
> ToI1(CastR4( 0xFFFFFF  * 2.0 ^ -17))
ToI1(CastR4(16777215 * 2^-17)) : i1?
Binder : ToI1(CastR4(Mul(16777215, Power(2, -17))))
Reducer: Opt<i1?>(127)
###
> ToI1(0x1FFFFFFFFFFFFF  * 2.0 ^ -46)
ToI1(9007199254740991 * 2^-46) : i1?
Binder : ToI1(Mul(9007199254740991, Power(2, -46)))
Reducer: Opt<i1?>(127)
###
> ToI1(0x10000000000000  * 2.0 ^ -45)
ToI1(4503599627370496 * 2^-45) : i1?
Binder : ToI1(Mul(4503599627370496, Power(2, -45)))
Reducer: null
###
> ToI2(-0x10200000000000 * 2.0 ^ -37)
ToI2(-4538783999459328 * 2^-37) : i2?
Binder : ToI2(Mul(-4538783999459328, Power(2, -37)))
Reducer: null
###
> ToI2(-0x10001FFFFFFFFF * 2.0 ^ -37)
ToI2(-4503737066323967 * 2^-37) : i2?
Binder : ToI2(Mul(-4503737066323967, Power(2, -37)))
Reducer: Opt<i2?>(-32768)
###
> ToI2(CastR4(-0x800000  * 2.0 ^ -8))
ToI2(CastR4(-8388608 * 2^-8)) : i2?
Binder : ToI2(CastR4(Mul(-8388608, Power(2, -8))))
Reducer: Opt<i2?>(-32768)
###
> ToI2(CastR4( 0xFFFFFF  * 2.0 ^ -9))
ToI2(CastR4(16777215 * 2^-9)) : i2?
Binder : ToI2(CastR4(Mul(16777215, Power(2, -9))))
Reducer: Opt<i2?>(32767)
###
> ToI2(0x1FFFFFFFFFFFFF  * 2.0 ^ -38)
ToI2(9007199254740991 * 2^-38) : i2?
Binder : ToI2(Mul(9007199254740991, Power(2, -38)))
Reducer: Opt<i2?>(32767)
###
> ToI2(0x10000000000000  * 2.0 ^ -37)
ToI2(4503599627370496 * 2^-37) : i2?
Binder : ToI2(Mul(4503599627370496, Power(2, -37)))
Reducer: null
###
> ToI4(-0x10000020000000 * 2.0 ^ -21)
ToI4(-4503600164241408 * 2^-21) : i4?
Binder : ToI4(Mul(-4503600164241408, Power(2, -21)))
Reducer: null
###
> ToI4(-0x100000001FFFFF * 2.0 ^ -21)
ToI4(-4503599629467647 * 2^-21) : i4?
Binder : ToI4(Mul(-4503599629467647, Power(2, -21)))
Reducer: Opt<i4?>(-2147483648)
###
> ToI4(CastR4(-0x800000  * 2.0 ^ 8))
ToI4(CastR4(-8388608 * 2^8)) : i4?
Binder : ToI4(CastR4(Mul(-8388608, Power(2, 8))))
Reducer: Opt<i4?>(-2147483648)
###
> ToI4(CastR4( 0xFFFFFF  * 2.0 ^ 7))
ToI4(CastR4(16777215 * 2^7)) : i4?
Binder : ToI4(CastR4(Mul(16777215, Power(2, 7))))
Reducer: Opt<i4?>(2147483520)
###
> ToI4(0x1FFFFFFFFFFFFF  * 2.0 ^ -22)
ToI4(9007199254740991 * 2^-22) : i4?
Binder : ToI4(Mul(9007199254740991, Power(2, -22)))
Reducer: Opt<i4?>(2147483647)
###
> ToI4(0x10000000000000  * 2.0 ^ -21)
ToI4(4503599627370496 * 2^-21) : i4?
Binder : ToI4(Mul(4503599627370496, Power(2, -21)))
Reducer: null
###
> ToI8(-0x10000000000001 * 2.0 ^ 11)
ToI8(-4503599627370497 * 2^11) : i8?
Binder : ToI8(Mul(-4503599627370497, Power(2, 11)))
Reducer: null
###
> ToI8(-0x10000000000000 * 2.0 ^ 11)
ToI8(-4503599627370496 * 2^11) : i8?
Binder : ToI8(Mul(-4503599627370496, Power(2, 11)))
Reducer: Opt<i8?>(-9223372036854775808)
###
> ToI8(CastR4(-0x800000  * 2.0 ^ 40))
ToI8(CastR4(-8388608 * 2^40)) : i8?
Binder : ToI8(CastR4(Mul(-8388608, Power(2, 40))))
Reducer: Opt<i8?>(-9223372036854775808)
###
> ToI8(CastR4( 0xFFFFFF  * 2.0 ^ 39))
ToI8(CastR4(16777215 * 2^39)) : i8?
Binder : ToI8(CastR4(Mul(16777215, Power(2, 39))))
Reducer: Opt<i8?>(9223371487098961920)
###
> ToI8( 0x1FFFFFFFFFFFFF * 2.0 ^ 10)
ToI8(9007199254740991 * 2^10) : i8?
Binder : ToI8(Mul(9007199254740991, Power(2, 10)))
Reducer: Opt<i8?>(9223372036854774784)
###
> ToI8( 0x10000000000000 * 2.0 ^ 11)
ToI8(4503599627370496 * 2^11) : i8?
Binder : ToI8(Mul(4503599627370496, Power(2, 11)))
Reducer: null
###
> ToI4("")
ToI4("") : i4?
Binder : ToI4("")
Reducer: null
###
> ToI4(" ")
ToI4(" ") : i4?
Binder : ToI4(" ")
Reducer: null
###
> To("", 1i2)
To("", 1) : i2
Binder : To*("", 1)
Reducer: 1
###
> ToI4(" ", 2i2)
ToI4(" ", 2) : i4
Binder : ToI4(" ", 2)
Reducer: 2
###
> ToI4("false")
ToI4("false") : i4?
Binder : ToI4("false")
Reducer: null
###
> ToI4("true")
ToI4("true") : i4?
Binder : ToI4("true")
Reducer: null
###
> To("false", 0i4)
To("false", 0) : i4
Binder : To*("false", 0)
Reducer: 0
###
> ToI4("true", 1i2)
ToI4("true", 1) : i4
Binder : ToI4("true", 1)
Reducer: 1
###
> ToI4("1_234")
ToI4("1_234") : i4?
Binder : ToI4("1_234")
Reducer: null
###
> To("1_234", 5i4)
To("1_234", 5) : i4
Binder : To*("1_234", 5)
Reducer: 5
###
> ToI4("-0")
ToI4("-0") : i4?
Binder : ToI4("-0")
Reducer: Opt<i4?>(0)
###
> ToI1("-129")
ToI1("-129") : i1?
Binder : ToI1("-129")
Reducer: null
###
> ToI1("-128")
ToI1("-128") : i1?
Binder : ToI1("-128")
Reducer: Opt<i1?>(-128)
###
> ToI1("127")
ToI1("127") : i1?
Binder : ToI1("127")
Reducer: Opt<i1?>(127)
###
> ToI1("128")
ToI1("128") : i1?
Binder : ToI1("128")
Reducer: null
###
> To("-129", 5u1)
To("-129", 5) : u1
Binder : To*("-129", 5)
Reducer: 5
###
> ToI2("-32769 ")
ToI2("-32769 ") : i2?
Binder : ToI2("-32769 ")
Reducer: null
###
> ToI2("(32768)")
ToI2("(32768)") : i2?
Binder : ToI2("(32768)")
Reducer: Opt<i2?>(-32768)
###
> ToI2(" 32767 ")
ToI2(" 32767 ") : i2?
Binder : ToI2(" 32767 ")
Reducer: Opt<i2?>(32767)
###
> ToI2(" 32768 ")
ToI2(" 32768 ") : i2?
Binder : ToI2(" 32768 ")
Reducer: null
###
> To("(32,768)", 5i2)
To("(32,768)", 5) : i2
Binder : To*("(32,768)", 5)
Reducer: -32768
###
> ToI4("(2,147,483,649)")
ToI4("(2,147,483,649)") : i4?
Binder : ToI4("(2,147,483,649)")
Reducer: null
###
> ToI4("-2,147,483,648 ")
ToI4("-2,147,483,648 ") : i4?
Binder : ToI4("-2,147,483,648 ")
Reducer: Opt<i4?>(-2147483648)
###
> ToI4(" 2,147,483,647 ")
ToI4(" 2,147,483,647 ") : i4?
Binder : ToI4(" 2,147,483,647 ")
Reducer: Opt<i4?>(2147483647)
###
> ToI4(" 2,147,483,648 ")
ToI4(" 2,147,483,648 ") : i4?
Binder : ToI4(" 2,147,483,648 ")
Reducer: null
###
> To("2,147,483,647", 5i4)
To("2,147,483,647", 5) : i4
Binder : To*("2,147,483,647", 5)
Reducer: 2147483647
###
> ToI8("-9,223,372,036,854,775,809 ")
ToI8("-9,223,372,036,854,775,809 ") : i8?
Binder : ToI8("-9,223,372,036,854,775,809 ")
Reducer: null
###
> ToI8("(9,223,372,036,854,775,808)")
ToI8("(9,223,372,036,854,775,808)") : i8?
Binder : ToI8("(9,223,372,036,854,775,808)")
Reducer: Opt<i8?>(-9223372036854775808)
###
> ToI8(" 9,223,372,036,854,775,807 ")
ToI8(" 9,223,372,036,854,775,807 ") : i8?
Binder : ToI8(" 9,223,372,036,854,775,807 ")
Reducer: Opt<i8?>(9223372036854775807)
###
> ToI8(" 9,223,372,036,854,775,808 ")
ToI8(" 9,223,372,036,854,775,808 ") : i8?
Binder : ToI8(" 9,223,372,036,854,775,808 ")
Reducer: null
###
> To("9,223,372,036,854,775,808", 5i8)
To("9,223,372,036,854,775,808", 5) : i8
Binder : To*("9,223,372,036,854,775,808", 5)
Reducer: 5
###
> ToI4("-0.0")
ToI4("-0.0") : i4?
Binder : ToI4("-0.0")
Reducer: null
###
> ToI4("12.34")
ToI4("12.34") : i4?
Binder : ToI4("12.34")
Reducer: null
###
> ToI4("2e20")
ToI4("2e20") : i4?
Binder : ToI4("2e20")
Reducer: null
###
> ToI4("∞")
ToI4("∞") : i4?
Binder : ToI4("∞")
Reducer: null
###
> ToI4("Infinity")
ToI4("Infinity") : i4?
Binder : ToI4("Infinity")
Reducer: null
###
> ToI4("NaN")
ToI4("NaN") : i4?
Binder : ToI4("NaN")
Reducer: null
###
> To("-0.0", 5i4)
To("-0.0", 5) : i4
Binder : To*("-0.0", 5)
Reducer: 5
###
> To("12.34", 5i4)
To("12.34", 5) : i4
Binder : To*("12.34", 5)
Reducer: 5
###
> To("2e20", 5i4)
To("2e20", 5) : i4
Binder : To*("2e20", 5)
Reducer: 5
###
> ToI4("∞", 5i4)
ToI4("∞", 5) : i4
Binder : ToI4("∞", 5)
Reducer: 5
###
> ToI4("Infinity", 5i2)
ToI4("Infinity", 5) : i4
Binder : ToI4("Infinity", 5)
Reducer: 5
###
> ToI4("NaN", 5i2)
ToI4("NaN", 5) : i4
Binder : ToI4("NaN", 5)
Reducer: 5
###
> ToI1(Date(1, 1, 1, 0, 0, 0, 0, 128))
ToI1(Date(1, 1, 1, 0, 0, 0, 0, 128)) : i1?
Binder : ToI1*(Date(1, 1, 1, 0, 0, 0, 0, 128))
Reducer: ToI1(Date.TotalTicks(Date(1, 1, 1, 0, 0, 0, 0, 128)))
###
> ToI1(Time(0, 0, 0, 0, 0, 128))
ToI1(Time(0, 0, 0, 0, 0, 128)) : i1?
Binder : ToI1*(Time(0, 0, 0, 0, 0, 128))
Reducer: ToI1(Time.TotalTicks(Time(0, 0, 0, 0, 0, 128)))
###
