moved type definition to constants.h