pub fn parse_and_execute<L, C, K>(
    owner_api: &mut Owner<L, C, K>,
    keychain_mask: Option<SecretKey>,
    wallet_config: &WalletConfig,
    tor_config: &TorConfig,
    global_wallet_args: &GlobalArgs,
    wallet_args: &ArgMatches<'_>,
    test_mode: bool,
    cli_mode: bool
) -> Result<(), Error> where
    DefaultWalletImpl<'static, C>: WalletInst<'static, L, C, K>,
    L: WalletLCProvider<'static, C, K> + 'static,
    C: NodeClient + 'static,
    K: Keychain + 'static,