separate out calls to different components