/* REXX*/
/* REXX Password generator program.
   it creates one password in this format:

    4XECEVO
    5PASETI
    9DAPOTA
    7KAPIME
    1WEBAJI
    3TOPOVO
    2PAPIBA
    9WALAJE
    6SETANA
    4RAMARE
   No parameters need be passed to it. Simply execute it.
   This type password cannot be easily guessed.
   It will not be difficult to remember it,
   although it is nonsense syllables.
   Some of the passwords might even make you laugh.
   It will work on any platform that supports
   REXX compound variables
   NetREXX will not work.
   By Gabriel F. Gargiulo
   The American Programmer
*/

NUM_TAB_1.   = "0";
NUM_TAB_1.1  = "5";NUM_TAB_1.2  = "1";NUM_TAB_1.3  = "9";
NUM_TAB_1.4  = "2";NUM_TAB_1.5  = "1";NUM_TAB_1.6  = "9";
NUM_TAB_1.7  = "7";NUM_TAB_1.8  = "7";NUM_TAB_1.9  = "6";
NUM_TAB_1.10 = "1";NUM_TAB_1.11 = "5";NUM_TAB_1.12 = "4";
NUM_TAB_1.13 = "9";NUM_TAB_1.14 = "3";NUM_TAB_1.15 = "9";
NUM_TAB_1.16 = "3";NUM_TAB_1.17 = "9";NUM_TAB_1.18 = "1";
NUM_TAB_1.19 = "1";NUM_TAB_1.20 = "2";NUM_TAB_1.21 = "8";
NUM_TAB_1.22 = "8";NUM_TAB_1.23 = "1";NUM_TAB_1.24 = "5";
NUM_TAB_1.25 = "4";NUM_TAB_1.26 = "6";NUM_TAB_1.27 = "2";
NUM_TAB_1.28 = "5";NUM_TAB_1.29 = "4";NUM_TAB_1.30 = "5";
NUM_TAB_1.31 = "2";NUM_TAB_1.32 = "7";NUM_TAB_1.33 = "9";
NUM_TAB_1.34 = "6";NUM_TAB_1.35 = "3";NUM_TAB_1.36 = "5";
NUM_TAB_1.37 = "9";NUM_TAB_1.38 = "9";NUM_TAB_1.39 = "2";
NUM_TAB_1.40 = "3";

CON_TAB_1.   = "?";
CON_TAB_1.1  = "J";CON_TAB_1.2  = "G";CON_TAB_1.3  = "H";
CON_TAB_1.4  = "B";CON_TAB_1.5  = "T";CON_TAB_1.6  = "V";
CON_TAB_1.7  = "J";CON_TAB_1.8  = "R";CON_TAB_1.9  = "C";
CON_TAB_1.10 = "G";CON_TAB_1.11 = "Q";CON_TAB_1.12 = "M";
CON_TAB_1.13 = "M";CON_TAB_1.14 = "P";CON_TAB_1.15 = "R";
CON_TAB_1.16 = "K";CON_TAB_1.17 = "S";CON_TAB_1.18 = "T";
CON_TAB_1.19 = "T";CON_TAB_1.20 = "D";CON_TAB_1.21 = "N";
CON_TAB_1.22 = "W";CON_TAB_1.23 = "X";CON_TAB_1.24 = "J";
CON_TAB_1.25 = "S";CON_TAB_1.26 = "J";CON_TAB_1.27 = "S";
CON_TAB_1.28 = "G";CON_TAB_1.29 = "R";CON_TAB_1.30 = "M";
CON_TAB_1.31 = "N";CON_TAB_1.32 = "Y";CON_TAB_1.33 = "K";
CON_TAB_1.34 = "M";CON_TAB_1.35 = "D";CON_TAB_1.36 = "B";
CON_TAB_1.37 = "C";CON_TAB_1.38 = "B";CON_TAB_1.39 = "L";
CON_TAB_1.40 = "S";

CON_TAB_2.   = "?";
CON_TAB_2.1  = "P";CON_TAB_2.2  = "F";CON_TAB_2.3  = "N";
CON_TAB_2.4  = "M";CON_TAB_2.5  = "P";CON_TAB_2.6  = "M";
CON_TAB_2.7  = "B";CON_TAB_2.8  = "S";CON_TAB_2.9  = "C";
CON_TAB_2.10 = "S";CON_TAB_2.11 = "T";CON_TAB_2.12 = "M";
CON_TAB_2.13 = "D";CON_TAB_2.14 = "P";CON_TAB_2.15 = "R";
CON_TAB_2.16 = "K";CON_TAB_2.17 = "S";CON_TAB_2.18 = "T";
CON_TAB_2.19 = "T";CON_TAB_2.20 = "F";CON_TAB_2.21 = "N";
CON_TAB_2.22 = "P";CON_TAB_2.23 = "V";CON_TAB_2.24 = "J";
CON_TAB_2.25 = "S";CON_TAB_2.26 = "J";CON_TAB_2.27 = "S";
CON_TAB_2.28 = "D";CON_TAB_2.29 = "L";CON_TAB_2.30 = "T";
CON_TAB_2.31 = "N";CON_TAB_2.32 = "N";CON_TAB_2.33 = "B";
CON_TAB_2.34 = "M";CON_TAB_2.35 = "P";CON_TAB_2.36 = "P";
CON_TAB_2.37 = "D";CON_TAB_2.38 = "S";CON_TAB_2.39 = "R";
CON_TAB_2.40 = "T";

CON_TAB_3.   = "?";
CON_TAB_3.1  = "D";CON_TAB_3.2  = "N";CON_TAB_3.3  = "S";
CON_TAB_3.4  = "M";CON_TAB_3.5  = "S";CON_TAB_3.6  = "T";
CON_TAB_3.7  = "N";CON_TAB_3.8  = "G";CON_TAB_3.9  = "R";
CON_TAB_3.10 = "K";CON_TAB_3.11 = "J";CON_TAB_3.12 = "K";
CON_TAB_3.13 = "P";CON_TAB_3.14 = "D";CON_TAB_3.15 = "T";
CON_TAB_3.16 = "T";CON_TAB_3.17 = "P";CON_TAB_3.18 = "P";
CON_TAB_3.19 = "K";CON_TAB_3.20 = "D";CON_TAB_3.21 = "Z";
CON_TAB_3.22 = "L";CON_TAB_3.23 = "M";CON_TAB_3.24 = "V";
CON_TAB_3.25 = "Z";CON_TAB_3.26 = "V";CON_TAB_3.27 = "M";
CON_TAB_3.28 = "G";CON_TAB_3.29 = "R";CON_TAB_3.30 = "N";
CON_TAB_3.31 = "J";CON_TAB_3.32 = "T";CON_TAB_3.33 = "F";
CON_TAB_3.34 = "P";CON_TAB_3.35 = "B";CON_TAB_3.36 = "D";
CON_TAB_3.37 = "D";CON_TAB_3.38 = "K";CON_TAB_3.39 = "G";
CON_TAB_3.40 = "J";

VOW_TAB_1.   = "?";
VOW_TAB_1.1  = "E";VOW_TAB_1.2  = "A";VOW_TAB_1.3  = "U";
VOW_TAB_1.4  = "A";VOW_TAB_1.5  = "A";VOW_TAB_1.6  = "A";
VOW_TAB_1.7  = "I";VOW_TAB_1.8  = "I";VOW_TAB_1.9  = "O";
VOW_TAB_1.10 = "A";VOW_TAB_1.11 = "A";VOW_TAB_1.12 = "E";
VOW_TAB_1.13 = "E";VOW_TAB_1.14 = "E";VOW_TAB_1.15 = "A";
VOW_TAB_1.16 = "U";VOW_TAB_1.17 = "O";VOW_TAB_1.18 = "I";
VOW_TAB_1.19 = "O";VOW_TAB_1.20 = "I";VOW_TAB_1.21 = "O";
VOW_TAB_1.22 = "I";VOW_TAB_1.23 = "A";VOW_TAB_1.24 = "U";
VOW_TAB_1.25 = "E";VOW_TAB_1.26 = "O";VOW_TAB_1.27 = "A";
VOW_TAB_1.28 = "E";VOW_TAB_1.29 = "I";VOW_TAB_1.30 = "A";
VOW_TAB_1.31 = "I";VOW_TAB_1.32 = "A";VOW_TAB_1.33 = "O";
VOW_TAB_1.34 = "A";VOW_TAB_1.35 = "I";VOW_TAB_1.36 = "E";
VOW_TAB_1.37 = "E";VOW_TAB_1.38 = "E";VOW_TAB_1.39 = "A";
VOW_TAB_1.40 = "A";

VOW_TAB_2.   = "?";
VOW_TAB_2.1  = "A";VOW_TAB_2.2  = "A";VOW_TAB_2.3  = "E";
VOW_TAB_2.4  = "A";VOW_TAB_2.5  = "I";VOW_TAB_2.6  = "O";
VOW_TAB_2.7  = "E";VOW_TAB_2.8  = "O";VOW_TAB_2.9  = "A";
VOW_TAB_2.10 = "A";VOW_TAB_2.11 = "A";VOW_TAB_2.12 = "E";
VOW_TAB_2.13 = "E";VOW_TAB_2.14 = "E";VOW_TAB_2.15 = "A";
VOW_TAB_2.16 = "I";VOW_TAB_2.17 = "I";VOW_TAB_2.18 = "I";
VOW_TAB_2.19 = "E";VOW_TAB_2.20 = "A";VOW_TAB_2.21 = "I";
VOW_TAB_2.22 = "E";VOW_TAB_2.23 = "U";VOW_TAB_2.24 = "A";
VOW_TAB_2.25 = "A";VOW_TAB_2.26 = "E";VOW_TAB_2.27 = "A";
VOW_TAB_2.28 = "I";VOW_TAB_2.29 = "I";VOW_TAB_2.30 = "O";
VOW_TAB_2.31 = "O";VOW_TAB_2.32 = "A";VOW_TAB_2.33 = "A";
VOW_TAB_2.34 = "I";VOW_TAB_2.35 = "E";VOW_TAB_2.36 = "A";
VOW_TAB_2.37 = "E";VOW_TAB_2.38 = "A";VOW_TAB_2.39 = "E";
VOW_TAB_2.40 = "E";

R1 = RANDOM(1,40)
R2 = RANDOM(1,40)
R3 = RANDOM(1,40)
R4 = RANDOM(1,40)
R5 = RANDOM(1,40)
R6 = RANDOM(1,40)
R7 = RANDOM(1,40)

PASSWORD = NUM_TAB_1.R1""CON_TAB_1.R2""VOW_TAB_1.R3""CON_TAB_2.R4
PASSWORD = PASSWORD""VOW_TAB_2.R5""CON_TAB_1.R6""VOW_TAB_2.R7
SAY PASSWORD