<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 async def export_wallet(self, von_wallet: Wallet, path: str) -> None: """ Export an existing VON anchor wallet. Raise WalletState if wallet is closed. :param von_wallet: open wallet :param path: path to which to export wallet """


        LOGGER.debug('WalletManager.export_wallet >>> von_wallet %s, path %s', von_wallet, path)

        if not von_wallet.handle:
            LOGGER.debug('WalletManager.export_wallet <!< Wallet %s is closed', von_wallet.name)
            raise WalletState('Wallet {} is closed'.format(von_wallet.name))

        await wallet.export_wallet(
            von_wallet.handle,
            json.dumps({
                'path': path,
                **von_wallet.access_creds
            }))

        LOGGER.debug('WalletManager.export_wallet <<<')