#40 make messages conditional with error