def flat_pmap(enumerable)
      return to_enum(:flat_pmap, enumerable) unless block_given?
      pmap(enumerable, &Proc.new).flatten(1)
    end
def flat_pmap(enumerable)
      return to_enum(:flat_pmap, enumerable) unless block_given?
      pmap(enumerable, &Proc.new).flatten(1)
    end
Returns a new array with the concatenated results of running block once for every element in enumerable.
 If no block is given, an enumerator is returned instead.

 @param enumerable [Enumerable]
 @return [Array, Enumerator]