86770696a55c005b9faebdd944a3da22462a6fae30a615849a7ed2dc8ccc2163
// https://szkopul.edu.pl/problemset/problem/naklejki/site/?key=statement
// VIII OIG — Zawody drużynowe, finał.
#include <iostream>
#include <vector>
constexpr int sizik = 100 * 1001;
std::pair<int, int> arr[sizik];
int main() {
std::ios_base::sync_with_stdio(0);
std::cin.tie(0);
std::cout.tie(0);
int n, m;
std::cin >> n >> m;
std::string s;
std::cin >> s;
for (int i = 1; i <= m; i++) {
int l, p;
std::cin >> l >> p;
l--;
p--;
arr[p] = {i, p - l};
}
int curr = 0, curr_num = 0;
for (int i = 0; i < s.size(); i++) {
if (arr[i].first > curr) {
curr = arr[i].first;
curr_num = arr[i].second;
}
s[i] = s[i - curr_num];
}
std::cout << s << '\n';
return 0;
}