pub(crate) fn initialize_pool<T: Config>(
    caller: T::AccountId,
    asset_a: AssetId,
    asset_b: AssetId,
    amount_a: Balance,
    amount_b: Balance
) -> DispatchResult