# stackかと思ったが、スタックのlast参照するのとは違う N = int(input()) S = list(input()) bad = 'bcdefghijklmpqrstuvxyz' ans = 'Yes' for i in range(N): if S[i] in bad: ans = 'No' if i < N-1: if S[i] == 'w': if S[i+1] == 'w' or S[i+1] == 'n': ans = 'No' if S[i+1] == '?': S[i+1] = 'a' for i in range(N-1, -1, -1): if i > 0: if S[i] == 'a': if S[i-1] == 'a' or S[i-1] == 'o' or S[i-1] == 'n': ans = 'No' if S[i-1] == '?': S[i-1] = 'w' if S[i] == 'o': if S[i-1] == 'a' or S[i-1] == 'o' or S[i-1] == 'n': ans = 'No' if S[i-1] == '?': S[i-1] = 'w' if S[-1] == 'w': ans = 'No' if S[0] == 'a' or S[0] == 'o': ans = 'No' print(ans)