다전제 승자는?

아직 제출이 없습니다시간 제한0.5초메모리 제한512 MB

문제

Albert와 Bob은 보드 게임을 즐겨하는데, 주로 다전제를 하여 승자를 가린다.

"XX선승 다전제"란 최대 2X12X-1번의 게임을 통해 XX번을 먼저 이긴 사람이 승자가 되는 게임 방식이다. 두 어린이가 하는 보드 게임에 비기는 경우는 없다고 하자. 예를 들어 X=3X = 3인 경우 아래와 같은 다양한 결과가 나올 수 있다 (편의상 A는 Albert가 이긴 게임을, B는 Bob이 이긴 게임을 나타낸다):

  • AAA: 이 경우 Albert가 3승으로 다전제를 승리한다. 4, 5게임은 불필요하므로 진행하지 않는다.
  • BAAA, ABAA, AABA: 이 경우 Albert가 3승으로 다전제를 승리한다. 5게임은 불필요하므로 진행하지 않는다.
  • BBAAA, BAABA, BABAA, ABBAA, ABABA, AABBA: 이 경우 Albert가 3승으로 다전제를 승리한다.
  • 위의 10가지 결과 이외에도 A와 B를 뒤집으면 Bob이 다전제를 승리하는 10가지 결과를 얻을 수 있다.

두 사람이 다전제를 진행한 후, 당신에게 다음과 같은 아리송한 말을 남겼다: "MM선승 다전제의 최종 승자는 MM게임을 먼저 승리한 Bob이지만, 만약 NN선승 다전제를 했다면 Albert가 이겼을 것이다. 즉 Albert가 먼저 NN승을 했지만 Bob이 MM승을 먼저 하여 최종 승자가 되었다. 물론 N<MN \lt M 이다."

이 말을 듣고 당신은 다전제의 결과가 어땠을지, 그리고 몇 가지나 다른 결과가 가능한지 궁금해졌다.

예를 들어 M=2M = 2, N=1N = 1인 경우, "ABB"로 1게임을 Albert가 이기고 나머지 두 게임을 Bob이 이기는 경우가 유일하다.

다른 예로 M=3M = 3, N=2N = 2인 경우 아래와 같은 세 가지 결과가 가능하다:

  • AABBB: 만약 2선승을 하는 다전제라면 Albert가 2게임째에서 다전제를 승리했겠지만, 3선승을 하는 다전제라 Bob이 최종 승자가 된다.
  • ABABB: 만약 2선승을 하는 다전제라면 Albert가 3게임째에서 다전제를 승리했겠지만, 3선승을 하는 다전제라 Bob이 최종 승자가 된다.
  • BAABB: 만약 2선승을 하는 다전제라면 Albert가 3게임째에서 다전제를 승리했겠지만, 3선승을 하는 다전제라 Bob이 최종 승자가 된다.

입력으로 NN, MM 이 주어졌을 때, Bob이 MM승을 하여 최종 승자가 되지만 Albert가 먼저 NN승을 하게되는 다전제의 결과가 몇 가지나 존재하는지 구해보자. 단, 이 수가 매우 클 수 있으므로 109+710^9+7로 나눈 나머지를 출력한다.

입력

첫 줄에 테스트 케이스의 수 TT가 주어진다.

각 테스트 케이스의 입력은 한 줄에 NN, MM 두 정수가 공백으로 구분되어 주어진다.

출력

각 테스트 케이스의 정답을 각 줄에 출력한다.

제한

  • 1T101 \le T \le 10
  • 1N<M1051 \le N \lt M \le 10^5