From ScratchOAuth2