public static Ip6Prefix valueOf(byte[] address, int prefixLength) {
        return new Ip6Prefix(Ip6Address.valueOf(address), prefixLength);
    }
@Test
    public void testValueOfStringIPv6() {
        Ip6Prefix ipPrefix;

        ipPrefix =
            Ip6Prefix.valueOf("1111:2222:3333:4444:5555:6666:7777:8888/120");
        assertThat(ipPrefix.toString(),
                   is("1111:2222:3333:4444:5555:6666:7777:8800/120"));

        ipPrefix =
            Ip6Prefix.valueOf("1111:2222:3333:4444:5555:6666:7777:8888/128");
        assertThat(ipPrefix.toString(),
                   is("1111:2222:3333:4444:5555:6666:7777:8888/128"));

        ipPrefix = Ip6Prefix.valueOf("::/0");
        assertThat(ipPrefix.toString(), is("::/0"));

        ipPrefix = Ip6Prefix.valueOf("::/128");
        assertThat(ipPrefix.toString(), is("::/128"));

        ipPrefix =
            Ip6Prefix.valueOf("ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff/0");
        assertThat(ipPrefix.toString(), is("::/0"));

        ipPrefix =
            Ip6Prefix.valueOf("ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff/64");
        assertThat(ipPrefix.toString(), is("ffff:ffff:ffff:ffff::/64"));

        ipPrefix =
            Ip6Prefix.valueOf("ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff/128");
        assertThat(ipPrefix.toString(),
                   is("ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff/128"));
    }