 
 
 public class PKMEvolutionDetail: Mappable {
-    public var item: PKMBaseObject?
-    public var trigger: PKMBaseObject?
-    public var gender: PKMBaseObject?
-    public var heldItem: PKMBaseObject?
-    public var knownMove: PKMBaseObject?
-    public var knownMoveType: PKMBaseObject?
-    public var location: PKMBaseObject?
+    public var item: PKMNamedAPIResource?
+    public var trigger: PKMNamedAPIResource?
+    public var gender: PKMNamedAPIResource?
+    public var heldItem: PKMNamedAPIResource?
+    public var knownMove: PKMNamedAPIResource?
+    public var knownMoveType: PKMNamedAPIResource?
+    public var location: PKMNamedAPIResource?
     public var minLevel: Int?
     public var minHappiness: Int?
     public var minBeauty: Int?
     public var minAffection: Int?
     public var needsOverworldRain: Bool?
-    public var partySpecies: PKMBaseObject?
-    public var partyType: PKMBaseObject?
+    public var partySpecies: PKMNamedAPIResource?
+    public var partyType: PKMNamedAPIResource?
     public var relativePhysicalStats: Int?
     public var timeOfDay: String?
-    public var tradeSpecies: PKMBaseObject?
+    public var tradeSpecies: PKMNamedAPIResource?
     public var turnUpsideDown: Bool?
     
     required public init?(_ map: Map) {

    public var name: String?
    
    /// The condition this encounter condition value pertains to
    public var condition: [PKMBaseObject]?
    
    /// The name of this encounter condition value listed in different languages
    public var names: [PKMName]?

*/
public class PKMEvolutionChain: Mappable {
    public var id: Int?
    public var babyTriggerItem: PKMNamedAPIResource?
    public var chain: PKMClainLink?
    
    required public init?(_ map: Map) {
