added functag and funcenum