diff --git a/ivandocs/ACS-places-inapp.md b/ivandocs/ACS-places-inapp.md
new file mode 100644
index 0000000..bedde1d
--- /dev/null
+++ b/ivandocs/ACS-places-inapp.md
@@ -0,0 +1,34 @@
+# Adobe Campaign Standard
+## In-App Messaging with Adobe Experience Platform Location Service
+
+In this guide, we’ll show how you can use Adobe Experience Platform Location Service information to send In-App Messages or Local Notifications.
+
+Before we begin, this guide assumes that you have a mobile application already configured with the Adobe Experience Platform Mobile SDK, including the Adobe Campaign Standard extension.
+
+### Prerequisites
+1. Integrate the [Adobe Experience Platform Mobile SDK](https://aep-sdks.gitbook.io/docs/getting-started/get-the-sdk) into your app.
+2. Add the [Adobe Campaign Standard Extension](https://aep-sdks.gitbook.io/docs/using-mobile-extensions/adobe-campaign-standard) to your mobile app configuration.
+3. [Create one or more POIs](https://placesdocs.com/places-services-by-adobe-documentation/places-database-management-1/managing-pois-in-the-places-ui#create-a-poi) in the Places POI management interface.
+4. Install and configure the [Places]() and [Places Monitor Extensions]() in your mobile application
+
+### Sending In-App Messages based on Geo-fence entry or exit
+1. In your Adobe Campaign Standard instance, click **Create In-App message**.
+2. For the message type select **Target all users of a Mobile application**.
+3. Click **Next** and type the general details on the next screen.
+4. You’ll see on the left sidebar that you can now use a variety triggers related to Places.
+5. You can choose to have the in-app message display if the user has entered a POI geo-fence.
+6. You can also use metadata that defined in the Location Services UI to filter audience.
+
+ In this example I want to trigger an in-app message shown only to users that have entered one of my vacation resorts that are participating in a free drink program. I want to send my users a coupon when they arrive.
+ ![In-App Message Places Metadata](images/last-entered-vacation.png)
+8. Click the **Next** to finish creating the in-app message for delivery.
+![](images/prepare-ACS.png)
+
+To test the in-app message delivery, launch the application in Xcode or Android studio and use the location simulator to select a point of interest that will fit the messaging criteria.
+![](images/drink-coupon-on-app.PNG)
+
+
+Using Places with Adobe Campaign Standard gives you a powerful tool to segment and target your messaging to users based on geo-fence entries and extis. This simple integration opens the door for building out more personalized and contextual use cases.
+
+### Video Example
+https://youtu.be/ikiTTQw9c-o
diff --git a/ivandocs/ACS_Places_push.md b/ivandocs/ACS_Places_push.md
new file mode 100644
index 0000000..71091e5
--- /dev/null
+++ b/ivandocs/ACS_Places_push.md
@@ -0,0 +1,99 @@
+# Adobe Campaign Standard
+## Push Notifications with Experience Platform Location Service
+
+In this guide, we’ll show how you can use historical geo-location information to target push notifications delivered through Adobe Campaign Standard.
+
+Before we begin, this guide assumes that you have a mobile application already configured with the Adobe Experience Platform Mobile SDK, including the Adobe Campaign Standard extension.
+
+### Prerequisites
+
+1. Integrate the [Adobe Experience Platform Mobile SDK](https://aep-sdks.gitbook.io/docs/getting-started/get-the-sdk) into your app.
+2. Add the [Adobe Campaign Standard Extension](https://aep-sdks.gitbook.io/docs/using-mobile-extensions/adobe-campaign-standard) to your mobile app configuration.
+3. [Create one or more POIs](https://placesdocs.com/places-services-by-adobe-documentation/places-database-management-1/managing-pois-in-the-places-ui#create-a-poi) in Adobe Experience Platform Location Services.
+4. Enable and install the [Adobe Places extensions for Adobe Experience Platform Mobile SDKs]()
+
+
+## Create data elements in Experience Platform Launch
+
+After you verify that the Places and Places Monitor for Location Service extensions are working correctly in your application, create data elements in Experience Platform Launch. Data elements allow you to read the information that was provided by the extensions coming through the Mobile SDK event hub and act as an alias to retrieve data from the client application. Let’s create a few data elements to retrieve data from the Places extensions, so that we can send the Places information to Campaign.
+
+1. In of your Experience Platform Launch mobile property, click the **Data Elements** tab and click **Add Data Element**.
+2. In the **Extension** drop-down list, select **Places**.
+3. From the **Data Element Type** drop-down list, select **Name**.
+4. In the right-hand side pane, you can select **Current POI** which retrieves the name of the POI in which the user is currently located.
+
+ **Last Entered** retrieves the name of the POI that user last entered, and **Last Exited** provides the name of the POI that the user last left. For this example, we will selected **Last Entered** and type a name for the data element, such as **Last Entered POI Name** and clicked **Save**.
+
+![](images/ACS_Push1.png)
+
+5. Repeat the same steps above and create data elements for _Last Entered POI Latitude_, _Last Entered POI Longitude_, and _Last Entered POI Radius_.
+
+In addition to the data elements for Location Service, ensure that you create Mobile Core data elements for _App ID_ and _Experience Cloud ID_.
+
+## Create a rule to send location data to Adobe Campaign Standard
+
+Rules in Experience Platform Launch allow you to create complex, multi-solution workflows based on event triggers. What’s great about rules, is that you can create new rules or modify existing ones and have the updates dynamically deployed to your mobile applications. In this example we’ll create a rule that will be triggered when a user enters a geo-fenced POI. After the rule is triggered, an update is sent to Campaign to record an entry to a specific POI for a particular user based on the Experience Cloud ID.
+
+1. In your Launch mobile property click on the **Rules** tab and click **Add Rule**.
+2. Under the **Events** section click **+** and select **Places** as the extension.
+3. For the **Event Type** select **Enter POI**.
+4. Name the rule, for example, **User entered POI**.
+5. Click **Keep Changes**.
+6. The **Conditions** section allows you to filter or place restrictions on when this rule should fire. For now we will leave this blank.
+7. Under the **Actions** section click **+** to create a new action
+8. In the **Extension** drop-down list, select **Mobile Core,** and in the **Action Type** drop-down list, select **Send Postback**.
+9. For the **URL**, you need to construct your Campaign Standard locations endpoint. The URL should look similar to the one below. Ensure that you use the correct data elements that you created previously for your Campaign server and pKey. `https:///rest/head/mobileAppV5//locations/`
+10. Click the box to add a post body and send the following:
+
+ ```
+ {
+ "locationData": {
+ "distances": "{%%Last Entered POI Radius%%}",
+ "poiLabel": "{%%Last Entered POI Name%%}",
+ "latitude": "{%%Last Entered POI Lat%%}",
+ "longitude": "{%%Last Entered POI Long%%}",
+ "appId": "{%%AppID%%}",
+ "marketingCloudId": “{%%ecid%%}”
+ }
+ }
+ ```
+
+11. Ensure that you are using your specific data elements that you created in the previous section.
+12. In **Content Type**, type **application/json**.
+13. Click **Keep Changes** after you have this set up.
+14. It can be helpful to have a Slack web hook setup as an additional action to validate that entries are being triggered and that the right data is being collected.
+
+
+>Don’t forget to publish the recent changes to your app to make sure the rule and all of your data elements are deployed as part of your configuration. After publishing, you should launch the mobile application again to get the latest configuration updates.
+
+## Use location data to target Campaign Messages
+
+Now that we have location data populated in Campaign, we can use POIs as an audience segment tool.
+
+1. In your Adobe Campaign Standard instance, click **Create Push Notification**.
+2. For the push notification type, select **Send push to Campaign profiles**.
+3. Click **Next** and type the general details on the next screen.
+4. On the Audience screen, click **Count** to see to how many estimated user the push notification will be sent.
+
+*In this case, my count will equal three, as I have three devices that I have installed in which to test the application.*
+
+5. On the left sidebar, expand the **Profile** tab and drag the **POI location** filter to the main area
+6. In the POI filter window, enter the exact name of the POI that you want to target.
+
+*You can make additional selections to determine the range of time since the user’s last visit to this POI.*
+
+![](images/ACS_push2.png)
+
+7. Click **Confirm**.
+8. Run the count again at the top to see your audience size change. If you do not see your count update, you might have entered a POI name for which no devices have triggered an entry. This is where having the Slack web hook becomes valuable, because you can see a listing of POI entries from various test devices.
+9. You can drag out additional POI location filters to include multiple POIs in your message.
+10. Click **Next** to finish creating the push notification for delivery.
+
+![](images/ACS_push3.png)
+
+Using Location Service with Adobe Campaign Standard gives you a powerful tool to segment and target your messaging to users based on geo-fence entries and extis. This simple integration opens the door for building out more personalized and contextual use cases.
+
+
+
+
+
diff --git a/ivandocs/images/ACS_Push1.png b/ivandocs/images/ACS_Push1.png
new file mode 100644
index 0000000..0f7e38c
Binary files /dev/null and b/ivandocs/images/ACS_Push1.png differ
diff --git a/ivandocs/images/ACS_push2.png b/ivandocs/images/ACS_push2.png
new file mode 100644
index 0000000..b819bfe
Binary files /dev/null and b/ivandocs/images/ACS_push2.png differ
diff --git a/ivandocs/images/ACS_push3.png b/ivandocs/images/ACS_push3.png
new file mode 100644
index 0000000..815c489
Binary files /dev/null and b/ivandocs/images/ACS_push3.png differ
diff --git a/ivandocs/images/assets_places-services-by-adobe-documentation_-LkV62z8T4EeTryKeG9k_-LkV6CgPgoNnh1nS0E2M_4.png b/ivandocs/images/assets_places-services-by-adobe-documentation_-LkV62z8T4EeTryKeG9k_-LkV6CgPgoNnh1nS0E2M_4.png
new file mode 100644
index 0000000..1938595
Binary files /dev/null and b/ivandocs/images/assets_places-services-by-adobe-documentation_-LkV62z8T4EeTryKeG9k_-LkV6CgPgoNnh1nS0E2M_4.png differ
diff --git a/ivandocs/images/drink-coupon-on-app.PNG b/ivandocs/images/drink-coupon-on-app.PNG
new file mode 100644
index 0000000..6a9ca3d
Binary files /dev/null and b/ivandocs/images/drink-coupon-on-app.PNG differ
diff --git a/ivandocs/images/last-entered-vacation.png b/ivandocs/images/last-entered-vacation.png
new file mode 100644
index 0000000..958537f
Binary files /dev/null and b/ivandocs/images/last-entered-vacation.png differ
diff --git a/ivandocs/images/prepare-ACS.png b/ivandocs/images/prepare-ACS.png
new file mode 100644
index 0000000..1fe5f73
Binary files /dev/null and b/ivandocs/images/prepare-ACS.png differ
diff --git a/ivandocs/images/readme.md b/ivandocs/images/readme.md
new file mode 100644
index 0000000..c291c09
--- /dev/null
+++ b/ivandocs/images/readme.md
@@ -0,0 +1 @@
+images
diff --git a/ivandocs/validation.md b/ivandocs/validation.md
new file mode 100644
index 0000000..af44850
--- /dev/null
+++ b/ivandocs/validation.md
@@ -0,0 +1,64 @@
+# Adobe Experience Platform Location Service
+## Recommendations for testing Location Service
+
+As many customers and organizations will define points of interest across the globe, it becomes important to have a way to simulate and test how the Adobe Experience Platform Location Service will interact with your application.
+
+The guide below will assist in understanding ways to test and validate that Location Service entries and exits are being triggered properly based on points of interest defined and a user's current location.
+
+As environmental variables can be a factor in location signal and accuracy, it is recommended that you first establish baseline results working locally with developer tooling and simulated location entries. The goal here is to validate that all location events are correctly working.
+
+Once location events are correctly validated, solution integrations (i.e. Analytics, Target and Campaign) can be tested. Having Slack Webhooks setup with a postback and GPX files loaded into your individual development environment will help in testing.
+
+This plan assumes that Points of Interest have been created in Places.adobe.com and, the latest versions of the Places and Places Monitor extension are installed and configured properly in the application.
+
+
+
+
+| Step | Description | Expected Result |
+|------ |-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |-------------------------------------------------------------------------------------------------------------------------------------- |
+| 1 | Confirm that the proper manifest keys have been entered for Android to grant access to track location: https://placesdocs.com/places-services-by-adobe-documentation/configure-places-in-the-sdk/places-monitor-extension/using-the-places-monitor-extension#add-permissions-to-the-manifest | Confirmed |
+| 1a | Confirm background mode for location updates is enabled for your application. Also ensure that you have the appropriate plist keys setup in iOS to request user permission to track location: https://placesdocs.com/places-services-by-adobe-documentation/configure-places-in-the-sdk/places-monitor-extension/using-the-places-monitor-extension#enable-location-updates-in-background | Confirmed |
+| 2 | Confirm which monitoring mode is set for iOS. Note continuous mode allows for greater accuracy and persistence, but also more heavily drains battery life: https://placesdocs.com/places-services-by-adobe-documentation/configure-places-in-the-sdk/places-monitor-extension/places-monitor-api-reference#monitoring-mode-ios-only | Significant Changes or Continuous |
+| 3 | If using more than a single Library of POIs, confirm that the appropriate libraries have been selected in the Places extension for Launch | Confirmed |
+| 4 | Confirm that the latest versions of Mobile Core and Places / Places Monitor extensions have been bundled with the app via Gradle or CocoaPods | Confirmed - for more information on recent updates see: https://placesdocs.com/places-services-by-adobe-documentation/release-notes |
+| 5 | Confirm that the correct environments are configured for testing. Launch environment ID should match your Launch development environment | Confirmed |
+| 6 | Create GPX files for each POI that you want to test. GPX files can be used in local development environment to simulate a location entry. See links below for information on creating and using GPX files.
https://stackoverflow.com/questions/17292783/gpx-files-for-ios-simulator
https://mapstogpx.com/mobiledev.php
https://blackpixel.com/writing/2013/05/simulating-locations-with-xcode.html
https://qacumtester.wordpress.com/2014/02/27/location-testing-in-mobile-apps/ | GPX files created and loaded into app project |
+| 7 | Without doing anything else, you should be able to launch the application from Android Studio or XCode and see the appropriate alert to request access for tracking location. Grant "Always Allow" permission.
*Recommend using a real device connected to your computer over using device simulator.* | Location request prompt should display on application loaded through IDE |
+| 8 | Once Location permission has been accepted you should see in the application console messages that indicate ```"ACPExtensionEventName" : "requestgetnearbyplaces"```, has been called. Switching between different locations in XCode or Android studio should produce entry events for specific POIs | "ACPExtensionEventName" : "requestgetnearbyplaces" should be displayed as you simulate different locations. |
+| 9 | If the Location you have selected is close to nearby POIs the Monitor extension will start monitoring the 20 closest POIs from the current location. Message in the console will be similar to:```[AdobeExperienceSDK DEBUG ]: Received a new list of POIs from Places:```| Switching between different locations in XCode or Android studio should produce entry events for specific POIs |
+| 10 | Once you see the Places Monitor find nearby POIs - you will want to test sending location pings out. In Launch create a new rule with that uses the Places extension to trigger based on geo-fence entry. Then create a new action using Mobile Core to send a Postback. Creating a Slack Webhook app can be super helpful to see location entries and exits. For information on creating a Slack Webhook app see: https://api.slack.com/messaging/webhooks | |
+| 10a | In Launch make sure you have added data elements for the Places extension including:
Current POI name
Current POI lat
Current POI long
Last Entered name
Last Entered lat
Last Entered long
Last Exited name
Last Exited lat
Last Exited long
Timestamp | |
+| 10b | Create a new rule with an Event = Places → Enter POI | |
+| 10c | Create an an action = Mobile Core → Postback | |
+| 10d | Use the Webhook URL for your Slack app i.e.: https://hooks.slack.com/services/TKN5FKS68/BNFP7SVD….. | |
+| 10e | The post body would be similar to: ```{"text":"User is in POI - {%%Last Entered POI Name%%} in {%%Last Entered POI City%%} additional information: Radius:{%%Last Entered POI Radius%%} Timestamp: {%%timestamp%%}"}```
Be sure to use the specific data elements you created here. | |
+| 10f | Make sure to publish all of the new data element and rule changes in Launch(hint: select a working dev library in the upper right of the Launch interface) | |
+| 11 | Re-launch and re-test your application, flipping between GPX locations in the developer IDE | You should now see Slack notifications showing entries for each POI as you select different locations in your development environment. |
+| | **QUICK SUMMARY POINT**
All of this testing can be conducted locally without needing to go to a specific POI location. This validation testing helps to ensure that your application is correctly configured and has received the right permissions for location. This validation also helps to give you confidence that the points of interests defined are working correctly with the Places Monitor extension. Beyond this step, we will begin to test messaging in Campaign to see if the proper messages appear based on POI entries and exits. | |
+| | **Testing Adobe Campaign Standard In-App Messaging with Location Service.** | |
+| 12 | On the main Campaign dashboard configure a new In-App-Message (type = broadcast) | |
+| 12a | In triggers choose Places event type → Entry as the trigger | |
+| 12b | Choose Places Custom metadata as an additional filter → use POI type = Last Entered POI
*We use Last Entered here as the POI type as in most cases Last Entered will be the same as "Current POI" Current POI should only be used in instances where there are overlapping POI geo-fences, in which cases these POIs need to be RANKED and then the Current POI will display the top ranked POI out of the 2 or 3 geo-fences that a user may currently be in.* | |
+| 12c | Select a custom metadata key that will help you narrow which POIs will receive a message. | |
+| 12d | For frequency and duration - keep to only a single day or two, so that if you do not like the criteria you can expire the trigger in a quicker duration. | |
+| 12e | For Always/Once or Until click-through use ALWAYS so that you can test across multiple locations | In-app message is displayed ALWAYS when you simulate a location change that meets the appropriate metadata criteria. |
+| 12f | For the display - choose an option other than Local Notification (will be easier to see when testing with app in foreground) | |
+| 12g | Prepare/confirm and deploy the in-app message | |
+| 13 | Back in your development environment quit and re-launch the application to ensure that new campaign rules are downloaded | Do not forget that the applications must be completely re-launched for the new Campaign rules file to be downloaded to device. |
+| 14 | In your development application, switch locations using the previously created GPX files. | You should see the in-app message appear based on previous criteria set |
+| 15 | For the next test, we will essentially copy the same steps as before, but this time we will test LOCAL NOTIFICATION | Expected result - Local notifications displayed each time matching criteria is met. |
+| 16 | Configure a new In-App-Message (type = broadcast) | |
+| 16a | In triggers choose Places event type → Entry as the trigger | |
+| 16b | Choose Places Custom metadata as an additional filter → use POI type = Last Entered POI | |
+| 16c | Select a custom metadata key that will help you narrow which POIs will receive a message. | |
+| 16d | For frequency and duration - keep to only a single day or two, so that if you do not like the criteria you can expire the trigger in a quicker duration. | |
+| 16e | For Always/Once or Until click-through use ALWAYS | |
+| 16f | For display type choose Local Notification | |
+| 16g | Prepare/confirm and deploy the in-app message | |
+| 17 | In the developer environment you will want to connect your device and press play on the build. Once you have established that location is working, background the application and continue switching locations in Xcode or Android Studio. You should still see console read-outs indicating location change, you should also see local notifications displayed (may be a second or two delay) depending on the criteria set in your trigger. | Expected result - Local notifications displayed each time matching criteria is met. |
+| | **SUMMARY POINT**
At this stage, we should be seeing POI entries in our local environment. We should be able to see messaging from Campaign based on POI work as well. If there are failures, first check to see if a Slack notification did not go out. If there is no Slack message, check the application console as it is likely that for some reason a new location entry was not recorded. If results are successful, then we can be fairly sure that the application is performing correctly and that the Location and Campaign messaging service is also working correctly. | |
+| | **ON-SITE TESTING**
Not much should change when testing on location. Keeping the slack post-back active should help with understanding if the device is getting an entry and exit for location. | |
+| 18 | Conduct tests with devices starting out with wifi and cellular disabled and then enable once in POI region | If there is a failure make note if you are or are not getting a geo-fence entry and notification in Slack. What is the timestamp on the Slack notification? |
+| 19 | Conduct test with just cellular enabled with wifi turned off | |
+| 20 | Conduct test with both cellular and wifi turned on | |
+| | **SUMMARY POINT**
On-site testing should match closely to development testing. Keep in mind that there are some environmental factors that can come into play in determining a users location, such as duration of time spent in a POI geo-fence, availability of cell signal and strength of nearby wifi access points. | |