def METHOD_NAME(self):
    parser = argparse.ArgumentParser(description='cortx-py-utils::Cipher wrapper')
    subparsers = parser.add_subparsers(dest='command', title='commands')
    generatekey = subparsers.add_parser('generate_key', help="generate key to encrypt or decrypt data with it, use '--const_key' option with this.")
    generatekey.add_argument("--const_key", help="Constant key name to be used during encryption", type=str, required=True)
    generatekey.add_argument("--key_len", help="Key length to be obtained", type=int)
    generatekey.add_argument("--use_base64", help="Used to obtain alphanumeric base64 keys", action="store_true")
    encryptkey = subparsers.add_parser("encrypt", help="encrypt provided bytes of data, with provided key")
    encryptkey.add_argument("--data", help="bytes which needs to be encrypted or decrypted using provided key", type=str, required=True)
    encryptkey.add_argument("--key", help="key (in bytes) to be used in encrypting or decrypting bytes of data", type=str, required=True)
    decryptkey = subparsers.add_parser("decrypt", help="decrypt provided bytes of data, with provided key")
    decryptkey.add_argument("--data", help="bytes which needs to be encrypted or decrypted using provided key", type=str, required=True)
    decryptkey.add_argument("--key", help="key (in bytes) to be used in encrypting or decrypting bytes of data", type=str, required=True)
    args = parser.parse_args()
    try:
        if args.use_base64:
            use_base64_flag = True
        else:
            use_base64_flag = False
    except AttributeError:
        use_base64_flag = False
    try:
        if args.key_len:
            key_len_flag = args.key_len
        else:
            key_len_flag = 0
    except AttributeError:
        key_len_flag = 0
    try:
        if args.const_key:
            const_key_flag = args.const_key
        else:
            const_key_flag = "default_key"
    except AttributeError:
        const_key_flag = "default_key"
    try:
        if args.key:
            key = args.key
        else:
            key = ""
    except AttributeError:
        key = ""
    try:
        if args.data:
            data = args.data
        else:
            data = ""
    except AttributeError:
        data = ""
    self.use_base64 = use_base64_flag
    self.key_len = key_len_flag
    self.const_key = const_key_flag
    try:
        if args.command == 'encrypt':
            print(self.encrypt(key, data))
        elif args.command == 'decrypt':
            print(self.decrypt(key, data))
        elif args.command == 'generate_key':
            print(self.generate_key())
        else:
            sys.exit("Invalid command option passed, see help.")
    except CipherInvalidToken as err:
        print("Cipher generate key failed with error : {0}".format(err))
        sys.exit(1)