$u>      !"#$%&' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < =  Safe-Inferred>?@A>?@A>A@?portable experimentalEdward Kmett <ekmett@gmail.com> Safe-Inferred type families experimentalEdward Kmett <ekmett@gmail.com> Safe-InferredBThe empty graph  CBDEFGHIJKLM      CBDEFGHIJKLM type families experimentalEdward Kmett <ekmett@gmail.com> Safe-InferredMinimal definition: ,  , and either  with  =  or  NOPQRSTUVWX  NOPQRSTUVWX type families experimentalEdward Kmett <ekmett@gmail.com> Safe-InferredYZ[\]^_`abc  YZ[\]^_`abc type families experimentalEdward Kmett <ekmett@gmail.com> Safe-Inferred defghijklmn   defghijklmn type families experimentalEdward Kmett <ekmett@gmail.com> Safe-Inferred O(e)  opqrstuvwxy     opqrstuvwxy type families experimentalEdward Kmett <ekmett@gmail.com> Safe-Inferred"O(v) !"z{|}~  !"!" !"z{|}~ type families experimentalEdward Kmett <ekmett@gmail.com> Safe-Inferred #$%&#$%&#$%&#$%&  type families experimentalEdward Kmett <ekmett@gmail.com> Safe-Inferred'()*+,-.'()*+,-..'()*+,-'()*+,-.  type families experimentalEdward Kmett <ekmett@gmail.com> Safe-Inferred/Breadth first search visitor /0123456/01234566/012345 /0123456  type families experimentalEdward Kmett <ekmett@gmail.com> Safe-Inferred 789789789 789  type families experimentalEdward Kmett <ekmett@gmail.com> Safe-Inferred :;<=:;<=:;<=:;<= !"#$%&'()*+,-./0012 3 3 4 5 6 7 8 9 : : 4 5 6 7 8 ; < < = > > ? 2 @ A B CDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ graphs-0.5Data.Graph.PropertyMapData.Graph.ClassData.Graph.Class.AdjacencyListData.Graph.Class.Bidirectional Data.Graph.Class.AdjacencyMatrixData.Graph.Class.EdgeEnumerable!Data.Graph.Class.VertexEnumerableData.Graph.AdjacencyMatrix%Data.Graph.Algorithm.DepthFirstSearch'Data.Graph.Algorithm.BreadthFirstSearchData.Graph.DualData.Graph.AdjacencyListData.Graph.Internal.Color PropertyMapgetPputPmodifyPintPropertyMap propertyMapliftPropertyMapGraphVertexEdge vertexMapedgeMapEdgeMap VertexMap liftVertexMap liftEdgeMapAdjacencyListGraphsourcetargetoutEdges outDegreeadjacentVerticesdefaultOutEdgesBidirectionalGraphinEdgesinDegree incidentEdgesdegreeAdjacencyMatrixGraphedgeEdgeEnumerableGraphedgesVertexEnumerableGraphverticesAdjacencyMatrixrunAdjacencyMatrixaskDfs enterVertex enterEdge grayTarget exitVertex blackTargetdfsBfsbfsDualrunDual AdjacencyListrunAdjacencyListColorBlackGreyWhite$fGraphIdentityvoidMap $fGraphRWST $fGraphRWST0 $fGraphErrorT $fGraphMaybeT$fGraphIdentityT$fGraphReaderT$fGraphWriterT$fGraphWriterT0 $fGraphStateT$fGraphStateT0$fAdjacencyListGraphIdentity$fAdjacencyListGraphIdentityT$fAdjacencyListGraphMaybeT$fAdjacencyListGraphErrorT$fAdjacencyListGraphReaderT$fAdjacencyListGraphRWST$fAdjacencyListGraphRWST0$fAdjacencyListGraphWriterT$fAdjacencyListGraphWriterT0$fAdjacencyListGraphStateT$fAdjacencyListGraphStateT0$fBidirectionalGraphIdentity$fBidirectionalGraphErrorT$fBidirectionalGraphMaybeT$fBidirectionalGraphIdentityT$fBidirectionalGraphReaderT$fBidirectionalGraphRWST$fBidirectionalGraphRWST0$fBidirectionalGraphWriterT$fBidirectionalGraphWriterT0$fBidirectionalGraphStateT$fBidirectionalGraphStateT0$fAdjacencyMatrixGraphIdentity$fAdjacencyMatrixGraphReaderT$fAdjacencyMatrixGraphIdentityT$fAdjacencyMatrixGraphErrorT$fAdjacencyMatrixGraphMaybeT$fAdjacencyMatrixGraphRWST$fAdjacencyMatrixGraphRWST0$fAdjacencyMatrixGraphWriterT$fAdjacencyMatrixGraphWriterT0$fAdjacencyMatrixGraphStateT$fAdjacencyMatrixGraphStateT0$fEdgeEnumerableGraphIdentity$fEdgeEnumerableGraphReaderT$fEdgeEnumerableGraphErrorT$fEdgeEnumerableGraphIdentityT$fEdgeEnumerableGraphMaybeT$fEdgeEnumerableGraphRWST$fEdgeEnumerableGraphRWST0$fEdgeEnumerableGraphWriterT$fEdgeEnumerableGraphWriterT0$fEdgeEnumerableGraphStateT$fEdgeEnumerableGraphStateT0$fVertexEnumerableGraphIdentity$fVertexEnumerableGraphReaderT$fVertexEnumerableGraphErrorT $fVertexEnumerableGraphIdentityT$fVertexEnumerableGraphMaybeT$fVertexEnumerableGraphRWST$fVertexEnumerableGraphRWST0$fVertexEnumerableGraphWriterT$fVertexEnumerableGraphWriterT0$fVertexEnumerableGraphStateT$fVertexEnumerableGraphStateT0%$fAdjacencyMatrixGraphAdjacencyMatrix$fGraphAdjacencyMatrix$fMonadAdjacencyMatrix$fApplicativeAdjacencyMatrix$fFunctorAdjacencyMatrixgetSputS $fMonoidDfs $fMonadDfs$fApplicativeDfs $fFunctorDfsenqueuedequeue $fMonoidBfs $fMonadBfs$fApplicativeBfs $fFunctorBfs$fVertexEnumerableGraphDual$fEdgeEnumerableGraphDual$fBidirectionalGraphDual$fAdjacencyListGraphDual$fAdjacencyMatrixGraphDual $fGraphDual $fMonadDual$fApplicativeDual $fFunctorDual$fMonadTransDual!$fAdjacencyListGraphAdjacencyList$fGraphAdjacencyList$fMonadAdjacencyList$fApplicativeAdjacencyList$fFunctorAdjacencyList