At least surprisingly, if not erroneously, citizens_convert() converts citizen of a random nationality, not random citizen. The difference this makes is that all nationalities get the same weight, regardless how many citizens there are. If there's 1 citizen on nationality A and 5 citizens of nationality B, the citizen of A has 50% chance of getting converted and each citizen of B has 10% chance of getting converted.
At least surprisingly, if not erroneously, citizens_convert() converts citizen of a random nationality, not random citizen. The difference this makes is that all nationalities get the same weight, regardless how many citizens there are. If there's 1 citizen on nationality A and 5 citizens of nationality B, the citizen of A has 50% chance of getting converted and each citizen of B has 10% chance of getting converted.