Bug fixed, add new features