pulled out request object into seperate assembly