private void movePiece(){
			System.out.println("Moving an existing piece on the board");
			System.out.println("Dest x "+destX_+ " "+destY_);
			System.out.println("Preparing to send move to backend");

				 try {
					turn_ = false;
					System.out.println("Turn is false");
					backend_.me().move(originX_, originY_, destX_, destY_);
					System.out.println("Sent move to backend");
				} catch (IllegalMoveException e) {
					turn_ = true;
					BughouseGUI.showMyPane(null,"That is an illegal move. Consider choosing another move",
							JOptionPane.ERROR_MESSAGE);			
				} catch (IOException e) {
					turn_ = true;
					e.printStackTrace();
				} catch (RequestTimedOutException e) {
					turn_ = true;
					BughouseGUI.showMyPane(null, "The server timed out.Please check your connection"
							, JOptionPane.ERROR_MESSAGE);
				}catch (WrongColorException e) {
					turn_ = true;
					e.printStackTrace();
					BughouseGUI.showMyPane(null,"You've attemped to move your opponent's piece. Please" +
							"move another chess piece that is you own", JOptionPane.ERROR_MESSAGE);
				}finally {
					JPanel originPanel = (JPanel)source_.getParent();
					JPanel destPanel = (JPanel) current_.getParent();
					originPanel.setBorder(userPieces_);
					if (!myPieces_.contains(current_)){
						destPanel.setBorder(null);
					}
					else {
						destPanel.setBorder(userPieces_);
					}
					isMovingPiece_ = false;
					if (suggestions_!= null){
						for (JLabel square: suggestions_){
							JPanel parent = (JPanel) square.getParent();
							parent.setBorder(null);
						}
					}
					if (turn_ ==false){
						for (JLabel myPiece : myPieces_){
							JPanel parent = (JPanel) myPiece.getParent();
							parent.setBorder(null);
						}
					}
				}
		}