Implement the private and enabled model behaviours