core logic completed