JoinSelector rework