made shape changing use same function