SuperNim Junior#2878

SuperNim Junior

1 секунда
8 мегабайтів
Середня

Нім — це гра для двох гравців, які по черзі забирають предмети, розподілені на декілька куп. На кожному ході гравець вибирає непорожню купу і забирає з неї будь-яку ненульову кількість предметів. Гравець, який не може зробити хід під час свого ходу (тобто, коли його суперник зробив останній хід і забрав останній предмет), програє.

Ця гра була повністю математично проаналізована. Програшні позиції — це такі позиції, з яких незалежно від ходу гравця суперник завжди може відповісти так, що врешті-решт виграє (тобто, у суперника є виграшна стратегія). Виграшні позиції — це ті, з яких незалежно від гри суперника гравець, який ходить, завжди може відповідати так, щоб у підсумку перемогти (тобто, у цього гравця є виграшна стратегія).

Відомо, що виграшність позиції визначається ним-сумою:

p_1 \mathbin{\text{xor}} p_2 \mathbin{\text{xor}} \ldots \mathbin{\text{xor}} p_N

де p_i — кількість предметів у -й купі, а позначає бітову операцію виключного АБО (тобто додавання в бінарній системі без перенесень). Якщо ним-сума ненульова, позиція виграшна; якщо рівна нулю — програшна.

У цій задачі вам задано дуже велику кількість куп. Ваше завдання: знаючи розміри куп, визначити кількість способів для першого гравця зробити перший хід із початкової позиції так, щоб у нього залишилася виграшна стратегія (тобто, після цього ходу перший гравець залишиться у виграшній позиції).

Вхідні дані

Перший рядок містить одне ціле число — кількість груп куп. Кожен з наступних рядків описує групу двома цілими числами і . Група складається з b-a+1 куп, розмір яких від до включно.

1 \leq M \leq 100000, 0 \leq a \leq b \leq 10^{12}.

Вихідні дані

Виведіть одне ціле число — кількість можливих перших ходів, які дозволяють виграшну стратегію для першого гравця.

Приклади

Приклад 1

Loading
Loading