extended functionality to add sources