generate H file