updated contract model spec