def lookup_effective_breakpoint(cls, file_name, line_number, frame):
        """ Checks if there is an enabled breakpoint at given file_name and 
        line_number. Check breakpoint condition if any.
        
        :return: found, enabled and condition verified breakpoint or None
        :rtype: IKPdbBreakpoint or None
        """
        bp = cls.breakpoints_by_file_and_line.get((file_name, line_number), None)
        if not bp:
            return None
            
        if not bp.enabled:
            return None
            
        if not bp.condition:
            return bp
        try:
            value = eval(bp.condition, frame.f_globals, frame.f_locals)
            return bp if value else None
        except:
            pass
        return None