fixed Room implementation