improved how selectors work