While case statements can be better than `if/then/elsif` statements, it's basically the same thing. I think we can clean this up a bit in a couple of areas. One is that we should probably only care about 3 states (email, canoncial id, and invalid). We don't get much value by worrying about the short id as that is unsupported.

I'm thinking something along these lines:
```ruby
def validate_format_of_accounts
  @accounts.each do |account|
    unless valid_account?(account)
      @logger.error "#{account} is not a valid account type"
      return false
    end
  end

  true
end

def valid_account?(account)
  account_type(account) == 'valid'
end

def account_type(account) # parens
  if valid_email?(account)
    @logger.info "Using email #{account} for authorization"
    type = 'valid'
  end

  if account == 64
    @logger.info "Using canonical id #{account} for authorization"
    type = 'valid'
  end

  String(type)
end
```

Of course if you're not really concerned with identifying between email/canonical id as valid, then the ```account_type``` method could be reduced further.

There are about 100 variations of this that accomplish the same thing.