generate version number