using generic character functionality
used generic character
update