semi-fix passing arguments