public static DynamicVoters parse(String input) {
        input = input.trim();
        List<DynamicVoter> voters = new ArrayList<>();
        for (String voterString : input.split(",")) {
            if (!voterString.isEmpty()) {
                voters.add(DynamicVoter.parse(voterString));
            }
        }
        return new DynamicVoters(voters);
    }
@Test
    public void testParsingThreeDynamicVoters() {
        assertEquals(new DynamicVoters(Arrays.asList(
            new DynamicVoter(
                Uuid.fromString("K90IZ-0DRNazJ49kCZ1EMQ"),
                0,
                "localhost",
                (short) 8020),
            new DynamicVoter(
                Uuid.fromString("aUARLskQTCW4qCZDtS_cwA"),
                1,
                "localhost",
                (short) 8030),
            new DynamicVoter(
                Uuid.fromString("2ggvsS4kQb-fSJ_-zC_Ang"),
                2,
                "localhost",
                (short) 8040))),
            DynamicVoters.parse(
                "0@localhost:8020:K90IZ-0DRNazJ49kCZ1EMQ," +
                "1@localhost:8030:aUARLskQTCW4qCZDtS_cwA," +
                "2@localhost:8040:2ggvsS4kQb-fSJ_-zC_Ang"));
    }