aa = true | false
a = if aa {
  1
} else {
  2
}
assert(a, isEqualTo = 1, error = "left branch of or is true makes the whole expression true")

bb = false | true
b = if bb {
  1
} else {
  2
}
assert(b, isEqualTo = 1, error = "right branch of or is true makes the whole expression true")

cc = true | true
c = if cc {
  1
} else {
  2
}
assert(c, isEqualTo = 1, error = "both branches of or are true makes the whole expression true")

dd = false | false
d = if dd {
  1
} else {
  2
}
assert(d, isEqualTo = 2, error = "both branches of or are false makes the whole expression false")
