<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def save(self, *args, **kwargs):
 """ The save method should create a new OrganizationUser linking the User matching the provided email address. If not matching User is found it should kick off the registration process. It needs to create a User in order to link it to the Organization. """

        try:
            user = get_user_model().objects.get(
                email__iexact=self.cleaned_data["email"]
            )
        except get_user_model().MultipleObjectsReturned:
            raise forms.ValidationError(
                _("This email address has been used multiple times.")
            )
        except get_user_model().DoesNotExist:
            user = invitation_backend().invite_by_email(
                self.cleaned_data["email"],
                **{
                    "domain": get_current_site(self.request),
                    "organization": self.organization,
                    "sender": self.request.user,
                }
            )
        # Send a notification email to this user to inform them that they
        # have been added to a new organization.
        invitation_backend().send_notification(
            user,
            **{
                "domain": get_current_site(self.request),
                "organization": self.organization,
                "sender": self.request.user,
            }
        )
        return OrganizationUser.objects.create(
            user=user,
            organization=self.organization,
            is_admin=self.cleaned_data["is_admin"],
        )