strict funtion arguments