úÎ4¦1¬&      !"#$%0BMakes a homogenous tuple type of the given size and element type ' $(htuple 2) [t| Char |] = (Char,Char) &'()*+,-@Converts an expression-level function to a function expression Like .. #Type of the generated expression: 8 (a1, a2, ..) -> (b1, b2, ..) -> ((a1,b1), (a2,b2), ..) Like /. $Type of the generated expression: 0 (a -> b -> c) -> (a, ..) -> (b, ..) -> (c, ..) 7Takes the zipping function as a quoted expression. See  for how this can be useful.  / Generate a projection (like 'fst' and 'snd'). Size of tuple '0-based index of component to retrieve #Type of the generated expression: $ (a -> r -> r) -> r -> (a, ..) -> r RTakes the folding function (but not the seed element) as a quoted expression. See  for how this can be useful. #Type of the generated expression:  (a -> a -> a) -> (a, ..) -> a 7Takes the folding function as a quoted expression. See  for how this can be useful. #Type of the generated expression: $ (r -> a -> r) -> r -> (a, ..) -> r RTakes the folding function (but not the seed element) as a quoted expression. See  for how this can be useful. #Type of the generated expression:  (a -> a -> a) -> (a, ..) -> a 7Takes the folding function as a quoted expression. See  for how this can be useful. #Type of the generated expression:  (a -> Bool) -> (a, ..) -> [a] 0Takes the predicate as a quoted expression. See  for how this can be useful. #Type of the generated expression:  (a -> b) -> (a, ..) -> (b, ..) ‡Takes the mapping as a quoted expression. This can sometimes produce an expression that typechecks when the analogous expression using   does not, e.g.: 5 $(mapTuple 2) Just ((),"foo") -- Type error , $(mapTuple' 2 [| Just |]) ((),"foo") -- OK 0#Type of the generated expression:  [a] -> Maybe (a, ..) #Type of the generated expression:   [a] -> (a, ..) #The generated function is partial. Like 1. Like 2. Like 3. Like 4. Like 5. Type of generated expression:  Eq a => a -> (a, ..) -> Bool #Type of the generated expression: * (a1, ..) -> (b1, ..) -> (a1, .., b1, ..) uncatTuple n m is the inverse function of uncurry (catTuples n m). reindexTuple n js creates the function  E \(x_0, ..., x_{n-1}) -> (x_{js !! 0}, x_{js !! 1}, ... x_{last js})  For example,  @ $(reindexTuple 3 [1,1,0,0]) ('a','b','c') == ('b','b','a','a') Each element of js# must be nonnegative and less than n. Like 6. rotateTuple n k% creates a function which rotates an n-tuple rightwards by k positions (k! may be negative or greater than n-1). !"Like 7. #Like  sequenceA. 8$*Generates the function which maps a tuple (x_1, ..., x_n)/ to the tuple of all its subtuples of the form (x_{i_1}, ..., x_{i_k}), where i_1 < i_2 < ... < i_k. %#Generates a function which takes a 9 i and a homogenous tuple of size n and deletes the i%-th (0-based) element of the tuple. &  !"#$%& $%!  "#&  !"#$%:      !"#$%&'()*+,-./012013401501601701801901:0;<=0>?@tuple-th-0.2.2TupleTHhtuplezipTuple zipTupleWith zipTupleWith'proj foldrTuple foldrTuple' foldr1Tuple foldr1Tuple' foldlTuple foldlTuple' foldl1Tuple foldl1Tuple' filterTuple filterTuple'mapTuple mapTuple'safeTupleFromList tupleFromListorTupleandTupleanyTupleallTuple anyTuple' allTuple' elemTuple tupleToList catTuples uncatTuple reindexTuple reverseTuple rotateTuplesumTuple constTuple sequenceTuplesequenceATuple subtuples deleteAtTuplewithxswithysnewNames withNames withNames' withNames2appE2 liftExpFunbaseGHC.ListzipzipWithsmatchorandanyallelemreverse Control.MonadsequencedescendingMultiindicesGHC.NumNum