add function base class