def zore():
global word, ex
long = len(word)
for i in range(0,long,2):
temp = ex[i]
temp_two = ex[i+1]
ex.append(temp_two)
ex.append(temp)
for i in range(long):
ex.remove(ex[i])
def one():
a = 0
b = 1
c = 2
d = 3
e = 4
f = 5
g = 6
h = 7
i = 8
j = 9
k = 10
l = 11
m = 12
n = 13
o = 14
p = 15
q = 16
r = 17
s = 18
t = 19
u = 20
v = 21
w = 22
x = 23
y = 24
z = 25
global word
long = len(word)
for i in range(0,long_nmu,2):
if ex[i] > ex[i+1]:
temp = ex[i]
temp_two = ex[i + 1]
ex.append(temp_two)
ex.append(temp)
else:
ex.append(ex[i])
ex.append(ex[i+1])
for z in range(long):
ex.remove(ex[0])
def two():
global long_nmu
num = long_nmu // 2
for i in range(num):
ex.append(ex[i])
ex.append(ex[i+num])
for z in range(long_nmu):
ex.remove(ex[0])
word = input()
ex = []
long_nmu = len(word)
for i in range(long_nmu):
ex.append(word[i])
total = []
time = int(input())
for i in range(time):
a = int(input())
total.append(a)
for i in range(time):
if total[i] == 0:
zore()
elif total[i] == 1:
one()
elif total[i] == 2:
two()
for i in range(long_nmu):
print(ex[i], end='')