change iReqest to RequestInterface