implemented CardSet