-- }}}

-- Conditional Combinators {{{

upon :: Bool -> (a -> a) -> a -> a
upon b f = if b
  then f
  else id
upon :: Bool -> (a -> a) -> a -> a
upon b f = if b
  then f
  else id
upon b f = if b
  then f
  else id