public override void ExecuteReplication(Connection connection)
            {
                var componentDataArray  = ReplicationComponentGroup.GetComponentDataArray <SpatialOSExhaustiveBlittableSingular>();
                var spatialEntityIdData = ReplicationComponentGroup.GetComponentDataArray <SpatialEntityId>();

                for (var i = 0; i < componentDataArray.Length; i++)
                {
                    var componentData    = componentDataArray[i];
                    var entityId         = spatialEntityIdData[i].EntityId;
                    var hasPendingEvents = false;

                    if (componentData.DirtyBit || hasPendingEvents)
                    {
                        var update = new global::Improbable.Gdk.Tests.ExhaustiveBlittableSingular.Update();
                        update.SetField1(componentData.Field1);
                        update.SetField2(componentData.Field2);
                        update.SetField4(componentData.Field4);
                        update.SetField5(componentData.Field5);
                        update.SetField6(componentData.Field6);
                        update.SetField8(componentData.Field8);
                        update.SetField9(componentData.Field9);
                        update.SetField10(componentData.Field10);
                        update.SetField11(componentData.Field11);
                        update.SetField12(componentData.Field12);
                        update.SetField13(componentData.Field13);
                        update.SetField14(componentData.Field14);
                        update.SetField15(componentData.Field15);
                        update.SetField16(new global::Improbable.EntityId(componentData.Field16));
                        update.SetField17(global::Generated.Improbable.Gdk.Tests.SomeType.ToSpatial(componentData.Field17));
                        SendComponentUpdate(connection, entityId, update);

                        componentData.DirtyBit = false;
                        componentDataArray[i]  = componentData;
                    }
                }
            }
 public static void SendComponentUpdate(Connection connection, long entityId, global::Improbable.Gdk.Tests.ExhaustiveBlittableSingular.Update update)
 {
     connection.SendComponentUpdate(new global::Improbable.EntityId(entityId), update);
 }