s = gets
n = gets.to_i
n.times do
  c = gets.split(" ")
  if c[0] == "print"
    puts s[c[1].to_i..c[2].to_i]
  elsif c[0] == "replace"
    s[c[1].to_i..c[2].to_i] = c[3]
  else
    s[c[1].to_i..c[2].to_i] = s[c[1].to_i..c[2].to_i].reverse
  end
end

