When using the Coordination activities it's important to note that they care about connector ranks. For example, if a token enters a synchronize activity through connector 1, it will use connector 1 to leave the activity when it's done. If it enters through connector 2 it will exit out the corresponding connector 2.
In your model, connector 1 and 2 aren't always on the same side of the synchronize activities and so the tokens are flipping sides like this:
You can fix this by selecting one of these connectors and changing the From Rank and To Rank fields so that the connector numbers match up. You want all the connectors on the left to be rank 1 and all the connectors on the right to be rank 2.
Thanks for the help firstly. The model is operational and works as it should now with the changes. Many thanks for the help and the quick response.
Have a nice weekend