got validation working but not pretty