add validating for datatypes