optimize selector