avoid over-subscribing (handles the singleton case)