core loop design