class account
def account::new: {
	show args
	(setq \%c_\%s.balance 0)
	return \%s
}
def account::new:deposit: {
	show args
	(setq \%c_\%s.balance \%2)
	return \%s
}
def account>>deposit: {
        if not def \m(\%c_\%s.balance) {
	    (setq \%c_\%s.balance 0)
        }
	(++ \%c_\%s.balance \%2)
	return \%s
}
def account>>balance {
	if not def \m(\%c_\%s.balance) {
            (setq \%c_\%s.balance 0)
	}
	return \m(\%c_\%s.balance)
}
def account>>withdraw: {	
	if > \%2 \m(\%c_\%s.balance) {
		echo ... not enough balance!
	} else {
		(setq \%c_\%s.balance (- \%c_\%s.balance \%2))
	}
	return \%s
}

class saving_account inherit: account

saving_account new: sa_1
(sa_1 'balance)

sa_1 deposit: 250
(sa_1 'balance)

(sa_1 'withdraw: 35)
(sa_1 'balance)

( (sa_1 'withdraw: 15) 'balance )

( (sa_1 'deposit: 78) 'balance )

