_______________________ from Person import Person from BloodBank…

QuestionAnswered step-by-step_______________________ from Person import Person from BloodBank…_______________________from Person import Personfrom BloodBank import BloodBankfrom datetime import datetime  TYPES = [“A+”, “O+”, “B+”, “AB+”, “A-“, “O-“, “B-“, “AB-“] def listOfPeople(loc):    “””    Parameter: loc (Type: str)        It is the path to a file to open.     Return:        Type  – List (inner element Type: `People`)        Value – List of People instances, generated from content in the file.     If you split each line from the file properly, there should be four elements.     Given a location for a file, return a list of Person    objects for each person in the CSV file     HINT: You can look at the python documentation for a string    for a couple of functions that will help with breaking apart    the string and removing trailing characters. (The 2 I used were in the slide I showed of allowed functions)    “””    pass # TODO: Implement this       return [] # TODO: Replace with what the value it should actually return, just a place holder  def displayBankStats(bbs):    “””    Displays all the banks and how many units for each type.     This function can call print instead of returning    “””    print()    print(“{:=^30}”.format(” Blood Banks and Counts “))    for b in bbs:        print(“Bank: {}”.format(b))        for x in TYPES:            print(“t Type {:3}: Amount {}”.format(x, b.totalUnitsOfBlood(x)))    print(“{:=^30}”.format(” End “))    print()    def displayPeopleNotFull(peeps):    “””    Displays all the people that aren’t at the normal number of units    of blood    “””    print()    print(“{:=^30}”.format(” People != 5500 Units “))    for p in peeps:        if p.getBloodCount() != 5500:            print(p)    print(“{:=^30}”.format(” End “))    print() def displayPeopleInjured(peeps):    “””    Displays all people that are injured    “””    print()    print(“{:=^30}”.format(” Is Injured “))    for p in peeps:        if p.isInjured():            print(str(p) + “t” + str(p.getBloodCount()))    print(“{:=^30}”.format(” End “))    print()  # To generate the data provided, I used the following site:# https://www.generatedata.com/def main():    “””    Test Code     DO NOT MODIFY    “””         # Provided blood banks    bloodBanks = [        BloodBank(“Red Cross”, “Indianapolis”),        BloodBank(“St. Blood”, “Bloomington”),        BloodBank(“Not Vampires”, “Chicago”),        BloodBank(“Indiana University”, “Bloomington”),        BloodBank(“Drop it Like it’s Hot”, “New York”)    ]      # Reads in the data, and adds each person to a blood bank    # peoples = listOfPeople(“Assignments/Assignment6/info.data”)    peoples = listOfPeople(“Assignment6/info.data”)     # Checks to make sure you are using datetime    for p in peoples:        if not isinstance(p.birthday, datetime):            print(“Instance variable birthday is NOT datetime object”)       for i in range(len(peoples)):        bloodBanks[i % len(bloodBanks)].addPerson(peoples[i])       # Each person donates blood based on the index    # stored inside of each Blood Bank    for b in bloodBanks:        for p in b.users:            b.receiveBlood(p, b.users.index(p)*10)            p.resetBloodCount() # Reset the account       # Show people with not perfect blood    # This case should be empty    displayPeopleNotFull(peoples)       # Show the bank statement AND how much is each type    displayBankStats(bloodBanks)     print(“{:=^40}”.format(“People that can donate to {}”.format(TYPES[0])))    for b in bloodBanks:        peeps = b.findPeople(TYPES[0])        print(“Count: {}, List: {}”.format(len(peeps), peeps))    print(“{:=^40}”.format(“”))     displayPeopleInjured(peoples)     # Time to injury some people    injured = [5, 56, 22, 98, 19]    for i in injured:        peoples[i].bloodInBody -= (300 + i * 10)       displayPeopleInjured(peoples)      print(“{:=^40}”.format(“Checking Transfer”))    for i in range(5):        p = peoples[injured[i]]        print(“Current Person: {}”.format(p.name))        b = bloodBanks[i]        result = b.receiveBlood(p)        if result == -1:            print(“Unable to take blood: ‘{}’ is injured”.format(p.name))        result = b.giveBlood(p, 100)        if result == -1:            print(“Unable to transfer blood to {}: ‘{}’ does not have enough of type {} ({})”.format(p.name, b.name, p.type, b.totalUnitsOfBlood(p.type)))        if result == -2:            print(“Unable to transfer blood to {}: would not take blood”.format(p.name))        # print(result)         print(“‘{}’ ({}) Status of Injury: {}”.format(p.name, p.bloodInBody, p.isInjured()))        print()    print(“{:=^40}”.format(“”))     displayBankStats(bloodBanks)  if __name__ == “__main__”:main() ________________________ Bloodbank.pyclass BloodBank:     # https://www.disabled-world.com/calculators-charts/blood-chart.php    # YOU WILL NEED TO USE THIS LINK TO FILL IN THE DICTIONARIES    #    # These 2 dictionaries are class variables, which I will elaborate on Tuesday    # You can access data from them by doing “BloodBank.DONATE_TO[key]”    #    # These 2 dictionaries must be a key of “STR” and the value of “LIST that holds STR”     # “Donate Blood To” Column in table “Compatible Blood Type Donors”    DONATE_TO = {           } # TODO: FILL IN based on table about compatability     # “Receive Blood From” Column in table “Compatible Blood Type Donors”    DONATE_FROM = {           } # TODO: FILL IN based on table about compatability     # HINT: The values for each key is type `list`.    #       You will hardcode the lists, since they will not change     #HINT: To use the variables in the class body, you will have to do:    #       BloodBank.DONATE_TO[KEY]    #       BloodBank.DONATE_FROM[KEY]     def __init__(self, name, location):        “””        Creates an instance of a of a BloodBank. It will have 4 instance variables (HINT: look at the next line)         A blood bank will have a `name`, `location`, a list of `users`, and a bank of blood (`bankBlood`)        to keep track of how much of each blood type they have (HINT: think about the type for this instance        variable)         HINT: You know the types of blood (and no new ones will not be created (hopefully))            and you know a blood bank with start empty.        “””        pass # TODO: Implement this              def totalUnitsOfBlood(self, bType=None):        “””        Parameter: bType (Type: str)            The blood type to get the total of.            If no blood type is provided, it get the total units of blood               Return:            Type  – Int            Value – Number of units         Returns the total number of units of blood in the bank.         Unless specified with a specific type, returns the total for all units.        Can be provided a type.         HINT:            – bType=None is a default parameter        “””        pass # TODO: Implement this              def findPeople(self, bType):        “””        Parameter: bType (Type: str)            The blood type to search for.               Return:            Type  – list            Value – All people with given blood type (or compatable blood types)                    NOTE: You are returning INSTANCES of `People` (these people already exist somewhere)         For the given blood type `bType`, return a list of people        that have bloods types that `bType` can receive         Example of who can receive blood: A+ can receive from A+, A-, O+, O-        “””        pass # TODO: Implement this              def addPerson(self, p):        “””        Parameter: p (Type: People)            An instance of `Person` class. You do NOT need to check for repeats.         Return:            Type  – None            Value – Default value, no return statement needed here         Adds the given `Person` object to the Bank.        Assumes no Person will be given twice        (no need to check for repeats)         This function does not return anything.        “””        pass # TODO: Implement this              def giveBlood(self, p, quantity=5):        “””        Parameters:            – p (Type: Person)                Instance of `Person` class that will receive blood (assuming there is                enough of a compatable blood type)            – quantity (Type: int)                The amount to receive         Return:            Type  – int            Value – 3 Different values. (-1 or -2) is returned, then no blood should be                    taken out of the bank or transfered to the person                ~ -1    This value is returned if the blood bank does not have enough of one                        acceptable type. NOTE: We are not mixing blood. They can only accept the quantity of                        one blood type at a time                ~ -2    If there IS enough blood in the bank BUT attempting to “transfer blood” to the person                        will cause an error (check the return value). Return -2 with taking the blood from the                        bank (for that specific type)                               ~ 0     If there IS enough blood in the bank and the “transfer blood” to the person is successful                        (check the return value), then you can successfully remove the quantity from the bank and                        return 0                  If there is not enough blood in the bank to transfer, return -1.         If you are unable to transferBlood for the given person, return -2.         Given that there is enough blood in the bank for the given person (p),        transfer the blood to the person (BUT there are things to            consider before transfering).        Assuming the blood can be GIVEN to the person, subtract the quantity from            the bank and return 0.         HINT:            – You can break this into 2 steps:                – Acceptable blood type.                    – Determine if there is enough blood quantity of `p`’s blood type                    – If there is, you can use that; otherwise, find the next blood type that has                        enough quantity                – Once you found enough quantity of acceptable blood type, you can then attempt to transfer the                    blood to `p`        “””        pass # TODO: Implement this            def registeredUsers(self):        “””        Return:            – Type  – INT            – Value – Number representing the number of users that exist for this blood bank.          Returns the number of people registered in this        blood bank        (Can be a single line)        “””        pass # TODO: Implement this        def receiveBlood(self, p, quantity=5):        “””        Parameters:            – p (Type: Person)                Person instance to take blood from.            – quantity (Type: int)                Amount to retrieve from person         Return:            Type  – int            Value – 0 if the transfer was successful AND the quantity was added to the bank                    -1 if the transfer was not successful.                Takes blood from the provided person and if you are able to        successfully transfer blood from the person, then remove that from the        the current person. Return 0.        (NOTE: you are TAKING blood, so there is something you will need to think about            before transfering blood from the person)         If you are unable to transfer blood from the person, return -1 since you can’t add        blood the bank if the you can’t get blood from the person.         NOTE: This function is provided        “””        result = p.transferBlood(-quantity)        if result == -1:            return -1        self.bankBlood[p.type] += quantity        return 0      def __str__(self):        “””        Returns the name of the bank and the number of        registered users         NOTE: This was given to you, does not need changed        “””        return self.name + “,Users: ” + str(self.registeredUsers()) + “,Blood Total: ” + str(self.totalUnitsOfBlood())  if __name__ == “__main__”:    testing = BloodBank(“Who”, “Where”)    pass # Can do some testing without running all the code____________________  from datetime import datetime class Person:      # https://www.simplifiedpython.net/python-convert-string-to-datetime/    # Tool to help with date conversion     def __init__(self, name, address, birthday, bloodType):        “””        Given a name (string), an address (string), birthday (string), and        blood type (string), store the parameters in instance variables as        name (string), address (string), birthday (datetime, in the format of month-day-year),        and type (string).         HINT: Refer to the link above about converting datetime.            (You will have to scroll down a little bit for the function name)         You must keep track of the number of milliliters in the body.         You must keep track of if the person is injuried. A person is considered injured        if they have less than 5200 ml of blood in the body or has more than 5600 ml in        the body.         The bloodInBody is 5500 units when you create a person         NOTE: You have been given all the instance variables, you need to put            what that instances variables should hold in the constructor        “””        self.name = None # TODO        self.address = None # TODO        self.birthday = datetime.strptime(birthday, “%m-%d-%Y”) # Provided        self.type = None # TODO        self.bloodInBody = None # in milliliters # TODO           pass # TODO: Implement this (Fill in the variables above, no other code needed in constructor)        def getAge(self):        “””        Returns the number of years the person is.         Refer to the documentation link for what attributes you have.        Link: https://docs.python.org/3/library/datetime.html         HINT:            – To find the age, you take the difference from the birthday to today.            – Look at how to get what TODAY is            – Maybe you can use of the magic methods … maybe Datetime has a way to get difference            – Read what the values represent. You need to get the number of years (search in the documentation for “365”)            – Return the number        “””        pass # TODO: Implement this        def isInjured(self):        “””        Parameters:            – Does not take in anything extra         Return:            – Type  – bool            – Value – True (if the person is injured) / False (if the person is NOT injured)         Returns a boolean value.         True if the person is injured (less than 5200 or more than 5600 ml) (exclusive)        False if the person is not injured        “””        pass # TODO: Implement this     def getBloodCount(self):        “””        Returns the amount of blood in the person’s body.         Return        – Type  : int        – Value : Amount of blood in mL        “””        pass # TODO: Implement this       def transferBlood(self, count):        “””        Parameter:            Type  – int            Value – The amount of blood to either remove from the person (-) or putting into                    the person (+)                   Return:            Type  – int            Value – 0 if you can safely transfer blood AND you remove the blood from the boydf                    -1 for either GIVE or TAKE issues (refer to below)         For a given amount of blood, transfer a safe amount to the current        person or FROM the person. The count for blood can be positive        (recieving) and the count for blood can be negative (giving).         A person is safe if there blood count is 5200 ml to 5600 ml            (inclusive on both ends)         If the provided amount of blood GIVEN (+) to the person is        dangerous for the reciever (current person), do        not transfer any of it and return -1.         If the provided amount of blood TAKEN (-) from the person is dangerous for the given),        do not take any of the blood and return -1         Otherwise, complete the transfer and return 0        “””        pass # TODO: Implement this     def resetBloodCount(self):        “””        Sets the number of units for blood back to        the amount of blood in the body that a body normally has.         Simulates a person recovering after donating.         This function does not return anything.        HINT:        – This can be done in one line and does not require function calls        – Refer to what the constructor says        “””        pass # TODO: Implement this      def __repr__(self):        “””        Provided for you          Provided the name, blood type for the user, and blood count.         NOTE: You do not need to touch this. This is made for you        “””        return “< " + self.name + " ~ " + self.type  +" ~ " + str(self.bloodInBody) +"ml >”     def __str__(self):        “””        Provided for you          Return the name, the age, the blood type, and blood count as follows:         Larry Bates ~ 19 ~ A- ~ 5500ml        “””        return self.name + ” ~ ” + str(self.getAge()) + ” ~ ” + self.type + ” ~ ” + str(self.bloodInBody) + “ml”       def __eq__(self, other):        “””        Provided for you        “””        return self.name == other.name and self.address == other.address and             self.birthday == other.birthday and self.type == other.type and             self.bloodInBody == other.bloodInBody       def __lt__(self, other):        “””        Provided for you        “””        return self.getAge() < other.getAge()       def __le__(self, other):        """        Provided for you        """        return self.getAge() <= other.getAge() if __name__ == "__main__":    p = Person("Hello", "from the other", "05-05-1995", "side")    pp94 = Person('Joel Forbes', '527-6514 Dapibus Avenue', '01-18-1975', 'O-')    pp95 = Person('Baker Rosario', '855-8522 Ut Rd.', '10-04-1982', 'A+')    pp96 = Person('Clarke Perry', '976-8430 Id, Av.', '04-12-1977', 'B-')    pp97 = Person('Wallace Dunlap', '149-9021 Nullam Rd.', '05-29-1997', 'A+')     print(p == p)    print(pp94 == pp95)    print(p < p)    print(p <= p)    print(p < pp95) # True: p is younger than pp95    print(sorted([p, pp94, pp95, pp96, pp97]))    print(p in [p, pp94, pp95, pp96, pp97])    print(p in [pp94, pp95, pp96, pp97])    print(p, p.getAge())    pass # Can do some testing without running all the code__________________ Correctoutput.txt  ==== People != 5500 Units ================ End ================ Blood Banks and Counts ===Bank: Red Cross,Users: 20,Blood Total: 1900 Type a+ : Amount 190 Type O+ : Amount 50 Type B+ : Amount 0 Type aB+: Amount 570 Type a- : Amount 470 Type O- : Amount 550 Type B- : Amount 70 Type aB-: Amount 0Bank: St. Blood,Users: 20,Blood Total: 1900 Type a+ : Amount 170 Type O+ : Amount 250 Type B+ : Amount 260 Type aB+: Amount 250 Type a- : Amount 160 Type O- : Amount 160 Type B- : Amount 380 Type aB-: Amount 270Bank: Not Vampires,Users: 20,Blood Total: 1900 Type a+ : Amount 750 Type O+ : Amount 390 Type B+ : Amount 240 Type aB+: Amount 180 Type a- : Amount 70 Type O- : Amount 0 Type B- : Amount 270 Type aB-: Amount 0Bank: Indiana University,Users: 20,Blood Total: 1900 Type a+ : Amount 380 Type O+ : Amount 10 Type B+ : Amount 70 Type aB+: Amount 150 Type a- : Amount 450 Type O- : Amount 200 Type B- : Amount 160 Type aB-: Amount 480Bank: Drop it Like it's Hot,Users: 20,Blood Total: 1900 Type a+ : Amount 120 Type O+ : Amount 10 Type B+ : Amount 70 Type aB+: Amount 330 Type a- : Amount 130 Type O- : Amount 570 Type B- : Amount 420 Type aB-: Amount 250============ End ===================People that can donate to A+======Count: 13, List: [< Caleb Hubbard ~ O- ~ 5500ml >, < Odysseus Valenzuela ~ A- ~ 5500ml >, < Nolan Leon ~ A- ~ 5500ml >, < Addison Mccarty ~ A- ~ 5500ml >, < Ferris Howe ~ O+ ~ 5500ml >, < Lee Perry ~ O- ~ 5500ml >, < Igor Reeves ~ A- ~ 5500ml >, < Keefe Parrish ~ A- ~ 5500ml >, < Fritz Knight ~ O- ~ 5500ml >, < Cameron Cochran ~ O- ~ 5500ml >, < Wyatt Chase ~ A- ~ 5500ml >, < Xander Harris ~ O- ~ 5500ml >, < Baker Rosario ~ A+ ~ 5500ml >]Count: 8, List: [< Cadman Morgan ~ A+ ~ 5500ml >, < Vincent Garner ~ O+ ~ 5500ml >, < Neil Abbott ~ A- ~ 5500ml >, < Berk Byers ~ O+ ~ 5500ml >, < Ralph Mercer ~ A- ~ 5500ml >, < Alexander Jacobson ~ O+ ~ 5500ml >, < Kuame Mccarthy ~ O- ~ 5500ml >, < Micah Cantrell ~ A+ ~ 5500ml >]Count: 13, List: [< Curran Lowe ~ A+ ~ 5500ml >, < Lawrence Mcneil ~ A- ~ 5500ml >, < Shad Bates ~ A+ ~ 5500ml >, < Porter Orr ~ O+ ~ 5500ml >, < Arsenio Webb ~ A- ~ 5500ml >, < Quentin Berger ~ O+ ~ 5500ml >, < Kibo Bullock ~ A+ ~ 5500ml >, < Isaac Townsend ~ O+ ~ 5500ml >, < Carter Patel ~ A+ ~ 5500ml >, < Norman Herring ~ A+ ~ 5500ml >, < Nigel Harrington ~ O+ ~ 5500ml >, < Steel Hutchinson ~ A+ ~ 5500ml >, < Wallace Dunlap ~ A+ ~ 5500ml >]Count: 12, List: [< Samuel Sims ~ O+ ~ 5500ml >, < Ali Aguirre ~ O+ ~ 5500ml >, < Grady Rush ~ A+ ~ 5500ml >, < Victor Mills ~ A+ ~ 5500ml >, < Felix Lindsay ~ A- ~ 5500ml >, < Silas Burris ~ O- ~ 5500ml >, < Rigel Dunlap ~ A- ~ 5500ml >, < Dylan Carver ~ O- ~ 5500ml >, < Beck Stein ~ A- ~ 5500ml >, < Jack Diaz ~ A+ ~ 5500ml >, < Zeph Giles ~ A- ~ 5500ml >, < Lars Boone ~ A+ ~ 5500ml >]Count: 8, List: [< Adrian Koch ~ A+ ~ 5500ml >, < Griffith Hebert ~ O+ ~ 5500ml >, < Quentin Frazier ~ O- ~ 5500ml >, < Fritz Finch ~ A+ ~ 5500ml >, < Chaim Dillon ~ A- ~ 5500ml >, < Keefe Michael ~ O- ~ 5500ml >, < Carter Anthony ~ O- ~ 5500ml >, < Joel Forbes ~ O- ~ 5500ml >]================================================= Is Injured ===================== End ====================== Is Injured =========Caleb Hubbard ~ 46 ~ O- ~ 5150ml 5150Xenos Beach ~ 39 ~ B+ ~ 5010ml 5010Porter Orr ~ 49 ~ O+ ~ 4980ml 4980Ralph Mercer ~ 32 ~ A- ~ 4640ml 4640Sean Moreno ~ 29 ~ AB- ~ 4220ml 4220============ End ========================Checking Transfer============Current Person: Caleb HubbardUnable to take blood: ‘Caleb Hubbard’ is injured’Caleb Hubbard’ (5250) Status of Injury: FalseCurrent Person: Ralph MercerUnable to take blood: ‘Ralph Mercer’ is injured’Ralph Mercer’ (4740) Status of Injury: TrueCurrent Person: Porter OrrUnable to take blood: ‘Porter Orr’ is injured’Porter Orr’ (5080) Status of Injury: TrueCurrent Person: Sean MorenoUnable to take blood: ‘Sean Moreno’ is injured’Sean Moreno’ (4320) Status of Injury: TrueCurrent Person: Xenos BeachUnable to take blood: ‘Xenos Beach’ is injured’Xenos Beach’ (5110) Status of Injury: True=========================================== Blood Banks and Counts ===Bank: Red Cross,Users: 20,Blood Total: 1800 Type a+ : Amount 190 Type O+ : Amount 50 Type B+ : Amount 0 Type aB+: Amount 570 Type a- : Amount 470 Type O- : Amount 450 Type B- : Amount 70 Type aB-: Amount 0Bank: St. Blood,Users: 20,Blood Total: 1800 Type a+ : Amount 170 Type O+ : Amount 250 Type B+ : Amount 260 Type aB+: Amount 250 Type a- : Amount 60 Type O- : Amount 160 Type B- : Amount 380 Type aB-: Amount 270Bank: Not Vampires,Users: 20,Blood Total: 1800 Type a+ : Amount 750 Type O+ : Amount 290 Type B+ : Amount 240 Type aB+: Amount 180 Type a- : Amount 70 Type O- : Amount 0 Type B- : Amount 270 Type aB-: Amount 0Bank: Indiana University,Users: 20,Blood Total: 1800 Type a+ : Amount 380 Type O+ : Amount 10 Type B+ : Amount 70 Type aB+: Amount 150 Type a- : Amount 450 Type O- : Amount 200 Type B- : Amount 160 Type aB-: Amount 380Bank: Drop it Like it’s Hot,Users: 20,Blood Total: 1800 Type a+ : Amount 120 Type O+ : Amount 10 Type B+ : Amount 70 Type aB+: Amount 330 Type a- : Amount 130 Type O- : Amount 570 Type B- : Amount 320 Type aB-: Amount 250============ End =============____________info.dataName~-~Street Address~-~Birthday~-~Blood typeAdrian Perkins~-~Ap #716-5517 Urna. St.~-~10-01-1997~-~AB+Cadman Morgan~-~P.O. Box 234, 1175 Fusce St.~-~04-17-1984~-~A+Curran Lowe~-~P.O. Box 529, 3604 Massa Rd.~-~09-19-1972~-~A+Samuel Sims~-~P.O. Box 619, 1387 Mauris Av.~-~12-15-1977~-~O+Adrian Koch~-~Ap #789-822 Nunc Rd.~-~02-01-1990~-~A+Caleb Hubbard~-~Ap #345-6491 Mauris Street~-~03-02-1975~-~O-Vincent Garner~-~Ap #849-5912 Dui Ave~-~03-14-1964~-~O+Lawrence Mcneil~-~Ap #627-3842 Orci Avenue~-~02-06-1982~-~A-Ali Aguirre~-~Ap #789-2396 Sagittis St.~-~02-18-1970~-~O+Griffith Hebert~-~918-815 Eu St.~-~10-26-1959~-~O+Odysseus Valenzuela~-~Ap #817-6946 Sed Rd.~-~07-03-1989~-~A-Abbot Herman~-~P.O. Box 836, 1465 Pede. St.~-~07-29-1989~-~B+Shad Bates~-~P.O. Box 568, 110 Fusce Av.~-~10-05-1964~-~A+Grady Rush~-~904-1207 Integer Street~-~10-02-1960~-~A+Simon Ross~-~P.O. Box 979, 539 Condimentum. St.~-~10-09-1973~-~AB-Nolan Leon~-~Ap #135-8843 Ullamcorper, Street~-~12-01-1989~-~A-Simon Cantrell~-~430 Et Street~-~06-11-1967~-~AB-Ralph Goodman~-~2781 Consequat Street~-~02-24-1958~-~AB+Lars Hurley~-~296-8577 Suspendisse Rd.~-~09-06-1959~-~B-Xenos Beach~-~3199 Imperdiet Ave~-~12-22-1981~-~B+Addison Mccarty~-~P.O. Box 114, 9899 Cras Avenue~-~03-24-1973~-~A-Malcolm Mcbride~-~2008 Malesuada Av.~-~04-17-1991~-~B+Porter Orr~-~6601 Luctus, Ave~-~12-09-1971~-~O+Xanthus Thornton~-~7565 Ut, St.~-~08-28-1983~-~B-Guy Wong~-~P.O. Box 890, 4047 Fusce St.~-~11-03-1986~-~B+Ferris Howe~-~302-5181 Aenean St.~-~05-29-1985~-~O+Neil Abbott~-~121-6382 Tellus Ave~-~07-12-1985~-~A-Brady Mccoy~-~283-9320 Ornare Road~-~02-12-1975~-~AB+Victor Mills~-~Ap #993-7709 Eu Ave~-~04-28-1996~-~A+Octavius Hull~-~711-8494 Diam. Avenue~-~06-23-1993~-~B-Colton Lane~-~7174 Lectus. Avenue~-~10-24-1986~-~AB+Mufutau Cohen~-~326 Proin Street~-~05-18-1956~-~B-Arsenio Webb~-~4472 Donec Street~-~01-26-1984~-~A-Felix Lindsay~-~P.O. Box 735, 3141 Nulla Av.~-~03-22-1964~-~A-Quentin Frazier~-~Ap #423-9052 Mauris St.~-~06-28-1968~-~O-Blaze Collier~-~7393 Tortor. Avenue~-~05-26-1957~-~B-Rahim Vance~-~8767 Odio Avenue~-~10-02-1955~-~AB+Abdul Roth~-~379-3283 Lectus. Ave~-~08-23-1966~-~B+Mason Briggs~-~Ap #422-2852 Fusce Avenue~-~03-11-1959~-~B+Caleb Booth~-~P.O. Box 359, 1771 Eget Road~-~08-20-1980~-~AB+Lee Perry~-~Ap #831-5400 Malesuada Av.~-~11-26-1963~-~O-Paul Avila~-~P.O. Box 396, 9641 Tincidunt, Street~-~04-27-1984~-~B+Quentin Berger~-~P.O. Box 662, 6405 Pharetra Rd.~-~11-17-1999~-~O+Silas Burris~-~P.O. Box 834, 4897 Ullamcorper, Rd.~-~04-15-1958~-~O-Dale Larsen~-~6554 Metus. Street~-~02-26-1981~-~B-Wayne Hart~-~P.O. Box 461, 6480 Phasellus Ave~-~11-16-1990~-~AB+Eaton Robbins~-~Ap #651-7022 Vitae Rd.~-~05-22-1971~-~AB-Kibo Bullock~-~1020 Vestibulum Rd.~-~01-27-1998~-~A+Paki Hicks~-~P.O. Box 984, 9157 Tortor Road~-~02-10-1999~-~B-Hedley Murphy~-~6405 Luctus Rd.~-~12-31-1974~-~AB-Igor Reeves~-~810-9276 Mollis. Ave~-~07-16-1955~-~A-Berk Byers~-~P.O. Box 300, 5808 Cursus Av.~-~06-20-1985~-~O+Odysseus Le~-~574-5273 Aliquet Road~-~09-30-1993~-~AB+Rigel Dunlap~-~309-743 Euismod Avenue~-~05-31-1992~-~A-Boris Mcgowan~-~2652 Purus. Ave~-~03-02-1984~-~B-Patrick Gilmore~-~Ap #942-6438 Interdum. Road~-~03-03-1981~-~AB+Ralph Mercer~-~P.O. Box 107, 6143 Tincidunt Rd.~-~10-14-1988~-~A-Hammett Solis~-~853-5536 Aliquet St.~-~03-09-1967~-~B-Cadman Perry~-~8077 Ullamcorper, Ave~-~02-07-1966~-~AB-Galvin Frost~-~P.O. Box 648, 5731 Magna. St.~-~08-24-1995~-~AB+Keefe Parrish~-~940 Dictum Rd.~-~12-12-1956~-~A-Drake Keith~-~Ap #707-8675 Tellus. Rd.~-~03-25-1964~-~B+Isaac Townsend~-~8070 Metus. St.~-~06-25-1981~-~O+Dylan Carver~-~664-5749 Adipiscing. St.~-~11-11-1991~-~O-Fritz Finch~-~8618 Duis Street~-~05-07-1998~-~A+Fritz Knight~-~P.O. Box 187, 9419 Nulla. Av.~-~11-19-1961~-~O-Rooney Rivers~-~P.O. Box 473, 2324 Feugiat. Rd.~-~02-04-1992~-~B-Carter Patel~-~P.O. Box 498, 1342 Duis Av.~-~12-25-1975~-~A+Beck Stein~-~P.O. Box 500, 9653 Sit Rd.~-~02-16-1970~-~A-Chaim Dillon~-~Ap #274-5744 Nibh Avenue~-~12-16-1980~-~A-Amir Underwood~-~1404 Primis Street~-~07-10-1978~-~AB+Alexander Jacobson~-~651-7479 Nulla Road~-~11-05-1966~-~O+Norman Herring~-~P.O. Box 729, 1838 Enim, Rd.~-~11-21-1966~-~A+Jack Diaz~-~Ap #261-9087 Posuere Road~-~10-19-1998~-~A+Clark Garrison~-~Ap #526-8856 Dictum Rd.~-~01-09-1986~-~AB-Cameron Cochran~-~P.O. Box 566, 4544 Nulla Rd.~-~10-06-1980~-~O-Armand Torres~-~P.O. Box 587, 4864 Velit. Rd.~-~08-02-1979~-~AB-Nigel Harrington~-~160-5795 Purus, St.~-~12-15-1987~-~O+Aidan Erickson~-~Ap #734-543 Placerat, Road~-~05-04-1983~-~AB+Derek Mccray~-~P.O. Box 803, 3955 In Street~-~03-04-1987~-~AB+Wyatt Chase~-~539 Suspendisse Ave~-~09-24-1989~-~A-Kuame Mccarthy~-~P.O. Box 437, 7130 Diam. Road~-~06-22-1993~-~O-Vance Hendricks~-~Ap #227-3609 Tortor. Rd.~-~02-01-1956~-~B-Zeph Giles~-~239-8464 Amet Av.~-~05-02-1976~-~A-Keefe Michael~-~P.O. Box 267, 9666 Sit Road~-~02-04-1967~-~O-Galvin Marshall~-~P.O. Box 265, 4078 Pede, St.~-~03-11-1975~-~AB+Micah Cantrell~-~5064 Ornare, St.~-~12-20-1986~-~A+Sean Buchanan~-~7608 Dictum Street~-~07-08-1957~-~B+Lars Boone~-~8154 Mauris. Avenue~-~05-19-1980~-~A+Carter Anthony~-~5399 Magnis Street~-~10-27-1956~-~O-Xander Harris~-~469 Convallis Street~-~02-11-1970~-~O-Marvin Ross~-~8869 Lacus. Road~-~11-11-1970~-~AB+Steel Hutchinson~-~6798 Curabitur Rd.~-~11-11-1998~-~A+Fitzgerald Wolfe~-~7477 Et Rd.~-~03-25-1986~-~AB-Joel Forbes~-~527-6514 Dapibus Avenue~-~01-18-1975~-~O-Baker Rosario~-~855-8522 Ut Rd.~-~10-04-1982~-~A+Clarke Perry~-~976-8430 Id, Av.~-~04-12-1977~-~B-Wallace Dunlap~-~149-9021 Nullam Rd.~-~05-29-1997~-~A+Sean Moreno~-~2973 At, Ave~-~10-09-1991~-~AB-Porter Hayden~-~Ap #904-743 Orci Ave~-~06-15-1964~-~B-Computer ScienceEngineering & TechnologyPython ProgrammingCSCI C200Share Question