**** New globals: {G:G, b:b, d:d, g:g, i:i, i1:i1, i2:i2, i4:i4, i8:i8, n:r8, o:o, qG:G?, qb:b?, qd:d?, qi:i?, qi1:i1?, qi2:i2?, qi4:i4?, qi8:i8?, qn:r8?, 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}

> ToText(o)
ToText(o) : s
BndKind:Str, Type:s, Bnd:(str(<null>))
// () : s
top(Arr<obj>, Arr<obj>):obj
      1) ldnull
      1) ret
  Total Size: 2

Func sig: () to s
Type: <null>, Value: <null>
###
> ToText(s)
ToText(s) : s
BndKind:Global, Type:s, Bnd:(Global(s))
// (∂.s:s) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToRef(obj):str
      1) stloc.0 [str]
      1) ldloc.0 [str]
      1) ret
  Total Size: 11

Func sig: (s:s) to s
Type: <null>, Value: <null>
###
> ToText(G)
ToText(G) : s
BndKind:Call, Type:s, Bnd:(Call(∂.ToText(Global(G)):s))
// (∂.G:G) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToVal(obj):Guid
      1) stloc.0 [Guid]
      1) ldloc.0 [Guid]
      1) stloc.1 [Guid]
      2) ldloca.s [Guid (1)]
      5) call Guid::ToString():str
      1) ret
  Total Size: 19

Func sig: (G:G) to s
Type: str, Value: 00000000-0000-0000-0000-000000000000
###
> ToText(b)
ToText(b) : s
BndKind:Call, Type:s, Bnd:(Call(∂.ToText(Global(b)):s))
// (∂.b:b) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToVal(obj):bool
      1) stloc.0 [bool]
      1) ldloc.0 [bool]
      5) brfalse [0]
      5) ldstr [true]
      5) br [1]
  Label [0]:
      5) ldstr [false]
  Label [1]:
      1) ret
  Total Size: 31

Func sig: (b:b) to s
Type: str, Value: false
###
> ToText(d)
ToText(d) : s
BndKind:Call, Type:s, Bnd:(Call(∂.ToText(Global(d)):s))
// (∂.d:d) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToVal(obj):Date
      1) stloc.0 [Date]
      1) ldloc.0 [Date]
      5) call static ToTextGen::Exec(Date):str
      1) ret
  Total Size: 16

Func sig: (d:d) to s
Type: str, Value: 01/01/0001 00:00:00
###
> ToText(n)
ToText(n) : s
BndKind:Call, Type:s, Bnd:(Call(∂.ToText(Global(n)):s))
// (∂.n:r8) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToVal(obj):r8
      1) stloc.0 [r8]
      1) ldloc.0 [r8]
      5) call static NumUtil::ToStr(r8):str
      1) ret
  Total Size: 16

Func sig: (n:r8) to s
Type: str, Value: 0
###
> ToText(r8)
ToText(r8) : s
BndKind:Call, Type:s, Bnd:(Call(∂.ToText(Global(r8)):s))
// (∂.r8:r8) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToVal(obj):r8
      1) stloc.0 [r8]
      1) ldloc.0 [r8]
      5) call static NumUtil::ToStr(r8):str
      1) ret
  Total Size: 16

Func sig: (r8:r8) to s
Type: str, Value: 0
###
> ToText(r4)
ToText(r4) : s
BndKind:Call, Type:s, Bnd:(Call(∂.ToText(Global(r4)):s))
// (∂.r4:r4) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToVal(obj):r4
      1) stloc.0 [r4]
      1) ldloc.0 [r4]
      5) call static NumUtil::ToStr(r4):str
      1) ret
  Total Size: 16

Func sig: (r4:r4) to s
Type: str, Value: 0
###
> ToText(i)
ToText(i) : s
BndKind:Call, Type:s, Bnd:(Call(∂.ToText(Global(i)):s))
// (∂.i:i) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToVal(obj):ia
      1) stloc.0 [ia]
      1) ldloc.0 [ia]
      1) stloc.1 [ia]
      2) ldloca.s [ia (1)]
      5) call ia::ToString():str
      1) ret
  Total Size: 19

Func sig: (i:i) to s
Type: str, Value: 0
###
> ToText(i8)
ToText(i8) : s
BndKind:Call, Type:s, Bnd:(Call(∂.ToText(Global(i8)):s))
// (∂.i8:i8) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToVal(obj):i8
      1) stloc.0 [i8]
      1) ldloc.0 [i8]
      1) stloc.1 [i8]
      2) ldloca.s [i8 (1)]
      5) call i8::ToString():str
      1) ret
  Total Size: 19

Func sig: (i8:i8) to s
Type: str, Value: 0
###
> ToText(i4)
ToText(i4) : s
BndKind:Call, Type:s, Bnd:(Call(∂.ToText(Global(i4)):s))
// (∂.i4:i4) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToVal(obj):i4
      1) stloc.0 [i4]
      1) ldloc.0 [i4]
      1) stloc.1 [i4]
      2) ldloca.s [i4 (1)]
      5) call i4::ToString():str
      1) ret
  Total Size: 19

Func sig: (i4:i4) to s
Type: str, Value: 0
###
> ToText(i2)
ToText(i2) : s
BndKind:Call, Type:s, Bnd:(Call(∂.ToText(Global(i2)):s))
// (∂.i2:i2) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToVal(obj):i2
      1) stloc.0 [i2]
      1) ldloc.0 [i2]
      1) stloc.1 [i2]
      2) ldloca.s [i2 (1)]
      5) call i2::ToString():str
      1) ret
  Total Size: 19

Func sig: (i2:i2) to s
Type: str, Value: 0
###
> ToText(i1)
ToText(i1) : s
BndKind:Call, Type:s, Bnd:(Call(∂.ToText(Global(i1)):s))
// (∂.i1:i1) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToVal(obj):i1
      1) stloc.0 [i1]
      1) ldloc.0 [i1]
      1) stloc.1 [i1]
      2) ldloca.s [i1 (1)]
      5) call i1::ToString():str
      1) ret
  Total Size: 19

Func sig: (i1:i1) to s
Type: str, Value: 0
###
> ToText(u8)
ToText(u8) : s
BndKind:Call, Type:s, Bnd:(Call(∂.ToText(Global(u8)):s))
// (∂.u8:u8) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToVal(obj):u8
      1) stloc.0 [u8]
      1) ldloc.0 [u8]
      1) stloc.1 [u8]
      2) ldloca.s [u8 (1)]
      5) call u8::ToString():str
      1) ret
  Total Size: 19

Func sig: (u8:u8) to s
Type: str, Value: 0
###
> ToText(u4)
ToText(u4) : s
BndKind:Call, Type:s, Bnd:(Call(∂.ToText(Global(u4)):s))
// (∂.u4:u4) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToVal(obj):u4
      1) stloc.0 [u4]
      1) ldloc.0 [u4]
      1) stloc.1 [u4]
      2) ldloca.s [u4 (1)]
      5) call u4::ToString():str
      1) ret
  Total Size: 19

Func sig: (u4:u4) to s
Type: str, Value: 0
###
> ToText(u2)
ToText(u2) : s
BndKind:Call, Type:s, Bnd:(Call(∂.ToText(Global(u2)):s))
// (∂.u2:u2) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToVal(obj):u2
      1) stloc.0 [u2]
      1) ldloc.0 [u2]
      1) stloc.1 [u2]
      2) ldloca.s [u2 (1)]
      5) call u2::ToString():str
      1) ret
  Total Size: 19

Func sig: (u2:u2) to s
Type: str, Value: 0
###
> ToText(u1)
ToText(u1) : s
BndKind:Call, Type:s, Bnd:(Call(∂.ToText(Global(u1)):s))
// (∂.u1:u1) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToVal(obj):u1
      1) stloc.0 [u1]
      1) ldloc.0 [u1]
      1) stloc.1 [u1]
      2) ldloca.s [u1 (1)]
      5) call u1::ToString():str
      1) ret
  Total Size: 19

Func sig: (u1:u1) to s
Type: str, Value: 0
###
> ToText(qG)
ToText(qG) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Guard([guard:1] Global(qG), Call(∂.ToText(Scope(1)):s)):s))
// (∂.qG:G?) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToOpt(obj):Opt<Guid>
      1) stloc.0 [Opt<Guid>]
      2) ldloca.s [Opt<Guid> (0)]
      5) call Opt<Guid>::get_HasValue():bool
      5) brfalse [0]
      2) ldloca.s [Opt<Guid> (0)]
      5) call Opt<Guid>::GetValueOrDefault():Guid
      1) stloc.1 [Guid]
      1) ldloc.1 [Guid]
      1) stloc.2 [Guid]
      2) ldloca.s [Guid (2)]
      5) call Guid::ToString():str
      5) br [1]
  Label [0]:
      1) ldnull
  Label [1]:
      1) ret
  Total Size: 45

Func sig: (qG:G?) to s
Type: <null>, Value: <null>
###
> ToText(qb)
ToText(qb) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Guard([guard:1] Global(qb), Call(∂.ToText(Scope(1)):s)):s))
// (∂.qb:b?) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToOpt(obj):Opt<bool>
      1) stloc.0 [Opt<bool>]
      2) ldloca.s [Opt<bool> (0)]
      5) call Opt<bool>::get_HasValue():bool
      5) brfalse [0]
      2) ldloca.s [Opt<bool> (0)]
      5) call Opt<bool>::GetValueOrDefault():bool
      1) stloc.1 [bool]
      1) ldloc.1 [bool]
      5) brfalse [1]
      5) ldstr [true]
      5) br [2]
  Label [1]:
      5) ldstr [false]
  Label [2]:
      5) br [3]
  Label [0]:
      1) ldnull
  Label [3]:
      1) ret
  Total Size: 57

Func sig: (qb:b?) to s
Type: <null>, Value: <null>
###
> ToText(qd)
ToText(qd) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Guard([guard:1] Global(qd), Call(∂.ToText(Scope(1)):s)):s))
// (∂.qd:d?) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToOpt(obj):Opt<Date>
      1) stloc.0 [Opt<Date>]
      2) ldloca.s [Opt<Date> (0)]
      5) call Opt<Date>::get_HasValue():bool
      5) brfalse [0]
      2) ldloca.s [Opt<Date> (0)]
      5) call Opt<Date>::GetValueOrDefault():Date
      1) stloc.1 [Date]
      1) ldloc.1 [Date]
      5) call static ToTextGen::Exec(Date):str
      5) br [1]
  Label [0]:
      1) ldnull
  Label [1]:
      1) ret
  Total Size: 42

Func sig: (qd:d?) to s
Type: <null>, Value: <null>
###
> ToText(qn)
ToText(qn) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Guard([guard:1] Global(qn), Call(∂.ToText(Scope(1)):s)):s))
// (∂.qn:r8?) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToOpt(obj):Opt<r8>
      1) stloc.0 [Opt<r8>]
      2) ldloca.s [Opt<r8> (0)]
      5) call Opt<r8>::get_HasValue():bool
      5) brfalse [0]
      2) ldloca.s [Opt<r8> (0)]
      5) call Opt<r8>::GetValueOrDefault():r8
      1) stloc.1 [r8]
      1) ldloc.1 [r8]
      5) call static NumUtil::ToStr(r8):str
      5) br [1]
  Label [0]:
      1) ldnull
  Label [1]:
      1) ret
  Total Size: 42

Func sig: (qn:r8?) to s
Type: <null>, Value: <null>
###
> ToText(qr8)
ToText(qr8) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Guard([guard:1] Global(qr8), Call(∂.ToText(Scope(1)):s)):s))
// (∂.qr8:r8?) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToOpt(obj):Opt<r8>
      1) stloc.0 [Opt<r8>]
      2) ldloca.s [Opt<r8> (0)]
      5) call Opt<r8>::get_HasValue():bool
      5) brfalse [0]
      2) ldloca.s [Opt<r8> (0)]
      5) call Opt<r8>::GetValueOrDefault():r8
      1) stloc.1 [r8]
      1) ldloc.1 [r8]
      5) call static NumUtil::ToStr(r8):str
      5) br [1]
  Label [0]:
      1) ldnull
  Label [1]:
      1) ret
  Total Size: 42

Func sig: (qr8:r8?) to s
Type: <null>, Value: <null>
###
> ToText(qr4)
ToText(qr4) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Guard([guard:1] Global(qr4), Call(∂.ToText(Scope(1)):s)):s))
// (∂.qr4:r4?) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToOpt(obj):Opt<r4>
      1) stloc.0 [Opt<r4>]
      2) ldloca.s [Opt<r4> (0)]
      5) call Opt<r4>::get_HasValue():bool
      5) brfalse [0]
      2) ldloca.s [Opt<r4> (0)]
      5) call Opt<r4>::GetValueOrDefault():r4
      1) stloc.1 [r4]
      1) ldloc.1 [r4]
      5) call static NumUtil::ToStr(r4):str
      5) br [1]
  Label [0]:
      1) ldnull
  Label [1]:
      1) ret
  Total Size: 42

Func sig: (qr4:r4?) to s
Type: <null>, Value: <null>
###
> ToText(qi)
ToText(qi) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Guard([guard:1] Global(qi), Call(∂.ToText(Scope(1)):s)):s))
// (∂.qi:i?) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToOpt(obj):Opt<ia>
      1) stloc.0 [Opt<ia>]
      2) ldloca.s [Opt<ia> (0)]
      5) call Opt<ia>::get_HasValue():bool
      5) brfalse [0]
      2) ldloca.s [Opt<ia> (0)]
      5) call Opt<ia>::GetValueOrDefault():ia
      1) stloc.1 [ia]
      1) ldloc.1 [ia]
      1) stloc.2 [ia]
      2) ldloca.s [ia (2)]
      5) call ia::ToString():str
      5) br [1]
  Label [0]:
      1) ldnull
  Label [1]:
      1) ret
  Total Size: 45

Func sig: (qi:i?) to s
Type: <null>, Value: <null>
###
> ToText(qi8)
ToText(qi8) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Guard([guard:1] Global(qi8), Call(∂.ToText(Scope(1)):s)):s))
// (∂.qi8:i8?) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToOpt(obj):Opt<i8>
      1) stloc.0 [Opt<i8>]
      2) ldloca.s [Opt<i8> (0)]
      5) call Opt<i8>::get_HasValue():bool
      5) brfalse [0]
      2) ldloca.s [Opt<i8> (0)]
      5) call Opt<i8>::GetValueOrDefault():i8
      1) stloc.1 [i8]
      1) ldloc.1 [i8]
      1) stloc.2 [i8]
      2) ldloca.s [i8 (2)]
      5) call i8::ToString():str
      5) br [1]
  Label [0]:
      1) ldnull
  Label [1]:
      1) ret
  Total Size: 45

Func sig: (qi8:i8?) to s
Type: <null>, Value: <null>
###
> ToText(qi4)
ToText(qi4) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Guard([guard:1] Global(qi4), Call(∂.ToText(Scope(1)):s)):s))
// (∂.qi4:i4?) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToOpt(obj):Opt<i4>
      1) stloc.0 [Opt<i4>]
      2) ldloca.s [Opt<i4> (0)]
      5) call Opt<i4>::get_HasValue():bool
      5) brfalse [0]
      2) ldloca.s [Opt<i4> (0)]
      5) call Opt<i4>::GetValueOrDefault():i4
      1) stloc.1 [i4]
      1) ldloc.1 [i4]
      1) stloc.2 [i4]
      2) ldloca.s [i4 (2)]
      5) call i4::ToString():str
      5) br [1]
  Label [0]:
      1) ldnull
  Label [1]:
      1) ret
  Total Size: 45

Func sig: (qi4:i4?) to s
Type: <null>, Value: <null>
###
> ToText(qi2)
ToText(qi2) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Guard([guard:1] Global(qi2), Call(∂.ToText(Scope(1)):s)):s))
// (∂.qi2:i2?) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToOpt(obj):Opt<i2>
      1) stloc.0 [Opt<i2>]
      2) ldloca.s [Opt<i2> (0)]
      5) call Opt<i2>::get_HasValue():bool
      5) brfalse [0]
      2) ldloca.s [Opt<i2> (0)]
      5) call Opt<i2>::GetValueOrDefault():i2
      1) stloc.1 [i2]
      1) ldloc.1 [i2]
      1) stloc.2 [i2]
      2) ldloca.s [i2 (2)]
      5) call i2::ToString():str
      5) br [1]
  Label [0]:
      1) ldnull
  Label [1]:
      1) ret
  Total Size: 45

Func sig: (qi2:i2?) to s
Type: <null>, Value: <null>
###
> ToText(qi1)
ToText(qi1) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Guard([guard:1] Global(qi1), Call(∂.ToText(Scope(1)):s)):s))
// (∂.qi1:i1?) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToOpt(obj):Opt<i1>
      1) stloc.0 [Opt<i1>]
      2) ldloca.s [Opt<i1> (0)]
      5) call Opt<i1>::get_HasValue():bool
      5) brfalse [0]
      2) ldloca.s [Opt<i1> (0)]
      5) call Opt<i1>::GetValueOrDefault():i1
      1) stloc.1 [i1]
      1) ldloc.1 [i1]
      1) stloc.2 [i1]
      2) ldloca.s [i1 (2)]
      5) call i1::ToString():str
      5) br [1]
  Label [0]:
      1) ldnull
  Label [1]:
      1) ret
  Total Size: 45

Func sig: (qi1:i1?) to s
Type: <null>, Value: <null>
###
> ToText(qu8)
ToText(qu8) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Guard([guard:1] Global(qu8), Call(∂.ToText(Scope(1)):s)):s))
// (∂.qu8:u8?) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToOpt(obj):Opt<u8>
      1) stloc.0 [Opt<u8>]
      2) ldloca.s [Opt<u8> (0)]
      5) call Opt<u8>::get_HasValue():bool
      5) brfalse [0]
      2) ldloca.s [Opt<u8> (0)]
      5) call Opt<u8>::GetValueOrDefault():u8
      1) stloc.1 [u8]
      1) ldloc.1 [u8]
      1) stloc.2 [u8]
      2) ldloca.s [u8 (2)]
      5) call u8::ToString():str
      5) br [1]
  Label [0]:
      1) ldnull
  Label [1]:
      1) ret
  Total Size: 45

Func sig: (qu8:u8?) to s
Type: <null>, Value: <null>
###
> ToText(qu4)
ToText(qu4) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Guard([guard:1] Global(qu4), Call(∂.ToText(Scope(1)):s)):s))
// (∂.qu4:u4?) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToOpt(obj):Opt<u4>
      1) stloc.0 [Opt<u4>]
      2) ldloca.s [Opt<u4> (0)]
      5) call Opt<u4>::get_HasValue():bool
      5) brfalse [0]
      2) ldloca.s [Opt<u4> (0)]
      5) call Opt<u4>::GetValueOrDefault():u4
      1) stloc.1 [u4]
      1) ldloc.1 [u4]
      1) stloc.2 [u4]
      2) ldloca.s [u4 (2)]
      5) call u4::ToString():str
      5) br [1]
  Label [0]:
      1) ldnull
  Label [1]:
      1) ret
  Total Size: 45

Func sig: (qu4:u4?) to s
Type: <null>, Value: <null>
###
> ToText(qu2)
ToText(qu2) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Guard([guard:1] Global(qu2), Call(∂.ToText(Scope(1)):s)):s))
// (∂.qu2:u2?) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToOpt(obj):Opt<u2>
      1) stloc.0 [Opt<u2>]
      2) ldloca.s [Opt<u2> (0)]
      5) call Opt<u2>::get_HasValue():bool
      5) brfalse [0]
      2) ldloca.s [Opt<u2> (0)]
      5) call Opt<u2>::GetValueOrDefault():u2
      1) stloc.1 [u2]
      1) ldloc.1 [u2]
      1) stloc.2 [u2]
      2) ldloca.s [u2 (2)]
      5) call u2::ToString():str
      5) br [1]
  Label [0]:
      1) ldnull
  Label [1]:
      1) ret
  Total Size: 45

Func sig: (qu2:u2?) to s
Type: <null>, Value: <null>
###
> ToText(qu1)
ToText(qu1) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Guard([guard:1] Global(qu1), Call(∂.ToText(Scope(1)):s)):s))
// (∂.qu1:u1?) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToOpt(obj):Opt<u1>
      1) stloc.0 [Opt<u1>]
      2) ldloca.s [Opt<u1> (0)]
      5) call Opt<u1>::get_HasValue():bool
      5) brfalse [0]
      2) ldloca.s [Opt<u1> (0)]
      5) call Opt<u1>::GetValueOrDefault():u1
      1) stloc.1 [u1]
      1) ldloc.1 [u1]
      1) stloc.2 [u1]
      2) ldloca.s [u1 (2)]
      5) call u1::ToString():str
      5) br [1]
  Label [0]:
      1) ldnull
  Label [1]:
      1) ret
  Total Size: 45

Func sig: (qu1:u1?) to s
Type: <null>, Value: <null>
###
> ToText(G, s)
ToText(G, s) : s
BndKind:Call, Type:s, Bnd:(Call(∂.ToText(Global(G), Global(s)):s))
// (∂.G:G, ∂.s:s) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToVal(obj):Guid
      1) stloc.0 [Guid]
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.1
      1) ldelem.ref
      5) call static CodeGenUtil::ToRef(obj):str
      1) stloc.1 [str]
      1) ldloc.0 [Guid]
      1) ldloc.1 [str]
      5) call static ToTextGen::Exec(Guid, str):str
      1) ret
  Total Size: 26

Func sig: (G:G, s:s) to s
Type: str, Value: 00000000-0000-0000-0000-000000000000
###
> ToText(d, s)
ToText(d, s) : s
BndKind:Call, Type:s, Bnd:(Call(∂.ToText(Global(d), Global(s)):s))
// (∂.d:d, ∂.s:s) : s
top(Arr<obj>, Arr<obj>):obj
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.0
      1) ldelem.ref
      5) call static CodeGenUtil::ToVal(obj):Date
      1) stloc.0 [Date]
      1) ldarg.1 [Arr<obj>]
      1) ldc.i4.1
      1) ldelem.ref
      5) call static CodeGenUtil::ToRef(obj):str
      1) stloc.1 [str]
      1) ldloc.0 [Date]
      1) ldloc.1 [str]
      5) call static ToTextGen::Exec(Date, str):str
      1) ret
  Total Size: 26

Func sig: (d:d, s:s) to s
Type: str, Value: 01/01/0001 00:00:00
###
