Revert "selector and such"

This reverts commit 3a647ec639bd7a9c2adcec394b2cc6c7517b968a.
Revert "Revert "selector and such""

This reverts commit 7abe8beeae26a1903769fc8fbe3de0beabfb00f7.