finish implementing request feature