add validate
D