         let keys = Guise.filter(metafilter: metafilter)
         // We get back two keys, but they resolve disparate types.
         XCTAssertEqual(2, keys.count)
-        let humans = Guise.resolve(keys: keys) as [Human]
+        let humans = Guise.resolve(keys: keys.typed()) as [Human]
         // Because we are resolving Humans, not Dogs, Brian Griffin is skipped.
         XCTAssertEqual(1, humans.count)
     }

        }
        let _ = Guise.register(instance: Human(name: "Augustus"), name: "Augustus", container: Container.people, metadata: 77)
        let metafilter: Metafilter<HumanMetadata> = { $0.coolness > 1 }
        let keys = Guise.filter(container: Container.people, metafilter: metafilter)
        let people = Guise.resolve(keys: keys) as [Human]
        XCTAssertEqual(2, people.count)
    }

    }
    
    func testKeyEquality() {
        let key1 = Key<Int>(name: "three", container: Name.default)
        let key2 = Key<Int>(name: "three", container: Name.default)
        let key3 = Key<Int>(name: Name.default, container: Name.default)
        XCTAssertEqual(key1, key2)
        XCTAssertNotEqual(key1, key3)
    }
