úÎ*     None69;OQRTThe class of type of * -> *ÿ which may be empty. There is only one law for HasEmpty and its enforced by the type. The law is that there exists a value in type f for which a is fully generic. This alone is often enough to uniquely determine the value for a given, data type.-Additional laws for HasEmpty work backwards, empty3 has a relationships with other classes. So if fD is a member of one of these classes, the following should hold. Functor identity g <$> empty = emptyApplicative annililation left x <*> empty = emptyApplicative annililation right empty <*> x = emptyMonad identity empty >>= f = emptyAlternative empty empty = Alternative.emptyMonadPlus mzero  empty = mzeroFoldable identity foldr f x empty = empty        $Empty-0.1.0.0-16WgfI61DrH6wCWaYjVIOh Control.EmptyHasEmptyemptycoerceisEmpty $fHasEmptySet $fHasEmptySeq $fHasEmptyMap$fHasEmptyIntMap$fHasEmptyCompose$fHasEmptyProduct$fHasEmptyReadPrec$fHasEmptyReadP$fHasEmptyOption$fHasEmptyProxy $fHasEmptySTM $fHasEmptyIO $fHasEmpty[]$fHasEmptyMaybe