Returns how many rai is owned and how many have not yet been received
        by all accounts in **wallet**

        :param wallet: Wallet to return balances for
        :type wallet: str

        :raises: :py:exc:`nano.rpc.RPCException`

        >>> rpc.wallet_balances(
        ...     wallet="000D1BAEC8EC208142C99059B393051BAC8380F9B5A2E6B2489A277D81789F3F"
        ... )
        {
            "xrb_3e3j5tkog48pnny9dmfzj1r16pg8t1e76dz5tmac6iq689wyjfpi00000000": {
                "balance": 10000,
                "pending": 10000
            }
        }

def wallet_balances(self, wallet):
        """
        Returns how many rai is owned and how many have not yet been received
        by all accounts in **wallet**

        :param wallet: Wallet to return balances for
        :type wallet: str

        :raises: :py:exc:`nano.rpc.RPCException`

        >>> rpc.wallet_balances(
        ...     wallet="000D1BAEC8EC208142C99059B393051BAC8380F9B5A2E6B2489A277D81789F3F"
        ... )
        {
            "xrb_3e3j5tkog48pnny9dmfzj1r16pg8t1e76dz5tmac6iq689wyjfpi00000000": {
                "balance": 10000,
                "pending": 10000
            }
        }

        """

        wallet = self._process_value(wallet, 'wallet')

        payload = {"wallet": wallet}

        resp = self.call('wallet_balances', payload)
        balances = resp.get('balances') or {}
        for account, balance in balances.items():
            for k, v in balances[account].items():
                balances[account][k] = int(v)

        return balances