adding TONS of domain logic