add class expr,field,leaf, but not complete.cant run