Finding address balance of specific token as certain block

I found obsidian wallet-sdk and that I also would be using private_balance_of

But how in general I found token balance of address?

Would be great if that would be full example for token 0x2ab7cf582347c8a2834e0faf98339372118275997e14c5a77054bb345362e878 (USDC)
on
https://full-node.alpha-testnet.aztec.network

Also in case I want to sign message do I need to do that on L1, or there some methods available using aztec, better if I could do that using obsidian wallet-sdk

This example might be helpful GitHub - obsidionlabs/app-example

we’re planning to disponibilize historical token balances for the TokenVotes functionality, onchain, its easier to do on private than on public. so far, idk how you can get that.