tighten up the core loop