"""
John has invited people. His list is:

s = "Fred:Corwill;Wilfred:Corwill;Barney:Tornbull;Betty:Tornbull;Bjon:Tornbull;Raphael:Corwill;Alfred:Corwill";

Could you make a program that

    makes this string uppercase
    gives it sorted in alphabetical order by last name. When the last names are the same, sort them by first name. Last name and first name of a guest come in the result between parentheses separated by a comma. So the result of function meeting(s) will be:

    "(CORWILL, ALFRED)(CORWILL, FRED)(CORWILL, RAPHAEL)(CORWILL, WILFRED)(TORNBULL, BARNEY)(TORNBULL, BETTY)(TORNBULL, BJON)"

    It can happen that in two distinct families with the same family name two people have the same first name too.

Notes

    You can see another examples in the "Sample tests".
    Translators are welcome for all languages, except for Ruby since the Bash random tests needing Ruby a Ruby reference solution is already there though not yet published.
"""


def meeting(s):
    result = ""
    people = s.upper().split(";")
    persons = []
    
    for p in people:
        nc = p.split(":")
        persons.append((nc[1], nc[0]))
    
    persons.sort()
    
    for p in persons:
        result += "(" + p[0] + ", " + p[1] + ")"

    return result
