working on input sources