{-# RULES
"head/build" forall (g :: forall b . (a -> b -> b) -> b -> b) .
             head (build g) = g (\ x _ -> x) badHead
 #-}