úÎ ]-      !"#$%&'()*+,Safe$the class of containers that form a -% regardless of the type they containMthe class of containers that can be combined regardless of type they contain,the class of containers with a "nil" element  None2345:the variation type contains _nominal(: a nominal value that will always exist _variationsT: alternative values which are held inside a container of type fit is strict in both arguments.the . instance uses the  instance of f to define pure pure x = Variation x empty1and the / and  instances of f to define 0 yVariation f fs <*> Variation x xs = Variation (f x) ((fs <.> xs) `append1` (f <$> xs) `append1` (($ x) <$> fs))the 1 instance uses the / instance of f (2#) to collapse collections of type f (f a) ájoinV :: (Bind f, Monoid1 f) => Variation f (Variation f a) -> Variation f a joinV (Variation (Variation nn nv) v) = let vv = _variations <$> v vn = _nominal <$> v in Variation nn $ join vv `append1` vn `append1` nvother useful instances: Finstance Append1 f => Semigroup (Variation f a) where (<>) = append1 rinstance (Monoid a, Monoid1 f) => Monoid (Variation f a) where mempty = Variation mempty empty1 mappend = (<>)3 !"#$%&'( 3 !"#$%&'(4      !"#$%&'()*+,-./01/02345/06/073489:(variation-0.1.1.0-LQFmCGwOHr1FHYkVMaNdtJ Data.Monoid1Data.VariationMonoid1Append1append1Unit1empty1$fMonoid1WrappedMonad$fAppend1WrappedMonad$fUnit1WrappedMonad $fMonoid1Last$fMonoid1First$fMonoid1Const $fMonoid1Map$fMonoid1IntMap $fMonoid1[] $fAppend1Last$fAppend1First$fAppend1Const $fAppend1Map$fAppend1IntMap $fAppend1[] $fUnit1Last $fUnit1First $fUnit1Const $fUnit1Map $fUnit1IntMap $fUnit1[] Variation_nominal _variationsnominal variations$fShowVariation$fShow1Variation$fMonoidVariation$fSemigroupVariation$fAppend1Variation$fMonadVariation$fApplicativeVariation$fSerializeVariation$fNFDataVariation$fGenericVariation$fFunctorVariation$fFoldableVariation$fTraversableVariationbaseGHC.BaseMonoid Applicative(semigroupoids-5.2-4GIAkhG0auJ5r0l5v9KcpaData.Functor.Bind.ClassBind<*>MonadjoinjoinV