diff --git a/03.microservices/limits-service/src/main/resources/application.properties b/03.microservices/limits-service/src/main/resources/application.properties
deleted file mode 100644
index 42665721..00000000
--- a/03.microservices/limits-service/src/main/resources/application.properties
+++ /dev/null
@@ -1,4 +0,0 @@
-spring.application.name=limits-service
-
-limits-service.minimum=9
-limits-service.maximum=999
\ No newline at end of file
diff --git a/03.microservices/limits-service/src/main/resources/bootstrap.properties b/03.microservices/limits-service/src/main/resources/bootstrap.properties
new file mode 100644
index 00000000..2cd11cbe
--- /dev/null
+++ b/03.microservices/limits-service/src/main/resources/bootstrap.properties
@@ -0,0 +1,2 @@
+spring.application.name=limits-service
+spring.cloud.config.uri=http://localhost:8888
diff --git a/03.microservices/step09.md b/03.microservices/step09.md
new file mode 100644
index 00000000..15f6ff78
--- /dev/null
+++ b/03.microservices/step09.md
@@ -0,0 +1,450 @@
+
+## Complete Code Example
+
+
+### /git-localconfig-repo/limits-service-dev.properties
+
+```properties
+limits-service.minimum=1
+limits-service.maximum=111
+```
+---
+
+### /git-localconfig-repo/limits-service-qa.properties
+
+```properties
+limits-service.minimum=2
+limits-service.maximum=222
+```
+---
+
+### /git-localconfig-repo/limits-service.properties
+
+```properties
+limits-service.minimum=8
+limits-service.maximum=888
+```
+---
+
+### /limits-service/pom.xml
+
+```xml
+
+
+ 4.0.0
+
+ com.in28minutes.microservices
+ limits-service
+ 0.0.1-SNAPSHOT
+ jar
+
+ limits-service
+ Demo project for Spring Boot
+
+
+ org.springframework.boot
+ spring-boot-starter-parent
+ 2.0.0.M3
+
+
+
+
+ UTF-8
+ UTF-8
+ 1.8
+ Finchley.M2
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-actuator
+
+
+ org.springframework.cloud
+ spring-cloud-starter-config
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+
+ org.springframework.boot
+ spring-boot-devtools
+ runtime
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+
+
+
+
+ org.springframework.cloud
+ spring-cloud-dependencies
+ ${spring-cloud.version}
+ pom
+ import
+
+
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+
+
+
+ spring-snapshots
+ Spring Snapshots
+ https://repo.spring.io/snapshot
+
+ true
+
+
+
+ spring-milestones
+ Spring Milestones
+ https://repo.spring.io/milestone
+
+ false
+
+
+
+
+
+
+ spring-snapshots
+ Spring Snapshots
+ https://repo.spring.io/snapshot
+
+ true
+
+
+
+ spring-milestones
+ Spring Milestones
+ https://repo.spring.io/milestone
+
+ false
+
+
+
+
+
+
+```
+---
+
+### /limits-service/src/main/java/com/in28minutes/microservices/limitsservice/bean/LimitConfiguration.java
+
+```java
+package com.in28minutes.microservices.limitsservice.bean;
+
+public class LimitConfiguration {
+ private int maximum;
+ private int minimum;
+
+ protected LimitConfiguration() {
+
+ }
+
+ public LimitConfiguration(int maximum, int minimum) {
+ super();
+ this.maximum = maximum;
+ this.minimum = minimum;
+ }
+
+ public int getMaximum() {
+ return maximum;
+ }
+
+ public int getMinimum() {
+ return minimum;
+ }
+
+}
+```
+---
+
+### /limits-service/src/main/java/com/in28minutes/microservices/limitsservice/Configuration.java
+
+```java
+package com.in28minutes.microservices.limitsservice;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.stereotype.Component;
+
+@Component
+@ConfigurationProperties("limits-service")
+public class Configuration {
+
+ private int minimum;
+ private int maximum;
+
+ public void setMinimum(int minimum) {
+ this.minimum = minimum;
+ }
+
+ public void setMaximum(int maximum) {
+ this.maximum = maximum;
+ }
+
+ public int getMinimum() {
+ return minimum;
+ }
+
+ public int getMaximum() {
+ return maximum;
+ }
+
+}
+```
+---
+
+### /limits-service/src/main/java/com/in28minutes/microservices/limitsservice/LimitsConfigurationController.java
+
+```java
+package com.in28minutes.microservices.limitsservice;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.in28minutes.microservices.limitsservice.bean.LimitConfiguration;
+
+@RestController
+public class LimitsConfigurationController {
+
+ @Autowired
+ private Configuration configuration;
+
+ @GetMapping("/limits")
+ public LimitConfiguration retrieveLimitsFromConfigurations() {
+ return new LimitConfiguration(configuration.getMaximum(),
+ configuration.getMinimum());
+ }
+
+}
+```
+---
+
+### /limits-service/src/main/java/com/in28minutes/microservices/limitsservice/LimitsServiceApplication.java
+
+```java
+package com.in28minutes.microservices.limitsservice;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+@SpringBootApplication
+public class LimitsServiceApplication {
+ public static void main(String[] args) {
+ SpringApplication.run(LimitsServiceApplication.class, args);
+ }
+}
+```
+---
+
+### /limits-service/src/main/resources/bootstrap.properties
+
+```properties
+spring.application.name=limits-service
+spring.cloud.config.uri=http://localhost:8888
+```
+---
+
+### /limits-service/src/test/java/com/in28minutes/microservices/limitsservice/LimitsServiceApplicationTests.java
+
+```java
+package com.in28minutes.microservices.limitsservice;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringRunner;
+
+@RunWith(SpringRunner.class)
+@SpringBootTest
+public class LimitsServiceApplicationTests {
+
+ @Test
+ public void contextLoads() {
+ }
+
+}
+```
+---
+
+### /spring-cloud-config-server/pom.xml
+
+```xml
+
+
+ 4.0.0
+
+ com.in28minutes.microservices
+ spring-cloud-config-server
+ 0.0.1-SNAPSHOT
+ jar
+
+ spring-cloud-config-server
+ Demo project for Spring Boot
+
+
+ org.springframework.boot
+ spring-boot-starter-parent
+ 2.0.0.M3
+
+
+
+
+ UTF-8
+ UTF-8
+ 1.8
+ Finchley.M2
+
+
+
+
+ org.springframework.cloud
+ spring-cloud-config-server
+
+
+
+ org.springframework.boot
+ spring-boot-devtools
+ runtime
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+
+
+
+
+ org.springframework.cloud
+ spring-cloud-dependencies
+ ${spring-cloud.version}
+ pom
+ import
+
+
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+
+
+
+ spring-snapshots
+ Spring Snapshots
+ https://repo.spring.io/snapshot
+
+ true
+
+
+
+ spring-milestones
+ Spring Milestones
+ https://repo.spring.io/milestone
+
+ false
+
+
+
+
+
+
+ spring-snapshots
+ Spring Snapshots
+ https://repo.spring.io/snapshot
+
+ true
+
+
+
+ spring-milestones
+ Spring Milestones
+ https://repo.spring.io/milestone
+
+ false
+
+
+
+
+
+
+```
+---
+
+### /spring-cloud-config-server/src/main/java/com/in28minutes/microservices/springcloudconfigserver/SpringCloudConfigServerApplication.java
+
+```java
+package com.in28minutes.microservices.springcloudconfigserver;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.cloud.config.server.EnableConfigServer;
+
+@EnableConfigServer
+@SpringBootApplication
+public class SpringCloudConfigServerApplication {
+
+ public static void main(String[] args) {
+ SpringApplication.run(SpringCloudConfigServerApplication.class, args);
+ }
+}
+```
+---
+
+### /spring-cloud-config-server/src/main/resources/application.properties
+
+```properties
+spring.application.name=spring-cloud-config-server
+server.port=8888
+spring.cloud.config.server.git.uri=file:///in28Minutes/git/spring-micro-services/03.microservices/git-localconfig-repo
+```
+---
+
+### /spring-cloud-config-server/src/test/java/com/in28minutes/microservices/springcloudconfigserver/SpringCloudConfigServerApplicationTests.java
+
+```java
+package com.in28minutes.microservices.springcloudconfigserver;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringRunner;
+
+@RunWith(SpringRunner.class)
+@SpringBootTest
+public class SpringCloudConfigServerApplicationTests {
+
+ @Test
+ public void contextLoads() {
+ }
+
+}
+```
+---
diff --git a/03.microservices/step09.zip b/03.microservices/step09.zip
new file mode 100644
index 00000000..64f1fdd7
Binary files /dev/null and b/03.microservices/step09.zip differ