cleaned up selector