code: public static Kontonummer getAndForceValidKontonummer(String kontonummer) {
          validateSyntax(kontonummer);
          try {
              validateChecksum(kontonummer);
          } catch (IllegalArgumentException iae) {
              Kontonummer k = new Kontonummer(kontonummer);
              int checksum = calculateMod11CheckSum(getMod11Weights(k), k);
              kontonummer = kontonummer.substring(0, LENGTH - 1) + checksum;
          }
          return new Kontonummer(kontonummer);
      }
docs: Returns an object that represents a Kontonummer. The checksum of the
  supplied kontonummer is changed to a valid checksum if the original
  kontonummer has an invalid checksum.
  
  @param kontonummer A String containing a Kontonummer
  @return A Kontonummer instance
  @throws IllegalArgumentException thrown if String contains an invalid Kontonummer, ie. a
  number which for one cannot calculate a valid checksum.