improve identifier generator