시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 1024 MB199351141526.913%

문제

(잠이 안 오는 춘배의 모습)

춘배는 오늘도 열심히 활동을 마친 후 자려 하지만 도저히 잠이 안 온다. 춘배는 잠을 자기 위해 자신만의 방법으로 양을 세려는데 한 마리씩 세지 않고 여러 마리를 한꺼번에 세면서 자려 한다.

춘배는 일단 양의 정수 $A$를 정한다. 그 후 양을 셀 때 첫 번째에 센 양의 수는 항상 $1$로 두고, 그 뒤 두 번째에 센 양의 수는 $A$, 세 번째에 센 양의 수는 $A^{2}$ 이렇게 점점 양의 수를 세어 간다. 즉, $n$번째에 센 양의 수는 $A^{n-1}$ 가 된다.

춘배는 이러한 방식으로 양을 세다 문득 자신이 첫 번째부터 $B$번째까지 센 모든 양의 수가 얼마나 될지 궁금해졌다. 춘배를 위해 첫 번째부터 마지막 $B$번째까지 센 모든 양의 수가 몇 마리인지 구해보자! 하지만 수가 너무 커질 수 있기에 $1\,000\,000\,007(= 10^{9} + 7)$로 나눈 나머지를 구하자.

입력

첫 번째 줄에 양의 정수 $A$, $B$ 가 공백으로 구분되어 주어진다. $(1 \le A \le 1\,000$, $ 1 \le B \le 10^{12})$

출력

첫 번째부터 $B$번째까지 센 모든 양의 수를 $1\,000\,000\,007$로 나눈 나머지를 출력한다.

예제 입력 1

3 4

예제 출력 1

40
  • 첫 번째에 센 양의 수: $1$마리
  • 두 번째에 센 양의 수: $3$마리
  • 세 번째에 센 양의 수: $9$마리
  • 네 번째에 센 양의 수: $27$마리

총 마릿수: $1+3+9+27 = 40$마리

힌트

춘배는 똑똑해서 $1\,000\,000\,007$이 소수란 걸 알고있다.