apply formatter
add validate model/add trait factory