do not rely on field ordering