• محدودیت زمان: ۴ ثانیه
  • محدودیت حافظه: ۲۵۶ مگابایت

مغازه هفت‌دال فروشی(!) به علیش یه درخت(گرافی همبند و بدون دور) \(n\) راسی انداخت. روی راس \(i\)ام درخت میوه‌ای به وزن \(w_i\) هست. اون قراره یه زیر درخت(زیر مجموعه‌ای از رئوس درخت که همبندن) از این درخت رو انتخاب کنه و بده به پاشا. پاشا هم زیر درختی رو دوست داره که OR منطقی وزن میوه‌هاش مساوی \(k\) باشه. حالا علیش که پاشا رو از ته‌ دل دوست داره می‌خواد بدونه به چند حالت می‌تونه زیردرختی رو انتخاب کنه که پاشا دوست داشته باشه. بهش کمک کنید و باقی مانده این عدد رو بر \(10^9+7\) چاپ کنید.

ورودی

در خط اول ورودی \(n\) و \(k\) آمده‌است. در خط بعدی \(n\) عدد آمده که با فاصله از هم جدا شده اند و عدد \(i\)ام \(w_i\) است. در \(n-1\) خط بعدی دو عدد \(v\) و \(u\) آمده که نشان‌دهنده این است که راس \(v\) به راس \(u\) وصل است.

\[1 \le n \le 100\ 000\] \[0 \le w_i , k \le 500\]

  • تضمین می‌شود گراف داده شده درخت باشد.

خروجی

در خروجی تنها باقی مانده تعداد زیر درخت های دوست داشتنی پاشا بر \(10^9+7\) چاپ شود.

مثال

ورودی نمونه ۱

4 3
1 2 2 1
1 2
1 3
1 4

خروجی نمونه ۱

6

ورودی نمونه ۲

5 10
10 2 8 10 4
1 2
2 3
1 4
4 5

خروجی نمونه ۲

8
ارسال پاسخ برای این سؤال
فایلی انتخاب نشده است.