class Federation {

    public Integer getPublicKeyIndex(UldECKey key) {
        for (int i = 0; i < publicKeys.size(); i++) {
            // note that this comparison doesn't take into account
            // key compression
            if (Arrays.equals(key.getPubKey(), publicKeys.get(i).getPubKey())) {
                return i;
            }
        }

        return null;
    }

    public  Federation(List<UldECKey> publicKeys, Instant creationTime, long creationBlockNumber,  NetworkParameters uldParams);

}