docs: final byte[] decodeChecked(CharSequence chars) throws DecodingException {
      chars = padding().trimTrailingFrom(chars);
      ByteInput decodedInput = decodingStream(asCharInput(chars));
      byte[] tmp = new byte[maxDecodedSize(chars.length())];
      int index = 0;
      try {
        for (int i = decodedInput.read(); i != -1; i = decodedInput.read()) {
          tmp[index++] = (byte) i;
        }
      } catch (DecodingException badInput) {
        throw badInput;
      } catch (IOException impossible) {
        throw new AssertionError(impossible);
      }
      return extract(tmp, index);
    }