 private struct EnvironmentStateTestView3: View, InspectableWithEnvObject3 {
     @EnvironmentObject var object1: ExternalState1
     @EnvironmentObject var object2: ExternalState2
-    @EnvironmentObject var object3: ExternalState3
-    
-    var body: some View {
-        body(object1, object2, object3)
+    @Environment(\.state3) var object3: EnvironmentParameter.EnvKey
+    
+    var body: some View {
+        body(object1, object2, object3.state)
     }
     
     func body(_ object1: ExternalState1, _ object2: ExternalState2,
-              _ object3: ExternalState3) -> some View {
-        Text(object1.value + object2.value + object3.value)
+              _ object3: EnvironmentParameter) -> some View {
+        Text(object1.value + object2.value + object3.state.value)
     }
 }
 

    @Published var value = "obj2"
}

private class ExternalState3: ObservableObject {
    @Published var value = "obj3"
}

extension ViewType {

    }
    
    func testExtractionEnvView3FromMultipleViewContainer() throws {
        let object1 = ExternalState1(), object2 = ExternalState2(), object3 = EnvironmentParameter()
        let view = HStack { EnvironmentStateTestView3() }
        XCTAssertNoThrow(try view.inspect()
            .view(EnvironmentStateTestView3.self, object1, object2, object3, 0))
