updated
check args better