pub async fn get_object_changes<P: ObjectProvider<Error = E>, E>(
object_provider: &P,
effects: &TransactionEffects,
sender: SuiAddress,
modified_at_versions: Vec<(ObjectID, SequenceNumber)>,
all_changed_objects: Vec<(ObjectRef, Owner, WriteKind)>,
all_removed_objects: Vec<(ObjectRef, ObjectRemoveKind)>,
) -> Result<Vec<ObjectChange>, E>