<prompt> Unapewa orodha iliyoorodheshwa ya nambari kamili nestedList. Kila kipengele ama ni nambari kamili au orodha ambayo vipengele vyake vinaweza pia kuwa nambari kamili au orodha nyingine. Tekeleza kirudishio ili kulisawazisha.Tekeleza darasa la NestedIterator: NestedIteratorOrodha nestedList Huanzisha kirudia kwa orodha iliyoorodheshwa nestedList. int next Hurejesha nambari kamili inayofuata katika orodha iliyoorodheshwa. boolean hasNext Hurejesha true ikiwa bado kuna idadi kamili katika orodha iliyoorodheshwa na false vinginevyo.Nambari yako itajaribiwa kwa pseudocode ifuatayo:anzisha kiboreshaji kwa kutumia nestedListres huku iterator.hasNext ongeza iterator.next hadi mwisho wa reskurudi resIkiwa res inalingana na orodha bapa inayotarajiwa, basi msimbo wako utahukumiwa kuwa sahihi.Mfano wa 1:Ingizo: nestedList 1,1,2,1,1Pato: 1,1,2,1,1Maelezo: Kwa kupiga simu tena mara kwa mara hadi hasNext irudishe sivyo, mpangilio wa vipengele vinavyorejeshwa na kinachofuata unapaswa kuwa: 1,1,2,1,1.Mfano wa 2:Ingizo: nestedList 1,4,6Pato: 1,4,6Maelezo: Kwa kupiga simu inayofuata mara kwa mara hadi hasNext irudishe sivyo, mpangilio wa vipengele vinavyorejeshwa na kinachofuata unapaswa kuwa: 1,4,6.Vikwazo: 1 nestedList.length 500 Thamani za nambari kamili katika orodha iliyoorodheshwa ziko katika safu -106, 106.  <response>: chatudarasa la NestedIterator: def __init__binafsi, nestedList: def flattenorodha iliyoorodheshwa, Orodha ya gorofa: kwa bidhaa katika nestedList: ikiwa mfanokitu, int: Orodha ya gorofa.ambatishakipengee kwingine: flattenkitu, flatList self.flatList flattennestedList, self.flatList binafsi. index 0 def nextbinafsi: matokeo self.flatListself.index self.index 1 matokeo ya kurudi def hasNextself: return self.index lenself.flatListmaelezo1. Unda darasa la NestedIterator.2. Katika darasa, unda chaguo la kukokotoa bapa ambalo linakubali orodha iliyoorodheshwa na orodha tambarare kama hoja.3. Kwa kila kipengele kwenye orodha iliyoorodheshwa, a. Ikiwa kipengele ni nambari kamili, kiongeze kwenye orodha tambarare. b. Vinginevyo, piga kazi ya gorofa kwa kurudia kwenye kipengele na orodha ya gorofa.4. Katika mjenzi wa darasa la NestedIterator, a. Anzisha orodha tupu bapa na kigezo cha faharasa. b. Piga simu kitendakazi bapa ukitumia orodha iliyopewa kiota na orodha bapa iliyoanzishwa.5. Njia inayofuata inarudisha thamani ya orodha bapa kwenye faharasa ya sasa na huongeza faharasa.6. Mbinu ya hasNext inarudi kuwa kweli ikiwa faharasa ni chini ya urefu wa orodha bapa, ikionyesha vipengele zaidi vipo kwenye kiboreshaji. 