improvements based on brandon's feedback