added translate and rotate