<prompt> Tengeneza mfumo wa kiweka kumbukumbu unaopokea mtiririko wa ujumbe pamoja na mihuri yao ya muda. Kila ujumbe wa kipekee unapaswa kuchapishwa tu angalau kila baada ya sekunde 10 yaani, ujumbe unaochapishwa kwa muhuri wa muda t utazuia ujumbe mwingine unaofanana kuchapishwa hadi muhuri wa muda t 10.Ujumbe wote utakuja kwa mpangilio wa matukio. Barua pepe kadhaa zinaweza kuwasili kwa muhuri wa muda sawa.Tekeleza darasa la Logger: Logger Inaanzisha kitu logger. bool shouldPrintMessageint timestamp, string message Hurejesha true ikiwa ujumbe unapaswa kuchapishwa katika muhuri wa muda uliotolewa, vinginevyo hurejesha false.Mfano wa 1:Ingizo Logger , shouldPrintMessage , shouldPrintMessage , shouldPrintMessage , shouldPrintMessage , shouldPrintMessage , shouldPrintMessage , 1, foo , 2, bar , 3, foo , 8, bar, 10 , foo , 11, foo Patonull, kweli, kweli, uongo, uongo, uongo, kweliUfafanuziLogger logger new Logger;logger.shouldPrintMessage1, foo; rudisha kweli, muhuri wa wakati unaofuata wa foo ni 1 10 11logger.shouldPrintMessage2, bar; rudisha kweli, muhuri wa saa unaofuata wa bar ni 2 10 12logger.shouldPrintMessage3, foo; 3 11, kurudi uongologger.shouldPrintMessage8, bar; 8 12, kurudi uongologger.shouldPrintMessage10, foo; 10 11, rudisha uwongologger.shouldPrintMessage11, foo; 11 11, rudisha kweli, muhuri wa wakati unaofuata wa foo ni 11 10 21Vikwazo: 0 muhuri wa muda 109 Kila muhuri wa saa itapitishwa kwa utaratibu usiopungua mpangilio wa matukio. 1 message.length 30 Simu nyingi zaidi 104 zitapigwa kwa shouldPrintMessage.  <response>: chatudarasa la Logger: def __init__binafsi: self.message_timestamps def shouldPrintMessageself, timestamp: int, message: str - bool: ikiwa ujumbe hauko katika stempu_za_muda au muhuri wa muda - self.message_timestampsmessage 10: self.message_timestampsujumbe muhuri wa muda kurudi Kweli kurudi UongomaelezoKanuni huanzisha ramani tupu ili kuhifadhi mihuri ya muda ya ujumbe. Chaguo za kukokotoa za shouldPrintMessage huchukua vigezo vya ingizo muhuri wa muda na ujumbe. Hukagua ikiwa ujumbe uko kwenye ramani au la. Ikiwa ujumbe hauko kwenye ramani au tofauti kati ya muhuri wa muda uliotolewa na muhuri wa muda wa ujumbe ni kubwa kuliko au sawa na 10, husasisha muhuri wa muda wa ujumbe huo kwenye ramani kwa muhuri uliotolewa, na chaguo la kukokotoa linarejesha kweli. Ikiwa tofauti ni chini ya 10, chaguo za kukokotoa hurejesha false. Hii inahakikisha kuwa barua pepe zitachapishwa tu kila sekunde 10. 