v2.0 update pubic: public_type optimization
v2.0 update data: optimization