úÎ÷C0      !"#$%&'()*+,-./(C) 2011-2015 Edward Kmett, BSD-style (see the file LICENSE)Edward Kmett <ekmett@gmail.com> provisionalMPTCs Trustworthy !"'(246=The cograph of a 0.123123(C) 2011-2015 Edward Kmett BSD-style (see the file LICENSE)Edward Kmett <ekmett@gmail.com> provisionalportable Safe-Inferred !"'(6<= 45674567(C) 2011-2015 Edward Kmett BSD-style (see the file LICENSE)Edward Kmett <ekmett@gmail.com> provisional polykinds Safe-Inferred!"'(6= 89:    89:(C) 2011-2015 Edward Kmett BSD-style (see the file LICENSE)Edward Kmett <ekmett@gmail.com> provisional polykinds Trustworthy!"'(23468=M ;Used to map a more traditional bifunctor into a semifunctorðSemifunctors map objects to objects, and arrows to arrows preserving connectivity as normal functors, but do not purport to preserve identity arrows. We apply them to semigroupoids, because those don't even claim to offer identity arrows! ;<=>?@ABCD#EFGHIJKLMNOPQRS   ;<=>?@ABCD(C) 2011-2015 Edward Kmett BSD-style (see the file LICENSE)Edward Kmett <ekmett@gmail.com> experimental MPTCs, GADTs Safe-Inferred !"'(2346= !"#$%&'()* !" *)!('&%"$#  !"#$%&'()*(C) 2011-2015 Edward Kmett BSD-style (see the file LICENSE)Edward Kmett <ekmett@gmail.com> experimental MPTCs, GADTs Trustworthy !"'(2346= +,-./TUVWXYZ[+,-./,-.+/ +,-./TUVWXYZ[\        !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMKLNKLOKLPKLQRSTRSURVWRVXRVYRVZRV[RV\RV]RV]^_`abcdefsemigroupoid-extras-5Data.Profunctor.CollageData.Semigroupoid.CoproductData.Semigroupoid.ProductData.SemifunctorData.Semifunctor.AssociativeData.Semifunctor.BraidedCollageCRL CoproductdistributeDualCoproductfactorDualCoproductProductPairdistributeDualProductfactorDualProductBiWrappedTraversable1WrapTraversable1unwrapTraversable1WrappedFunctor WrapFunctor unwrapFunctor Semifunctorsemimap# semibimap semifirst semisecondfirstsecondDisassociative disassociate Associative associatekleisliAssociatekleisliDisassociate$fDisassociative*KleisliBi$fDisassociative*KleisliBi0$fDisassociative*(->)Bi$fDisassociative*(->)Bi0$fAssociative*KleisliBi$fAssociative*KleisliBi0$fAssociative*(->)Bi$fAssociative*(->)Bi0 SymmetricBraidedbraid kleisliBraidswapprofunctors-5.1Data.Profunctor.Unsafe Profunctor$fObEitherCollageRight$fObEitherCollageLeft$fSemigroupoidEitherCollage$fObEitherCoproductRight$fObEitherCoproductLeft$fGroupoidEitherCoproduct$fSemigroupoidEitherCoproduct$fOb(,)Product(,)$fGroupoid(,)Product$fSemigroupoid(,)Productleftright!$fSemifunctor*(,)BiProductKleisli"$fSemifunctor*(,)BiProductKleisli0$fSemifunctor*(,)BiProduct(->)$fSemifunctor*(,)BiProduct(->)0$fSemifunctorkkfDualDual0$fSemifunctor**WrappedTraversable1KleisliKleisli+$fSemifunctor**WrappedFunctorKleisliKleisli%$fSemifunctor**WrappedFunctor(->)(->)baseControl.Category>>><<<.idCategorysemigroupoids-5.0.0.1Data.Semigroupoid.ObsemiidObData.Semigroupoido SemigroupoidunwrapCategory WrapCategoryWrappedCategorygetSemiSemi$fSymmetric*KleisliBi$fSymmetric*KleisliBi0$fSymmetric*(->)Bi$fSymmetric*(->)Bi0$fBraided*KleisliBi$fBraided*KleisliBi0$fBraided*(->)Bi$fBraided*(->)Bi0