**** New definitions: T, type: {A:b?}*
**** New definitions: S, type: {A:b}*

> Map(T, Map(T, it$0.A and it$1.A))
Map(T, Map(T, it.A and it$1.A)) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.ForEach([map:1] Global(T), Call(∂.ForEach([map:2] Global(T), And(GetField(Scope(2), A), GetField(Scope(1), A))):b?*)):b?**))
Func sig: (T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) false
     2) <null>
 1) Sequence: Seq<Opt<bool>>
     0) false
     1) false
     2) false
 2) Sequence: Seq<Opt<bool>>
     0) <null>
     1) false
     2) <null>
###
> Map(S, Map(T, it$0.A and it$1.A))
Map(S, Map(T, it.A and it$1.A)) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.ForEach([map:1] Global(S), Call(∂.ForEach([map:2] Global(T), And(GetField(Scope(2), A), GetField(Scope(1), A))):b?*)):b?**))
Func sig: (S:{A:b}*, T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) false
     2) <null>
 1) Sequence: Seq<Opt<bool>>
     0) false
     1) false
     2) false
###
> Map(S, Map(T, it$1.A and it$0.A))
Map(S, Map(T, it$1.A and it.A)) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.ForEach([map:1] Global(S), Call(∂.ForEach([map:2] Global(T), And(GetField(Scope(1), A), GetField(Scope(2), A))):b?*)):b?**))
Func sig: (S:{A:b}*, T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) false
     2) <null>
 1) Sequence: Seq<Opt<bool>>
     0) false
     1) false
     2) false
###
> Map(S, Map(S, it$0.A and it$1.A))
Map(S, Map(S, it.A and it$1.A)) : b**
BndKind:Call, Type:b**, Bnd:(Call(∂.ForEach([map:1] Global(S), Call(∂.ForEach([map:2] Global(S), And(GetField(Scope(2), A), GetField(Scope(1), A))):b*)):b**))
Func sig: (S:{A:b}*) to b**
Sequence: Seq<Seq<bool>>
 0) Sequence: Seq<bool>
     0) true 
     1) false
 1) Sequence: Seq<bool>
     0) false
     1) false
###
> Map(T, Map(T, it$0.A or it$1.A))
Map(T, Map(T, it.A or it$1.A)) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.ForEach([map:1] Global(T), Call(∂.ForEach([map:2] Global(T), Or(GetField(Scope(2), A), GetField(Scope(1), A))):b?*)):b?**))
Func sig: (T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) true 
     2) true 
 1) Sequence: Seq<Opt<bool>>
     0) true 
     1) false
     2) <null>
 2) Sequence: Seq<Opt<bool>>
     0) true 
     1) <null>
     2) <null>
###
> Map(S, Map(T, it$0.A or it$1.A))
Map(S, Map(T, it.A or it$1.A)) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.ForEach([map:1] Global(S), Call(∂.ForEach([map:2] Global(T), Or(GetField(Scope(2), A), GetField(Scope(1), A))):b?*)):b?**))
Func sig: (S:{A:b}*, T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) true 
     2) true 
 1) Sequence: Seq<Opt<bool>>
     0) true 
     1) false
     2) <null>
###
> Map(S, Map(T, it$1.A or it$0.A))
Map(S, Map(T, it$1.A or it.A)) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.ForEach([map:1] Global(S), Call(∂.ForEach([map:2] Global(T), Or(GetField(Scope(1), A), GetField(Scope(2), A))):b?*)):b?**))
Func sig: (S:{A:b}*, T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) true 
     2) true 
 1) Sequence: Seq<Opt<bool>>
     0) true 
     1) false
     2) <null>
###
> Map(S, Map(S, it$0.A or it$1.A))
Map(S, Map(S, it.A or it$1.A)) : b**
BndKind:Call, Type:b**, Bnd:(Call(∂.ForEach([map:1] Global(S), Call(∂.ForEach([map:2] Global(S), Or(GetField(Scope(2), A), GetField(Scope(1), A))):b*)):b**))
Func sig: (S:{A:b}*) to b**
Sequence: Seq<Seq<bool>>
 0) Sequence: Seq<bool>
     0) true 
     1) true 
 1) Sequence: Seq<bool>
     0) true 
     1) false
###
> Map(T, Map(T, it$0.A and it$1.A and Wrap(true)))
Map(T, Map(T, it.A and it$1.A and Wrap(true))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.With([with:1] Call(∂.Test.Wrap(true:b):b), Call(∂.ForEach([map:2] Global(T), Call(∂.With([with:3] And(Scope(1), GetField(Scope(2), A)), Call(∂.ForEach([map:4] Global(T), And(Scope(3), GetField(Scope(4), A))):b?*)):b?*)):b?**)):b?**))
Func sig: (T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) false
     2) <null>
 1) Sequence: Seq<Opt<bool>>
     0) false
     1) false
     2) false
 2) Sequence: Seq<Opt<bool>>
     0) <null>
     1) false
     2) <null>
###
> Map(S, Map(T, it$0.A and it$1.A and Wrap(true)))
Map(S, Map(T, it.A and it$1.A and Wrap(true))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.With([with:1] Call(∂.Test.Wrap(true:b):b), Call(∂.ForEach([map:2] Global(S), Call(∂.With([with:3] And(Scope(1), GetField(Scope(2), A)), Call(∂.ForEach([map:4] Global(T), And(Scope(3), GetField(Scope(4), A))):b?*)):b?*)):b?**)):b?**))
Func sig: (S:{A:b}*, T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) false
     2) <null>
 1) Sequence: Seq<Opt<bool>>
     0) false
     1) false
     2) false
###
> Map(S, Map(T, it$1.A and it$0.A and Wrap(true)))
Map(S, Map(T, it$1.A and it.A and Wrap(true))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.With([with:1] Call(∂.Test.Wrap(true:b):b), Call(∂.ForEach([map:2] Global(S), Call(∂.With([with:3] And(Scope(1), GetField(Scope(2), A)), Call(∂.ForEach([map:4] Global(T), And(Scope(3), GetField(Scope(4), A))):b?*)):b?*)):b?**)):b?**))
Func sig: (S:{A:b}*, T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) false
     2) <null>
 1) Sequence: Seq<Opt<bool>>
     0) false
     1) false
     2) false
###
> Map(S, Map(S, it$0.A and it$1.A and Wrap(true)))
Map(S, Map(S, it.A and it$1.A and Wrap(true))) : b**
BndKind:Call, Type:b**, Bnd:(Call(∂.With([with:1] Call(∂.Test.Wrap(true:b):b), Call(∂.ForEach([map:2] Global(S), Call(∂.With([with:3] And(Scope(1), GetField(Scope(2), A)), Call(∂.ForEach([map:4] Global(S), And(Scope(3), GetField(Scope(4), A))):b*)):b*)):b**)):b**))
Func sig: (S:{A:b}*) to b**
Sequence: Seq<Seq<bool>>
 0) Sequence: Seq<bool>
     0) true 
     1) false
 1) Sequence: Seq<bool>
     0) false
     1) false
###
> Map(T, Map(T, it$0.A and it$1.A and Wrap(false)))
Map(T, Map(T, it.A and it$1.A and Wrap(false))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.With([with:1] Call(∂.Test.Wrap(false:b):b), Call(∂.ForEach([map:2] Global(T), Call(∂.With([with:3] And(Scope(1), GetField(Scope(2), A)), Call(∂.ForEach([map:4] Global(T), And(Scope(3), GetField(Scope(4), A))):b?*)):b?*)):b?**)):b?**))
Func sig: (T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) false
     1) false
     2) false
 1) Sequence: Seq<Opt<bool>>
     0) false
     1) false
     2) false
 2) Sequence: Seq<Opt<bool>>
     0) false
     1) false
     2) false
###
> Map(S, Map(T, it$0.A and it$1.A and Wrap(false)))
Map(S, Map(T, it.A and it$1.A and Wrap(false))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.With([with:1] Call(∂.Test.Wrap(false:b):b), Call(∂.ForEach([map:2] Global(S), Call(∂.With([with:3] And(Scope(1), GetField(Scope(2), A)), Call(∂.ForEach([map:4] Global(T), And(Scope(3), GetField(Scope(4), A))):b?*)):b?*)):b?**)):b?**))
Func sig: (S:{A:b}*, T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) false
     1) false
     2) false
 1) Sequence: Seq<Opt<bool>>
     0) false
     1) false
     2) false
###
> Map(S, Map(T, it$1.A and it$0.A and Wrap(false)))
Map(S, Map(T, it$1.A and it.A and Wrap(false))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.With([with:1] Call(∂.Test.Wrap(false:b):b), Call(∂.ForEach([map:2] Global(S), Call(∂.With([with:3] And(Scope(1), GetField(Scope(2), A)), Call(∂.ForEach([map:4] Global(T), And(Scope(3), GetField(Scope(4), A))):b?*)):b?*)):b?**)):b?**))
Func sig: (S:{A:b}*, T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) false
     1) false
     2) false
 1) Sequence: Seq<Opt<bool>>
     0) false
     1) false
     2) false
###
> Map(S, Map(S, it$0.A and it$1.A and Wrap(false)))
Map(S, Map(S, it.A and it$1.A and Wrap(false))) : b**
BndKind:Call, Type:b**, Bnd:(Call(∂.With([with:1] Call(∂.Test.Wrap(false:b):b), Call(∂.ForEach([map:2] Global(S), Call(∂.With([with:3] And(Scope(1), GetField(Scope(2), A)), Call(∂.ForEach([map:4] Global(S), And(Scope(3), GetField(Scope(4), A))):b*)):b*)):b**)):b**))
Func sig: (S:{A:b}*) to b**
Sequence: Seq<Seq<bool>>
 0) Sequence: Seq<bool>
     0) false
     1) false
 1) Sequence: Seq<bool>
     0) false
     1) false
###
> Map(T, Map(T, it$0.A and it$1.A and Wrap(null)))
Map(T, Map(T, it.A and it$1.A and Wrap(null))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.ForEach([map:1] Global(T), Call(∂.With([with:2] And(GetField(Scope(1), A), null:b?), Call(∂.ForEach([map:3] Global(T), And(Scope(2), GetField(Scope(3), A))):b?*)):b?*)):b?**))
Func sig: (T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) <null>
     1) false
     2) <null>
 1) Sequence: Seq<Opt<bool>>
     0) false
     1) false
     2) false
 2) Sequence: Seq<Opt<bool>>
     0) <null>
     1) false
     2) <null>
###
> Map(S, Map(T, it$0.A and it$1.A and Wrap(null)))
Map(S, Map(T, it.A and it$1.A and Wrap(null))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.ForEach([map:1] Global(S), Call(∂.With([with:2] And(GetField(Scope(1), A), null:b?), Call(∂.ForEach([map:3] Global(T), And(Scope(2), GetField(Scope(3), A))):b?*)):b?*)):b?**))
Func sig: (S:{A:b}*, T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) <null>
     1) false
     2) <null>
 1) Sequence: Seq<Opt<bool>>
     0) false
     1) false
     2) false
###
> Map(S, Map(T, it$1.A and it$0.A and Wrap(null)))
Map(S, Map(T, it$1.A and it.A and Wrap(null))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.ForEach([map:1] Global(S), Call(∂.With([with:2] And(GetField(Scope(1), A), null:b?), Call(∂.ForEach([map:3] Global(T), And(Scope(2), GetField(Scope(3), A))):b?*)):b?*)):b?**))
Func sig: (S:{A:b}*, T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) <null>
     1) false
     2) <null>
 1) Sequence: Seq<Opt<bool>>
     0) false
     1) false
     2) false
###
> Map(S, Map(S, it$0.A and it$1.A and Wrap(null)))
Map(S, Map(S, it.A and it$1.A and Wrap(null))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.ForEach([map:1] Global(S), Call(∂.With([with:2] And(GetField(Scope(1), A), null:b?), Call(∂.ForEach([map:3] Global(S), And(Scope(2), GetField(Scope(3), A))):b?*)):b?*)):b?**))
Func sig: (S:{A:b}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) <null>
     1) false
 1) Sequence: Seq<Opt<bool>>
     0) false
     1) false
###
> Map(T, Map(T, it$0.A or it$1.A or Wrap(true)))
Map(T, Map(T, it.A or it$1.A or Wrap(true))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.With([with:1] Call(∂.Test.Wrap(true:b):b), Call(∂.ForEach([map:2] Global(T), Call(∂.With([with:3] Or(Scope(1), GetField(Scope(2), A)), Call(∂.ForEach([map:4] Global(T), Or(Scope(3), GetField(Scope(4), A))):b?*)):b?*)):b?**)):b?**))
Func sig: (T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) true 
     2) true 
 1) Sequence: Seq<Opt<bool>>
     0) true 
     1) true 
     2) true 
 2) Sequence: Seq<Opt<bool>>
     0) true 
     1) true 
     2) true 
###
> Map(S, Map(T, it$0.A or it$1.A or Wrap(true)))
Map(S, Map(T, it.A or it$1.A or Wrap(true))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.With([with:1] Call(∂.Test.Wrap(true:b):b), Call(∂.ForEach([map:2] Global(S), Call(∂.With([with:3] Or(Scope(1), GetField(Scope(2), A)), Call(∂.ForEach([map:4] Global(T), Or(Scope(3), GetField(Scope(4), A))):b?*)):b?*)):b?**)):b?**))
Func sig: (S:{A:b}*, T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) true 
     2) true 
 1) Sequence: Seq<Opt<bool>>
     0) true 
     1) true 
     2) true 
###
> Map(S, Map(T, it$1.A or it$0.A or Wrap(true)))
Map(S, Map(T, it$1.A or it.A or Wrap(true))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.With([with:1] Call(∂.Test.Wrap(true:b):b), Call(∂.ForEach([map:2] Global(S), Call(∂.With([with:3] Or(Scope(1), GetField(Scope(2), A)), Call(∂.ForEach([map:4] Global(T), Or(Scope(3), GetField(Scope(4), A))):b?*)):b?*)):b?**)):b?**))
Func sig: (S:{A:b}*, T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) true 
     2) true 
 1) Sequence: Seq<Opt<bool>>
     0) true 
     1) true 
     2) true 
###
> Map(S, Map(S, it$0.A or it$1.A or Wrap(true)))
Map(S, Map(S, it.A or it$1.A or Wrap(true))) : b**
BndKind:Call, Type:b**, Bnd:(Call(∂.With([with:1] Call(∂.Test.Wrap(true:b):b), Call(∂.ForEach([map:2] Global(S), Call(∂.With([with:3] Or(Scope(1), GetField(Scope(2), A)), Call(∂.ForEach([map:4] Global(S), Or(Scope(3), GetField(Scope(4), A))):b*)):b*)):b**)):b**))
Func sig: (S:{A:b}*) to b**
Sequence: Seq<Seq<bool>>
 0) Sequence: Seq<bool>
     0) true 
     1) true 
 1) Sequence: Seq<bool>
     0) true 
     1) true 
###
> Map(T, Map(T, it$0.A or it$1.A or Wrap(false)))
Map(T, Map(T, it.A or it$1.A or Wrap(false))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.With([with:1] Call(∂.Test.Wrap(false:b):b), Call(∂.ForEach([map:2] Global(T), Call(∂.With([with:3] Or(Scope(1), GetField(Scope(2), A)), Call(∂.ForEach([map:4] Global(T), Or(Scope(3), GetField(Scope(4), A))):b?*)):b?*)):b?**)):b?**))
Func sig: (T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) true 
     2) true 
 1) Sequence: Seq<Opt<bool>>
     0) true 
     1) false
     2) <null>
 2) Sequence: Seq<Opt<bool>>
     0) true 
     1) <null>
     2) <null>
###
> Map(S, Map(T, it$0.A or it$1.A or Wrap(false)))
Map(S, Map(T, it.A or it$1.A or Wrap(false))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.With([with:1] Call(∂.Test.Wrap(false:b):b), Call(∂.ForEach([map:2] Global(S), Call(∂.With([with:3] Or(Scope(1), GetField(Scope(2), A)), Call(∂.ForEach([map:4] Global(T), Or(Scope(3), GetField(Scope(4), A))):b?*)):b?*)):b?**)):b?**))
Func sig: (S:{A:b}*, T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) true 
     2) true 
 1) Sequence: Seq<Opt<bool>>
     0) true 
     1) false
     2) <null>
###
> Map(S, Map(T, it$1.A or it$0.A or Wrap(false)))
Map(S, Map(T, it$1.A or it.A or Wrap(false))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.With([with:1] Call(∂.Test.Wrap(false:b):b), Call(∂.ForEach([map:2] Global(S), Call(∂.With([with:3] Or(Scope(1), GetField(Scope(2), A)), Call(∂.ForEach([map:4] Global(T), Or(Scope(3), GetField(Scope(4), A))):b?*)):b?*)):b?**)):b?**))
Func sig: (S:{A:b}*, T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) true 
     2) true 
 1) Sequence: Seq<Opt<bool>>
     0) true 
     1) false
     2) <null>
###
> Map(S, Map(S, it$0.A or it$1.A or Wrap(false)))
Map(S, Map(S, it.A or it$1.A or Wrap(false))) : b**
BndKind:Call, Type:b**, Bnd:(Call(∂.With([with:1] Call(∂.Test.Wrap(false:b):b), Call(∂.ForEach([map:2] Global(S), Call(∂.With([with:3] Or(Scope(1), GetField(Scope(2), A)), Call(∂.ForEach([map:4] Global(S), Or(Scope(3), GetField(Scope(4), A))):b*)):b*)):b**)):b**))
Func sig: (S:{A:b}*) to b**
Sequence: Seq<Seq<bool>>
 0) Sequence: Seq<bool>
     0) true 
     1) true 
 1) Sequence: Seq<bool>
     0) true 
     1) false
###
> Map(T, Map(T, it$0.A or it$1.A or Wrap(null)))
Map(T, Map(T, it.A or it$1.A or Wrap(null))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.ForEach([map:1] Global(T), Call(∂.With([with:2] Or(GetField(Scope(1), A), null:b?), Call(∂.ForEach([map:3] Global(T), Or(Scope(2), GetField(Scope(3), A))):b?*)):b?*)):b?**))
Func sig: (T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) true 
     2) true 
 1) Sequence: Seq<Opt<bool>>
     0) true 
     1) <null>
     2) <null>
 2) Sequence: Seq<Opt<bool>>
     0) true 
     1) <null>
     2) <null>
###
> Map(S, Map(T, it$0.A or it$1.A or Wrap(null)))
Map(S, Map(T, it.A or it$1.A or Wrap(null))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.ForEach([map:1] Global(S), Call(∂.With([with:2] Or(GetField(Scope(1), A), null:b?), Call(∂.ForEach([map:3] Global(T), Or(Scope(2), GetField(Scope(3), A))):b?*)):b?*)):b?**))
Func sig: (S:{A:b}*, T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) true 
     2) true 
 1) Sequence: Seq<Opt<bool>>
     0) true 
     1) <null>
     2) <null>
###
> Map(S, Map(T, it$1.A or it$0.A or Wrap(null)))
Map(S, Map(T, it$1.A or it.A or Wrap(null))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.ForEach([map:1] Global(S), Call(∂.With([with:2] Or(GetField(Scope(1), A), null:b?), Call(∂.ForEach([map:3] Global(T), Or(Scope(2), GetField(Scope(3), A))):b?*)):b?*)):b?**))
Func sig: (S:{A:b}*, T:{A:b?}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) true 
     2) true 
 1) Sequence: Seq<Opt<bool>>
     0) true 
     1) <null>
     2) <null>
###
> Map(S, Map(S, it$0.A or it$1.A or Wrap(null)))
Map(S, Map(S, it.A or it$1.A or Wrap(null))) : b?**
BndKind:Call, Type:b?**, Bnd:(Call(∂.ForEach([map:1] Global(S), Call(∂.With([with:2] Or(GetField(Scope(1), A), null:b?), Call(∂.ForEach([map:3] Global(S), Or(Scope(2), GetField(Scope(3), A))):b?*)):b?*)):b?**))
Func sig: (S:{A:b}*) to b?**
Sequence: Seq<Seq<Opt<bool>>>
 0) Sequence: Seq<Opt<bool>>
     0) true 
     1) true 
 1) Sequence: Seq<Opt<bool>>
     0) true 
     1) <null>
###
> Map(S, not it$0.A)
Map(S, not it.A) : b*
BndKind:Call, Type:b*, Bnd:(Call(∂.ForEach([map:1] Global(S), Xor(GetField(Scope(1), A), true:b)):b*))
Func sig: (S:{A:b}*) to b*
Sequence: Seq<bool>
 0) false
 1) true 
###
> Map(T, not it$0.A)
Map(T, not it.A) : b?*
BndKind:Call, Type:b?*, Bnd:(Call(∂.ForEach([map:1] Global(T), Call(∂.Guard([guard:2] GetField(Scope(1), A), Xor(Scope(2), true:b)):b?)):b?*))
Func sig: (T:{A:b?}*) to b?*
Sequence: Seq<Opt<bool>>
 0) false
 1) true 
 2) <null>
###
> [[true, false, true], [false, true], [true]] | Map(_, First(it$0, not it$0) or Count(it$0) > 2)
[[true, false, true], [false, true], [true]] | Map(_, First(it, not it) or Count(it) $> 2) : b?*
BndKind:Call, Type:b?*, Bnd:(Call(∂.ForEach([map:1] [[true:b, false:b, true:b]:b*, [false:b, true:b]:b*, [true:b]:b*]:b**, Or(Call(∂.TakeOne([map:2] Scope(1), Xor(Scope(2), true:b), null:b?):b?), Cmp(Call(∂.Count(Scope(1)):i8) @> 2:i8))):b?*))
Func sig: (<ctx>:x) to b?*
Sequence: Seq<Opt<bool>>
 0) true 
 1) false
 2) <null>
*** Ctx ping count: 1
    [1](1): TakeOne(*2: *1x, Xor(*2, true), null)
###
