"Start" state triggers multiple times for rotation change and resize change events.
Validation:
While rotate and resize the start state triggers in mouse move. So start state recalls multiple times, for that create boolean with false state and after start triggers make boolean as true. In mouse up again false the boolean so that the start triggers for single time.