public void run() {
		// NOTE : recall that the 'final' keyword notes inmutability
		// even for local variables.

		// Top-level frame in which game components live
		// Be sure to change "TOP LEVEL FRAME" to the name of your game
		final JFrame frame = new JFrame("Fruit Ninja");
		frame.setLocationRelativeTo(null);
		frame.setResizable(false);
		
		//set cursor to knife
		Toolkit toolkit = Toolkit.getDefaultToolkit();
		  Image image = toolkit.getImage("Kitchen-Knife-2-icon.png");
		  Point p = new Point (0, 0);
		  Cursor c = toolkit.createCustomCursor(image, p, "img");
		  frame.setCursor(c);


		// Status panel
		final JPanel status_panel = new JPanel();
		frame.add(status_panel, BorderLayout.SOUTH);
		final JLabel status = new JLabel("Running...");
		status_panel.add(status);
		

		// Main playing area
		final GameCourt court = new GameCourt(status);
		frame.add(court, BorderLayout.CENTER);

		// Reset button
		final JPanel control_panel = new JPanel();
		frame.add(control_panel, BorderLayout.NORTH);
		

		// Note here that when we add an action listener to the reset
		// button, we define it as an anonymous inner class that is
		// an instance of ActionListener with its actionPerformed()
		// method overridden. When the button is pressed,
		// actionPerformed() will be called.
		final JButton reset = new JButton("Reset");
		reset.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				court.reset();
			}
		});
		control_panel.add(reset);
		

		final JButton pause = new JButton("Pause/Instructions");
		pause.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				court.pause();
			}
		});
		control_panel.add(pause);
		
//		final JButton play = new JButton("Resume play");
//		pause.addActionListener(new ActionListener() {
//			public void actionPerformed(ActionEvent e) {
//				court.play();
//			}
//		});
//		control_panel.add(play);
//		
		

		// Put the frame on the screen
		frame.pack();
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		frame.setVisible(true);

		// Start game
		court.reset();
	}