refactoring
refactoring
room support
improve error handling