message should be a val, not a var