checked the parameter first