whole solution