added mouse interaction