!&k">      !"#$%&'()*+,-./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. yxA non-empty 2D box.QA box might have zero width or height but will always contain at least one point. yxA 2D coordinate.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).yxReturns the box' bounds, (topLeft, bottomRight).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. yx@Returns the shortest distance of the point to the box' edge, or >% if the point is not within the 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 (.,yxAIntegers are converted to their diagonal equivalent (for example 2 becomes YX 2 2).-yxyxTop-left point.yxBottom-right point.*  !"#$%&'()*   !$"# %&(')?      !"#$%&'()*+,-./0123456789:;<=>?@AB!yx-0.0.4.2-LStwchugnOfIRZTC09fuGeData.Geometry.YXAxisAboveRowAtRow LeftOfColumnAtColumn Direction ClockwiseCounterClockwiseCenterAroundAroundTopLeftCornerBoxYXyxupleftrightdownsteps4steps8boxarrayBox boundingBoxtopLeft bottomRight boxBounds boxHeightboxWidthboxRangeinBoxboxDepthboxRows boxNeighbors4 boxNeighbors8boxIntersectionrotatemirrorbyteStringToArrayMbyteStringToArrayarrayToByteString $fLatticeYX$fIxYX$fNumYX$fSemigroupBox$fEqYX$fOrdYX$fShowYX$fEqBox $fShowBox $fEqCenter $fOrdCenter $fShowCenter$fBoundedDirection $fEqDirection$fEnumDirection$fOrdDirection$fShowDirection$fEqAxis $fOrdAxis $fShowAxisbase GHC.MaybeNothing