refactor property setting, host adding