changed the designed, code refactoring, still buggy