<prompt> Umepewa safu ya mahali nambari kamili chanya ambapo maeneoi yanawakilisha nafasi ya jiji i. Pia unapewa nambari kamili kuanza, maliza na mafuta zinazowakilisha jiji la kuanzia, kumalizia jiji, na kiasi cha awali cha mafuta ulichonacho, mtawalia.Katika kila hatua, ikiwa uko katika jiji i, unaweza kuchagua jiji lolote j kiasi kwamba j ! i na 0 j locations.length na kuhamia jiji j. Kuhama kutoka mji i hadi mji j hupunguza kiwango cha mafuta ulicho nacho kwa maeneoi - maeneoj. Tafadhali kumbuka kuwa x inaashiria thamani kamili ya x.Ona kwamba mafuta hayawezi kuwa hasi wakati wowote, na kwamba unaruhusiwa kutembelea jiji lolote zaidi ya mara moja ikiwa ni pamoja na kuanza na kumaliza.Rejesha _hesabu ya njia zote zinazowezekana kutoka_ kuanza _hadi_ kumaliza. Kwa kuwa jibu linaweza kuwa kubwa sana, lirudishe modulo 109 7.Mfano wa 1:Ingizo: maeneo 2,3,6,8,4, anza 1, maliza 3, mafuta 5Pato: 4Maelezo: Zifuatazo ni njia zote zinazowezekana, kila moja inatumia vitengo 5 vya mafuta:1 - 31 - 2 - 31 - 4 - 31 - 4 - 2 - 3Mfano wa 2:Ingizo: maeneo 4,3,1, anza 1, maliza 0, mafuta 6Pato: 5Maelezo: Zifuatazo ni njia zote zinazowezekana:1 - 0, mafuta yaliyotumika 11 - 2 - 0, mafuta yaliyotumika 51 - 2 - 1 - 0, mafuta yaliyotumika 51 - 0 - 1 - 0, mafuta yaliyotumika 31 - 0 - 1 - 0 - 1 - 0, mafuta yaliyotumika 5Mfano wa 3:Ingizo: maeneo 5,2,1, anza 0, maliza 2, mafuta 3Pato: 0Maelezo: Haiwezekani kupata kutoka 0 hadi 2 kwa kutumia uniti 3 pekee za mafuta kwa kuwa njia fupi zaidi inahitaji uniti 4 za mafuta.Vikwazo: 2 locations.length 100 1 maeneoi 109 Nambari kamili katika maeneo ni tofauti. 0 anza, maliza locations.length 1 mafuta 200  <response>: def maxAreah, w, horizontalCuts, verticalCuts: horizontalCuts.panga verticalCuts.sort maxH maxhorizontalCuts0, h - horizontalCuts-1 maxV maxverticalCuts0, w - verticalCuts-1 kwa i in range1, lenhorizontalCuts: maxH maxmaxH, horizontalCutsi - horizontalCutsi - 1 kwa i katika masafa1, lenwimaCuts: maxV maxmaxV, verticalCutsi - verticalCutsi - 1 kurudi maxH maxV 109 7 