module FnBind where

f x y = x y z t
  where
    -- NB: mutually recursive bindings
    z = x t
    t = y z
f x y |
  let z = x y,
  (k1, k2) <- z,
  k1,
  k2
  = y

(z * x) y = x y z t
  where
    t = y z