rem and function version