public Account OpenAccount(AccountTypeEnum accountType, Money initialDeposit) { if (dateOfBirth.GetCurrentAge() < 18) { throw new InvalidOperationException("Must be older than 18 to open an account"); } return(new Account(accountType, initialDeposit)); }