str = gets.chomp
gets

while input = gets
    input = input.chomp.split(" ")
    
    case input[0]
    when "replace"
        str = str.slice(0, input[1].to_i) << input[3] << str.slice(input[2].to_i + 1, str.length - 1 - input[2].to_i)
    when "reverse"
        tmp = str.slice(input[1].to_i, input[2].to_i + 1 - input[1].to_i).split("").reverse
        str = str.slice(0, input[1].to_i) << tmp.join() << str.slice(input[2].to_i + 1, str.length - 1 - input[2].to_i)
    when "print"
        puts str.slice(input[1].to_i, input[2].to_i + 1 - input[1].to_i)
    end
end
