support sync arg