public void _solution(String raw, String partial, int part, ArrayList<String> ips) {
        if (raw.equals("") && part == 4) {
            ips.add(partial);
        }
        else if (part != 4 && raw.equals("")) {
            return;
        }
        else {
            if (part != 0) {
                partial += ".";
            }
            for (int i = 1; i <= 3 && i <= raw.length(); i++) {
                String strPart = raw.substring(0, i);
                int ipSubAddress = Integer.parseInt(raw.substring(0, i));
                if (ipSubAddress <= 255 && strPart.equals("" + ipSubAddress)) {
                    _solution(raw.substring(i), partial + ipSubAddress, part + 1, ips);
                }
            }
        }
    }