implementing 4 byte lengths