**** New definitions: alpha, type: s
**** New definitions: digits, type: s
**** New definitions: sn, type: s
**** New definitions: se, type: s

> sn[3]
sn[3] : u2
BndKind:IdxText, Type:u2, Bnd:(IdxTxt(Global(sn), 3:i8))
// (∂.sn:s) : u2
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) ldc.i4.3
      1) conv.i8
      1) ldc.i4.0
      5) call static CodeGenUtil::IndexText(str, i8, IndexFlags):u2
      5) box [u2]
      1) ret
  Total Size: 24

Func sig: (sn:s) to u2
Type: u2, Value: 0
###
> se[3]
se[3] : u2
BndKind:IdxText, Type:u2, Bnd:(IdxTxt(Global(se), 3:i8))
// (∂.se:s) : u2
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) ldc.i4.3
      1) conv.i8
      1) ldc.i4.0
      5) call static CodeGenUtil::IndexText(str, i8, IndexFlags):u2
      5) box [u2]
      1) ret
  Total Size: 24

Func sig: (se:s) to u2
Type: u2, Value: 0
###
> digits[3]
digits[3] : u2
BndKind:IdxText, Type:u2, Bnd:(IdxTxt(Global(digits), 3:i8))
// (∂.digits:s) : u2
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) ldc.i4.3
      1) conv.i8
      1) ldc.i4.0
      5) call static CodeGenUtil::IndexText(str, i8, IndexFlags):u2
      5) box [u2]
      1) ret
  Total Size: 24

Func sig: (digits:s) to u2
Type: u2, Value: 51
###
> digits[3:7]
digits[3:7] : s
BndKind:TextSlice, Type:s, Bnd:(TextSlice(Global(digits), Slice(3:i8:7:i8:null:i8?)):s)
// (∂.digits: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) ldc.i4.3
      1) conv.i8
      1) ldc.i4.7
      1) conv.i8
      1) ldc.i4.0
      1) conv.i8
      2) ldc.i4.s [120]
      5) call static SliceItem::CreateRR(i8, i8, i8, SliceItemFlags):SliceItem
      5) call static CodeGenUtil::SliceText(str, SliceItem):str
      1) ret
  Total Size: 29

Func sig: (digits:s) to s
Type: str, Value: 3456
###
> digits[3:7:2]
digits[3:7:2] : s
BndKind:TextSlice, Type:s, Bnd:(TextSlice(Global(digits), Slice(3:i8:7:i8:2:i8)):s)
// (∂.digits: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) ldc.i4.3
      1) conv.i8
      1) ldc.i4.7
      1) conv.i8
      1) ldc.i4.2
      1) conv.i8
      2) ldc.i4.s [120]
      5) call static SliceItem::CreateRR(i8, i8, i8, SliceItemFlags):SliceItem
      5) call static CodeGenUtil::SliceText(str, SliceItem):str
      1) ret
  Total Size: 29

Func sig: (digits:s) to s
Type: str, Value: 35
###
> digits[::2]
digits[::2] : s
BndKind:TextSlice, Type:s, Bnd:(TextSlice(Global(digits), Slice(null:i8?:null:i8?:2:i8)):s)
// (∂.digits: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) ldc.i4.2
      1) conv.i8
      5) call static SliceItem::Create__(i8):SliceItem
      5) call static CodeGenUtil::SliceText(str, SliceItem):str
      1) ret
  Total Size: 23

Func sig: (digits:s) to s
Type: str, Value: 02468
###
> digits[::3]
digits[::3] : s
BndKind:TextSlice, Type:s, Bnd:(TextSlice(Global(digits), Slice(null:i8?:null:i8?:3:i8)):s)
// (∂.digits: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) ldc.i4.3
      1) conv.i8
      5) call static SliceItem::Create__(i8):SliceItem
      5) call static CodeGenUtil::SliceText(str, SliceItem):str
      1) ret
  Total Size: 23

Func sig: (digits:s) to s
Type: str, Value: 0369
###
> digits[::-1]
digits[::-1] : s
BndKind:TextSlice, Type:s, Bnd:(TextSlice(Global(digits), Slice(null:i8?:null:i8?:-1:i8)):s)
// (∂.digits: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) ldc.i4.m1
      1) conv.i8
      5) call static SliceItem::Create__(i8):SliceItem
      5) call static CodeGenUtil::SliceText(str, SliceItem):str
      1) ret
  Total Size: 23

Func sig: (digits:s) to s
Type: str, Value: 9876543210
###
> digits[::-2]
digits[::-2] : s
BndKind:TextSlice, Type:s, Bnd:(TextSlice(Global(digits), Slice(null:i8?:null:i8?:-2:i8)):s)
// (∂.digits: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]
      2) ldc.i4.s [-2]
      1) conv.i8
      5) call static SliceItem::Create__(i8):SliceItem
      5) call static CodeGenUtil::SliceText(str, SliceItem):str
      1) ret
  Total Size: 24

Func sig: (digits:s) to s
Type: str, Value: 97531
###
> digits[::-3]
digits[::-3] : s
BndKind:TextSlice, Type:s, Bnd:(TextSlice(Global(digits), Slice(null:i8?:null:i8?:-3:i8)):s)
// (∂.digits: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]
      2) ldc.i4.s [-3]
      1) conv.i8
      5) call static SliceItem::Create__(i8):SliceItem
      5) call static CodeGenUtil::SliceText(str, SliceItem):str
      1) ret
  Total Size: 24

Func sig: (digits:s) to s
Type: str, Value: 9630
###
> digits[27]
digits[27] : u2
BndKind:IdxText, Type:u2, Bnd:(IdxTxt(Global(digits), 27:i8))
// (∂.digits:s) : u2
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]
      2) ldc.i4.s [27]
      1) conv.i8
      1) ldc.i4.0
      5) call static CodeGenUtil::IndexText(str, i8, IndexFlags):u2
      5) box [u2]
      1) ret
  Total Size: 25

Func sig: (digits:s) to u2
Type: u2, Value: 0
###
> digits[27:]
digits[27:] : s
BndKind:TextSlice, Type:s, Bnd:(TextSlice(Global(digits), Slice(27:i8:null:i8?:null:i8?)):s)
// (∂.digits: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]
      2) ldc.i4.s [27]
      1) conv.i8
      1) ldc.i4.0
      1) conv.i8
      2) ldc.i4.s [104]
      5) call static SliceItem::CreateR_(i8, i8, SliceItemFlags):SliceItem
      5) call static CodeGenUtil::SliceText(str, SliceItem):str
      1) ret
  Total Size: 28

Func sig: (digits:s) to s
Type: str, Value: 
###
> digits[%27]
digits[%27] : u2
BndKind:IdxText, Type:u2, Bnd:(IdxTxt(Global(digits), Index(27:i8, Wrap)))
// (∂.digits:s) : u2
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]
      2) ldc.i4.s [27]
      1) conv.i8
      1) ldc.i4.2
      5) call static CodeGenUtil::IndexText(str, i8, IndexFlags):u2
      5) box [u2]
      1) ret
  Total Size: 25

Func sig: (digits:s) to u2
Type: u2, Value: 55
###
> digits[&27]
digits[&27] : u2
BndKind:IdxText, Type:u2, Bnd:(IdxTxt(Global(digits), Index(27:i8, Clip)))
// (∂.digits:s) : u2
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]
      2) ldc.i4.s [27]
      1) conv.i8
      1) ldc.i4.4
      5) call static CodeGenUtil::IndexText(str, i8, IndexFlags):u2
      5) box [u2]
      1) ret
  Total Size: 25

Func sig: (digits:s) to u2
Type: u2, Value: 57
###
> digits[^%27]
digits[^%27] : u2
BndKind:IdxText, Type:u2, Bnd:(IdxTxt(Global(digits), Index(27:i8, BackWrap)))
// (∂.digits:s) : u2
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]
      2) ldc.i4.s [27]
      1) conv.i8
      1) ldc.i4.3
      5) call static CodeGenUtil::IndexText(str, i8, IndexFlags):u2
      5) box [u2]
      1) ret
  Total Size: 25

Func sig: (digits:s) to u2
Type: u2, Value: 51
###
> digits[^&27]
digits[^&27] : u2
BndKind:IdxText, Type:u2, Bnd:(IdxTxt(Global(digits), Index(27:i8, BackClip)))
// (∂.digits:s) : u2
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]
      2) ldc.i4.s [27]
      1) conv.i8
      1) ldc.i4.5
      5) call static CodeGenUtil::IndexText(str, i8, IndexFlags):u2
      5) box [u2]
      1) ret
  Total Size: 25

Func sig: (digits:s) to u2
Type: u2, Value: 48
###
> alpha[:10]
alpha[:10] : s
BndKind:TextSlice, Type:s, Bnd:(TextSlice(Global(alpha), Slice(null:i8?:10:i8:null:i8?)):s)
// (∂.alpha: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]
      2) ldc.i4.s [10]
      1) conv.i8
      1) ldc.i4.0
      1) conv.i8
      2) ldc.i4.s [112]
      5) call static SliceItem::Create_R(i8, i8, SliceItemFlags):SliceItem
      5) call static CodeGenUtil::SliceText(str, SliceItem):str
      1) ret
  Total Size: 28

Func sig: (alpha:s) to s
Type: str, Value: abcdefghij
###
> alpha[:10:-1]
alpha[:10:-1] : s
BndKind:TextSlice, Type:s, Bnd:(TextSlice(Global(alpha), Slice(null:i8?:10:i8:-1:i8)):s)
// (∂.alpha: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]
      2) ldc.i4.s [10]
      1) conv.i8
      1) ldc.i4.m1
      1) conv.i8
      2) ldc.i4.s [112]
      5) call static SliceItem::Create_R(i8, i8, SliceItemFlags):SliceItem
      5) call static CodeGenUtil::SliceText(str, SliceItem):str
      1) ret
  Total Size: 28

Func sig: (alpha:s) to s
Type: str, Value: zyxwvutsrqponml
###
> alpha[10::-1]
alpha[10::-1] : s
BndKind:TextSlice, Type:s, Bnd:(TextSlice(Global(alpha), Slice(10:i8:null:i8?:-1:i8)):s)
// (∂.alpha: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]
      2) ldc.i4.s [10]
      1) conv.i8
      1) ldc.i4.m1
      1) conv.i8
      2) ldc.i4.s [104]
      5) call static SliceItem::CreateR_(i8, i8, SliceItemFlags):SliceItem
      5) call static CodeGenUtil::SliceText(str, SliceItem):str
      1) ret
  Total Size: 28

Func sig: (alpha:s) to s
Type: str, Value: kjihgfedcba
###
> alpha[::2]
alpha[::2] : s
BndKind:TextSlice, Type:s, Bnd:(TextSlice(Global(alpha), Slice(null:i8?:null:i8?:2:i8)):s)
// (∂.alpha: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) ldc.i4.2
      1) conv.i8
      5) call static SliceItem::Create__(i8):SliceItem
      5) call static CodeGenUtil::SliceText(str, SliceItem):str
      1) ret
  Total Size: 23

Func sig: (alpha:s) to s
Type: str, Value: acegikmoqsuwy
###
> alpha[::25]
alpha[::25] : s
BndKind:TextSlice, Type:s, Bnd:(TextSlice(Global(alpha), Slice(null:i8?:null:i8?:25:i8)):s)
// (∂.alpha: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]
      2) ldc.i4.s [25]
      1) conv.i8
      5) call static SliceItem::Create__(i8):SliceItem
      5) call static CodeGenUtil::SliceText(str, SliceItem):str
      1) ret
  Total Size: 24

Func sig: (alpha:s) to s
Type: str, Value: az
###
> alpha[::26]
alpha[::26] : s
BndKind:TextSlice, Type:s, Bnd:(TextSlice(Global(alpha), Slice(null:i8?:null:i8?:26:i8)):s)
// (∂.alpha: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]
      2) ldc.i4.s [26]
      1) conv.i8
      5) call static SliceItem::Create__(i8):SliceItem
      5) call static CodeGenUtil::SliceText(str, SliceItem):str
      1) ret
  Total Size: 24

Func sig: (alpha:s) to s
Type: str, Value: a
###
> alpha[^10:]
alpha[^10:] : s
BndKind:TextSlice, Type:s, Bnd:(TextSlice(Global(alpha), Slice(^(10:i8):null:i8?:null:i8?)):s)
// (∂.alpha: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]
      2) ldc.i4.s [10]
      1) conv.i8
      1) ldc.i4.0
      1) conv.i8
      2) ldc.i4.s [105]
      5) call static SliceItem::CreateR_(i8, i8, SliceItemFlags):SliceItem
      5) call static CodeGenUtil::SliceText(str, SliceItem):str
      1) ret
  Total Size: 28

Func sig: (alpha:s) to s
Type: str, Value: qrstuvwxyz
###
> alpha[:^10:-1]
alpha[:^10:-1] : s
BndKind:TextSlice, Type:s, Bnd:(TextSlice(Global(alpha), Slice(null:i8?:^(10:i8):-1:i8)):s)
// (∂.alpha: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]
      2) ldc.i4.s [10]
      1) conv.i8
      1) ldc.i4.m1
      1) conv.i8
      2) ldc.i4.s [114]
      5) call static SliceItem::Create_R(i8, i8, SliceItemFlags):SliceItem
      5) call static CodeGenUtil::SliceText(str, SliceItem):str
      1) ret
  Total Size: 28

Func sig: (alpha:s) to s
Type: str, Value: zyxwvutsr
###
