s = gets.chomp
q = gets.chomp.to_i

q.times do
  op, a, b, p = gets.split
  a = a.to_i
  b = b.to_i

  if op == 'print'
    puts s[a..b]
  elsif op == 'reverse'
    s[a..b] = s[a..b].reverse
  else
    s[a..b] = p
  end
end

