private void chooseFood() {
		List<String> canAfford = Collections
				.synchronizedList(new ArrayList<String>());
		List<String> entrees = Collections
				.synchronizedList(new ArrayList<String>());
		entrees = menu.getItemList();
		synchronized (entrees) {
			for (String entree : entrees) {
				if (menu.getPrice(entree) <= mymoney) {
					canAfford.add(entree);
				}
			}
		}
		if (canAfford.size() > 0) {
			Random generator = new Random();
			int choice = generator.nextInt(canAfford.size());
			mychoice = canAfford.get(choice);
			customerGui.setLabelText(mychoice + "?");
			waiter.msgHereIsMyOrder(this, mychoice);
			event = AgentEvent.Waiting;
		} else {
			print("Cannot afford any items");
			int decide;
			if (menu.isReOrder() == true) {
				decide = 0;
			} else {
				Random rand2 = new Random();
				int randvalue = rand2.nextInt(1000);
				decide = randvalue % 2;
			}
			switch (decide) {
			case 0:
				print("Decided to leave");
				event = AgentEvent.ReadyToLeave;
				break;
			case 1:
				print("Order Anyway");
				mychoice = menu.pickItem();
				customerGui.setLabelText(mychoice + "?");
				waiter.msgHereIsMyOrder(this, mychoice);
				event = AgentEvent.Waiting;
				break;
			}
		}
	}