output_description: Print the integer which appears on the top face after the simulation.
input_description: In the first line, six integers assigned to faces are given in ascending order
  of their corresponding labels.
  
  In the second line, a string which represents a sequence of commands, is
  given. The command is one of 'E', 'N', 'S' and 'W' representing four
  directions shown in the above figures.
attempt: progression = list(map(int, input().split()))
  order = input()
  
  dice = progression
  order_list = list(order)
  direction = [0, "S", "E", "W", "N", 0]
  up_down_0 = [0, 0]
  up_down_1 = [0, 0]
  up_down_2 = [0, 0]
  
  
  up_down_0[0], up_down_0[1] = progression[0], progression[5]
  up_down_1[0], up_down_1[1] = progression[2], progression[3]
  up_down_2[0], up_down_2[1] = progression[1], progression[4]
  
  num_under = 0
  num_upper = 0
  
  
  for i in order_list:
  
      if i == "N":
          num_under = direction.index("N")
  
      elif i == "E":
          num_under = direction.index("E")
  
      elif i == "S":
          num_under = direction.index("S")
  
      elif i == "W":
          num_under = direction.index("W")
  
      dice[num_under], dice[5] = dice[5], dice[num_under]
  
      if dice[5] == up_down_0[0]:
          num_upper = dice.index(up_down_0[1])
          dice[num_upper], dice[0] = dice[0], dice[num_upper]
  
      elif dice[5] == up_down_0[1]:
          num_upper = dice.index(up_down_0[0])
          dice[num_upper], dice[0] = dice[0], dice[num_upper]
  
      elif dice[5] == up_down_1[0]:
          num_upper = dice.index(up_down_1[1])
          dice[num_upper], dice[0] = dice[0], dice[num_upper]
  
      elif dice[5] == up_down_1[1]:
          num_upper = dice.index(up_down_1[0])
          dice[num_upper], dice[0] = dice[0], dice[num_upper]
  
      elif dice[5] == up_down_2[0]:
          num_upper = dice.index(up_down_2[1])
          dice[num_upper], dice[0] = dice[0], dice[num_upper]
  
      elif dice[5] == up_down_2[1]:
          num_upper = dice.index(up_down_2[0])
          dice[num_upper], dice[0] = dice[0], dice[num_upper]
  
      direction[num_under], direction[num_upper] = (
          direction[num_upper],
          direction[num_under],
      )
  
  
  print(dice[0])
  
problem_description: Dice I
  
    
  
  Write a program to simulate rolling a dice, which can be constructed by the
  following net.
  
    
  ![](https://judgeapi.u-aizu.ac.jp/resources/images/IMAGE2_ITP1_11_A_1)  
  ![](https://judgeapi.u-aizu.ac.jp/resources/images/IMAGE2_ITP1_11_A_2)  
    
    
  
  As shown in the figures, each face is identified by a different label from 1
  to 6.
  
  Write a program which reads integers assigned to each face identified by the
  label and a sequence of commands to roll the dice, and prints the integer on
  the top face. At the initial state, the dice is located as shown in the above
  figures.
samples: [{"input": "1 2 4 8 16 32\n    SE", "output": "8\n    \n\nYou are given a dice where 1, 2, 4, 8, 16 are 32 are assigned to a face\nlabeled by 1, 2, ..., 6 respectively. After you roll the dice to the direction\nS and then to the direction E, you can see 8 on the top face."}, {"input": "1 2 4 8 16 32\n    EESWN", "output": "32"}]