using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ITP1_11_A
{
    class Dice
    {
        private string[] alias = new string[6];

        public Dice()
        {
            // (1) ?????????????????????3????????????????????£??§????£???§???????????????
            // ???????????¢??¨????????¢?????°??????????¨????7?????¨?????????????????§???????????????
            // ????????????????????????????????´??????????¨???????????????§??????????????¨??????????????????
            // ?????¢?????????????????£???????????¨???????????????

            // (2) ??¨????????¢??????????????????????????¨???????????¨???????????????
            // [0, 1, 2, 3, 4, 5] ??? [???, ???, ???, ???, ???, ???]??????????????????????????¨???
            // ???????????????????????¨????????\??£???????????????????????????
            Top = 0;
            Front = 1;
            Right = 2;
        }

        public void RotateNorth()
        {
            var temp = Inverse(Top);
            Top = Front;
            Front = temp;
        }


        public void RotateSouth()
        {
            var temp = Inverse(Front);
            Front = Top;
            Top = temp;
        }


        public void RotateEast()
        {
            var temp = Inverse(Right);
            Right = Top;
            Top = temp;
        }


        public void RotateWest()
        {
            var temp = Inverse(Top);
            Top = Right;
            Right = temp;
        }


        public bool RotateTo(int top, int front)
        {

            return false;
        }


        public int Top { get; private set; }


        public int Front { get; private set; }


        public int Right { get; private set; }


        public int Bottom { get { return Inverse(Top); } }


        public int Back { get { return Inverse(Front); } }


        public int Left { get { return Inverse(Right); } }



        public int Inverse(int surface)
        {
            return 5 - surface;
        }


        public void SetAlias(string top, string front, string right, string left, string back, string bottom)
        {
            alias[Top] = top;
            alias[Front] = front;
            alias[Right] = right;
            alias[Left] = left;
            alias[Back] = back;
            alias[Bottom] = bottom;
        }

        public string AliasOfTop
        {
            get { return alias[Top]; }
        }

        public string AliasOfFront
        {
            get { return alias[Front]; }
        }

        public string AliasOfRight
        {
            get { return alias[Right]; }
        }

        public string AliasOfLeft
        {
            get { return alias[Left]; }
        }

        public string AliasOfBack
        {
            get { return alias[Back]; }
        }

        public string AliasOfBottom
        {
            get { return alias[Bottom]; }
        }
    }


    class Program
    {
        static void Main(string[] args)
        {
            var aliasOfSurface = Console.ReadLine().Split(' ');
            var dice = new Dice();
            dice.SetAlias(
                aliasOfSurface[0]
                , aliasOfSurface[1]
                , aliasOfSurface[2]
                , aliasOfSurface[3]
                , aliasOfSurface[4]
                , aliasOfSurface[5]
            );

            foreach (var n in Console.ReadLine())
            {
                switch (n)
                {
                    case 'N': dice.RotateNorth(); break;
                    case 'S': dice.RotateSouth(); break;
                    case 'E': dice.RotateEast(); break;
                    case 'W': dice.RotateWest(); break;
                }
            }

            Console.WriteLine(dice.AliasOfTop);
        }
    }
}

Measured memory_bytes: 5296