makes sure there are enough of each character