분재는 작은 화분에서 작은 나무를 기르는 기술이다. 당신은 분재 전문가여서 해마다 분재 협회 가지치기 대회에서 우승한다. 얼마 전에는 작은 가게를 빌려 직접 기른 작품을 팔기 시작했고, 이제 손님을 끌 진열창을 꾸미려 한다. 진열창에 들어가는 가장 인상적인 나무를 기르고 싶지만 창의 높이는 정해져 있고, 진열대 바닥이 견디는 무게도 정해져 있다. 그래서 높이와 무게가 정확히 맞는 나무가 필요하다.
정의에 따라 분재는 가지 하나와, 그 가지에서 갈라져 나온 0개 이상의 더 작은 분재로 이루어진다.

그림 1: 서로 다른 분재 네 개.
분재의 무게는 그 안에 있는 가지의 개수다. 그림 1에 있는 분재의 무게는 차례로 1, 4, 6, 6이다. 분재의 높이는 뿌리에서 꼭대기까지 이어지는 가지 사슬 중 가장 긴 것의 길이다. 그림 1에 있는 분재의 높이는 차례로 1, 2, 3, 3이다.
한 가지에서 갈라져 나온 작은 분재는 왼쪽에서 오른쪽으로 순서가 있다. 모든 가지에서 갈라져 나온 작은 분재의 나열이 순서까지 같을 때만 두 분재를 같은 분재로 센다.
높이가 정확히 h이고 무게가 정확히 w인 분재가 몇 개인지 구하라. 답이 매우 클 수 있으므로 109+7로 나눈 나머지를 출력한다.