The basic logic is in place