Split up the authorize method into multiple methods.