moved scan to _core