Multiple implementations for uncurry