implementation for site model