1. -Refactor some interface, so the code will be better.