added mouse
added images
some merge
changed require mouse