맛있는 케이크
시간 제한1초메모리 제한1024 MB
N×M 격자에서 칠하지 않은 칸을 1×2 도미노로 빈틈없이 덮을 수 있는 칠하기 경우의 수를 10^9+7로 나눈 나머지로 구합니다.
문제
여름 방학 매일 미샤는 수첩에 N × M 칸짜리 반듯한 직사각형 격자를 그리고 칸 일부를 색칠했다. 날마다 나온 그림은 다른 모든 그림과 달라서, 미샤가 그린 그림은 모두 개이다(아래 그림에서 색칠된 칸은 회색으로 표시했다).

매일 친구 볼로쟈는 미샤의 그림 한 장을 골라 색칠되지 않은 칸을 1 × 2 직사각형으로 덮으려고 한다. 색칠되지 않은 칸은 모두 덮여야 하고, 직사각형은 색칠된 칸을 덮을 수 없으며, 격자 밖으로 나갈 수 없고, 서로 겹칠 수 없다.

볼로쟈가 늘 성공하지는 못했다(N = 2, M = 2인 경우에 성공한 사례는 위 그림과 같다). 그래도 성공한 며칠에는 미샤의 어머니가 아이들이 기특하다며 케이크를 구워 주셨다. 어머니가 구운 케이크는 모두 몇 개인가?
입력
첫 줄에 격자의 크기를 나타내는 정수 N과 M이 주어진다(, ).
출력
구하는 케이크 개수를 로 나눈 나머지를 출력한다.