first draft solver