added user interactivity