refactor. added base_GUI