added required include stdint.h