**** New globals: {b:b, d:d, g:g, i:i, i1:i1, i2:i2, i4:i4, i8:i8, n:r8, o:o, 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}
**** New definitions: N, type: s

> Text.Part(Wrap(""), 0)
Text.Part(Wrap(""), 0) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str()):s), 0:i8):s))
Func sig: () to s
Type: str, Value: 
###
> Text.Part(Wrap(""), 1)
Text.Part(Wrap(""), 1) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str()):s), 1:i8):s))
Func sig: () to s
Type: str, Value: 
###
> Text.Part(Wrap(""), -1)
Text.Part(Wrap(""), -1) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str()):s), -1:i8):s))
Func sig: () to s
Type: str, Value: 
###
> Text.Part(N, 0)
Text.Part(N, 0) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Global(N), 0:i8):s))
Func sig: (N:s) to s
Type: <null>, Value: <null>
###
> Text.Part(N, 1)
Text.Part(N, 1) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Global(N), 1:i8):s))
Func sig: (N:s) to s
Type: <null>, Value: <null>
###
> Text.Part(N, -1)
Text.Part(N, -1) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Global(N), -1:i8):s))
Func sig: (N:s) to s
Type: <null>, Value: <null>
###
> Text.Part(Wrap("hello"), 1)
Text.Part(Wrap("hello"), 1) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str(hello)):s), 1:i8):s))
Func sig: () to s
Type: str, Value: ello
###
> Text.Part(Wrap("hello"), 5)
Text.Part(Wrap("hello"), 5) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str(hello)):s), 5:i8):s))
Func sig: () to s
Type: str, Value: 
###
> Text.Part(Wrap("hello"), -1)
Text.Part(Wrap("hello"), -1) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str(hello)):s), -1:i8):s))
Func sig: () to s
Type: str, Value: o
###
> Text.Part(Wrap("hello"), -100)
Text.Part(Wrap("hello"), -100) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str(hello)):s), -100:i8):s))
Func sig: () to s
Type: str, Value: hello
###
> Text.Part(Wrap("hello"), 100)
Text.Part(Wrap("hello"), 100) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str(hello)):s), 100:i8):s))
Func sig: () to s
Type: str, Value: 
###
> Text.Part(s, i4)
Text.Part(s, i4) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Global(s), Num<i8>(Global(i4))):s))
Func sig: (s:s, i4:i4) to s
Type: <null>, Value: <null>
###
> Text.Part("hello", i4)
Text.Part("hello", i4) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(str(hello), Num<i8>(Global(i4))):s))
Func sig: (i4:i4) to s
Type: str, Value: hello
###
> Text.Part(s, 0)
Text.Part(s, 0) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Global(s), 0:i8):s))
Func sig: (s:s) to s
Type: <null>, Value: <null>
###
> Text.Part(Wrap(""), 0, 0)
Text.Part(Wrap(""), 0, 0) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str()):s), 0:i8, 0:i8):s))
Func sig: () to s
Type: str, Value: 
###
> Text.Part(Wrap(""), 0, 1)
Text.Part(Wrap(""), 0, 1) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str()):s), 0:i8, 1:i8):s))
Func sig: () to s
Type: str, Value: 
###
> Text.Part(Wrap(""), 1, 0)
Text.Part(Wrap(""), 1, 0) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str()):s), 1:i8, 0:i8):s))
Func sig: () to s
Type: str, Value: 
###
> Text.Part(Wrap(""), -1, 1)
Text.Part(Wrap(""), -1, 1) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str()):s), -1:i8, 1:i8):s))
Func sig: () to s
Type: str, Value: 
###
> Text.Part(N, 0, 1)
Text.Part(N, 0, 1) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Global(N), 0:i8, 1:i8):s))
Func sig: (N:s) to s
Type: <null>, Value: <null>
###
> Text.Part(N, 1, 0)
Text.Part(N, 1, 0) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Global(N), 1:i8, 0:i8):s))
Func sig: (N:s) to s
Type: <null>, Value: <null>
###
> Text.Part(N, -1, 1)
Text.Part(N, -1, 1) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Global(N), -1:i8, 1:i8):s))
Func sig: (N:s) to s
Type: <null>, Value: <null>
###
> Text.Part(Wrap("hello"), 1, 3)
Text.Part(Wrap("hello"), 1, 3) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str(hello)):s), 1:i8, 3:i8):s))
Func sig: () to s
Type: str, Value: el
###
> Text.Part(Wrap("hello"), 3, 1)
Text.Part(Wrap("hello"), 3, 1) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str(hello)):s), 3:i8, 1:i8):s))
Func sig: () to s
Type: str, Value: 
###
> Text.Part(Wrap("hello"), 3, 5)
Text.Part(Wrap("hello"), 3, 5) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str(hello)):s), 3:i8, 5:i8):s))
Func sig: () to s
Type: str, Value: lo
###
> Text.Part(Wrap("hello"), 5, 3)
Text.Part(Wrap("hello"), 5, 3) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str(hello)):s), 5:i8, 3:i8):s))
Func sig: () to s
Type: str, Value: 
###
> Text.Part(Wrap("hello"), 5, 5)
Text.Part(Wrap("hello"), 5, 5) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str(hello)):s), 5:i8, 5:i8):s))
Func sig: () to s
Type: str, Value: 
###
> Text.Part(Wrap("hello"), -4, 3)
Text.Part(Wrap("hello"), -4, 3) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str(hello)):s), -4:i8, 3:i8):s))
Func sig: () to s
Type: str, Value: el
###
> Text.Part(Wrap("hello"), 4, -3)
Text.Part(Wrap("hello"), 4, -3) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str(hello)):s), 4:i8, -3:i8):s))
Func sig: () to s
Type: str, Value: 
###
> Text.Part(Wrap("hello"), -100, 3)
Text.Part(Wrap("hello"), -100, 3) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str(hello)):s), -100:i8, 3:i8):s))
Func sig: () to s
Type: str, Value: hel
###
> Text.Part(Wrap("hello"), 100, 3)
Text.Part(Wrap("hello"), 100, 3) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str(hello)):s), 100:i8, 3:i8):s))
Func sig: () to s
Type: str, Value: 
###
> Text.Part(Wrap("hello"), 3, -100)
Text.Part(Wrap("hello"), 3, -100) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str(hello)):s), 3:i8, -100:i8):s))
Func sig: () to s
Type: str, Value: 
###
> Text.Part(Wrap("hello"), 100, -100)
Text.Part(Wrap("hello"), 100, -100) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str(hello)):s), 100:i8, -100:i8):s))
Func sig: () to s
Type: str, Value: 
###
> Text.Part(Wrap("hello"), 3, 100)
Text.Part(Wrap("hello"), 3, 100) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Call(∂.Test.Wrap(str(hello)):s), 3:i8, 100:i8):s))
Func sig: () to s
Type: str, Value: lo
###
> Text.Part(s, i4, i4)
Text.Part(s, i4, i4) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Global(s), Num<i8>(Global(i4)), Num<i8>(Global(i4))):s))
Func sig: (s:s, i4:i4) to s
Type: <null>, Value: <null>
###
> Text.Part("hello", i4, i4)
Text.Part("hello", i4, i4) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(str(hello), Num<i8>(Global(i4)), Num<i8>(Global(i4))):s))
Func sig: (i4:i4) to s
Type: str, Value: 
###
> Text.Part(s, 0, i4)
Text.Part(s, 0, i4) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Global(s), 0:i8, Num<i8>(Global(i4))):s))
Func sig: (s:s, i4:i4) to s
Type: <null>, Value: <null>
###
> Text.Part(s, i4, 100)
Text.Part(s, i4, 100) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Part(Global(s), Num<i8>(Global(i4)), 100:i8):s))
Func sig: (s:s, i4:i4) to s
Type: <null>, Value: <null>
###
> Text.Trim(Wrap(" h e l l o ")) | With(_, {S: it, L: Text.Len(it)})
Text.Trim(Wrap(" h e l l o ")) | With(_, { S : it, L : Text.Len(it) }) : {L:i8, S:s}
BndKind:Call, Type:{L:i8, S:s}, Bnd:(Call(∂.With([with:1] Call(∂.Text.Trim(Call(∂.Test.Wrap(str( h e l l o )):s)):s), {L:Call(∂.Text.Len(Scope(1)):i8), S:Scope(1)})))
Func sig: () to {L:i8, S:s}
Type: {i8,str}, Value: { L: 9, S: h e l l o }
###
> Text.Trim(["      hi", "      hello      ", "      hola      "]) | Map(_, {A: it, L: Text.Len(it)})
Text.Trim(["      hi", "      hello      ", "      hola      "]) | Map(_, { A : it, L : Text.Len(it) }) : {A:s, L:i8}*
BndKind:Call, Type:{A:s, L:i8}*, Bnd:(Call(∂.ForEach([map:1] [str(      hi), str(      hello      ), str(      hola      )]:s*, Call(∂.With([with:2] Call(∂.Text.Trim(Scope(1)):s), {A:Scope(2), L:Call(∂.Text.Len(Scope(2)):i8)})))))
Func sig: () to {A:s, L:i8}*
Sequence: Seq<{str,i8}>
 0) { A: hi, L: 2 }
 1) { A: hello, L: 5 }
 2) { A: hola, L: 4 }
###
> Text.Trim(["      hi", "      hello      ", null]) | Map(_, {A: it, L: Text.Len(it)})
Text.Trim(["      hi", "      hello      ", null]) | Map(_, { A : it, L : Text.Len(it) }) : {A:s, L:i8}*
BndKind:Call, Type:{A:s, L:i8}*, Bnd:(Call(∂.ForEach([map:1] [str(      hi), str(      hello      ), str(<null>)]:s*, Call(∂.With([with:2] Call(∂.Text.Trim(Scope(1)):s), {A:Scope(2), L:Call(∂.Text.Len(Scope(2)):i8)})))))
Func sig: () to {A:s, L:i8}*
Sequence: Seq<{str,i8}>
 0) { A: hi, L: 2 }
 1) { A: hello, L: 5 }
 2) { A: <null>, L: 0 }
###
> Text.Trim([]) | Map(_, {A: it, L: Text.Len(it)})
Text.Trim([]) | Map(_, { A : it, L : Text.Len(it) }) : {A:s, L:i8}*
BndKind:Null, Type:{A:s, L:i8}*, Bnd:(null:{A:s, L:i8}*)
Func sig: () to {A:s, L:i8}*
Type: <null>, Value: <null>
###
> Text.Trim(Wrap("h e l l o")) | With(_, {S: it, L: Text.Len(it)})
Text.Trim(Wrap("h e l l o")) | With(_, { S : it, L : Text.Len(it) }) : {L:i8, S:s}
BndKind:Call, Type:{L:i8, S:s}, Bnd:(Call(∂.With([with:1] Call(∂.Text.Trim(Call(∂.Test.Wrap(str(h e l l o)):s)):s), {L:Call(∂.Text.Len(Scope(1)):i8), S:Scope(1)})))
Func sig: () to {L:i8, S:s}
Type: {i8,str}, Value: { L: 9, S: h e l l o }
###
> Text.Trim(Wrap("   ")) | With(_, {S: it, L: Text.Len(it)})
Text.Trim(Wrap("   ")) | With(_, { S : it, L : Text.Len(it) }) : {L:i8, S:s}
BndKind:Call, Type:{L:i8, S:s}, Bnd:(Call(∂.With([with:1] Call(∂.Text.Trim(Call(∂.Test.Wrap(str(   )):s)):s), {L:Call(∂.Text.Len(Scope(1)):i8), S:Scope(1)})))
Func sig: () to {L:i8, S:s}
Type: {i8,str}, Value: { L: 0, S:  }
###
> Text.Trim(Wrap("")) | With(_, {S: it, L: Text.Len(it)})
Text.Trim(Wrap("")) | With(_, { S : it, L : Text.Len(it) }) : {L:i8, S:s}
BndKind:Call, Type:{L:i8, S:s}, Bnd:(Call(∂.With([with:1] Call(∂.Text.Trim(Call(∂.Test.Wrap(str()):s)):s), {L:Call(∂.Text.Len(Scope(1)):i8), S:Scope(1)})))
Func sig: () to {L:i8, S:s}
Type: {i8,str}, Value: { L: 0, S:  }
###
> Text.Trim(Wrap(Null(""))) | With(_, {S: it, L: Text.Len(it)})
Text.Trim(Wrap(Null(""))) | With(_, { S : it, L : Text.Len(it) }) : {L:i8, S:s}
BndKind:Call, Type:{L:i8, S:s}, Bnd:(Call(∂.With([with:1] Call(∂.Text.Trim(Call(∂.Test.Wrap(str(<null>)):s)):s), {L:Call(∂.Text.Len(Scope(1)):i8), S:Scope(1)})))
Func sig: () to {L:i8, S:s}
Type: {i8,str}, Value: { L: 0, S: <null> }
###
> Text.TrimStart(Wrap(" h e l l o ")) | With(_, {S: it, L: Text.Len(it)})
Text.TrimStart(Wrap(" h e l l o ")) | With(_, { S : it, L : Text.Len(it) }) : {L:i8, S:s}
BndKind:Call, Type:{L:i8, S:s}, Bnd:(Call(∂.With([with:1] Call(∂.Text.TrimStart(Call(∂.Test.Wrap(str( h e l l o )):s)):s), {L:Call(∂.Text.Len(Scope(1)):i8), S:Scope(1)})))
Func sig: () to {L:i8, S:s}
Type: {i8,str}, Value: { L: 10, S: h e l l o  }
###
> Text.TrimStart(["      hi", "      hello      ", "      hola      "]) | Map(_, {A: it, L: Text.Len(it)})
Text.TrimStart(["      hi", "      hello      ", "      hola      "]) | Map(_, { A : it, L : Text.Len(it) }) : {A:s, L:i8}*
BndKind:Call, Type:{A:s, L:i8}*, Bnd:(Call(∂.ForEach([map:1] [str(      hi), str(      hello      ), str(      hola      )]:s*, Call(∂.With([with:2] Call(∂.Text.TrimStart(Scope(1)):s), {A:Scope(2), L:Call(∂.Text.Len(Scope(2)):i8)})))))
Func sig: () to {A:s, L:i8}*
Sequence: Seq<{str,i8}>
 0) { A: hi, L: 2 }
 1) { A: hello      , L: 11 }
 2) { A: hola      , L: 10 }
###
> Text.TrimStart(["      hi", "      hello      ", null]) | Map(_, {A: it, L: Text.Len(it)})
Text.TrimStart(["      hi", "      hello      ", null]) | Map(_, { A : it, L : Text.Len(it) }) : {A:s, L:i8}*
BndKind:Call, Type:{A:s, L:i8}*, Bnd:(Call(∂.ForEach([map:1] [str(      hi), str(      hello      ), str(<null>)]:s*, Call(∂.With([with:2] Call(∂.Text.TrimStart(Scope(1)):s), {A:Scope(2), L:Call(∂.Text.Len(Scope(2)):i8)})))))
Func sig: () to {A:s, L:i8}*
Sequence: Seq<{str,i8}>
 0) { A: hi, L: 2 }
 1) { A: hello      , L: 11 }
 2) { A: <null>, L: 0 }
###
> Text.TrimStart([]) | Map(_, {A: it, L: Text.Len(it)})
Text.TrimStart([]) | Map(_, { A : it, L : Text.Len(it) }) : {A:s, L:i8}*
BndKind:Null, Type:{A:s, L:i8}*, Bnd:(null:{A:s, L:i8}*)
Func sig: () to {A:s, L:i8}*
Type: <null>, Value: <null>
###
> Text.TrimStart(Wrap("h e l l o")) | With(_, {S: it, L: Text.Len(it)})
Text.TrimStart(Wrap("h e l l o")) | With(_, { S : it, L : Text.Len(it) }) : {L:i8, S:s}
BndKind:Call, Type:{L:i8, S:s}, Bnd:(Call(∂.With([with:1] Call(∂.Text.TrimStart(Call(∂.Test.Wrap(str(h e l l o)):s)):s), {L:Call(∂.Text.Len(Scope(1)):i8), S:Scope(1)})))
Func sig: () to {L:i8, S:s}
Type: {i8,str}, Value: { L: 9, S: h e l l o }
###
> Text.TrimStart(Wrap("   ")) | With(_, {S: it, L: Text.Len(it)})
Text.TrimStart(Wrap("   ")) | With(_, { S : it, L : Text.Len(it) }) : {L:i8, S:s}
BndKind:Call, Type:{L:i8, S:s}, Bnd:(Call(∂.With([with:1] Call(∂.Text.TrimStart(Call(∂.Test.Wrap(str(   )):s)):s), {L:Call(∂.Text.Len(Scope(1)):i8), S:Scope(1)})))
Func sig: () to {L:i8, S:s}
Type: {i8,str}, Value: { L: 0, S:  }
###
> Text.TrimStart(Wrap("")) | With(_, {S: it, L: Text.Len(it)})
Text.TrimStart(Wrap("")) | With(_, { S : it, L : Text.Len(it) }) : {L:i8, S:s}
BndKind:Call, Type:{L:i8, S:s}, Bnd:(Call(∂.With([with:1] Call(∂.Text.TrimStart(Call(∂.Test.Wrap(str()):s)):s), {L:Call(∂.Text.Len(Scope(1)):i8), S:Scope(1)})))
Func sig: () to {L:i8, S:s}
Type: {i8,str}, Value: { L: 0, S:  }
###
> Text.TrimStart(Wrap(Null(""))) | With(_, {S: it, L: Text.Len(it)})
Text.TrimStart(Wrap(Null(""))) | With(_, { S : it, L : Text.Len(it) }) : {L:i8, S:s}
BndKind:Call, Type:{L:i8, S:s}, Bnd:(Call(∂.With([with:1] Call(∂.Text.TrimStart(Call(∂.Test.Wrap(str(<null>)):s)):s), {L:Call(∂.Text.Len(Scope(1)):i8), S:Scope(1)})))
Func sig: () to {L:i8, S:s}
Type: {i8,str}, Value: { L: 0, S: <null> }
###
> Text.TrimEnd(Wrap(" h e l l o ")) | With(_, {S: it, L: Text.Len(it)})
Text.TrimEnd(Wrap(" h e l l o ")) | With(_, { S : it, L : Text.Len(it) }) : {L:i8, S:s}
BndKind:Call, Type:{L:i8, S:s}, Bnd:(Call(∂.With([with:1] Call(∂.Text.TrimEnd(Call(∂.Test.Wrap(str( h e l l o )):s)):s), {L:Call(∂.Text.Len(Scope(1)):i8), S:Scope(1)})))
Func sig: () to {L:i8, S:s}
Type: {i8,str}, Value: { L: 10, S:  h e l l o }
###
> Text.TrimEnd(["      hi", "      hello      ", "      hola      "]) | Map(_, {A: it, L: Text.Len(it)})
Text.TrimEnd(["      hi", "      hello      ", "      hola      "]) | Map(_, { A : it, L : Text.Len(it) }) : {A:s, L:i8}*
BndKind:Call, Type:{A:s, L:i8}*, Bnd:(Call(∂.ForEach([map:1] [str(      hi), str(      hello      ), str(      hola      )]:s*, Call(∂.With([with:2] Call(∂.Text.TrimEnd(Scope(1)):s), {A:Scope(2), L:Call(∂.Text.Len(Scope(2)):i8)})))))
Func sig: () to {A:s, L:i8}*
Sequence: Seq<{str,i8}>
 0) { A:       hi, L: 8 }
 1) { A:       hello, L: 11 }
 2) { A:       hola, L: 10 }
###
> Text.TrimEnd(["      hi", "      hello      ", null]) | Map(_, {A: it, L: Text.Len(it)})
Text.TrimEnd(["      hi", "      hello      ", null]) | Map(_, { A : it, L : Text.Len(it) }) : {A:s, L:i8}*
BndKind:Call, Type:{A:s, L:i8}*, Bnd:(Call(∂.ForEach([map:1] [str(      hi), str(      hello      ), str(<null>)]:s*, Call(∂.With([with:2] Call(∂.Text.TrimEnd(Scope(1)):s), {A:Scope(2), L:Call(∂.Text.Len(Scope(2)):i8)})))))
Func sig: () to {A:s, L:i8}*
Sequence: Seq<{str,i8}>
 0) { A:       hi, L: 8 }
 1) { A:       hello, L: 11 }
 2) { A: <null>, L: 0 }
###
> Text.TrimEnd([]) | Map(_, {A: it, L: Text.Len(it)})
Text.TrimEnd([]) | Map(_, { A : it, L : Text.Len(it) }) : {A:s, L:i8}*
BndKind:Null, Type:{A:s, L:i8}*, Bnd:(null:{A:s, L:i8}*)
Func sig: () to {A:s, L:i8}*
Type: <null>, Value: <null>
###
> Text.TrimEnd(Wrap("h e l l o")) | With(_, {S: it, L: Text.Len(it)})
Text.TrimEnd(Wrap("h e l l o")) | With(_, { S : it, L : Text.Len(it) }) : {L:i8, S:s}
BndKind:Call, Type:{L:i8, S:s}, Bnd:(Call(∂.With([with:1] Call(∂.Text.TrimEnd(Call(∂.Test.Wrap(str(h e l l o)):s)):s), {L:Call(∂.Text.Len(Scope(1)):i8), S:Scope(1)})))
Func sig: () to {L:i8, S:s}
Type: {i8,str}, Value: { L: 9, S: h e l l o }
###
> Text.TrimEnd(Wrap("   ")) | With(_, {S: it, L: Text.Len(it)})
Text.TrimEnd(Wrap("   ")) | With(_, { S : it, L : Text.Len(it) }) : {L:i8, S:s}
BndKind:Call, Type:{L:i8, S:s}, Bnd:(Call(∂.With([with:1] Call(∂.Text.TrimEnd(Call(∂.Test.Wrap(str(   )):s)):s), {L:Call(∂.Text.Len(Scope(1)):i8), S:Scope(1)})))
Func sig: () to {L:i8, S:s}
Type: {i8,str}, Value: { L: 0, S:  }
###
> Text.TrimEnd(Wrap("")) | With(_, {S: it, L: Text.Len(it)})
Text.TrimEnd(Wrap("")) | With(_, { S : it, L : Text.Len(it) }) : {L:i8, S:s}
BndKind:Call, Type:{L:i8, S:s}, Bnd:(Call(∂.With([with:1] Call(∂.Text.TrimEnd(Call(∂.Test.Wrap(str()):s)):s), {L:Call(∂.Text.Len(Scope(1)):i8), S:Scope(1)})))
Func sig: () to {L:i8, S:s}
Type: {i8,str}, Value: { L: 0, S:  }
###
> Text.TrimEnd(Wrap(Null(""))) | With(_, {S: it, L: Text.Len(it)})
Text.TrimEnd(Wrap(Null(""))) | With(_, { S : it, L : Text.Len(it) }) : {L:i8, S:s}
BndKind:Call, Type:{L:i8, S:s}, Bnd:(Call(∂.With([with:1] Call(∂.Text.TrimEnd(Call(∂.Test.Wrap(str(<null>)):s)):s), {L:Call(∂.Text.Len(Scope(1)):i8), S:Scope(1)})))
Func sig: () to {L:i8, S:s}
Type: {i8,str}, Value: { L: 0, S: <null> }
###
> Text.Replace(N, "A", "B")
Text.Replace(N, "A", "B") : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Replace(Global(N), str(A), str(B)):s))
Func sig: (N:s) to s
Type: <null>, Value: <null>
###
> Text.Replace("A", N, "B")
Text.Replace("A", N, "B") : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Replace(str(A), Global(N), str(B)):s))
Func sig: (N:s) to s
Type: str, Value: A
###
> Text.Replace("ABC", Wrap("B"), N)
Text.Replace("ABC", Wrap("B"), N) : s
BndKind:Call, Type:s, Bnd:(Call(∂.Text.Replace(str(ABC), Call(∂.Test.Wrap(str(B)):s), Global(N)):s))
Func sig: (N:s) to s
Type: str, Value: AC
###
