Combining Comonads

Mathematically, it is a strong lax symmetric semi-monoidal comonad on the
category Hask of Haskell types. That it to say that w is a strong lax
symmetric semi-monoidal functor on Hask, where both extract and duplicate are
symmetric monoidal natural transformations.