public void run() {

		
		try{
	        AudioInputStream stream = AudioSystem.getAudioInputStream(new File(
	                "music/First_Level_Music.wav"));
	            AudioFormat format = stream.getFormat();
	            if (format.getEncoding() != AudioFormat.Encoding.PCM_SIGNED) {
	              format = new AudioFormat(AudioFormat.Encoding.PCM_SIGNED, format
	                  .getSampleRate(), format.getSampleSizeInBits() * 2, format
	                  .getChannels(), format.getFrameSize() * 2, format.getFrameRate(),
	                  true); 
	              stream = AudioSystem.getAudioInputStream(format, stream);
	            }

	            SourceDataLine.Info info = new DataLine.Info(SourceDataLine.class, stream
	                .getFormat(), ((int) stream.getFrameLength() * format.getFrameSize()));
	            SourceDataLine line = (SourceDataLine) AudioSystem.getLine(info);
	            line.open(stream.getFormat());
	            line.start();

	            int numRead = 0;
	            byte[] buf = new byte[line.getBufferSize()];
	            while ((numRead = stream.read(buf, 0, buf.length)) >= 0) {
	              int offset = 0;
	              while (offset < numRead) {
	                offset += line.write(buf, offset, numRead - offset);
	              }
	            }
	            line.drain();
	            line.stop();
	        }catch(Exception e){
	            System.out.println("Sound done screwed up.");
	        };		

	}