public void run()
											{
												try
												{
													rl.lock();
													btnDownload.setEnabled(false);
													if(episode.download())
													{
														episodes.remove(jt.getSelectedRow());
														((DefaultTableModel)jt.getModel()).removeRow(jt.getSelectedRow());
														episode.setWatched(!episode.isWatched());
													}
													else
													{
														btnDownload.setText("Unavailable");
														if(!((String)jt.getValueAt(jt.getSelectedRow(), jt.getColumn("Date Aired").getModelIndex())).contains(" - unavailable"))
															jt.setValueAt(jt.getValueAt(jt.getSelectedRow(), jt.getColumn("Date Aired").getModelIndex())+" - unavailable", jt.getSelectedRow(), jt.getColumn("Date Aired").getModelIndex());
													}
												}
												finally
												{
													rl.unlock();
												}
											}