backend functions for housing