N = int(eval(input()))

G = [[] for _ in range(N)]

visited = [0]*N

visited[0],visited[N-1] = 1,1

visited_all = [1]*N

for i in range(N-1):

    a,b = list(map(int,input().split()))

    G[a-1].append(b-1)

    G[b-1].append(a-1)

nextA,nextB = G[0],G[N-1]

scoreA,scoreB = 1,1

while visited != visited_all:

    l = []

    for a in nextA:

        if visited[a] == 0:

            visited[a] = 1

            scoreA += 1

            for x in G[a]:

                l.append(x)

    nextA = l

    l = []

    for b in nextB:

        if visited[b] == 0:

            visited[b] = 1

            scoreB += 1

            for x in G[b]:

                l.append(x)

    nextB = l

print(("Fennec" if scoreA > scoreB else "Snuke"))

N = int(eval(input()))

A = [[] for _ in range(N)]

for i in range(N-1):

    a,b = list(map(int,input().split()))

    A[a-1].append(b-1)

    A[b-1].append(a-1)



B = [False]*N

visited = [True]*N



Fp,Sp = 0,0

Fi,Si = [0],[N-1]



while B != visited:

    # Fennec

    nextXi = []

    for i in Fi:

        if not B[i]:

            B[i] = True

            Fp += 1

            nextXi.extend(A[i])

    Fi = nextXi

    # Snuke

    nextXi = []

    for i in Si:

        if not B[i]:

            B[i] = True

            Sp += 1

            nextXi.extend(A[i])

    Si = nextXi



print(("Fennec" if Fp>Sp else "Snuke"))
N = int(eval(input()))
G = [[] for _ in range(N)]
visited = [0] * N
visited[0], visited[N - 1] = 1, 1
visited_all = [1] * N
for i in range(N - 1):
    a, b = list(map(int, input().split()))
    G[a - 1].append(b - 1)
    G[b - 1].append(a - 1)
nextA, nextB = G[0], G[N - 1]
scoreA, scoreB = 1, 1
while visited != visited_all:
    l = []
    for a in nextA:
        if visited[a] == 0:
            visited[a] = 1
            scoreA += 1
            for x in G[a]:
                l.append(x)
    nextA = l
    l = []
    for b in nextB:
        if visited[b] == 0:
            visited[b] = 1
            scoreB += 1
            for x in G[b]:
                l.append(x)
    nextB = l
print(("Fennec" if scoreA > scoreB else "Snuke"))

N = int(eval(input()))
A = [[] for _ in range(N)]
for i in range(N - 1):
    a, b = list(map(int, input().split()))
    A[a - 1].append(b - 1)
    A[b - 1].append(a - 1)
B = [False] * N
visited = [True] * N
Fp, Sp = 0, 0
Fi, Si = [0], [N - 1]
while B != visited:
    # Fennec
    nextXi = []
    for i in Fi:
        if not B[i]:
            B[i] = True
            Fp += 1
            nextXi.extend(A[i])
    Fi = nextXi
    # Snuke
    nextXi = []
    for i in Si:
        if not B[i]:
            B[i] = True
            Sp += 1
            nextXi.extend(A[i])
    Si = nextXi
print(("Fennec" if Fp > Sp else "Snuke"))

-G = [[] for _ in range(N)] -visited = [0] * N -visited[0], visited[N - 1] = 1, 1 -visited_all = [1] * N +A = [[] for _ in range(N)] -    G[a - 1].append(b - 1) -    G[b - 1].append(a - 1) -nextA, nextB = G[0], G[N - 1] -scoreA, scoreB = 1, 1 -while visited != visited_all: -    l = [] -    for a in nextA: -        if visited[a] == 0: -            visited[a] = 1 -            scoreA += 1 -            for x in G[a]: -                l.append(x) -    nextA = l -    l = [] -    for b in nextB: -        if visited[b] == 0: -            visited[b] = 1 -            scoreB += 1 -            for x in G[b]: -                l.append(x) -    nextB = l -print(("Fennec" if scoreA > scoreB else "Snuke")) +    A[a - 1].append(b - 1) +    A[b - 1].append(a - 1) +B = [False] * N +visited = [True] * N +Fp, Sp = 0, 0 +Fi, Si = [0], [N - 1] +while B != visited: +    # Fennec +    nextXi = [] +    for i in Fi: +        if not B[i]: +            B[i] = True +            Fp += 1 +            nextXi.extend(A[i]) +    Fi = nextXi +    # Snuke +    nextXi = [] +    for i in Si: +        if not B[i]: +            B[i] = True +            Sp += 1 +            nextXi.extend(A[i]) +    Si = nextXi +print(("Fennec" if Fp > Sp else "Snuke"))