The main idea done