Deque 
	For a dynamic array A={a0,a1,...} of integers, perform a sequence of the following operations: 
	0 push(d, x): Add element x at the begining of A, if d=0. Add element x at the end of A, if d=1. 
	1 randomAccess(p): Print element ap. 
	2 pop(d): Delete the first element of A, if d=0. Delete the last element of A, if d=1.
A is a 0-origin array and it is empty in the initial state.
 
                                            
                        
	The input is given in the following format.
	q
	query1
	query2
	:
	queryq
	Each query queryi is given by
0 d x
, or
1 p,
or
2 d
,where the first digits 0, 1 and 2 represent push, randomAccess and pop operations respectively.
randomAccess and pop operations will not be given for an empty array.
1≤q≤400,000
0≤p< the size of A −1,000,000,000≤x≤1,000,000,000
 
                                            
                        For each randomAccess, print ap in a line.