private void initializePerson(){
		//Roles and Job
		mRoles = new HashMap<Role, Boolean>(); //role to active
		mAtJob = false;
		
		//Lists
		mFriends = new ArrayList<Person>();
		mEvents = Collections.synchronizedList(new ArrayList<Event>());
		mItemInventory = Collections.synchronizedMap(new HashMap<EnumItemType, Integer>());
			//populate inventory
			mItemInventory.put(EnumItemType.CAR,0);
			mItemInventory.put(EnumItemType.CHICKEN,sBaseInventory);
			mItemInventory.put(EnumItemType.PIZZA,sBaseInventory);
			mItemInventory.put(EnumItemType.STEAK,sBaseInventory);
			mItemInventory.put(EnumItemType.SALAD,sBaseInventory);
		mItemsDesired = Collections.synchronizedMap(new HashMap<EnumItemType, Integer>());
			mItemInventory.put(EnumItemType.CAR,0);
			mItemInventory.put(EnumItemType.CHICKEN,0);
			mItemInventory.put(EnumItemType.PIZZA,0);
			mItemInventory.put(EnumItemType.STEAK,0);
			mItemInventory.put(EnumItemType.SALAD,0);
		
		mHomeLocations = Collections.synchronizedSet(new HashSet<Location>());
		
		//Personal Variables
		mSSN = sSSN++; // assign SSN
		//mTimeShift = 0;
		mTimeShift = (mSSN % ContactList.cNumTimeShifts); // assign time schedule
		mLoan = 0;
		mHasCar = true; 
		
		//Role References
		//mPersonGui = new CityPerson(this, SimCityGui.getInstance(), sSSN * 5 % 600, sSSN % 10 + 250);
		//Role References
        Location startLocation = null;
        if (mSSN % 8 == 0) startLocation = new Location(60, 0);
        if (mSSN % 8 == 1) startLocation = new Location(0, 60);
        if (mSSN % 8 == 2) startLocation = new Location(540, 0);
        if (mSSN % 8 == 3) startLocation = new Location(0, 540);
        if (mSSN % 8 == 4) startLocation = new Location(60, 600);
        if (mSSN % 8 == 5) startLocation = new Location(600, 60);
        if (mSSN % 8 == 6) startLocation = new Location(540, 600);
        if (mSSN % 8 == 7) startLocation = new Location(600, 540);
        mPersonGui = new CityPerson(this, SimCityGui.getInstance(), startLocation);
        
		// Event Setup
		mEvents = Collections.synchronizedList(new ArrayList<Event>());
		
//		inspectCounter = -1;
	}