From Tunisian Olympiad in Programming
f926c9b90dca076ea105945bab134d4f67eb11d13199327f649e1c799a5c930