add func pointer check