#Ol      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopq r s t u v w x y z { | } ~           ! " # # #######$$$$$%%%%%%% %!%"&#&$&%&&&'&(&)&*&+&,&-&.&/&0&1&2&3&4&5'6'7'8'9':';'<'=(>(?(@(A(B(C(D(E)F)G)H)I)J)K)L)M)N)O)P)Q*R*S*T*U*V*W*X*Y+Z+[+\+]+^+_+`+a+b+c,d,e,f,g,h,i,j,k,l,m,n-o-p.q.r.s.t/u0v0w0x0y0z0{1|1}1~111111111112222333333344444444444444444444444455555666677777777777777777777777777777777788899::::::@None%/14567;=>?HSUVX_k6protonThe  profunctor characterizes a Prism.None%/14567;=>?HSUVX_k4  None%/14567;=>?@ACHSUVX_kZNone%/145678;=>?@ACHMSUVX_kNone%,/14567;=>?HSUVX_k$*protonNSplit the input between the two argument profunctors and combine their output.+protonHFanout: send the input to both argument arrows and combine their output.,proton$Precomposition with a pure function.-proton%Postcomposition with a pure function..proton<Precomposition with a pure function (right-to-left variant)./proton=Postcomposition with a pure function (right-to-left variant).#$%&'()*+,-./01)*+,-./01'(%&#$None%/14567;=>?HMSUVX_k&@YZ[YZ[None%/145678;=>?@ACHMSUVX_k'vcdefgfgcde None%/14567;=>?HSUVX_k(qrstuvwxqrstuvwx None%/14567;=>?HSUVX_k)yzyz None%/14567;=>?HSUVX_k*|| None%/14567;=>?HSUVX_k+}~}~ None%/14567;=>?HSUVX_k,None%/14567;=>?HSUVX_k-None%/14567;=>?HSUVX_k.;None%/14567;=>?HSUVX_k/None%&'/14567;=>?HSUVX_k0None%/145678;=>?@ACHMSUVX_k2None%/14567;=>?@ACHSUVX_k3PNone%/14567;=>?@ACHSUVX_k4fNone%/14567;=>?HSUVX_k5lNone%,/14567;=>?HSTUVX_kq6None%/14567;=>?HSUVX_k7None%/14567;=>?HSUVX_k8~None%/14567;=>?HSUVX_k9|<None%/14567;=>?HSUVX_k:=None%/14567;=>?HSUVX_k;x>None%/14567;=>?HSUVX_k?HPSUVX_k=None%/14567;=>?HSUVX_k>sNone%/14567;=>?HSUVX_k?None%/14567;=>?HSUVX_k@None%/14567;=>?HSUVX_kANone%/14567;=>?HSUVX_kB None%/14567;=>?HSUVX_kC  44 None%/14567;=>?HSUVX_kE5!None%/14567;=>?HSUVX_kFc  "None%/14567;=>?HSUVX_kGY  #None%/14567;=>?HSUVX_kHO      $None%/14567;=>?@ACHSUVX_kI%None%/14567;=>?HSUVX_kJ  !  !&None%/14567;=>?HPSUVX_kK"#$%&'()*+,-./0123$%&'()*+,-./"#0123'None%/14567;=>?HSUVX_kqMg56789:;<56789:;<<8(None%-./14567;=>?HSUVX_hkqN=>?@ABCD=>?@ABCD@8)None%/14567;=>?HSUVX_kP EFGHIJKLMN HGIJKLMNEF*None%,/14567;=>?HPSUVX_kQWQRSTUVWXSRQTUVWX+None%/14567;=>?HSTUVX_kqR YZ[\]^_`ab YZ[\]^_`ab,None%/14567;=>?HPSUVX_kqS cdefghijklm dcefghijklmh4-None%/14567;=>?HSUVX_kU<noon?None%/14567;=>?HSUVX_kV:.None%/14567;=>?HSUVX_kW(pqrsqprs/None%/14567;=>?HSUVX_kX6tt0None%/14567;=>?HSUVX_kY,uvwxyzuvwxyz1None%/14567;=>?HSUVX_kZJ {}|~ ~{}|2None%/14567;=>?HSUVX_k[3None%/14567;=>?HSUVX_k\  44None%/14567;=>?HSUVX_k]     !56789:;<=>?@ABCDEFGHIJKLMNQRSTUVWXYZ[\]^_`abcdefghijklmnopqrst{|}~     !56789:;<=>?@ABCDEFGHIJKLMNQRSTUVWXYZ[\]^_`abcdefghijklmnopqrst{|}~4None%/14567;=>?HSUVX_kc5None%/14567;=>?HPSUVX_keF6None%/14567;=>?HPSUVX_kfd@None%/14567;=>?HSUVX_kgr7None%/14567;=>?HSUVX_kh`48None%/14567;=>?HSUVX_kjQ9None%/14567;=>?HSUVX_kkW:None%/14567;=>?HSUVX_klUABCDDEFGHHIJKLMNOPQRSTUVWWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~XZ    S      !"#$%&'()*+,-./01 2 3 4 5 6 7 8 9!:";#<#<#=#>#?#@##A#B$C$D$E$F$G%H%H%I%J%K%L%M%N%O&P&P&Q&R&S&T&U&V&W&X&Y&Z&[&\&]&^&&_&`'a'b'c'd'e'f'g'h(i(j(k(l(m(n(o(p)q)q)r)s)t)u)v)w)x)y)z){*|*}*~*****++++++++++f,,,,,,,,,,,--..../000000111111111111112222333333344444444444444444444444455555666677777777777777777777777777777777788899::::::>>>>>>>>#proton-0.0.2-EVZsdCQoXiiJR2B9NB5j1AProton Data.Market Data.PairData.Profunctor.AbsorbentData.Profunctor.AnnotatedData.Profunctor.ArrowControl.Arrow.ProfunctorData.Profunctor.CoindexedData.Profunctor.ContData.Profunctor.DependingData.Profunctor.DistributingData.Profunctor.ExpandingData.Profunctor.ExpansiveData.Profunctor.ExtractionData.Profunctor.ExtrasData.Profunctor.FoldMData.Profunctor.IndexedData.Profunctor.JoinableData.Profunctor.MStrongData.Profunctor.DoubleStarData.Profunctor.PhantomData.Profunctor.ReflectorData.Profunctor.RememberData.Profunctor.WitheringProton.Internal.OrphansProton.Kaleidoscope Proton.LensProton.Achromatic Proton.Miso Proton.Prisms Proton.Setter Proton.TypesProton.Telescope Proton.Par Proton.LoopProton.Indexed Proton.GrateProton.PreGrate Proton.Getter Proton.Review Proton.Iso Proton.Glass Proton.FoldProton.Traversal Proton.GridProton.FeedbackProton.DiffractionProton.CoindexedProton.CoalgebraicProton.AnnotatedProton.AlgebraicExamples.Scrap Examples.LoopExamples.LayersExamples.FlowersExamples.DiffractExamples.Algebraic Proton.WitherData.Profunctor.Fold Examples.AltExamples.Coalgebraic Paths_proton Proton.PlatedExamples.Glassbase Data.Function&Market$fChoiceMarket$fProfunctorMarket$fFunctorMarketPairpairedliftPair$fRepresentablePair$fDistributivePair$fApplicativePair $fShowPair$fEqPair $fOrdPair $fFunctorPair Absorbentabsorb$fAbsorbentmForget$fAbsorbentmStar$fAbsorbentIdentity-> Annotated runCoindexed Annotatable coindexed$fAnnotatableeTaggedTagged$fAnnotatableeCostarCostar$fAnnotatableeStarStar$fAnnotatablee->->$fAnnotatableeForgetForget$fAnnotatableipAnnotated$fStrongAnnotated$fProfunctorAnnotatedProfunctorApplyappProfunctorPlus<+>ProfunctorZerozeroProfunctorarr***&&&^>>>>^<<^^<<+++|||$fProfunctorZeroBiff$fProfunctorZeroRift$fProfunctorZeroProduct$fProfunctorZeroCodensity$fProfunctorZeroWrappedArrow$fProfunctorZeroJoker$fProfunctorZeroYoneda$fProfunctorZeroCofreeMapping $fProfunctorZeroCofreeTraversing$fProfunctorZeroTambaraSum$fProfunctorZeroClosure$fProfunctorZeroTambara$fProfunctorZeroTannen$fProfunctorZeroCayley$fProfunctorZeroForget$fProfunctorZeroKleisli$fProfunctorZeroStar$fProfunctorPlusBiff$fProfunctorPlusRift$fProfunctorPlusProduct$fProfunctorPlusCodensity$fProfunctorPlusWrappedArrow$fProfunctorPlusJoker$fProfunctorPlusCofreeMapping $fProfunctorPlusCofreeTraversing$fProfunctorPlusTambaraSum$fProfunctorPlusClosure$fProfunctorPlusTambara$fProfunctorPlusTannen$fProfunctorPlusCayley$fProfunctorPlusForget$fProfunctorPlusKleisli$fProfunctorPlusStar$fProfunctorApplyJoker$fProfunctorApplyWrappedArrow$fProfunctorApplyForget$fProfunctorApplyKleisli$fProfunctorApply->$fProfunctorApplyStarWrappedProfunctorunwrapProfunctor$fArrowLoopWrappedProfunctor$fArrowApplyWrappedProfunctor$fArrowChoiceWrappedProfunctor$fArrowPlusWrappedProfunctor$fArrowZeroWrappedProfunctor$fArrowWrappedProfunctor$fCategoryWrappedProfunctor Coindexed Coindexable$fCoindexableVoidTaggedTagged$fCoindexableVoidCostarCostar$fCoindexableeStarStar$fCoindexableVoidStarStar$fCoindexableVoid->->$fCoindexableeForgetForget$fCoindexableipCoindexed$fChoiceCoindexed$fProfunctorCoindexedhelperhelper'helper''stopWhen stopWhen' stopWhen'' withCapturetester Dependingdepend$fDependingStar distribute' Expandingexpand Expansive$fExpansiveCayley$fExpansiveTagged$fExpansiveForget$fExpansiveStar Extraction extractionsacttuhomelooper coiterate$fExtractionStar$fExtraction->$fExtractionForgetDubjoin'join''$fProfunctorDubFoldM$fProfunctorFoldM UnIndexedIndexed Indexableindexed$fIndexableiTaggedTagged$fIndexablei->->$fIndexableiCostarCostar$fIndexableiStarStar$fIndexableiForgetForget$fIndexableiIndexedp$fStrongIndexed$fProfunctorIndexed$fIndexableiUnIndexedp$fProfunctorUnIndexed$fClosedUnIndexed$fStrongUnIndexed$fChoiceUnIndexed$fTraversingUnIndexed$fCochoiceUnIndexed$fCostrongUnIndexedJoinable$fJoinableForgetm$fJoinableStarmMStrongmfirst'msecond'$fMStrongCostar$fMStrongTagged $fMStrongStar $fMStrong->$fMStrongForget DoubleStar$fChoiceDoubleStar$fMStrongDoubleStar$fProfunctorDoubleStarPhantomphantom$fPhantomCayley $fPhantomStar$fPhantomForget Reflector reflected$fReflectorStar$fReflectorTagged$fReflectorCostar $fReflector->Remember$fCostrongRemember$fClosedRemember$fChoiceRemember$fProfunctorRemember$fFunctorRememberAltConst Witheringcull$fWitheringStar$fAlternativeAltConst$fMonoidAltConst$fSemigroupAltConst$fApplicativeAltConst$fWitheringForget $fEqAltConst $fOrdAltConst$fShowAltConst$fFunctorAltConst$fStrongCostar Kaleidoscope' Kaleidoscope pointWiseLens'Lenslens_1_2achromMiso$fProfunctorMisoPrism'Prismprismprism'_Just_Nothing_Left_Right_Show withPrismmatchingSetter'Settersetoversetssettermapped%~.~CoindexedOptic'CoindexedOptic IndexedOptic' IndexedOpticOptical'OpticalOptic'OpticcatparrallelisingCoPrismLoop'LooploopiterM$fCochoiceCoPrism$fProfunctorCoPrismindexing itraversed itoListOfioverisetZippingGrate'Grategrate distributedboth zipWithOf zipFWithOf IntersectionalignMaybeWithDefaultaligneralignMapalignMapWithDefault alignListalignListWithDefaultalignMapMonoidalignListMonoidxyll' fullAlignMap fullAlignListzipBy$fSemigroupIntersectionGettertoto'to''viewviewslike^.Reviewretaggedreview#reviewsreuntounExchangeIso'IsoisofromwithIsoundermapping involuted$fProfunctorExchange$fFunctorExchangeGlassedGlass'Glassglassedglass glassListextendOf traversed'FoldfoldingfoldedfoldOf foldMapOftoListOfpreview^?^.. Traversal' Traversal traversedfiltered traverseOf%%~beside unsafePartsOfpartsOftakingdroppingGrid'Grid Feedback'FeedbackfeedbackfibdiffractvViewvPrism_Just' coindexingvOvervFirstMChoicemleft'mright' Coalgebraic' Coalgebraic swapEithercoprism coalgPrism_Right'$fMChoiceCostar$fMChoiceForget $fMChoiceStar $fMChoice->AlgebraicLens' AlgebraicLens algebraiclistLensaltLens?.>-Flowerspecies measurements MeasurementsgetMeasurementsSpeciesSetosa Versicolor VirginicameasurementDistanceclassify aggregatemeasureNearestflower1flower2flowersmean aggOnIndextest $fShowSpecies$fShowMeasurements $fShowFlowerthingcollatz factorialaccumwhile imgLayersforwardback lookup'er flowerSpeciesflowerMeasurements versicolorsetosa>-- aggregateWithavgMeasurement applyWeight partitionedonFirst selectingOnindexOfallMeasurementsmeasurementMapsplitsplitterexamplepad padLengthWither'WitherguardingguardedfilterOf witherPrismversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName