code: @Override
      public int print(
          ChronoDisplay formattable,
          Appendable buffer,
          AttributeQuery attributes,
          Set<ElementPosition> positions, // optional
          boolean quickPath
      ) throws IOException {
  
          int value = formattable.getInt(this.element);
  
          if (value < 0) {
              if (value == Integer.MIN_VALUE) {
                  return -1;
              } else {
                  throw new IllegalArgumentException(
                      "Cannot format negative ordinal numbers: " + formattable);
              }
          }
  
          String digits = Integer.toString(value);
  
          char zeroChar = (
              quickPath
                  ? this.zeroDigit
                  : attributes.get(Attributes.ZERO_DIGIT, Character.valueOf('0')).charValue());
  
          if (zeroChar != '0') {
              int diff = zeroChar - '0';
              char[] characters = digits.toCharArray();
  
              for (int i = 0; i < characters.length; i++) {
                  characters[i] = (char) (characters[i] + diff);
              }
  
              digits = new String(characters);
          }
  
          int start = -1;
          int printed = 0;
  
          if (buffer instanceof CharSequence) {
              start = ((CharSequence) buffer).length();
          }
  
          buffer.append(digits);
          printed += digits.length();
  
          String indicator = this.getIndicator(attributes, quickPath, value);
          buffer.append(indicator);
          printed += indicator.length();
  
          if (
              (start != -1)
              && (printed > 0)
              && (positions != null)
          ) {
              positions.add(
                  new ElementPosition(this.element, start, start + printed));
          }
  
          return printed;
  
      }
docs: ~ Methoden ----------------------------------------------------------