class LockWhitelist {

    public <T extends LockWhitelistEntry> List<T> getAll(Class<T> type) {
        return whitelistedAddresses.values().stream()
                .filter(e -> e.getClass() == type)
                .map(type::cast)
                .collect(Collectors.toList());
    }

    public  LockWhitelist(Map<Address, LockWhitelistEntry> whitelistedAddresses);
    public  LockWhitelist(Map<Address, LockWhitelistEntry> whitelistedAddresses, int disableBlockHeight);

}