adding new solve funtion prototype to base solver class