refactored breakpoint framework