from collections import deque
import sys
# num = int(input())
num = int(sys.stdin.readline())
dq = deque()
for i in range(num):
# X = list(input().split())
X = list(sys.stdin.readline().split())
if(X[0] == "push_front"):
dq.appendleft(X[1])
elif(X[0] == "push_back"):
dq.append(X[1])
elif(X[0] == "pop_front"):
if(len(dq)==0):
print("-1")
else:
print(dq.popleft())
elif(X[0] == "pop_back"):
if(len(dq)==0):
print("-1")
else:
print(dq.pop())
elif(X[0] == "size"):
print(len(dq))
elif(X[0] == "empty"):
if(len(dq)==0):
print("1")
else:
print("0")
elif(X[0] == "front"):
if(len(dq)==0):
print("-1")
else:
print(dq[0])
elif(X[0] == "back"):
if(len(dq)==0):
print("-1")
else:
print(dq[-1])
from collections import deque
1. 앞부분에 push : dq.appendleft(X[1])
2. 뒷부분에 push : dq.append(X[1])
3. 앞부분에 pop : dq.popleft()
4. 뒷부분에 pop : dq.pop()
5. size 알기 : len(dq)
6. 앞부분 값 알기 : dq[0]
7. 뒷부분 값 알기 : dq[-1]