implemented basic gensym