::class Savings
::method newCheckingAccount CLASS
instance = self~new
instance~makeChecking
return instance
::method makeChecking private
expose checking
checking = .true
::class Savings
::method init class
expose counter
counter = 0
::method allocateAccountNumber private class
expose counter
counter = counter + 1
return counter
::method init
expose accountNumber
accountNumber = self~class~allocateAccountNumber