﻿`` sb := Range(10)->Map(it mod 2 = 0)->Null();
`` sbq := Range(10)->Map(null if it mod 3 = 0 else it mod 2 = 0)->Null();

Any([true, false])
Any([false])
Any([null])
Any([true, null])
Any([false, null])
Any([null, false])
[[true, false], null] | Map(_, Any(it))
[[true, false, null], null] | Map(_, Any(it,it))
Any(Wrap(null))
Any(sb)
Any(sbq)
Any([Any([true]), Any(Wrap([]))])
Any([Any([false]), Any(Wrap([]))])

Any(Range(10), it > 2)
Any(Range(10), it > 20)
[Range(10), null] | Map(_, Any(it, it > 3))
Any([[true], [false]], First(it, it))
Any([[false], [false]], First(it, it))
Any([[false], [true]], First(it, not it))
Any([[true], [false]], First(it, not it))
Any([[false], [false]], First(it, not it))

All([true, false])
All([true])
All([null])
All([true, null])
All([false, null])
[[true, false], null] | Map(_, All(it))
All(Wrap(null))
All(sb)
All(sbq)
All([All([true]), All(Wrap([]))])
All([All([false]), All(Wrap([]))])

All(Range(10), it > -1)
All(Range(10), it > 20)
[Range(10), null] | Map(_, All(it, it > 3))
[[true, false, null], null] | Map(_, All(it,it))
All([[true], [true]], First(it, it))
All([[true], [false]], First(it, it))
All([[false], [false]], First(it, it))
All([[false], [true]], First(it, not it))
All([[true], [false]], First(it, not it))

`` S := Range(15, 25);
`` Sn := S->Map(it if it mod 2 = 0 else null);

Any(S,  # > 5)
Any(Sn, # > 5)
Any(S,  # > 10)
Any(Sn, # > 10)
Any(S,  null if # = 0 else # > 5)
Any(S,  null if # = 0 else # > 10)
Any(Sn, null if # = 0 else # > 5)

All(S,  # > 5)
All(Sn, # > 5)
All(S,  # < 10)
All(Sn, # < 10)
All(S,  null if # = 0 else # > 5)
All(S,  null if # = 0 else # < 10)
All(Sn, null if # = 0 else # > 5)
