class NetUtils {

    public static boolean isNetworkAWithinNetworkB(final String cidrA, final String cidrB) {
        if (!areCidrsNotEmpty(cidrA, cidrB)) {
            return false;
        }
        Long[] cidrALong = cidrToLong(cidrA);
        Long[] cidrBLong = cidrToLong(cidrB);

        long shift = MAX_CIDR - cidrBLong[1];
        return cidrALong[0] >> shift == cidrBLong[0] >> shift;
    }

}