updated selector fn