private String convertIntAndTypeToWords(int i, String type) {
        StringBuilder sb = new StringBuilder();

        if (i >= numNames.length) {
            sb.append(i);
        } else if (1 == i && vowelPattern.matcher(type).find())
            sb.append("an");
        else
            sb.append(numNames[i]);

        sb.append(" ");
        sb.append(type);
        if (1 != i)
            sb.append("s");

        return sb.toString();
    }