private void sendLoanRequest(double salary, double loanAmt) {

		// Create and send the loan request message request
		SendMessageRequest loanRequestMessageRequest = new SendMessageRequest();
		MessageAttributeValue value = new MessageAttributeValue()
				.withDataType("String");
		value.setStringValue(uuid.toString());
		loanRequestMessageRequest.addMessageAttributesEntry("uuid", value);
		loanRequestMessageRequest.setQueueUrl(requestQ);
		loanRequestMessageRequest.setMessageBody(salary + "," + loanAmt);
		sqs.sendMessage(loanRequestMessageRequest);

		// TODO check response queue for matching responses
//		ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest().withMessageAttributeNames("uuid");
		ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest();
		receiveMessageRequest.setQueueUrl(responseQ);
		receiveMessageRequest.setMessageAttributeNames(Arrays.asList("uuid"));
		boolean response = false;
		System.out.println("Waiting for responses...");
		while (!response) {
			List<Message> messages = sqs.receiveMessage(receiveMessageRequest).getMessages();
			for (Message lenderResponseMessage : messages) {
				for (Entry<String, MessageAttributeValue> entry : lenderResponseMessage
						.getMessageAttributes().entrySet()) {
					
					if (entry.getKey().equals("uuid")
							&& entry.getValue().getStringValue()
									.equals(uuid.toString())) {
						String messageRecieptHandle = lenderResponseMessage
								.getReceiptHandle();
						// Print out the response
			 			System.out.println(lenderResponseMessage.getBody());
						// delete the message from the queue
			 			sqs.deleteMessage(new DeleteMessageRequest(responseQ, messageRecieptHandle));
						response = true;
					}
				}
			}
			if (!response) {
				try {
					Thread.sleep(5000);
				} catch (InterruptedException e) {
					e.printStackTrace();
				}
			}
		}
	}