#include <bits/stdc++.h>
using namespace std;
template <class T>
bool ckmin(T& a, const T& b) {
  return b < a ? a = b, 1 : 0;
}
template <class T>
bool ckmax(T& a, const T& b) {
  return a < b ? a = b, 1 : 0;
}
void solve() {
  string s;
  cin >> s;
  int m;
  cin >> m;
  int n = s.length();
  for (int i = 0; i < (int)(m); ++i) {
    int l, r, k;
    cin >> l >> r >> k;
    k %= (r - l + 1);
    l--;
    r--;
    string pre = "", suf = "", mid = "";
    if (l > 0) pre = s.substr(0, l);
    if (r < n - 1) suf = s.substr(r + 1, n - r - 1);
    mid = s.substr(l, r - l + 1);
    s = pre + mid.substr(mid.size() - k, k) + mid.substr(0, mid.size() - k) +
        suf;
  }
  cout << s;
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie(nullptr);
  cout.precision(10);
  int T = 1;
  while (T--) {
    solve();
    cout << '\n';
  }
  return 0;
}
