devide core logic