puzzle rotating implemented