       cardsToUse = cardsToUse.filter(filterByExcludedTypes(excludeTypes))
       cardsToUse = cardsToUse.filter(filterByAllowedTypes(allowedTypes))
       cardsToUse = cardsToUse.filter(filterByAllowedCost(allowedCosts))
+      cardsToUse = removeDuplicateCards(cardsToUse)
 
       eventsToUse = flattenSetsForProperty(setsToUse, 'events')
       eventsToUse = eventsToUse.filter(filterByExcludedIds(includeEventIds))

            useShelters: shouldUseSpecialtyCardFromSet(DARK_AGES_SET_ID, setsToUse)
         }
      }

   adjustKingdomForAlchemyCards = (kingdom, cardsToUse, requiredCardIds, excludeCardIds) ->      
      alchemyCards = kingdom.cards.filter(filterByIncludedSetIds([ALCHEMY_SET_ID]))

      TREASURE_7: 'treasure7',
      TREASURE_8: 'treasure8'
   }

   SetsWithDuplicates = {
      'baseset2': 'baseset',
      'intrigue2': 'intrigue'
   };

   NUM_CARDS_IN_KINGDOM = 10

