https://codeforces.com/contest/1521/submission/115620720