* Done: Product: Make list of lists cartesian product * Done: Combine (c): transponse * Done: All-pair (a): Go from [x, [a, b, c, ...]] to [[x, a], [x, b], ...] * Done: Something (l): convert to binary. * Done: Inverse l: from binary * Done: Inverse sum: wrap in list. * Done: Inverse product of int: is_prime * Done: Update index(es) (u) * Done: Constant (k): always 0 * Done: Reverse-lookup (v): Search over all ints + uniform lists for one that produces the desired output * Done: Deep index: (j): Given list and func, apply func to list length, then deep-index the result into the list. * Done: Deduplicate (d). * Int ops: * Done: Permutations (c). * Done: All lists of all lengths up to the input. Permuted subsets (e). * Done: All partitions (of indices) (d).