GP is a Windows native app which derives robustness from its Next-Generation level of runtime privacy and settings protection going into the construction of each password candidate. The internal process of GP's password generation routine includes the use of random numbers to compose a random letter sequence, the password candidate, from sets of source letters (the letter pool, Unicode-compatible).
Everything on a properly maintained and controlled PC is safe from prying eyes, at least since Windows 6 when the server technology Crypt API was brought to the home PC. But, since something intended for security needs to be secured, GP encrypts its settings using the standard Key Storage method of public key cryptography.
GP runs multiple generators concurrently, each equipped with a pair of letter shuffling pools, to provide two layers of randomness to the process—one for the independent character pool supply to each generator process (trackable at runtime via the Statistics feature⤳Stirrings per second), and one in the selection between the pair of random candidate letters. Not all random number generators (RNGs) are the same, and using the same source of randomness for everything isn't how we do it—we use a small RNG for the cosmetic parts, with two more types used for the heavier core parts.
For control over the password production, command line options change the default behavior of the generator either temporarily or for functionality going forward. So, you can use a slot to make a PIN (personal input number) with >gp /su mypin, or >gp /su pin*. Where the setting slot, `mypin', was created with >gp /ss mypin /an—which can be read about inline with, >gp /?, or even, >gp help(that is, any unrecognized gp command). And of course you can read the command info page online, at GP Support.
GP's default password candidate filter (Minimal Repetitions) eliminates those with letter repetitions, which is for working comfort of the user's letter transposition process (noting or entering). The default filter still works when the password length is longer than the letter pool size, such as the case when you want a 20 letter PIN with a 10 letter digits pool—the filter will select for the absolute minimum number of repetitions of those digits.
For every website that has its own set of specials, create a setting slot with those special letters as a Custom Set, via the gp subcommand `AX'. >gp /ss mybank /au /al /an /ax +-*&$%^#@()={}/?~;,._ This saves to slot `mybank', and adds the uppercase alphabet, the lowers, the numbers, and a custom set of special letters that work for the bank's password system. View the saved slots with, >gp /sl, and use it to generate passwords with, >gp /su mybank 12, for a 12 letter password, or >gp /su bank* for short (this time using the default length)—the wildcard matches the first slot with that name-fragment in its name.