reorganize header file