don't rely on NULL entry