#include <bits/stdc++.h>
using namespace std;
 
using ll = long long;
using ull = unsigned long long;
using db = double;
using ldb = long double;
using str = string;

using vi = vector<int>;
using vll = vector<ll>;
using vull = vector<ull>;
using vb = vector<bool>;
using vd = vector<double>;
using pi = pair<int,int>;
using vvi = vector<vi>;
using vpi = vector<pi>;
using vvpi = vector<vpi>;
template <class T> using V = vector<T>; 
 
const int MOD = 1e9 + 7;
const int INF = 2e9;
const ll LINF = 1e18;
const ldb PI = 4*atan((ldb)1);
const int dx[4] = {1,0,-1,0}, dy[4] = {0,1,0,-1};
mt19937 rng((uint32_t)chrono::steady_clock::now().time_since_epoch().count());
 
#define rep(i,a,b) for (int i=(a); i<(b); ++i)
#define repd(i,a,b) for (int i=((int)(a)); i>=(b); --i)
#define trav(a,x)  for (auto& a : x)
#define bg(x) begin(x)
#define all(u) bg(u), end(u)
#define sz(x) (int)x.size()
#define rall(x) x.rbegin(), x.rend() 
#define sor(x) sort(all(x)) 
#define rsz resize
#define ins insert
#define ft front()
#define bk back()
#define pb push_back
#define pf push_front
#define lb lower_bound
#define ub upper_bound 
 
#define pb push_back
#define X first
#define Y second
 
#define FAST_IO ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
#define PREC(n) cout<<fixed<<setprecision(n);


template <class T, class U> void re(pair<T,U>& p);
template <class T> void re(V<T>& v);
 
template <class T> void re(T& x) { cin >> x; }
template <class T, class ...U> void re(T& t, U&... u) { re(t); re(u...); }
template <class T, class U> void re(pair<T,U>& p) { re(p.X, p.Y); }
template <class T> void re(V<T>& x) { trav(a, x) re(a); }
 
#define ts to_string
str ts(char c) { return str(1,c); }
str ts(const char* s) { return (str)s; }
str ts(str s) { return s; }
str ts(bool b) {  return ts((int)b);}
str ts(V<bool> v) {
	str res; rep(i,0,sz(v)) res += char('0'+v[i]);
	return res;
}
template <class T, class U> str ts(pair<T,U> p);
template <class T> str ts(T v) {
		bool fst = 1; str res = "";
		for (const auto& x: v) {
			if (!fst) res += " ";
			fst = 0; res += ts(x);
		}
		return res;
}
template <class T, class U> str ts(pair<T,U> p) {
	return ts(p.X) + " " + ts(p.Y);
}
 
template <class T> void pr(T x) { cout << ts(x); }
template <class T, class ...U> void pr(const T& t, const U&... u) { 
	pr(t); pr(u...); }
void ps() { pr("\n"); }
template <class T, class ...U> void ps(const T& t, const U&... u) { 
	pr(t); if (sizeof...(u)) pr(" "); ps(u...); }

void DBG() { cerr << "]" << endl; }
template <class T, class ...U>  void DBG(const T& t, const U&... u) {
	cerr << ts(t); if (sizeof...(u)) cerr << ", ";
	DBG(u...); }

#ifdef LOCAL
	#define dbg(...) cerr << "Line(" << __LINE__ << ") -> [" << #__VA_ARGS__ << "]: [", DBG(__VA_ARGS__)
	#define chk(...) if (!(__VA_ARGS__)) cerr << "Line(" << __LINE__ << ") -> function(" \
		 << __FUNCTION__  << ") -> CHK FAILED: (" << #__VA_ARGS__ << ")" << "\n", exit(0);
#else
	#define dbg(...) 0
	#define chk(...) 0
#endif


 
int main(int argc, char* argv[]) {
    FAST_IO
    int k;
    re(k);
    ps(2 - k * k);
    return 0;
}




