do first pass at scopes