using System;

namespace debug
{
    class Program
    {
        static void Main(string[] args)
        {
            ProgramA a = new ProgramA();
            a.main();

        }
    }

    //ABC115
    class ProgramA
    {
        public void main()
        {
            int D = int.Parse(Console.ReadLine());

            if (D == 25)
                Console.WriteLine("Christmas");
            else if (D == 24)
                Console.WriteLine("Christmas Eve");
            else if (D == 23)
                Console.WriteLine("Christmas Eve Eve");
            else
                Console.WriteLine("Christmas Eve Eve Eve");
        }
    }

    //ABC162
    class ProgramF
    {
        public void main()
        {
            int n = int.Parse(Console.ReadLine());
            string[] a = Console.ReadLine().Split(' ');
            long INF = -10000000000 + 7;//ありえないケース

            //DPで解いていく（
            long[,] dp = new long[n + 1, 2];//i番目までに何個選ぶかを決めて状態遷移、tのときはt = i/2, i/2 + 1
            dp[0, 0] = 0;
            dp[0, 1] = INF;
            dp[1, 0] = 0;
            dp[1, 1] = long.Parse(a[0]);
            dp[2, 0] = long.Parse(a[1]);
            dp[2, 1] = INF;
            //DP
            for (int i = 3; i <= n; i++)
            {
                //偶数の時
                if (i % 2 == 0)
                {
                    dp[i, 1] = dp[i - 2, 1];
                    dp[i, 0] = Math.Max(dp[i - 3, 1] + long.Parse(a[i - 1]), dp[i - 2, 0] + long.Parse(a[i - 1]));

                }
                else
                {
                    dp[i, 1] = dp[i - 2, 1] + long.Parse(a[i - 1]);
                    dp[i, 0] = Math.Max(dp[i - 2, 1], dp[i - 2, 0] + long.Parse(a[i - 1]));
                    dp[i, 0] = Math.Max(dp[i, 0], dp[i - 3, 0] + long.Parse(a[i - 1]));
                    if(i > 3)
                        dp[i, 0] = Math.Max(dp[i, 0], dp[i - 4, 1] + long.Parse(a[i - 1]));
                }

            }

            //答え出力
            if(n % 2 == 0)
                Console.WriteLine(Math.Max(dp[n -1, 1], dp[n, 0]));
            else
                Console.WriteLine(Math.Max(Math.Max(dp[n, 0], dp[n - 1, 0]), dp[n - 2,1]));
        }
    }

    //ABC161_F問題
    class ProgramF2
    { 
        public void main()
        {
            long n = long.Parse(Console.ReadLine());
            long count = 2;//nとn-1はすでにカウントしておく（答えなので）

            if(n == 2)
            {
                Console.WriteLine("1");
                return;
            }

            //n-1の約数はすべて満たす（よって、その数と逆数でカウント。平方数に注意）
            for(long i = 2; i <= Math.Sqrt(n - 1);i++)
            {
                if ((n - 1) % i == 0)
                {
                    if (i * i == n - 1)
                        count++;
                    else
                        count += 2;
                }

            }
            //nの約数にうち小さいほうのみを考える。iで割ってみて割り切れなくなった時にあまりが1かどうかで判定
            for (long i = 2; i <= Math.Sqrt(n); i++)
            {
                if (n % i == 0)
                {
                    long t = n;
                    while(t % i == 0)
                    {
                        t /= i;
                    }

                    if(t % i == 1)
                        count++;
                }

            }

            Console.WriteLine(count);
        }
    }

}


Measured memory_bytes: 11092