<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def getJournalDeals(self, start=None):
 """Return all journal events from start."""

        # 1 - utworzenie aktu zakupowego (deala), 2 - utworzenie formularza pozakupowego (karta platnosci), 3 - anulowanie formularza pozakupowego (karta platnosci), 4 - zakończenie (opłacenie) transakcji przez PzA
        if start is not None:
            self.last_event_id = start
        events = []
        while self.getJournalDealsInfo(self.last_event_id) > 0:
            rc = self.__ask__('doGetSiteJournalDeals', journalStart=self.last_event_id)
            for i in rc:
                events.append({
                    'allegro_did': i['dealId'],
                    'deal_status': i['dealEventType'],
                    'transaction_id': i['dealTransactionId'],
                    'time': i['dealEventTime'],
                    'event_id': i['dealEventId'],
                    'allegro_aid': i['dealItemId'],
                    'allegro_uid': i['dealBuyerId'],
                    # 'seller_id': i['dealSellerId '],
                    'quantity': i['dealQuantity']
                })
            self.last_event_id = rc[-1]['dealEventId']
        return events