refactored to lazy initialization of solver and score Director