Add omap and vmap functions