refactor and started implementing access token request