One test case not running

#include <bits/stdc++.h>
using namespace std;
void evaluate(long long int n)
{

if (n == 1 || n == 2) 
    cout<<"-1";

else if (n &1 ==0) { 

    long long int var = 1LL * n * n / 4; 
    cout<< var - 1<<" "<<var + 1; 
} 

else if (n&1) { 

    long long int var = 1LL * n * n + 1; 
    cout<< var / 2 - 1<<" "<<var / 2; 
} 

else
cout<<" -1";
}

int main()
{
long long int n;
cin>>n;
evaluate(n);
return 0;
}