added waterfall to function call