cleaned up submition using request class