     func endResolving() {
       while !cache.cycleInjectionStack.isEmpty {
         let data = cache.cycleInjectionStack.removeFirst()
-        _ = use(signature: data.injection.signature, usingObject: data.obj)
+        _ = use(signature: data.signature, usingObject: data.obj)
       }
       
       cache.graph = Cache.Scope()

    fileprivate var perContainer = Scope()

    fileprivate var graph = Scope()
    fileprivate var cycleInjectionStack: ContiguousArray<(obj: Any?, injection: Injection)> = []
  }
}



      for injection in component.injections {
        if injection.cycle {
          cache.cycleInjectionStack.append((initializedObject, injection.signature))
        } else {
          _ = use(signature: injection.signature, usingObject: initializedObject)
        }
      }
      
      if let signature = component.postInit {
        if component.injections.contains(where: { $0.cycle }) {
          cache.cycleInjectionStack.append((initializedObject, signature))
        } else {
          _ = use(signature: signature, usingObject: initializedObject)
        }
      }
      
      return initializedObject
