added header generation ability