# 4. License class Driver(models.Model): first_name = models.CharField(max_length=50) last_name = models.CharField(max_length=50) class DrivingLicense(models.Model): license_number = models.CharField(max_length=10, unique=True) issue_date = models.DateField() driver = models.OneToOne("Driver", on_delete=models.CASCADE) def __str__(self): expiration_date = self.issue_date + timedelta(days=365) return f"License with id: {self.id} expires on {expiration_date}! def calculate_licenses_expiration_dates(): licenses = DrivingLicense.objects.order_by('-license_number') return "\n".join(str(l) for l in licenses) def get_drivers_with_expired_licenses(due_date): expiration_cutoff_date = due_date - timedelta(days=365) expired_drivers = Driver.objects.filter(DrivingLicense__issue_date__gt=expiration_cutoff_date) return expired_drivers