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

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

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

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

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

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

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

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