# Order of execution

This page describes the order of various **coherence** events and scripts in relation to [Unity's main loop](https://docs.unity3d.com/Manual/ExecutionOrder.html).

## Script execution order

The following **coherence** components use a non-standard script execution order:

| Component                   | Execution order |
| --------------------------- | --------------- |
| `CoherenceMonoBridge`       | -1000           |
| `CoherenceSync`             | -900            |
| `CoherenceInput`            | -800            |
| `CoherenceLiveQuery`        | 900             |
| `CoherenceTagQuery`         | 900             |
| `CoherenceMonoBridgeSender` | 1000            |

{% hint style="info" %}
Execution order values can be found in the `Coherence.Toolkit.ScriptExecutionOrder` script.
{% endhint %}

## Flowchart

{% embed url="<https://www.figma.com/file/p7wmCq8v6V18YSMiW2Dj4i/Order-of-Execution>" %}

{% hint style="warning" %}
Depending on the reason for a disconnection the `onDisconnected` event can be raised from different places in the code, including `LateUpdate`.
{% endhint %}
