everything should be ready now to start writing the core logic