pub fn update_balance<U: Into<String>>(
        &mut self,
        addr: U,
        balance: Vec<Coin>,
    ) -> Option<Vec<Coin>> {
        self.bank.balances.insert(addr.into(), balance)
    }
// set a new balance for the given address and return the old balance
set a new balance for the given address and return the old balance
set a new balance for the given address and return the old balance
pub fn update_balance<U: Into<String>>(
        &mut self,
        addr: U,
        balance: Vec<Coin>,
    ) -> Option<Vec<Coin>> {
        self.bank.balances.insert(addr.into(), balance)
    }
pub fn update_balance < U : Into < String > > ( & mut self , addr : U , balance : Vec < Coin > , ) -> Option < Vec < Coin > > { self . bank . balances . insert ( addr . into ( ) , balance ) }
set a new balance for the given address and return the old balance
set a new balance for the given address and return the old balance
&mut self
addr
U
balance
Vec<Coin>
&mut self
addr
U
balance
Vec<Coin>