diff --git a/VerteilteSysteme-Examples/build/TCPTimeCounterRESTServer.jar b/VerteilteSysteme-Examples/build/TCPTimeCounterRESTServer.jar
index e383e28b313b02d67478ba596c31924fde3f6866..af3dfaee27e832cbd022f98ed2a9a96b637c2d11 100644
Binary files a/VerteilteSysteme-Examples/build/TCPTimeCounterRESTServer.jar and b/VerteilteSysteme-Examples/build/TCPTimeCounterRESTServer.jar differ
diff --git a/VerteilteSysteme-Examples/build/TCPTimeCounterServer.jar b/VerteilteSysteme-Examples/build/TCPTimeCounterServer.jar
index ecb3ad76c6e49f8346fe077e79a696d51b0d4022..ef2f1d887118f7bda7ed4ff536a58a58efd61e84 100644
Binary files a/VerteilteSysteme-Examples/build/TCPTimeCounterServer.jar and b/VerteilteSysteme-Examples/build/TCPTimeCounterServer.jar differ
diff --git a/VerteilteSysteme-Examples/src/verteiltesysteme/aws/StartVertSysServersFrankfurt.java b/VerteilteSysteme-Examples/src/verteiltesysteme/aws/StartVertSysServersFrankfurt.java
index 648b1a0771720545f0b2fcf3b5a63d67a1677f05..51c3c9c612f38a379397c3f0d9db1df87fba14aa 100644
--- a/VerteilteSysteme-Examples/src/verteiltesysteme/aws/StartVertSysServersFrankfurt.java
+++ b/VerteilteSysteme-Examples/src/verteiltesysteme/aws/StartVertSysServersFrankfurt.java
@@ -77,20 +77,5 @@ public class StartVertSysServersFrankfurt {
 		RunInstancesResult result = ec2.runInstances(runInstancesRequest);
 		System.out.println(result);
 
-		// Tokyo
-		System.out.println("Instantiating EC2 Client for Tokyo...");
-		ec2 = AmazonEC2ClientBuilder.standard().withCredentials(credentialsProvider).withRegion("ap-northeast-1")
-				.build();
-
-		System.out.println("Starting instance in Tokyo...");
-		runInstancesRequest = new RunInstancesRequest();
-		// Amazon Linux 2 LTS Candidate AMI 2017.12.0 (HVM), SSD Volume Type - ami-6be57d0d
-		runInstancesRequest.withImageId("ami-6be57d0d").withInstanceType("t2.nano").withMinCount(1).withMaxCount(1)
-				.withKeyName("srieger-amazon-aws-keypair").withUserData(userData)
-				.withSubnetId("subnet-1b8de752")
-				.withSecurityGroupIds("sg-12e96e6b");
-		result = ec2.runInstances(runInstancesRequest);
-		System.out.println(result);
-
 	}
 }
diff --git a/VerteilteSysteme-Examples/src/verteiltesysteme/aws/StartVertSysServersTokyo.java b/VerteilteSysteme-Examples/src/verteiltesysteme/aws/StartVertSysServersTokyo.java
new file mode 100644
index 0000000000000000000000000000000000000000..91c962952a3eb24d2afc7411af1468dfde92a14e
--- /dev/null
+++ b/VerteilteSysteme-Examples/src/verteiltesysteme/aws/StartVertSysServersTokyo.java
@@ -0,0 +1,82 @@
+package verteiltesysteme.aws;
+
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.util.Base64;
+
+import com.amazonaws.AmazonClientException;
+import com.amazonaws.auth.profile.ProfileCredentialsProvider;
+import com.amazonaws.services.ec2.AmazonEC2;
+import com.amazonaws.services.ec2.AmazonEC2ClientBuilder;
+import com.amazonaws.services.ec2.model.RunInstancesRequest;
+import com.amazonaws.services.ec2.model.RunInstancesResult;
+
+/**
+ *
+ * In order to use the services in this sample, you need:
+ *
+ * - A valid Amazon Web Services account. You can register for AWS at:
+ * https://aws-portal.amazon.com/gp/aws/developer/registration/index.html
+ *
+ * - Your account's Access Key ID and Secret Access Key:
+ * http://aws.amazon.com/security-credentials
+ *
+ * - A subscription to Amazon EC2. You can sign up for EC2 at:
+ * http://aws.amazon.com/ec2/
+ *
+ */
+public class StartVertSysServersTokyo {
+
+	/*
+	 * Before running the code: Fill in your AWS access credentials in the provided
+	 * credentials file template, and be sure to move the file to the default
+	 * location (C:\\Users\\<username>\\.aws\\credentials) where the sample code will
+	 * load the credentials from.
+	 * https://console.aws.amazon.com/iam/home?#security_credential
+	 *
+	 * WARNING: To avoid accidental leakage of your credentials, DO NOT keep the
+	 * credentials file in your source directory.
+	 */
+
+	public static void main(String[] args) throws Exception {
+
+		System.out.println("===========================================");
+		System.out.println("Verteilte Systeme AWS Demo (AWS Java SDK)");
+		System.out.println("===========================================");
+
+		/*
+		 * The ProfileCredentialsProvider will return your [default] credential profile
+		 * by reading from the credentials file located at
+		 * (C:\\Users\\<username>\\.aws\\credentials).
+		 */
+		ProfileCredentialsProvider credentialsProvider = new ProfileCredentialsProvider();
+		try {
+			credentialsProvider.getCredentials();
+		} catch (Exception e) {
+			throw new AmazonClientException("Cannot load the credentials from the credential profiles file. "
+					+ "Please make sure that your credentials file is at the correct "
+					+ "location (C:\\Users\\Sebastian\\.aws\\credentials), and is in valid format.", e);
+		}
+
+		// Tokyo
+		System.out.println("Instantiating EC2 Client for Tokyo...");
+		AmazonEC2 ec2 = AmazonEC2ClientBuilder.standard().withCredentials(credentialsProvider)
+				.withRegion("ap-northeast-1").build();
+
+		System.out.println("Loading user-data from file...");
+
+		byte[] encoded = Files.readAllBytes(Paths.get("src\\verteiltesysteme\\aws\\user-data.txt"));
+		String userData = Base64.getEncoder().encodeToString(encoded);
+
+		System.out.println("Starting instance in Tokyo...");
+		RunInstancesRequest runInstancesRequest = new RunInstancesRequest();
+		// Amazon Linux 2 LTS Candidate AMI 2017.12.0 (HVM), SSD Volume Type - ami-6be57d0d
+		runInstancesRequest.withImageId("ami-6be57d0d").withInstanceType("t2.nano").withMinCount(1).withMaxCount(1)
+				.withKeyName("srieger-amazon-aws-keypair").withUserData(userData)
+				.withSubnetId("subnet-1b8de752")
+				.withSecurityGroupIds("sg-12e96e6b");
+		RunInstancesResult result = ec2.runInstances(runInstancesRequest);
+		System.out.println(result);
+
+	}
+}
diff --git a/VerteilteSysteme-Examples/src/verteiltesysteme/aws/TCPTimeCounterRESTService.java b/VerteilteSysteme-Examples/src/verteiltesysteme/aws/TCPTimeCounterRESTService.java
index be853b6e479c90203ac3a1257cca036c277ae59c..58af5a1be7b36e64cba6681bc98f519979af6c6a 100644
--- a/VerteilteSysteme-Examples/src/verteiltesysteme/aws/TCPTimeCounterRESTService.java
+++ b/VerteilteSysteme-Examples/src/verteiltesysteme/aws/TCPTimeCounterRESTService.java
@@ -10,21 +10,22 @@ import com.amazonaws.services.s3.AmazonS3ClientBuilder;
 @Path(TCPTimeCounterRESTService.webContextPath)
 public class TCPTimeCounterRESTService {
 	static final String webContextPath = "/counter";
+
 	static final String bucketName = "vertsys-counter";
+	static final String bucketRegion = "eu-central-1";
+
 	static final String dnsNameELB = "VertSys-ELB1-b88aad9416b2929b.elb.eu-central-1.amazonaws.com";
 
 	private Long getCounter() {
 		// Verbindung zu S3
 		AmazonS3 s3Client = AmazonS3ClientBuilder.defaultClient();
-		String region = s3Client.getRegionName();
-		return new Long(s3Client.getObjectAsString(bucketName, region));
+		return new Long(s3Client.getObjectAsString(bucketName, bucketRegion));
 	}
 
 	private boolean setCounter(Long counter) {
 		// Verbindung zu S3
 		AmazonS3 s3Client = AmazonS3ClientBuilder.defaultClient();
-		String region = s3Client.getRegionName();
-		s3Client.putObject(bucketName, region, new Long(counter).toString());
+		s3Client.putObject(bucketName, bucketRegion, new Long(counter).toString());
 		return true;
 	}
 
diff --git a/VerteilteSysteme-Examples/src/verteiltesysteme/aws/TCPTimeCounterServer.java b/VerteilteSysteme-Examples/src/verteiltesysteme/aws/TCPTimeCounterServer.java
index 5cb40dc1f0d521339fc92133252d0dfc2168bc87..c4559c9b9df89df746c2f756b33368f7557f61eb 100644
--- a/VerteilteSysteme-Examples/src/verteiltesysteme/aws/TCPTimeCounterServer.java
+++ b/VerteilteSysteme-Examples/src/verteiltesysteme/aws/TCPTimeCounterServer.java
@@ -19,6 +19,7 @@ class TCPTimeCounterServer {
 	public static void main(String args[]) throws Exception {
 		int tcpPort = 36038;
 		String bucketName = "vertsys-counter";
+		String bucketRegion = "eu-central-1";
 		//String redisClusterURL = "vertsys-ec1-0001-002.71rxr9.0001.euc1.cache.amazonaws.com";
 		DateFormat df = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");
 
@@ -67,14 +68,13 @@ class TCPTimeCounterServer {
 
 				//Verbindung zu S3
 				AmazonS3 s3Client = AmazonS3ClientBuilder.defaultClient();
-				String region = s3Client.getRegionName();
-				if (!s3Client.doesObjectExist("vertsys-counter", region))
+				if (!s3Client.doesObjectExist("vertsys-counter", bucketRegion))
 				{
-					s3Client.putObject(bucketName, region, new Long(0).toString());
+					s3Client.putObject(bucketName, bucketRegion, new Long(0).toString());
 				}
-				long counter = new Long(s3Client.getObjectAsString(bucketName, region));
+				long counter = new Long(s3Client.getObjectAsString(bucketName, bucketRegion));
 				counter = counter + number;
-				s3Client.putObject(bucketName, region, new Long(counter).toString());
+				s3Client.putObject(bucketName, bucketRegion, new Long(counter).toString());
 
 				System.out.println("Anfrage von Client " + connectionSocket.getInetAddress() + ":" + connectionSocket.getPort() + " Zahl: " + number + " Z�hlerstand: " + counter);