base entity refactoring
desctop base