public static Ip4Prefix valueOf(int address, int prefixLength) {
        return new Ip4Prefix(Ip4Address.valueOf(address), prefixLength);
    }
@Test
    public void testValueOfAddressIPv4() {
        Ip4Address ipAddress;
        Ip4Prefix ipPrefix;

        ipAddress = Ip4Address.valueOf("1.2.3.4");
        ipPrefix = Ip4Prefix.valueOf(ipAddress, 24);
        assertThat(ipPrefix.toString(), is("1.2.3.0/24"));

        ipPrefix = Ip4Prefix.valueOf(ipAddress, 32);
        assertThat(ipPrefix.toString(), is("1.2.3.4/32"));

        ipAddress = Ip4Address.valueOf("1.2.3.5");
        ipPrefix = Ip4Prefix.valueOf(ipAddress, 32);
        assertThat(ipPrefix.toString(), is("1.2.3.5/32"));

        ipAddress = Ip4Address.valueOf("0.0.0.0");
        ipPrefix = Ip4Prefix.valueOf(ipAddress, 0);
        assertThat(ipPrefix.toString(), is("0.0.0.0/0"));

        ipPrefix = Ip4Prefix.valueOf(ipAddress, 32);
        assertThat(ipPrefix.toString(), is("0.0.0.0/32"));

        ipAddress = Ip4Address.valueOf("255.255.255.255");
        ipPrefix = Ip4Prefix.valueOf(ipAddress, 0);
        assertThat(ipPrefix.toString(), is("0.0.0.0/0"));

        ipPrefix = Ip4Prefix.valueOf(ipAddress, 16);
        assertThat(ipPrefix.toString(), is("255.255.0.0/16"));

        ipPrefix = Ip4Prefix.valueOf(ipAddress, 32);
        assertThat(ipPrefix.toString(), is("255.255.255.255/32"));
    }