SuperNim Junior
Nim oyunu iki oyunçu arasında oynanılır və burada oyunçular növbə ilə bir neçə yığın üzərindəki əşyaları götürürlər. Hər oyunçu öz növbəsində boş olmayan bir yığını seçərək, oradan istədiyi sayda əşya götürə bilər. Oyunçu hərəkət edə bilmədikdə (yəni son əşyanı rəqibi götürdükdə) məğlub olur.
Bu oyun tam riyazi olaraq təhlil edilmişdir. Məğlubiyyət mövqeləri, oyunçunun bu mövqedən hərəkət etməsi halında, rəqibin elə gedişlər edə biləcəyi mövqelərdir ki, bu, oyunçunun məğlubiyyətinə səbəb olacaq (yəni rəqibin qalibiyyət strategiyası var). Qalibiyyət mövqeləri isə elədir ki, rəqibin gələcək hərəkətləri nə olursa olsun, bu mövqedən hərəkət edən oyunçu elə gedişlər edə bilər ki, bu, onun qələbəsinə səbəb olacaq (yəni oyunçunun qalibiyyət strategiyası var). Məlumdur ki, mövqenin qalibiyyəti nim-cəmi ilə müəyyən edilir: p_1 xor p_2 xor ... xor p_N, burada p_i — i-ci yığındakı əşyaların sayıdır, xor — bitwise exclusive "or" əməliyyatıdır (rəqəmlərin ikili təqdimatlarının daşımalarsız toplanması). Əgər bu cəm sıfırdan fərqlidirsə, mövqe qalibiyyətlidir, əgər sıfıra bərabərdirsə — məğlubiyyətlidir.
Burada biz çox sayda yığınlarla məşğul olacağıq. Sizin vəzifəniz — yığınların ölçülərinə görə ilk oyunçunun başlanğıc mövqedən ilk gedişinin qalibiyyət variantlarının sayını müəyyən etməkdir (yəni elə gedişlər ki, qalibiyyət strategiyası hələ də ilk oyunçuda qalacaq).
Giriş verilənləri
Giriş faylının ilk sətirində yığın qruplarının sayını müəyyən edən tam ədəd M verilir. Növbəti M sətirlərinin hər biri müvafiq qrupu iki tam ədəd a, b ilə təsvir edir. Qrupda a-dan b-yə qədər (hər ikisi daxil olmaqla) ölçüləri olan b-a+1 yığın olacaq.
1 ≤ M ≤ 100000, 0 ≤ a ≤ b ≤ 10^12.
Çıxış verilənləri
Tək bir tam ədəd çıxarın — qalibiyyət strategiyasına imkan verən ilk gediş variantlarının sayını.