Simplified function call sniff abstract class for better reuse.