docs: @Override
      public int readData(final ByteBuffer target) {
          final int toRead = Math.min(target.remaining(), (int) input.readRemaining());
          for (int i = 0; i < toRead; i++) {
              target.put(input.readByte());
          }
          return toRead;
      }