#include #include using namespace std; using ll = long long; #define rep(i, n) for (int i = 0; i < (int)(n); i++) const ll MX = 200020; void solve() { ll n, q, L; cin >> n >> q >> L; atcoder::fenwick_tree ft1(MX), ft2(MX); auto add = [&](ll a) -> void { ft1.add(a, 1); ft2.add(a, a); }; rep(i, n) { ll a; cin >> a; add(a); } bool found = false; rep(qi, q) { ll t; cin >> t; if (t == 1) { ll l; cin >> l; add(l); } if (t == 2) { found = true; ll l, r; cin >> l >> r; cout << ft1.sum(l, r + 1) << ' ' << ft2.sum(l, r + 1) << '\n'; } if (t == 3) { cin >> L; } } if (!found) { cout << "Not Found!\n"; } } int main() { std::cin.tie(nullptr); std::ios_base::sync_with_stdio(false); int T = 1; for (int t = 0; t < T; t++) { solve(); } return 0; }