private void setPrecision() {
      int firstPos = pos;
      precisionSet = false;
      if (pos<fmt.length()&&fmt.charAt(pos)=='.') {
        pos++;
        if ((pos < fmt.length())
        && (fmt.charAt(pos)=='*')) {
          pos++;
          if (!setPrecisionArgPosition()) {
            variablePrecision = true;
            precisionSet = true;
          }
          return;
        }
        else {
          while (pos < fmt.length()) {
            char c = fmt.charAt(pos);
            if (Character.isDigit(c)) pos++;
            else break;
          }
          if (pos > firstPos+1) {
            String sz = fmt.substring(firstPos+1,pos);
            precision = Integer.parseInt(sz);
            precisionSet = true;
          }
        }
      }
    }