revise main process, move out forward-backward