nicer function declaration