1use cosmwasm_std::{Addr, Coin, StdError, StdResult, Uint128};
2
3use crate::denom::Denom;
4
5pub fn amount(denom: &Denom, funds: Vec<Coin>) -> StdResult<Uint128> {
6 let coin = funds
7 .iter()
8 .find(|d| &Denom::from(d.denom.clone()) == denom);
9 match coin {
10 None => Err(StdError::not_found(denom.to_string())),
11 Some(Coin { amount, .. }) => match funds
12 .iter()
13 .find(|d| &Denom::from(d.denom.clone()) != denom)
14 {
15 Some(x) => Err(StdError::invalid_utf8(x.denom.clone())),
16 None => Ok(*amount),
17 },
18 }
19}
20
21pub fn fee_address() -> Addr {
22 Addr::unchecked("kujira17xpfvakm2amg962yls6f84z3kell8c5lp3pcxh")
23}