created model methods, incomplete