little bit refactory on request class