I have a very simple type in my system. It’s just an immutable struct: public struct AssetClass: Sendable, Equatable, Hashable, Comparable { public let name: String public let commodities: [String] public let returns: Rates public static func < (lhs: AssetClass, rhs: AssetClass) -> Bool { lhs.name < rhs.name } public static func == (lhs: AssetClass, rhs: AssetClass) -> Bool { lhs.name == rhs.name } public func hash(into hasher: inout Hasher) { hasher.combine(name) } } It has a unique name, ...