func_map and func_proxy