implemented base handler class