public void DidEnterRegion(AltBeaconOrg.BoundBeacon.Region region)
		{
			// In this example, this class sends a notification to the user whenever a Beacon
			// matching a Region (defined above) are first seen.
			Log.Debug(TAG, "did enter region.");
			if (!haveDetectedBeaconsSinceBoot) 
			{
				Log.Debug(TAG, "auto launching MonitoringActivity");

				// The very first time since boot that we detect an beacon, we launch the
				// MainActivity
				var intent = new Intent(this, typeof(MainActivity));
				intent.SetFlags(ActivityFlags.NewTask);
				// Important:  make sure to add android:launchMode="singleInstance" in the manifest
				// to keep multiple copies of this activity from getting created if the user has
				// already manually launched the app.
				this.StartActivity(intent);
				haveDetectedBeaconsSinceBoot = true;
			} 
			else 
			{
				if (mainActivity != null) {
					Log.Debug(TAG, "I see a beacon again");
				} 
				else 
				{
					// If we have already seen beacons before, but the monitoring activity is not in
					// the foreground, we send a notification to the user on subsequent detections.
					Log.Debug(TAG, "Sending notification.");
					SendNotification();
				}
			}
		}
		public void DidExitRegion(AltBeaconOrg.BoundBeacon.Region region)
		{
			Log.Debug(TAG, "did exit region.");
		}
		public void DidDetermineStateForRegion(int state, AltBeaconOrg.BoundBeacon.Region region)
		{
		}
 public void DidDetermineStateForRegion(int state, AltBeaconOrg.BoundBeacon.Region region)
 {
     Log.Debug(TAG, "BeaconReferenceApplication.DidDetermineStateForRegion");
 }