number of characters should be fixed, there is no need for unwanted randomness imo