// Arup Guha
// 3/17/2026
// Solution to 2026 UCF HS Contest Problem H: Inexplicable Indecision

import java.util.*;
import java.io.*;

public class indecision {
	
	public static void main(String[] args) throws Exception {
	
		// Read basic stuff.
		BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer tok = new StringTokenizer(stdin.readLine());
		int n = Integer.parseInt(tok.nextToken());
		int q = Integer.parseInt(tok.nextToken());
		
		// Allocate space.
		int[] vals = new int[n];
		bit mine = new bit(n);
		
		// Read original array.
		tok = new StringTokenizer(stdin.readLine());
		for (int i=0; i<n; i++) {
			vals[i] = Integer.parseInt(tok.nextToken());
			mine.add(i+1, vals[i]);
		}
		
		// Store answer here.
		StringBuffer sb = new StringBuffer();
		
		// Process queries.
		for (int i=0; i<q; i++) {
		
			// Get query.
			tok = new StringTokenizer(stdin.readLine());
			String cmd = tok.nextToken();
			
			// Do a sum.
			if (cmd.equals("sum")) {
				int lo = Integer.parseInt(tok.nextToken());
				int hi = Integer.parseInt(tok.nextToken());
				sb.append(mine.range(lo,hi)+"\n");
			}
			
			// Swap.
			else {
			
				// Read in the query, calculate delta.
				int idx = Integer.parseInt(tok.nextToken());
				int delta = vals[idx-1]-vals[idx];
				
				// Update bit.
				mine.add(idx+1, delta);
				mine.add(idx, -delta);
				
				// Gotta keep the array consistent too!
				int tmp = vals[idx-1];
				vals[idx-1] = vals[idx];
				vals[idx] = tmp;
			}
		}
		
		// Ta da!
		System.out.print(sb);
	}
}

/*** Binary Index Tree ***/
class bit {

	public int n;
	public int[] arr;
	
	public bit(int myn) {
		
		// Make big enough.
		n = 1;
		while (n <= myn+2)
			n <<= 1;
			
		arr = new int[n+1];
	}
	
	// Returns sum from index 1 to index x.
	public int sum(int x) {
		int res = 0;
		while (x > 0) {
			res += arr[x];
			x -= (x&(-x));
		}
		return res;
	}
	
	// Returns the sum from index lo to index hi, inclusive.
	public int range(int lo, int hi) {
		return sum(hi) - sum(lo-1);
	}
	
	// Adds x to index idx.
	public void add(int idx, int x) {
		while (idx < n) {
			arr[idx] += x;
			idx += (idx & (-idx));
		}
	}
}