@Override
	public List<String> recvMakeOffer(String serviceName, String seller, String price) {
		loggerGui.info("[ " + user.getUsername() + "] received make offer packet for service " +
				serviceName + " from seller " + seller);
		
		// update buyer's status (add price to status)
		String newStatus = StatusMessages.offerMade + " (" + price +" " +
				Symbols.currency + ")";
		user.updateStatus(serviceName, seller, newStatus);
		
		// repaint GUI
		GUI.repaintUserTable();
		
		// check for exceeded offers and return a list of exceeded suppliers
		Map<String, String> providers = user.getServiceProviders(serviceName);
		List<String> exceededProviders = new ArrayList<>();
		Integer currentPrice = Integer.parseInt(price);
		
		for (String provider : providers.keySet()) {
			if (!providers.get(provider).contains(StatusMessages.offerMade))
				continue;
			
			Integer providerPrice = DataGenerator.getPrice(serviceName, provider);
			if (currentPrice < providerPrice) {
				exceededProviders.add(provider);
			}
		}
		
		return exceededProviders;
	}