스킬 트리

무한 삼각 격자에서 각 삼각형 영역에 속한 모든 칸의 비용 합을 10^9+7로 나눈 나머지를 구한다.

보통7조합론수학누적 합정수론아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

혁중이가 하는 게임에 6차 전직이 추가되었다. 6차 전직의 스킬 트리는 아래로 무한히 이어지는 정삼각형 격자 모양이다.

격자의 xx번째 행에는 칸이 xx개 있고, 그중 왼쪽에서 yy번째 칸을 (x,y)(x, y)로 적는다. 칸 (x,y)(x, y)의 왼쪽 아래 칸은 (x+1,y)(x+1, y), 오른쪽 아래 칸은 (x+1,y+1)(x+1, y+1)이다.

맨 위 꼭짓점인 (1,1)(1, 1)의 스킬을 배우는 데 11원이 든다. 어떤 칸의 스킬을 배우는 비용이 kk원이면 그 칸의 왼쪽 아래 칸은 AkAk원, 오른쪽 아래 칸은 BkBk원이 든다.

스킬 트리에는 특별한 삼각형NN개 정해져 있다. 세 수 xix_i, yiy_i, mim_i로 나타내는 특별한 삼각형은 칸 (xi,yi)(x_i, y_i)를 위쪽 꼭짓점으로 삼고 mim_i개의 행을 덮는 정삼각형이다. 즉 0jmi10 \le j \le m_i - 1인 각 jj에 대해 (xi+j,yi)(x_i + j, y_i)부터 (xi+j,yi+j)(x_i + j, y_i + j)까지의 칸 j+1j + 1개가 이 삼각형에 속한다. 특별한 삼각형 안의 스킬을 모두 배울 때마다 총 데미지가 2배로 늘어난다.

혁중이를 도와, 각 특별한 삼각형 안의 스킬을 모두 배우는 비용을 구하자.

입력

첫째 줄에 AABB가 공백을 사이에 두고 주어진다. (1A,B1091 \le A, B \le 10^9)

둘째 줄에 특별한 삼각형의 개수 NN이 주어진다. (1N1000001 \le N \le 100\,000)

다음 NN개의 줄에 각 특별한 삼각형을 나타내는 세 정수 xix_i, yiy_i, mim_i가 공백을 사이에 두고 주어진다. (1yixi10181 \le y_i \le x_i \le 10^{18}, 1mi10181 \le m_i \le 10^{18})

출력

NN개의 줄에 걸쳐, 각 특별한 삼각형 안의 스킬을 모두 배우는 비용을 109+710^9 + 7로 나눈 나머지를 입력에 주어진 순서대로 출력한다.