move some initializing logic in base request