where does `getNameParts` function comes from?