If `$matchedPositions` is empty, doesn't that mean `$fieldNames` is empty as well? And if so, why are we even in this function?