added smoothAction