class Account: 
    _total_deposits = 0

    def __init__(self, initial_balance):      
        self._balance = initial_balance 
        Account._total_deposits += initial_balance
                                              
    def balance(self): 
        return self._balance 

    def deposit(self, amount):                
        if amount < 0: raise ValueError("negative deposit")
        self._balance += amount
        Account._total_deposits += amount

    def withdraw(self, amount):
        if 0 <= amount <= self._balance:
            self._balance -= amount 
            Account._total_deposits -= amount
        else: raise ValueError("bad withdrawal")
   
    @staticmethod
    def total_deposits():
        return Account._total_deposits

Account.__doc__ = """
    >>> acct1 = Account(1000)
    >>> acct1.balance()
    1000
    >>> acct1.deposit(100)
    >>> acct1.balance()
    1100
    >>> acct1.withdraw(50)
    >>> acct1.balance()
    1050
    >>> acct2 = Account(200)
    >>> acct1.total_deposits()
    1250
    >>> acct2.total_deposits()
    1250
    >>> Account.total_deposits()
    1250
"""
