operates in realtime