switched to stdint types for the struct, neater