diff --git a/README.md b/README.md
index fd33cef..5d498cb 100644
--- a/README.md
+++ b/README.md
@@ -13,53 +13,55 @@ Please refer to the API documentation on the [Beaconstac developer hub](https://
 1. Download or clone this repo on your system.
 2. Copy the [beaconstac-release.aar](https://github.com/Beaconstac/Android-SDK/blob/master/BeaconstacSDK/beaconstac-release.aar) file into the `libs` directory of your app. Refer the included sample app for example.
 3. In the `build.gradle` file of your project, add the following in the repositories section
-
-        flatDir {
-            dirs 'libs'
-        }
+```groovy
+flatDir {
+    dirs 'libs'
+}
+```
 
 4. In the `build.gradle` file of the app, add the following in the dependencies section:
-
-        compile (name: 'beaconstac-release', ext: 'aar')
-        compile 'com.mcxiaoke.volley:library:1.0.17'
-	    compile 'com.google.android.gms:play-services:8.1.0'
-	    compile 'com.crittercism:crittercism-android-agent:5.0.6'
+```groovy
+compile (name: 'beaconstac-release', ext: 'aar')
+compile 'com.mcxiaoke.volley:library:1.0.17'
+compile 'com.google.android.gms:play-services:8.1.0'
+compile 'com.crittercism:crittercism-android-agent:5.0.6
+```
 5. Refresh all Gradle projects.
 6. Create a file `beaconstac.xml` in the `values` folder containing configurations for Beaconstac SDK. 
-
-		
-        
-            
-            true
-            
-            
-            86400
-            
-            
-            
-                - CAMPED
 
-                - EXITED
 
-            
-
-            
-            true
-            
-            
-            900
-            
-            
-		    true
-
-            
-            
-            
-            
-            0
-            
-            
-		    com.mobstac.beaconstacexample.provider
-        
-
+```xml
+
+
+    
+    true
+    
+    
+    86400
+    
+    
+    
+        - CAMPED
 
+        - EXITED
 
+    
+
+    
+    true
+    
+    
+    900
+    
+    
+	    true
+
+    
+    
+    
+    
+    0
+    
+    
+	    com.mobstac.beaconstacexample.provider
+
+```
 7. Note :
 
 		Please do ensure that the organization_id and the api_key have been filled into the beaconstac.xml.
@@ -67,64 +69,73 @@ Please refer to the API documentation on the [Beaconstac developer hub](https://
        	If this is not set, the rules will not get triggered.
 
 8. Add `uses-feature` tag to app manifest:
-
-		
+```xml
+
+```
 9. Add the following permissions to app manifest:
-
-        
-        
-        
-        
-        
-        
+```xml
+
+
+
+
+
+
+```
 10. Add the Beaconstac BLEService to your app manifest:
-
-                
+```xml
+        
+```
 11. Should you choose to implement your own BroadcastReceiver (required if beacon detection has to work when the app is not running), extend `com.mobstac.beaconstac.core.BeaconstacReceiver` class and implement methods to handle the `rangedBeacons`, `campedOnBeacon`, `exitedBeacon`, `triggeredRule`, `enteredRegion` and `exitedRegion` events. The `BeaconstacExample` app contains an example of each type - directly using `BeaconstacReceiver` in the activity (this will require registering and unregistering it to receive intents in the activity itself), and extending `BeaconstacReceiver` and registering it to receive `actions` declared in the app manifest.
 12. Add the Beaconstac-provided actions in the app manifest that you wish to listen for, in your BroadcastReceiver. From the `BeaconstacExample` app manifest:
-
-        
-            
-                
-                
-                
-                
-                
-                
-                
-                
-            
-        
+```xml
+
+    
+        
+        
+        
+        
+        
+        
+        
+        
+    
+
+```
 13. Add `provider` to the manifest. Please implement your own ContentProvider that extends `com.mobstac.beaconstac.provider.MSContentProvider`. From the `BeaconstacExample` app:
-
-		
+```xml
+
+```
 14. To monitor beacon regions, configure the `UUID` and `region_identifier`.
-
-        // set region parameters (UUID and unique region identifier)
-        Beaconstac bstacInstance = Beaconstac.getInstance(this);
-        bstacInstance.setRegionParams("F94DBB23-2266-7822-3782-57BEAC0952AC",
-                "com.mobstac.beaconstacexample");
+```java
+// set region parameters (UUID and unique region identifier)
+Beaconstac bstacInstance = Beaconstac.getInstance(this);
+bstacInstance.setRegionParams("F94DBB23-2266-7822-3782-57BEAC0952AC",
+        "com.mobstac.beaconstacexample");
+```
 15. Call `startRangingBeacons` on the `Beaconstac` instance after configuring the params as mentioned in the previous step. The method will throw `MSException` on devices running Androi 17 or below.
-
-        // start scanning
-        bstacInstance.startRangingBeacons();
+```java
+// start scanning
+bstacInstance.startRangingBeacons();
+```
 16. If you want to stop scanning for beacons, call `stopRangingBeacons` on the `Beaconstac` instance. The method will throw `MSException` on devices running Androi 17 or below.
-
-        // stop scanning
-        bstacInstance.stopRangingBeacons();
+```java
+// stop scanning
+bstacInstance.stopRangingBeacons();
+```
 17. You can also dynamically set `organization_id` and `api_key` using `setOrgId` and `setDevToken` methods on the `Beaconstac` instance.
 18. Add `MSGeofenceTransitionIntentService` to manifest if you want to use the SDK's Geofence APIs.
-
-		
+```xml
+
+```
 19. Implement the `PlaceSyncReceiver` before calling `enableGeofences` on the `Beaconstac` instance.
 
 You can find more information and example usage in the `BeaconstacExample` app contained in the `examples` directory of this repo.