úÎZ*V,F      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFFF=Class of types that can be used as array shapes and indices. )Get the number of dimensions in a shape. FThe shape of an array of size zero, with a particular dimensionality. GThe shape of an array with size one, with a particular dimensionality. (Compute the intersection of two shapes. >Get the total number of elements in an array with this shape. :Check whether this shape is small enough so that its flat  indices an be represented as G. If this returns H then your = array is too big. Mostly used for writing QuickCheck tests. FConvert an index into its equivalent flat, linear, row-major version. Shape of the array. Index into the array.  Inverse of . Shape of the array. "Index into linear representation. 0Check whether an index is within a given shape. Start index for range. Final index for range. Index to check for. -Convert a shape into its list of dimensions. (Convert a list of dimensions to a shape -Ensure that a shape is completely evaluated. 3Check whether an index is a part of a given shape. Shape of the array. Index.      2Our index type, used for both shapes and indices. An index of dimension zero /Generate an aribrary shape that does not have 0's for any component. EGenerate an arbitrary shape where each dimension is more than zero, ! but less than a specific value. I'QuickCheck properties for this module. J-Generate an arbitrary index, which may have 0's for some components.    -Class of index types that can map to slices. :Map an index of a full shape onto an index of some slice. 9Map an index of a slice onto an index of the full shape. SMap the type of an index in the slice, to the type of the index in the full shape. RMap a type of the index in the full shape, to the type of the index in the slice. %Place holder for any possible shape. !"*Select all indices at a certain position. #  !"# "# !  !!"##"$Possibly delayed arrays. %?An array represented as a function that computes each element. &4An array represented as some concrete unboxed data. ' Create a & array from an unboxed K. & The elements are in row-major order. ( Create a % array from a function. )&Wrap a scalar into a singleton array. *Take the extent of an array. +#Unpack an array into delayed form. ,Convert an array to an unboxed K, forcing it if required. + The elements come out in row-major order. -.&Get an indexed element from an array. 1OBLIGATION: The index must be within the array. &inRange zeroDim (shape arr) ix == True/.Take the scalar value from a singleton array. 0#Force an array, so that it becomes &. 12Ensure an array' s structure is fully evaluated. ? This evaluates the extent and outer constructor, but does not 0 the elements. 3Convert a list to an array. , The length of the list must be exactly the  of the extent given, else L. 4Convert an array to a list. 50Impose a new shape on the elements of an array. < The new extent must be the same size as the original, else L. 67Append two arrays. LOBLIGATION: The higher dimensions of both arrays must have the same extent. Btail (listOfShape (shape arr1)) == tail (listOfShape (shape arr2))82Transpose the lowest two dimensions of an array. 1 Transposing an array twice yields the original. 9>Replicate an array, according to a given slice specification. :@Take a slice from an array, according to a given specification. ;!Backwards permutation of an array' s elements. 7 The result array has the same extent as the original. Extent of result array. 0Function mapping each index in the result array " to an index of the source array. Source array. <)Default backwards permutation of an array' s elements.  If the function returns M' then the value at that index is taken  from the default array (arrDft) Default values (arrDft) 0Function mapping each index in the result array " to an index in the source array. Source array. =6Apply a worker function to each element of an array, , yielding a new array with the same extent. >:Combine two arrays, element-wise, with a binary operator. 3 If the extent of the two array arguments differ,  then the resulting array' s extent is their intersection. ?*Fold the innermost dimension of an array.  Combine this with 8 to fold any other dimension. @)Sum the innermost dimension of an array. A"Sum all the elements of an array. BUnstructured traversal. Source array. .Function to produce the extent of the result. -Function to produce elements of the result. A It is passed a lookup function to get elements of the source. C0Unstructured traversal over two arrays at once. First source array. Second source array. .Function to produce the extent of the result. ,Function to produce elements of the result. 9 It is passed lookup functions to get elements of the  source arrays. D_Create an arbitrary small array, restricting the size of each of the dimensions to some value. E8QuickCheck properties for this module and its children. F  !"#$%&'()*+,-./0123456789:;<=>?@ABCDE"$&%'()*+,-./0123456789:;<=>?@ABCDE"$&%%&'()*+,-./0123456789:;<=>?@ABCDEN      !"#$$%%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKILMNOPQ&RSTRUVW repa-1.0.0.0Data.Array.Repa.ShapeData.Array.Repa.IndexData.Array.Repa.SliceData.Array.RepaData.Array.Repa.QuickCheckShapedimzeroDimunitDim intersectDimsize sizeIsValidtoIndex fromIndexinRange listOfShape shapeOfListdeepSeqinShapeDIM5DIM4DIM3DIM2DIM1DIM0:.ZarbitraryShapearbitrarySmallShapeprops_DataArrayRepaIndexSlice sliceOfFull fullOfSlice SliceShape FullShapeAnyAllArrayDelayedManifest fromUArray fromFunctionunitextentdelaytoUArrayindex!:toScalarforce isManifest deepSeqArrayfromListtoListreshapeappend+:+ transpose replicateslice backpermutebackpermuteDftmapzipWithfoldsumsumAlltraverse traverse2arbitrarySmallArrayprops_DataArrayRepaarbitraryListOfLengthghc-prim GHC.TypesIntGHC.BoolFalse genInShape2 $fArbitrary:.dph-prim-par-0.4.0Data.Array.Parallel.UnliftedbaseGHC.Errerror Data.MaybeNothing