An accurate name generator