## KeychainMigratingCodableBackingStore ```swift import TIFoundationUtils import TIKeychainUtils import KeychainAccess extension StorageKey { static var knownPins: StorageKey<[String: Set]> { .init(rawValue: "knownPins") } } extension Keychain { static var keychain: Keychain { .init() } static var groupKeychain: Keychain { .init(service: "app.group.identifier") } } extension KeychainMigratingStorageContainer { static var defaultContainer: KeychainMigratingStorageContainer { .init(sourceStorage: .keychain, targetStorage: .groupKeychain) } } struct PinningManager { // Migration from keychain to groupKeychain // @KeychainCodableBackingStore(key: .knownPins, codableKeyValueStorage: .keychain) @KeychainMigratingCodableBackingStore(key: .knownPins, storageContainer: .defaultContainer) var knownPins = [String: Set]() } ```