 	}
 
   public override var hashValue: Int {
-    var hash = super.hashValue ^ year.hashValue ^ ids.hashValue
+    var hash = super.hashValue ^ ids.hashValue
+
+	if let yearHash = year?.hashValue {
+		hash = hash ^ yearHash
+	}
 
     if let firstAiredHash = firstAired?.hashValue {
       hash = hash ^ firstAiredHash

import Foundation

public final class Show: StandardMediaEntity {
  public let year: Int
  public let ids: ShowIds
  public let firstAired: Date?
  public let airs: Airs?

	public required init(from decoder: Decoder) throws {
		let container = try decoder.container(keyedBy: CodingKeys.self)

		self.year = try container.decodeIfPresent(Int.self, forKey: .year)
		self.ids = try container.decode(ShowIds.self, forKey: .ids)
		self.airs = try container.decodeIfPresent(Airs.self, forKey: .airs)
		self.runtime = try container.decodeIfPresent(Int.self, forKey: .runtime)
