anchor.diff:          let archetypeIndex = archetype.Register comps
           archetypeSlots.Add (entity.EntityId, { ArchetypeIndex = archetypeIndex; Archetype = archetype })
           let mutable state = state
  -        if not publishEvents then
  +        if not elideEvents then
               for compName in archetype.Stores.Keys do
                   let eventData = { EcsEntity = entity; ComponentName = compName }
                   state <- this.Publish<EcsRegistrationData, obj> (EcsEvents.Unregistering entity compName) eventData (state :> obj) :?> 's
           (entity, state)
  -
  -    member this.RegisterEntitiesPlus publishEvents count comps archetypeId state =
  -
  -        // get archetype
  -        let archetype =
  -            match archetypes.TryGetValue archetypeId with
  -            | (true, archetype) -> archetype
  -            | (false, _) -> createArchetype archetypeId
  -
  -        // register entities to archetype
  -        let mutable state = state
  -        let entitys = SegmentedArray.zeroCreate count
  -        for i in 0 .. dec count do
  -            let entity = this.Entity
  -            let archetypeIndex = archetype.Register comps
  -            archetypeSlots.Add (entity.EntityId, { ArchetypeIndex = archetypeIndex; Archetype = archetype })
  -            entitys.[i] <- entity
  -            if publishEvents then
  -                for compName in archetype.Stores.Keys do
  -                    let eventData = { EcsEntity = entity; ComponentName = compName }
  -                    state <- this.Publish<EcsRegistrationData, obj> (EcsEvents.Unregistering entity compName) eventData (state :> obj) :?> 's
  -
  -        // fin
  -        (entitys, state)
  -
  -    member this.RegisterEntities publishEvents count comps archetypeId state =
  -        let comps = dictPlus StringComparer.Ordinal (Seq.map (fun comp -> (getTypeName comp, comp)) comps)
  -        this.RegisterEntitiesPlus publishEvents count comps archetypeId state
   
       member this.UnregisterEntity (entity : EcsEntity) (state : 's) =
           match archetypeSlots.TryGetValue entity.EntityId with
  
positive.code:             archetype.Unregister archetypeSlot.ArchetypeIndex
              state
          | (false, _) -> state
  
      member this.RegisterQuery (query : Query) =
          for archetypeEntry in archetypes do
  
negative.code:     member this.UnregisterComponent<'c, 's when 'c : struct and 'c :> 'c Component> (entity : EcsEntity) (state : 's) =
          this.UnregisterComponentPlus<'c, 's> typeof<'c>.Name entity state
  
      member this.RegisterEntity elideEvents comps archetypeId state =
          let archetype =
              match archetypes.TryGetValue archetypeId with
              | (true, archetype) -> archetype
  