code: def add_email_address(self, email, hidden=None):
          
          existing_emails = get_value(self.obj, 'email_addresses', [])
          found_email = next(
              (existing_email for existing_email in existing_emails if existing_email.get('value') == email),
              None
          )
          if found_email is None:
              new_email = {'value': email}
              if hidden is not None:
                  new_email['hidden'] = hidden
              self._append_to('email_addresses', new_email)
          elif hidden is not None:
              found_email['hidden'] = hidden
docs: Add email address.
  
          Args:
              :param email: email of the author.
              :type email: string
  
              :param hidden: if email is public or not.
              :type hidden: boolean