code: def portfolio_locked(
      portfolio, wallet_usd, wallet_btc, wallet_eth, wallet_xrp
  ):
      def allocate(wallet, amount, identifier):
          wallet.withdraw(quantity=amount, reason="test")
          wallet.deposit(
              quantity=amount.lock_for(identifier), reason="test"
          )
          return wallet
  
      wallet_usd = allocate(wallet_usd, 50 * USD, "1")
      wallet_usd = allocate(wallet_usd, 100 * USD, "2")
      wallet_btc = allocate(wallet_btc, 0.5 * BTC, "3")
      wallet_btc = allocate(wallet_btc, 0.25 * BTC, "4")
      wallet_eth = allocate(wallet_eth, 5 * ETH, "5")
      wallet_eth = allocate(wallet_eth, 2 * ETH, "6")
      wallet_xrp = allocate(wallet_xrp, 250 * XRP, "7")
      wallet_xrp = allocate(wallet_xrp, 12 * XRP, "8")
  
      return portfolio
  
imports: import pytest
  import unittest.mock
  from tensortrade.core.base import Clock
  from tensortrade.oms.wallets import Wallet, Portfolio
  from tensortrade.oms.instruments import USD, BTC, ETH, XRP, BCH
label_desc: Use image node_id 7 for calling a global function with example usage: portfolio_locked(portfolio, wallet_usd, wallet_btc, wallet_eth, wallet_xrp) and returns: portfolio, wallet