fix bugs on add
remove unused
solve conflict
fix bugs created by mayinglun
fix bugs created by mayinglun