code: private Map<String, List<Request>> requests(
          final Request req) throws IOException {
          final String header = new RqHeaders.Smart(req).single("Content-Type");
          if (!new EnglishLowerCase(header).string()
              .startsWith("multipart/form-data")) {
              throw new HttpException(
                  HttpURLConnection.HTTP_BAD_REQUEST,
                  String.format(
                      // @checkstyle LineLength (1 line)
                      "RqMtBase can only parse multipart/form-data, while Content-Type specifies a different type: \"%s\"",
                      header
                  )
              );
          }
          final Matcher matcher = RqMtBase.BOUNDARY.matcher(header);
          if (!matcher.matches()) {
              throw new HttpException(
                  HttpURLConnection.HTTP_BAD_REQUEST,
                  String.format(
                      "boundary is not specified in Content-Type header: \"%s\"",
                      header
                  )
              );
          }
          final ReadableByteChannel body = Channels.newChannel(this.stream);
          if (body.read(this.buffer) < 0) {
              throw new HttpException(
                  HttpURLConnection.HTTP_BAD_REQUEST,
                  "failed to read the request body"
              );
          }
          final byte[] boundary = String.format(
              "%s--%s", RqMtBase.CRLF, matcher.group(1)
          ).getBytes(RqMtBase.ENCODING);
          this.buffer.flip();
          this.buffer.position(boundary.length - 2);
          final Collection<Request> requests = new LinkedList<>();
          while (this.buffer.hasRemaining()) {
              final byte data = this.buffer.get();
              if (data == '-') {
                  break;
              }
              this.buffer.position(this.buffer.position() + 1);
              requests.add(this.make(boundary, body));
          }
          return RqMtBase.asMap(requests);
      }
docs: Build a request for each part of the origin request.
  @param req Origin request
  @return The requests map that use the part name as a map key
  @throws IOException If fails