private Char[] CreateCharactersPool() { List <Char> chars = new List <Char>(65); if (CharacterClasses.HasFlag(CharacterClass.UpperLetters)) { chars.AddRange(PoolUpperCase.ToCharArray()); if (GeneratorFlags.HasFlag(GeneratorFlag.ExcludeLookAlike) == false) { chars.AddRange(PoolUpperCaseConflict.ToCharArray()); } } if (this.CharacterClasses.HasFlag(CharacterClass.LowerLetters)) { chars.AddRange(PoolLowerCase.ToCharArray()); if (GeneratorFlags.HasFlag(GeneratorFlag.ExcludeLookAlike) == false) { chars.AddRange(PoolLowerCaseConflict.ToCharArray()); } } if (this.CharacterClasses.HasFlag(CharacterClass.Digits)) { chars.AddRange(PoolDigits.ToCharArray()); if (GeneratorFlags.HasFlag(GeneratorFlag.ExcludeLookAlike) == false) { chars.AddRange(PoolDigitsConflict.ToCharArray()); } } if (this.CharacterClasses.HasFlag(CharacterClass.SpecialCharacters)) { chars.AddRange(PoolSpecial.ToCharArray()); if (GeneratorFlags.HasFlag(GeneratorFlag.ExcludeLookAlike) == false) { chars.AddRange(PoolSpecialConflict.ToCharArray()); } } if (CharacterClasses.HasFlag(CharacterClass.Space)) { chars.AddRange(PoolSpace.ToCharArray()); } return(chars.ToArray()); }