enum Template { maximum, long, medium, short, pin, name, phrase, basic, } const Map> templates = { Template.maximum: [ "anoxxxxxxxxxxxxxxxxx", "axxxxxxxxxxxxxxxxxno", ], Template.long: [ "CvcvnoCvcvCvcv", "CvcvCvcvnoCvcv", "CvcvCvcvCvcvno", "CvccnoCvcvCvcv", "CvccCvcvnoCvcv", "CvccCvcvCvcvno", "CvcvnoCvccCvcv", "CvcvCvccnoCvcv", "CvcvCvccCvcvno", "CvcvnoCvcvCvcc", "CvcvCvcvnoCvcc", "CvcvCvcvCvccno", "CvccnoCvccCvcv", "CvccCvccnoCvcv", "CvccCvccCvcvno", "CvcvnoCvccCvcc", "CvcvCvccnoCvcc", "CvcvCvccCvccno", "CvccnoCvcvCvcc", "CvccCvcvnoCvcc", "CvccCvcvCvccno", ], Template.medium: [ "CvcnoCvc", "CvcCvcno", ], Template.short: [ "Cvcn", ], Template.pin: [ "nnnn", ], Template.name: [ "cvccvcvcv", ], Template.phrase: [ "cvcc cvc cvccvcv cvc", "cvc cvccvcvcv cvcv", "cv cvccv cvc cvcvccv", ], Template.basic: [ "aaanaaan", "aannaaan", "aaannaaa", ], }; const Map characters = { "V": "AEIOU", "C": "BCDFGHJKLMNPQRSTVWXYZ", "v": "aeiou", "c": "bcdfghjklmnpqrstvwxyz", "A": "AEIOUBCDFGHJKLMNPQRSTVWXYZ", "a": "AEIOUaeiouBCDFGHJKLMNPQRSTVWXYZbcdfghjklmnpqrstvwxyz", "n": "0123456789", "o": r"@&%?,=[]_:-+*$#!'^~;()/.", "x": r"AEIOUaeiouBCDFGHJKLMNPQRSTVWXYZbcdfghjklmnpqrstvwxyz0123456789!@#$%^&*()", " ": " ", };