public void run() {
		if(isMaster) {
			//wait for all participants, then initialize all files
			loadConfig();
			System.out.println("Waiting on all participants...");
			int participants = Integer.parseInt(filesystem_config.get("participants"));
			while (cServer.connections.size() < participants) {
				try {
					Thread.sleep(100);
				} catch (InterruptedException e) {
					Thread.currentThread().interrupt();
				}
			}
			System.out.println("All participants connected, initializing file system");
			int rep = Integer.parseInt(filesystem_config.get("replication_factor"));
			try {
				splitUpFiles(rep,filenames);
			} catch (IOException e) {
				System.out.println("Could not split up files");
				System.exit(1);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			
		}
	}