application with validation