class Thief public method steal(v as Vault) v.secret = 1 v.shown = 2 v.lock() v.open() v.make().hidden = 3 v.missing = 4 v.shown(1) end method end class interface Peek method look() as Vault end interface class Vault implements Peek private word secret public word shown word hidden private method lock() end method method open() self.lock() self.secret = 1 hidden = 2 end method public method peer(other as Vault) other.secret = 2 end method public method make() as Vault return self end method public method look() as Vault return self end method end class program Main var v as Vault var list as Vault[2] var p as Peek v = new Vault() v.hidden = 1 list[0].secret = 5 print v.shown p = v p.look().secret = 6 p.touch() v.open() end program