Divide header file
feature:
divide header file to each type