The polar bears are going fishing. They plan to sail from (*s*<sub class="lower-index">*x*</sub>, *s*<sub class="lower-index">*y*</sub>) to (*e*<sub class="lower-index">*x*</sub>, *e*<sub class="lower-index">*y*</sub>). However, the boat can only sail by wind. At each second, the wind blows in one of these directions: east, south, west or north. Assume the boat is currently at (*x*, *y*).
 -  If the wind blows to the east, the boat will move to (*x* + 1, *y*). -  If the wind blows to the south, the boat will move to (*x*, *y* - 1). -  If the wind blows to the west, the boat will move to (*x* - 1, *y*). -  If the wind blows to the north, the boat will move to (*x*, *y* + 1). 
Alternatively, they can hold the boat by the anchor. In this case, the boat stays at (*x*, *y*). Given the wind direction for *t* seconds, what is the earliest time they sail to (*e*<sub class="lower-index">*x*</sub>, *e*<sub class="lower-index">*y*</sub>)?
The first line contains five integers *t*, *s*<sub class="lower-index">*x*</sub>, *s*<sub class="lower-index">*y*</sub>, *e*<sub class="lower-index">*x*</sub>, *e*<sub class="lower-index">*y*</sub> (1 ≤ *t* ≤ 10<sup class="upper-index">5</sup>,  - 10<sup class="upper-index">9</sup> ≤ *s*<sub class="lower-index">*x*</sub>, *s*<sub class="lower-index">*y*</sub>, *e*<sub class="lower-index">*x*</sub>, *e*<sub class="lower-index">*y*</sub> ≤ 10<sup class="upper-index">9</sup>). The starting location and the ending location will be different.

The second line contains *t* characters, the *i*-th character is the wind blowing direction at the *i*-th second. It will be one of the four possibilities: "E" (east), "S" (south), "W" (west) and "N" (north).
t,sx,sy,ex,ey=map(int,input().split())
direc=input()
trav=""
trav_e,trav_n,trav_s,trav_w=0,0,0,0
if ey>sy:
    trav_n=ey-sy
if sx>ex:
    trav_w=sx-ex  
if sy>ey:
    trav_s=sy-ey
if ex>sx:
    trav_e=ex-sx
    
    
if trav_n>0 and trav_e>0:
    trav+=trav_n*('N')+trav_e*("E")   
if trav_n>0 and trav_w>0:
    trav+=trav_n*('N')+trav_w*("W")
if trav_s>0 and trav_w>0:
    trav+=trav_s*('S')+trav_w*("W")
if trav_s>0 and trav_e>0:
    trav+=trav_s*('S')+trav_e*("E")

c=0
idx=0
isFalse=True
sm=False
for i in trav:
    found=False
    for j in direc[idx:]:
        if i==j:
            found=True
            idx=direc.index(j)+1
            c=idx+1
    if found==False:   
        isFalse=False
        break
if isFalse==False:
    c=0
    idx=0
    isFalse=True
    sm=True
    for i in trav[::-1]:
        found=False
        for j in direc[idx:]:
            if i==j:
                found=True
                idx=direc.index(j)+1
                c=idx+1
        if found==False:   
            isFalse=False
            sm=False
            break
            
if isFalse:
    print(c)
else:
    print(-1)