refine purge2, add comp2, dot to struct.h