https://codeforces.com/contest/1380/submission/86696487