#include size_t parse (size_t from, const std::string& str) { int sum = 0; for (size_t i = from; i < str.size(); i++) { if(str[i] == '(') { sum++; } else { sum--; } if (sum == 0) return i; } //std::cout << "wtf" << std::endl; //std::cout << "parse: " << from << std::endl; return 0; } size_t evaluate(size_t from, size_t to, const std::string& str) { //std::cout << "evaluate(" << from << ", " << to << "...)" << std::endl; size_t counter = 0; from++; while (from < to) { size_t from2 = parse(from, str); //std::cout << "evaluate: " << from2 << std::endl; if (counter == 0) counter = 1; counter *= evaluate(from, from2, str); from = from2 + 1; } return counter+1; } int main() { int num; std::cin >> num; std::string exp; std::getline(std::cin, exp); std::getline(std::cin, exp); size_t res = evaluate(0, num - 1, exp); std::cout <