moved the core break handling into the core class