from collections import defaultdict

N = int(eval(input()))

dic = defaultdict(list)



for i in range(N-1):

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

  dic[a-1] += [b-1]

  dic[b-1] += [a-1]



dist1 = [float('inf')]*N

dist2 = [float('inf')]*N



q1 = [0]

q2 = [N-1]



dist1[0] = 0

dist2[N-1] = 0



while q1:

  e = q1.pop()

  for p in dic[e]:

    if dist1[p]>dist1[e]+1:

      dist1[p] = dist1[e]+1

      q1 += [p]



while q2:

  e = q2.pop()

  for p in dic[e]:

    if dist2[p]>dist2[e]+1:

      dist2[p] = dist2[e]+1

      q2 += [p]



fennec = 0

snuke = 0

for i in range(N):

  if dist1[i]<=dist2[i]:

    fennec += 1

  else:

    snuke += 1

if fennec>snuke:

  print('Fennec')

else:

  print('Snuke')
from collections import deque

N, *L = list(map(int, open(0).read().split()))

dic = [[] for i in range(N+1)]

for a,b in zip(*[iter(L)]*2):

  dic[a] += [b]

  dic[b] += [a]

fdist = [-1]*(N+1)

sdist = [-1]*(N+1)

fdist[1] = 0

sdist[N] = 0

q = deque([1])

while q:

  v = q.popleft()

  for u in dic[v]:

    if fdist[u] == -1:

      fdist[u] = fdist[v] + 1

      q.append(u)

q = deque([N])

while q:

  v = q.popleft()

  for u in dic[v]:

    if sdist[u]==-1:

      sdist[u] = sdist[v] + 1

      q.append(u)

ans = sum(a<=b for a,b in zip(fdist,sdist))-1

if 2*ans>N:

  print('Fennec')

else:

  print('Snuke')
from collections import defaultdict

N = int(eval(input()))
dic = defaultdict(list)
for i in range(N - 1):
    a, b = list(map(int, input().split()))
    dic[a - 1] += [b - 1]
    dic[b - 1] += [a - 1]
dist1 = [float("inf")] * N
dist2 = [float("inf")] * N
q1 = [0]
q2 = [N - 1]
dist1[0] = 0
dist2[N - 1] = 0
while q1:
    e = q1.pop()
    for p in dic[e]:
        if dist1[p] > dist1[e] + 1:
            dist1[p] = dist1[e] + 1
            q1 += [p]
while q2:
    e = q2.pop()
    for p in dic[e]:
        if dist2[p] > dist2[e] + 1:
            dist2[p] = dist2[e] + 1
            q2 += [p]
fennec = 0
snuke = 0
for i in range(N):
    if dist1[i] <= dist2[i]:
        fennec += 1
    else:
        snuke += 1
if fennec > snuke:
    print("Fennec")
else:
    print("Snuke")

from collections import deque

N, *L = list(map(int, open(0).read().split()))
dic = [[] for i in range(N + 1)]
for a, b in zip(*[iter(L)] * 2):
    dic[a] += [b]
    dic[b] += [a]
fdist = [-1] * (N + 1)
sdist = [-1] * (N + 1)
fdist[1] = 0
sdist[N] = 0
q = deque([1])
while q:
    v = q.popleft()
    for u in dic[v]:
        if fdist[u] == -1:
            fdist[u] = fdist[v] + 1
            q.append(u)
q = deque([N])
while q:
    v = q.popleft()
    for u in dic[v]:
        if sdist[u] == -1:
            sdist[u] = sdist[v] + 1
            q.append(u)
ans = sum(a <= b for a, b in zip(fdist, sdist)) - 1
if 2 * ans > N:
    print("Fennec")
else:
    print("Snuke")

-from collections import defaultdict +from collections import deque -N = int(eval(input())) -dic = defaultdict(list) -for i in range(N - 1): -    a, b = list(map(int, input().split())) -    dic[a - 1] += [b - 1] -    dic[b - 1] += [a - 1] -dist1 = [float("inf")] * N -dist2 = [float("inf")] * N -q1 = [0] -q2 = [N - 1] -dist1[0] = 0 -dist2[N - 1] = 0 -while q1: -    e = q1.pop() -    for p in dic[e]: -        if dist1[p] > dist1[e] + 1: -            dist1[p] = dist1[e] + 1 -            q1 += [p] -while q2: -    e = q2.pop() -    for p in dic[e]: -        if dist2[p] > dist2[e] + 1: -            dist2[p] = dist2[e] + 1 -            q2 += [p] -fennec = 0 -snuke = 0 -for i in range(N): -    if dist1[i] <= dist2[i]: -        fennec += 1 -    else: -        snuke += 1 -if fennec > snuke: +N, *L = list(map(int, open(0).read().split())) +dic = [[] for i in range(N + 1)] +for a, b in zip(*[iter(L)] * 2): +    dic[a] += [b] +    dic[b] += [a] +fdist = [-1] * (N + 1) +sdist = [-1] * (N + 1) +fdist[1] = 0 +sdist[N] = 0 +q = deque([1]) +while q: +    v = q.popleft() +    for u in dic[v]: +        if fdist[u] == -1: +            fdist[u] = fdist[v] + 1 +            q.append(u) +q = deque([N]) +while q: +    v = q.popleft() +    for u in dic[v]: +        if sdist[u] == -1: +            sdist[u] = sdist[v] + 1 +            q.append(u) +ans = sum(a <= b for a, b in zip(fdist, sdist)) - 1 +if 2 * ans > N: