add abstract polar solver