pub trait Mutate<AccountId>: Inspect<AccountId> {
    // Required methods
    fn approve(
        asset: Self::AssetId,
        owner: &AccountId,
        delegate: &AccountId,
        amount: Self::Balance
    ) -> DispatchResult;
    fn transfer_from(
        asset: Self::AssetId,
        owner: &AccountId,
        delegate: &AccountId,
        dest: &AccountId,
        amount: Self::Balance
    ) -> DispatchResult;
}