import random

class Card(object):
    
    def __init__(self, x1, x2):
        '''(self, str, str)->(Card) '''
        pass
        
    def __str__(self):
        '''(self) -> str'''
        pass
    
class Deck(object):

    suits = ["Hearts", "Diamonds", "Spades", "Clubs"]
    values = ['Ace', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'Jack', 'Queen', 'King']
    
    def __init__(self):
        '''(self) -> Deck '''
        pass
    
    def deal(self, i):
        '''(self, int) -> list of Card'''
        pass
        
    def contains(self, x1):
        '''(self, Card) -> bool'''
        pass
    
    def contained(self, x1):
        '''(self, Card) -> bool'''
        pass
    
    def len(self):
        '''(self) -> int'''
        pass
    
    def shuffle(self):
        '''(self) -> NoneType'''
        pass

    def reshuffle(self):
        '''(self) -> NoneType'''
        pass
    
        
class BlackjackHand(object):
    
    def __init__(self, x1):
        '''(self, list of Card)-> BlackjackHand'''
        pass
        
    def add_card(self, x1):
        '''(self, Card) -> NoneType'''
        pass
    
    def score(self):
        '''(self) -> int'''
        pass
    
    def __str__(self):
        '''(self) -> str'''
        pass