anchor.diff:          else None
   
       member this.RemoveNode nodeId =
  -        let nodeIdStr = scstring nodeId
  -        let _ = systemTree |> ListTree.removeFirst (fun system -> system.Name = nodeIdStr)
  +        let nodeIdStr = string nodeId
  +        systemTree |>
  +        ListTree.findAll (fun system -> system.Name = nodeIdStr) |>
  +        Seq.iter (fun system -> system.GetEntitiesCorrelated () |> Seq.iter (fun correlated -> system.UnregisterCorrelated correlated |> ignore<bool>))
           systemDict.Remove nodeId
   
       member this.QualifyHierarchical nodeId entityId =
  
positive.code: 
      member this.Component with get () = &comp
  
      override this.UnregisterComponent _ _ = false
  
      type 'w Ecs with
  
  
negative.code:         // fin
          registered
  
      member this.UnregisterHierarchical nodeId entityId =
  
          // attempt to unregister component
          let unregistered =
              match systemDict.TryGetValue nodeId with
              | (true, system) -> system.UnregisterCorrelated entityId
              | (false, _) -> false
  
          // unregister correlation
  