- add enum cardType to represent the type of card