update validation library, use it more efficiently