design
fixed merge prob