The very basic logic is done with these commit