awesome that it assumes 4-byte pointers