intermediate revise of create_res