nearly complete solution to 26