úÎ!"ˆ*;      !"#$%&'()*+,-./0123456789:Safe=>?æyxSymmetry axis.yxA rotational direction.yxThe center of a rotation.fValid rotations can have either an exact coordinate as center or the top left corner of a coordinate. yx A 2D box.&A box might have zero width or height. yxA 2D coordinate.YX implements ;C. Integers are converted to their diagonal equivalent (for example 2 becomes YX 2 2).yx Decrement y.yx Decrement x.yx Increment x.yx Increment y.yx"Ordered array of the 4 base steps.yx5Ordered array of the 8 steps (4 base and 4 diagonal).yx1Constructs a box from its extremities, returning <. if the points are not ordered appropriately.yx.Returns the box corresponding to an array, or < if the array is empty.yxReturns the smallest  " containing all input coordinates.yxCReturns the top-left most point of the box (i.e. its lattice meet).yxGReturns the bottom-right most point of the box (i.e. its lattice join).yx3Returns the height of the box, always non-negative.yx2Returns the width of the box, always non-negative.yx/Returns all coordinates within the box, sorted.yx.Returns whether a given point is within a box.yx8Returns the box' coordinates, sorted and grouped by row. yx9Returns 4 neighbors of YX filtered to members of the box.!yx9Returns 8 neighbors of YX filtered to members of the box."yxIntersects two boxes.#yxRotates a coordinate.$yx2Flips coordinates symmetrically on the given axis.%yxHParses a newline delimited bytestring into an array in an effectful way.&yx4Parses a newline delimited bytestring into an array.'yxGSerializes an array into a bytestring. This function is the reverse of &.yxTop-left point.yxBottom-right point.(  !"#$%&'(  " ! #$&%'=      !"#$%&'()*+,-./0123456789:;<=><?@A!yx-0.0.4.0-1qHsKf3lixa5AT32cBL29cData.Geometry.YXAxisAboveRowAtRow LeftOfColumnAtColumn Direction ClockwiseCounterClockwiseCenterAroundAroundTopLeftCornerBoxYXyxupleftrightdownsteps4steps8boxarrayBox boundingBoxtopLeft bottomRight boxHeightboxWidthboxRangeinBoxboxRows boxNeighbors4 boxNeighbors8boxIntersectionrotatemirrorbyteStringToArrayMbyteStringToArrayarrayToByteString $fLatticeYX$fIxYX$fNumYX$fEqYX$fOrdYX$fShowYX$fEqBox $fShowBox $fEqCenter $fOrdCenter $fShowCenter$fBoundedDirection $fEqDirection$fEnumDirection$fOrdDirection$fShowDirection$fEqAxis $fOrdAxis $fShowAxisbaseGHC.NumNum GHC.MaybeNothing