protected BankAccount(
     BankAccountId bankAccountId,
     BankAccountNumber bankAccountNumber,
     Money balance,
     BankAccountStateId bankAccountStateId,
     DateTime createdAt,
     DateTime updatedAt,
     CustomerId customerId)
 {
     BankAccountId      = bankAccountId;
     BankAccountNumber  = bankAccountNumber;
     Balance            = balance;
     BankAccountStateId = bankAccountStateId;
     CreatedAt          = createdAt;
     UpdatedAt          = updatedAt;
     CustomerId         = customerId;
 }
 public static BankAccount From(
     BankAccountId bankAccountId,
     BankAccountNumber bankAccountNumber,
     Money balance,
     BankAccountStateId bankAccountStateId,
     DateTime createdAt,
     DateTime updatedAt,
     CustomerId customerId)
 {
     return(new BankAccount(
                bankAccountId,
                bankAccountNumber,
                balance,
                bankAccountStateId,
                createdAt,
                updatedAt,
                customerId));
 }