docs: @Override
  	public void modifyRequest(ResponseBuilder rb, SearchComponent who, ShardRequest sreq) {
  		 // System.out
  		 // .println(System.nanoTime() + " - " + Thread.currentThread().getId()
  		 // + " - " + rb.req.getParams().getBool(ShardParams.IS_SHARD, false)
  		 // + " MODIFY REQUEST " + rb.stage + " " + rb.req.getParamString());
  		MtasSolrStatus solrStatus = Objects
  				.requireNonNull((MtasSolrStatus) rb.req.getContext().get(MtasSolrStatus.class), "couldn't find status");
  		solrStatus.setStage(rb.stage);
  		try {
  			if (sreq.params.getBool(PARAM_MTAS, false)) {
  				if (sreq.params.getBool(MtasSolrComponentStatus.PARAM_MTAS_STATUS, false)) {
  					searchStatus.modifyRequest(rb, who, sreq);
  				} else if (requestHandler != null) {
  					sreq.params.add(MtasSolrComponentStatus.PARAM_MTAS_STATUS, CommonParams.TRUE);
  				}
  				if (requestHandler != null) {
  					sreq.params.add(MtasSolrComponentStatus.PARAM_MTAS_STATUS + "."
  							+ MtasSolrComponentStatus.NAME_MTAS_STATUS_KEY, solrStatus.shardKey(rb.stage));
  				}
  				if (sreq.params.getBool(MtasSolrComponentVersion.PARAM_MTAS_VERSION, false)) {
  					searchVersion.modifyRequest(rb, who, sreq);
  				}
  				if (sreq.params.getBool(MtasSolrComponentStats.PARAM_MTAS_STATS, false)) {
  					searchStats.modifyRequest(rb, who, sreq);
  				}
  				if (sreq.params.getBool(MtasSolrComponentTermvector.PARAM_MTAS_TERMVECTOR, false)) {
  					searchTermvector.modifyRequest(rb, who, sreq);
  				}
  				if (sreq.params.getBool(MtasSolrComponentPrefix.PARAM_MTAS_PREFIX, false)) {
  					searchPrefix.modifyRequest(rb, who, sreq);
  				}
  				if (sreq.params.getBool(MtasSolrComponentFacet.PARAM_MTAS_FACET, false)) {
  					searchFacet.modifyRequest(rb, who, sreq);
  				}
  				if (sreq.params.getBool(MtasSolrComponentCollection.PARAM_MTAS_COLLECTION, false)) {
  					searchCollection.modifyRequest(rb, who, sreq);
  				}
  				if (sreq.params.getBool(MtasSolrComponentGroup.PARAM_MTAS_GROUP, false)) {
  					searchGroup.modifyRequest(rb, who, sreq);
  				}
  				if (sreq.params.getBool(MtasSolrComponentList.PARAM_MTAS_LIST, false)) {
  					searchList.modifyRequest(rb, who, sreq);
  				}
  				if (sreq.params.getBool(MtasSolrComponentDocument.PARAM_MTAS_DOCUMENT, false)) {
  					searchDocument.modifyRequest(rb, who, sreq);
  				}
  				if (sreq.params.getBool(MtasSolrComponentKwic.PARAM_MTAS_KWIC, false)) {
  					searchKwic.modifyRequest(rb, who, sreq);
  				}
  			}
  		} catch (ExitableDirectoryReader.ExitingReaderException e) {
  			solrStatus.setError(e.getMessage());
  		}
  	}