reimplemented map motion