fighting with scopes and promises