added javax.validation framework
divided up ridiculously long tenary operation