revised.
fix conflict.