now with mouse input!