úÎ9 .M      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLSafe=K does not require a M$, as the only relationship between  and N is given by a free theorem.   Safe=K3 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKL3LKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"! 2 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLO      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRPQST pointed-4.2Data.Copointed Data.Pointed Copointedcopoint$fCopointedStoreT$fCopointedEnvT$fCopointedMin$fCopointedMax$fCopointedLast$fCopointedFirst$fCopointedNonEmpty$fCopointedSum$fCopointedDual$fCopointedWriterT$fCopointedWriterT0$fCopointedIdentityT$fCopointedLift$fCopointedCoproduct$fCopointedCompose$fCopointedTree$fCopointed(,,,)$fCopointed(,,)$fCopointed(,)$fCopointedTracedT$fCopointed(->)$fCopointedIdentity$fCopointedTagged$fCopointedSum0Pointedpoint$fPointedStatic$fPointedStateT$fPointedStateT0$fPointedWriterT$fPointedWriterT0 $fPointedRWST$fPointedRWST0$fPointedReaderT$fPointedMaybeT$fPointedListT$fPointedIdentityT$fPointedExceptT$fPointedErrorT$fPointedContT$fPointedConstant$fPointedProduct $fPointedRift $fPointedLift$fPointedBackwards$fPointedReverse$fPointedCompose $fPointedSet $fPointedSeq $fPointedMin $fPointedMax $fPointedLast$fPointedFirst$fPointedLast0$fPointedFirst0$fPointedProduct0 $fPointedSum $fPointedEndo $fPointedDual$fPointedWrappedArrow$fPointedConst$fPointedWrappedMonad $fPointed(,) $fPointed(->)$fPointedIdentity$fPointedZipList$fPointedNonEmpty $fPointedTree $fPointedSTM $fPointedIO$fPointedEither$fPointedMaybe $fPointed[]$fPointedTagged$fPointedProxybaseGHC.BaseFunctorfmap