diff --git a/docs/html/training/wearables/data-layer/index.jd b/docs/html/training/wearables/data-layer/index.jd index b49ea4d45c3e1..df7c216a743dd 100644 --- a/docs/html/training/wearables/data-layer/index.jd +++ b/docs/html/training/wearables/data-layer/index.jd @@ -91,6 +91,17 @@ devices. For instance, don't try to open low-level sockets to create a communica channel.

+

Android Wear supports multiple wearables connected to a handheld device. For example, when the +user saves a note on a handheld, it automatically appears on both of the user's Wear devices. To +synchronize data between devices, Google’s servers host a cloud node in the network of devices. The +system synchronizes data to directly connected devices, the cloud node, and to wearable devices +connected to the cloud node via Wi-Fi.

+ + +

Figure 1. A sample network of nodes with +handheld and wearable devices.

+ +

Lessons

Accessing the Wearable Data Layer
diff --git a/docs/html/training/wearables/data-layer/messages.jd b/docs/html/training/wearables/data-layer/messages.jd index 0ca55ba66c63e..0826e6b47e261 100644 --- a/docs/html/training/wearables/data-layer/messages.jd +++ b/docs/html/training/wearables/data-layer/messages.jd @@ -26,42 +26,191 @@ Unlike with data items, there is no syncing between the handheld and wearable ap Messages are a one-way communication mechanism that's good for remote procedure calls (RPC), such as sending a message to the wearable to start an activity.

-

Send a Message

+

Multiple wearable devices can be connected to a user’s handheld device. Each connected device in +the network is considered a node. With multiple connected devices, you must consider which +nodes receive the messages. For example, In a voice transcription app that receives voice data on +the wearable device, you should send the message to a node with the processing power and battery +capacity to handle the request, such as a handheld device.

-

The following example shows how to send a message that indicates to the other -side of the connection to start an activity. -This call is synchronous and blocks processing until the message is received or until the request -times out:

- -

Note: Read more about asynchronous and synchronous calls -to Google Play services and when to use each in -Communicate with Google Play Services. +

Note: +With versions of Google Play services prior to 7.3.0, only one wearable device could be connected to +a handheld device at a time. You may need to update your existing code to take the multiple +connected nodes feature into consideration. If you don’t implement the changes, your messages may +not get delivered to intended devices.

+

Send a Message

+ +

A wearable app can provide functionality for users such as voice +transcription. Users can speak into their wearable device's microphone, and have a transcription +saved to a note. Since a wearable device typically does not have the processing power and battery +capacity required to handle the voice transcription activity, the app should offload this work to a +more capable, connected device.

+ +

The following sections show you how to advertise device nodes that can process activity +requests, discover the nodes capable of fulfilling a requested need, and send messages to those +nodes. +

+ +

Advertise capabilities

+ +

To launch an activity on a handheld device from a wearable device, use the +MessageApi +class to send the request. Since multiple wearables can be connected to the handheld device, the +wearable app needs to determine that a connected node is capable of launching the activity. In your +handheld app, advertise that the node it runs on provides specific capabilities.

+ +

To advertise the capabilities of your handheld app:

+ +
    +
  1. Create an XML configuration file in the res/values/ directory of your project and + name it wear.xml. +
  2. +
  3. Add a resource named android_wear_capabilities to wear.xml. +
  4. +
  5. Define capabilities that the device provides. +
  6. +
+ +

Note: +Capabilities are custom strings that you define and must be unique within your app. +

+ +

The following example shows how to add a capability named voice_transcription to +wear.xml:

+
-GoogleApiClient mGoogleApiClient;
-public static final String START_ACTIVITY_PATH = "/start/MainActivity";
+<resources>
+    <string-array name="android_wear_capabilities">
+        <item>voice_transcription</item>
+    </string-array>
+</resources>
+
+ +

Retrieve the nodes with the required capabilities

+ +

Initially, you can detect the capable nodes by calling the CapabilityApi.getCapability() +method. +The following example shows how to manually retrieve the results of reachable nodes with the +voice_transcription capability:

+ +
+private static final String
+        VOICE_TRANSCRIPTION_CAPABILITY_NAME = "voice_transcription";
+
+private GoogleApiClient mGoogleApiClient;
+
 ...
 
-private void sendStartActivityMessage(String nodeId) {
-    Wearable.MessageApi.sendMessage(
-      mGoogleApiClient, nodeId, START_ACTIVITY_PATH, new byte[0]).setResultCallback(
-          new ResultCallback<SendMessageResult>() {
-              @Override
-              public void onResult(SendMessageResult sendMessageResult) {
-                  if (!sendMessageResult.getStatus().isSuccess()) {
-                      Log.e(TAG, "Failed to send message with status code: "
-                              + sendMessageResult.getStatus().getStatusCode());
-                  }
-              }
-          }
-      );
+private void setupVoiceTranscription() {
+    CapabilityApi.GetCapabilityResult result =
+            Wearable.CapabilityApi.getCapability(
+                    mGoogleApiClient, VOICE_TRANSCRIPTION_CAPABILITY_NAME,
+                    CapabilityApi.FILTER_REACHABLE).await();
+
+    updateTranscriptionCapability(result.getCapability());
 }
 
-

-Here's a simple way to get a list of connected nodes that you can potentially -send messages to:

+

To detect capable nodes as they connect to the wearable device, register a CapabilityApi.CapabilityListener() +instance to your GoogleApiClient. +The following example shows how to register the listener and retrieve the results of reachable nodes +with the voice_transcription capability:

+ +
+private void setupVoiceTranscription() {
+    ...
+
+    CapabilityApi.CapabilityListener capabilityListener =
+            new CapabilityApi.CapabilityListener() {
+                @Override
+                public void onCapabilityChanged(CapabilityInfo capabilityInfo) {
+                    updateTranscriptionCapability(capabilityInfo);
+                }
+            };
+
+    Wearable.CapabilityApi.addCapabilityListener(
+            mGoogleApiClient,
+            capabilityListener,
+            VOICE_TRANSCRIPTION_CAPABILITY_NAME);
+}
+
+ +

After detecting the capable nodes, determine where to send the message. You should pick a node +that is in close proximity to your wearable device to +minimize message routing through multiple nodes. A nearby node is defined as one that is directly +connected to the device. To determine if a node is nearby, call the Node.isNearby() +method.

+ +

The following example shows how you might determine the best node to use:

+ +
+private String transcriptionNodeId = null;
+
+private void updateTranscriptionCapability(CapabilityInfo capabilityInfo) {
+    Set<Node> connectedNodes = capabilityInfo.getNodes();
+
+    transcriptionNodeId = pickBestNodeId(connectedNodes);
+}
+
+private String pickBestNodeId(Set<Node> nodes) {
+    String bestNodeId = null;
+    // Find a nearby node or pick one arbitrarily
+    for (Node node : nodes) {
+        if (node.isNearby()) {
+            return node.getId();
+         }
+         bestNodeId = node.getId();
+    }
+    return bestNodeId;
+}
+
+ +

Deliver the message

+ +

Once you’ve identified the best node to use, send the message using the +MessageApi +class.

+ +

The following example shows how to send a message to the transcription-capable node from a +wearable device. Verify that the node is available before you attempt to send the message. This call +is synchronous and blocks processing until the message is received or until the request times out. +

+ +
+
+public static final String VOICE_TRANSCRIPTION_MESSAGE_PATH = "/voice_transcription";
+
+private void requestTranscription(byte[] voiceData) {
+    if (transcriptionNodeId != null) {
+        Wearable.MessageApi.sendMessage(googleApiClient, transcriptionNodeId,
+            VOICE_TRANSCRIPTION_MESSAGE_PATH, voiceData).setResultCallback(
+                  new ResultCallback() {
+                      @Override
+                      public void onResult(SendMessageResult sendMessageResult) {
+                          if (!sendMessageResult.getStatus().isSuccess()) {
+                              // Failed to send message
+                          }
+                      }
+                  }
+            );
+    } else {
+        // Unable to retrieve node with transcription capability
+    }
+}
+
+ +

Note: To learn more about asynchronous and synchronous calls +to Google Play services and when to use each, see +Communicate with Google Play +Services. +

+ +

You can also broadcast messages to all connected nodes. To retrieve all of the +connected nodes that you can send messages to, implement the following code:

 private Collection<String> getNodes() {
@@ -78,22 +227,24 @@ private Collection<String> getNodes() {
 

Receive a Message

-To be notified of received messages, you implement the +To be notified of received messages, implement the -MessageListener interface to provide a listener for message events. Then you register your -listener with the +MessageListener interface to provide a listener for message events. Then, +register the listener with the -MessageApi.addListener() method. This example shows how you might implement the listener -to check the START_ACTIVITY_PATH that the previous example used to send the message. -If this condition is true, a specific activity is started. +MessageApi.addListener() method. This example shows how you might implement the +listener to check the VOICE_TRANSCRIPTION_MESSAGE_PATH. If this condition is +true, start an activity to process the voice +data.

 @Override
 public void onMessageReceived(MessageEvent messageEvent) {
-    if (messageEvent.getPath().equals(START_ACTIVITY_PATH)) {
+    if (messageEvent.getPath().equals(VOICE_TRANSCRIPTION_MESSAGE_PATH)) {
         Intent startIntent = new Intent(this, MainActivity.class);
         startIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+        startIntent.putExtra("VOICE_DATA", messageEvent.getData());
         startActivity(startIntent);
     }
 }
diff --git a/docs/html/wear/images/wear_cloud_node.png b/docs/html/wear/images/wear_cloud_node.png
new file mode 100644
index 0000000000000..602e2476521b3
Binary files /dev/null and b/docs/html/wear/images/wear_cloud_node.png differ
diff --git a/docs/image_sources/training/wear/wear_cloud_node.graffle b/docs/image_sources/training/wear/wear_cloud_node.graffle
new file mode 100644
index 0000000000000..8a3e4b5ff8c90
--- /dev/null
+++ b/docs/image_sources/training/wear/wear_cloud_node.graffle
@@ -0,0 +1,4333 @@
+
+
+
+
+	ApplicationVersion
+	
+		com.omnigroup.OmniGraffle6
+		156.11.0.206384
+	
+	CreationDate
+	2015-04-10 16:36:28 +0000
+	Creator
+	Luan Nguyen
+	FileType
+	flat
+	GraphDocumentVersion
+	11
+	GuidesLocked
+	NO
+	GuidesVisible
+	YES
+	ImageCounter
+	3
+	LinksVisible
+	NO
+	MagnetsVisible
+	NO
+	MasterSheets
+	
+	ModificationDate
+	2015-04-15 20:46:45 +0000
+	Modifier
+	Luan Nguyen
+	NotesVisible
+	NO
+	OriginVisible
+	NO
+	PageBreaks
+	NO
+	PrintInfo
+	
+		NSBottomMargin
+		
+			float
+			40
+		
+		NSLeftMargin
+		
+			float
+			18
+		
+		NSPaperSize
+		
+			size
+			{612, 792}
+		
+		NSRightMargin
+		
+			float
+			18
+		
+		NSTopMargin
+		
+			float
+			18
+		
+	
+	ReadOnly
+	NO
+	Sheets
+	
+		
+			ActiveLayerIndex
+			0
+			AutoAdjust
+			
+			BackgroundGraphic
+			
+				Bounds
+				{{0, 0}, {330, 375}}
+				Class
+				SolidGraphic
+				ID
+				2
+				Style
+				
+					stroke
+					
+						Draws
+						NO
+					
+				
+			
+			BaseZoom
+			0
+			CanvasOrigin
+			{0, 0}
+			CanvasSize
+			{330, 375}
+			ColumnAlign
+			1
+			ColumnSpacing
+			36
+			DisplayScale
+			1.0 pt = 1.0 px
+			GraphicsList
+			
+				
+					Bounds
+					{{66.75, 134.93730967886808}, {109.5, 28.169700000000034}}
+					Class
+					ShapedGraphic
+					FontInfo
+					
+						Color
+						
+							b
+							0
+							g
+							0
+							r
+							0
+						
+						Font
+						Roboto-BoldCondensed
+						Size
+						10
+					
+					ID
+					1976
+					Layer
+					0
+					Line
+					
+						ID
+						1893
+						Position
+						0.61324973965300955
+						RotationType
+						0
+					
+					Magnets
+					
+						{1, 1}
+						{1, -1}
+						{-1, -1}
+						{-1, 1}
+						{0, 1}
+						{0, -1}
+						{1, 0}
+						{-1, 0}
+						{-0.5, -0.233518}
+						{-0.49144199999999999, 0.26006299999999999}
+						{0.50711799999999996, -0.22408600000000001}
+						{0.50711799999999996, 0.267179}
+						{-0.27431, -0.474028}
+						{0.27977999999999997, -0.47847800000000001}
+						{0.29393799999999998, 0.54304399999999997}
+						{-0.28623199999999999, 0.55380399999999996}
+					
+					Shape
+					Rectangle
+					Style
+					
+						fill
+						
+							Color
+							
+								b
+								0.938075
+								g
+								0.938269
+								r
+								0.938154
+							
+						
+						shadow
+						
+							Color
+							
+								a
+								0.35
+								b
+								0.328823
+								g
+								0.328823
+								r
+								0.328823
+							
+							Fuzziness
+							1.5349206924438477
+							ShadowVector
+							{0, 1}
+						
+						stroke
+						
+							Color
+							
+								b
+								0.472997
+								g
+								0.473094
+								r
+								0.473036
+							
+							CornerRadius
+							2
+							Draws
+							NO
+						
+					
+					Text
+					
+						Text
+						{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
+{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
+
+\f0\b\fs24 \cf0 Mobile data/Wi-Fi}
+						VerticalPad
+						0
+					
+				
+				
+					Bounds
+					{{234, 92.968750000000014}, {49, 28.169700000000034}}
+					Class
+					ShapedGraphic
+					FontInfo
+					
+						Color
+						
+							b
+							0
+							g
+							0
+							r
+							0
+						
+						Font
+						Roboto-BoldCondensed
+						Size
+						10
+					
+					ID
+					1975
+					Layer
+					0
+					Magnets
+					
+						{1, 1}
+						{1, -1}
+						{-1, -1}
+						{-1, 1}
+						{0, 1}
+						{0, -1}
+						{1, 0}
+						{-1, 0}
+						{-0.5, -0.233518}
+						{-0.49144199999999999, 0.26006299999999999}
+						{0.50711799999999996, -0.22408600000000001}
+						{0.50711799999999996, 0.267179}
+						{-0.27431, -0.474028}
+						{0.27977999999999997, -0.47847800000000001}
+						{0.29393799999999998, 0.54304399999999997}
+						{-0.28623199999999999, 0.55380399999999996}
+					
+					Shape
+					Rectangle
+					Style
+					
+						fill
+						
+							Color
+							
+								b
+								0.938075
+								g
+								0.938269
+								r
+								0.938154
+							
+						
+						shadow
+						
+							Color
+							
+								a
+								0.35
+								b
+								0.328823
+								g
+								0.328823
+								r
+								0.328823
+							
+							Fuzziness
+							1.5349206924438477
+							ShadowVector
+							{0, 1}
+						
+						stroke
+						
+							Color
+							
+								b
+								0.472997
+								g
+								0.473094
+								r
+								0.473036
+							
+							CornerRadius
+							2
+							Draws
+							NO
+						
+					
+					Text
+					
+						Text
+						{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
+{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
+
+\f0\b\fs24 \cf0 Wi-Fi}
+						VerticalPad
+						0
+					
+				
+				
+					Bounds
+					{{85.5, 252.41406223966777}, {72, 28.169700000000034}}
+					Class
+					ShapedGraphic
+					FontInfo
+					
+						Color
+						
+							b
+							0
+							g
+							0
+							r
+							0
+						
+						Font
+						Roboto-BoldCondensed
+						Size
+						10
+					
+					ID
+					155
+					Layer
+					0
+					Line
+					
+						ID
+						1895
+						Position
+						0.48590017216177767
+						RotationType
+						0
+					
+					Magnets
+					
+						{1, 1}
+						{1, -1}
+						{-1, -1}
+						{-1, 1}
+						{0, 1}
+						{0, -1}
+						{1, 0}
+						{-1, 0}
+						{-0.5, -0.233518}
+						{-0.49144199999999999, 0.26006299999999999}
+						{0.50711799999999996, -0.22408600000000001}
+						{0.50711799999999996, 0.267179}
+						{-0.27431, -0.474028}
+						{0.27977999999999997, -0.47847800000000001}
+						{0.29393799999999998, 0.54304399999999997}
+						{-0.28623199999999999, 0.55380399999999996}
+					
+					Shape
+					Rectangle
+					Style
+					
+						fill
+						
+							Color
+							
+								b
+								0.938075
+								g
+								0.938269
+								r
+								0.938154
+							
+						
+						shadow
+						
+							Color
+							
+								a
+								0.35
+								b
+								0.328823
+								g
+								0.328823
+								r
+								0.328823
+							
+							Fuzziness
+							1.5349206924438477
+							ShadowVector
+							{0, 1}
+						
+						stroke
+						
+							Color
+							
+								b
+								0.472997
+								g
+								0.473094
+								r
+								0.473036
+							
+							CornerRadius
+							2
+							Draws
+							NO
+						
+					
+					Text
+					
+						Text
+						{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
+{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
+
+\f0\b\fs24 \cf0 Bluetooth}
+						VerticalPad
+						0
+					
+				
+				
+					Class
+					Group
+					Graphics
+					
+						
+							Bounds
+							{{42.947532278010186, 15.40233227120396}, {169.1049769052272, 11.625478289816014}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									a
+									0.65
+									b
+									0
+									g
+									0
+									r
+									0
+								
+								Font
+								Roboto-Condensed
+								Size
+								12
+							
+							ID
+							1972
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Draws
+									NO
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+							Text
+							
+								Pad
+								2
+								RTFD
+								
+								BAtzdHJlYW10
+								eXBlZIHoA4QB
+								QISEhBJOU0F0
+								dHJpYnV0ZWRT
+								dHJpbmcAhIQI
+								TlNPYmplY3QA
+								hZKEhIQITlNT
+								dHJpbmcBlIQB
+								Kw5Hb29nbGUg
+								U2VydmVyc4aE
+								AmlJAQ6ShISE
+								DE5TRGljdGlv
+								bmFyeQCUhAFp
+								A5KElpYHTlND
+								b2xvcoaShISE
+								B05TQ29sb3IA
+								lIQBYwOEAmZm
+								AINmZiY/hpKE
+								lpYQTlNQYXJh
+								Z3JhcGhTdHls
+								ZYaShISEEE5T
+								UGFyYWdyYXBo
+								U3R5bGUAlIQE
+								Q0NAUwIAhISE
+								B05TQXJyYXkA
+								lJkMkoSEhAlO
+								U1RleHRUYWIA
+								lIQCQ2YAHIaS
+								hKKhADiGkoSi
+								oQBUhpKEoqEA
+								cIaShKKhAIGM
+								AIaShKKhAIGo
+								AIaShKKhAIHE
+								AIaShKKhAIHg
+								AIaShKKhAIH8
+								AIaShKKhAIEY
+								AYaShKKhAIE0
+								AYaShKKhAIFQ
+								AYaGAIaShJaW
+								Bk5TRm9udIaS
+								hISEBk5TRm9u
+								dB6UmRyEBVsy
+								OGNdBgAAABQA
+								AAD//kgAZQBs
+								AHYAZQB0AGkA
+								YwBhAIQBZgyb
+								AJsBmwCbAIaG
+								hg==
+								
+								Text
+								{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
+{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;\red0\green0\blue0;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural\qc
+
+\f0\fs24 \cf2 Google Servers}
+								alpha
+								
+									
+										0
+										14
+										0.64999997615814209
+									
+								
+							
+						
+						
+							Bounds
+							{{27.500000000000043, 31.027813195885251}, {199.99999999999991, 96.972186804114742}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									a
+									0.65
+									w
+									0
+								
+								Font
+								Roboto-BoldCondensed
+								Size
+								12
+							
+							ID
+							1973
+							Magnets
+							
+								{0, 1}
+								{0, -1}
+								{1, 0}
+								{-1, 0}
+							
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Draws
+									NO
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Color
+									
+										b
+										0.578326
+										g
+										0.578615
+										r
+										0.578453
+									
+									CornerRadius
+									5
+									Pattern
+									1
+								
+							
+							Text
+							
+								VerticalPad
+								10
+							
+							TextPlacement
+							0
+						
+					
+					ID
+					1971
+					Layer
+					0
+				
+				
+					Class
+					LineGraphic
+					FontInfo
+					
+						Color
+						
+							w
+							0
+						
+						Font
+						Roboto-BoldCondensed
+						Size
+						12
+					
+					Head
+					
+						ID
+						251
+					
+					ID
+					1895
+					Layer
+					0
+					OrthogonalBarAutomatic
+					
+					OrthogonalBarPoint
+					{293, 271.5}
+					OrthogonalBarPosition
+					-1
+					Points
+					
+						{121.5, 232}
+						{121.5, 303}
+					
+					Style
+					
+						stroke
+						
+							Color
+							
+								a
+								0.7
+								b
+								0
+								g
+								0
+								r
+								0
+							
+							CornerRadius
+							4
+							HeadArrow
+							FilledArrow
+							Legacy
+							
+							LineType
+							2
+							TailArrow
+							FilledArrow
+						
+					
+					Tail
+					
+						ID
+						250
+					
+				
+				
+					Class
+					LineGraphic
+					FontInfo
+					
+						Color
+						
+							w
+							0
+						
+						Font
+						Roboto-BoldCondensed
+						Size
+						12
+					
+					Head
+					
+						ID
+						252
+					
+					ID
+					198
+					Layer
+					0
+					OrthogonalBarAutomatic
+					
+					OrthogonalBarPoint
+					{0, 0}
+					OrthogonalBarPosition
+					-1
+					Points
+					
+						{180.49999999999997, 71.915149999999997}
+						{257.5, 104.58485}
+						{257.5, 181.83030000000002}
+					
+					Style
+					
+						stroke
+						
+							Color
+							
+								a
+								0.7
+								b
+								0
+								g
+								0
+								r
+								0
+							
+							CornerRadius
+							4
+							HeadArrow
+							FilledArrow
+							Legacy
+							
+							LineType
+							2
+							TailArrow
+							FilledArrow
+						
+					
+					Tail
+					
+						ID
+						158
+						Info
+						7
+					
+				
+				
+					Class
+					LineGraphic
+					FontInfo
+					
+						Color
+						
+							w
+							0
+						
+						Font
+						Roboto-BoldCondensed
+						Size
+						12
+					
+					Head
+					
+						ID
+						250
+					
+					ID
+					1893
+					Layer
+					0
+					OrthogonalBarAutomatic
+					
+					OrthogonalBarPoint
+					{293, 271.5}
+					OrthogonalBarPosition
+					-1
+					Points
+					
+						{121.5, 97}
+						{121.5, 181.83029999999999}
+					
+					Style
+					
+						stroke
+						
+							Color
+							
+								a
+								0.7
+								b
+								0
+								g
+								0
+								r
+								0
+							
+							CornerRadius
+							4
+							HeadArrow
+							FilledArrow
+							Legacy
+							
+							LineType
+							2
+							TailArrow
+							FilledArrow
+						
+					
+					Tail
+					
+						ID
+						158
+					
+				
+				
+					Bounds
+					{{212.5, 181.83029999999999}, {90, 50.169699999999999}}
+					Class
+					ShapedGraphic
+					FontInfo
+					
+						Color
+						
+							b
+							0
+							g
+							0
+							r
+							0
+						
+						Font
+						Roboto-BoldCondensed
+						Size
+						10
+					
+					ID
+					252
+					Layer
+					0
+					Magnets
+					
+						{1, 1}
+						{1, -1}
+						{-1, -1}
+						{-1, 1}
+						{0, 1}
+						{0, -1}
+						{1, 0}
+						{-1, 0}
+						{-0.5, -0.233518}
+						{-0.49144199999999999, 0.26006299999999999}
+						{0.50711799999999996, -0.22408600000000001}
+						{0.50711799999999996, 0.267179}
+						{-0.27431, -0.474028}
+						{0.27977999999999997, -0.47847800000000001}
+						{0.29393799999999998, 0.54304399999999997}
+						{-0.28623199999999999, 0.55380399999999996}
+					
+					Shape
+					RoundRect
+					Style
+					
+						fill
+						
+							Color
+							
+								b
+								0
+								g
+								0.8
+								r
+								0.6
+							
+						
+						shadow
+						
+							Color
+							
+								a
+								0.35
+								b
+								0.328823
+								g
+								0.328823
+								r
+								0.328823
+							
+							Fuzziness
+							1.5349206924438477
+							ShadowVector
+							{0, 1}
+						
+						stroke
+						
+							Color
+							
+								b
+								0
+								g
+								0.6
+								r
+								0.4
+							
+							CornerRadius
+							3
+							Draws
+							NO
+						
+					
+					Text
+					
+						Text
+						{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
+{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
+
+\f0\b\fs24 \cf0 Watch 2}
+						VerticalPad
+						0
+					
+				
+				
+					Bounds
+					{{76.5, 303}, {90, 50.169699999999999}}
+					Class
+					ShapedGraphic
+					FontInfo
+					
+						Color
+						
+							b
+							0
+							g
+							0
+							r
+							0
+						
+						Font
+						Roboto-BoldCondensed
+						Size
+						10
+					
+					ID
+					251
+					Layer
+					0
+					Magnets
+					
+						{1, 1}
+						{1, -1}
+						{-1, -1}
+						{-1, 1}
+						{0, 1}
+						{0, -1}
+						{1, 0}
+						{-1, 0}
+						{-0.5, -0.233518}
+						{-0.49144199999999999, 0.26006299999999999}
+						{0.50711799999999996, -0.22408600000000001}
+						{0.50711799999999996, 0.267179}
+						{-0.27431, -0.474028}
+						{0.27977999999999997, -0.47847800000000001}
+						{0.29393799999999998, 0.54304399999999997}
+						{-0.28623199999999999, 0.55380399999999996}
+					
+					Shape
+					RoundRect
+					Style
+					
+						fill
+						
+							Color
+							
+								b
+								0
+								g
+								0.8
+								r
+								0.6
+							
+						
+						shadow
+						
+							Color
+							
+								a
+								0.35
+								b
+								0.328823
+								g
+								0.328823
+								r
+								0.328823
+							
+							Fuzziness
+							1.5349206924438477
+							ShadowVector
+							{0, 1}
+						
+						stroke
+						
+							Color
+							
+								b
+								0
+								g
+								0.6
+								r
+								0.4
+							
+							CornerRadius
+							3
+							Draws
+							NO
+						
+					
+					Text
+					
+						Text
+						{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
+{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
+
+\f0\b\fs24 \cf0 Watch 1}
+						VerticalPad
+						0
+					
+				
+				
+					Bounds
+					{{62.5, 181.83029999999999}, {118, 50.169699999999999}}
+					Class
+					ShapedGraphic
+					FontInfo
+					
+						Color
+						
+							b
+							0
+							g
+							0
+							r
+							0
+						
+						Font
+						Roboto-BoldCondensed
+						Size
+						10
+					
+					ID
+					250
+					Layer
+					0
+					Magnets
+					
+						{1, 1}
+						{1, -1}
+						{-1, -1}
+						{-1, 1}
+						{0, 1}
+						{0, -1}
+						{1, 0}
+						{-1, 0}
+						{-0.5, -0.233518}
+						{-0.49144199999999999, 0.26006299999999999}
+						{0.50711799999999996, -0.22408600000000001}
+						{0.50711799999999996, 0.267179}
+						{-0.27431, -0.474028}
+						{0.27977999999999997, -0.47847800000000001}
+						{0.29393799999999998, 0.54304399999999997}
+						{-0.28623199999999999, 0.55380399999999996}
+					
+					Shape
+					RoundRect
+					Style
+					
+						fill
+						
+							Color
+							
+								b
+								0
+								g
+								0.8
+								r
+								0.6
+							
+						
+						shadow
+						
+							Color
+							
+								a
+								0.35
+								b
+								0.328823
+								g
+								0.328823
+								r
+								0.328823
+							
+							Fuzziness
+							1.5349206924438477
+							ShadowVector
+							{0, 1}
+						
+						stroke
+						
+							Color
+							
+								b
+								0
+								g
+								0.6
+								r
+								0.4
+							
+							CornerRadius
+							3
+							Draws
+							NO
+						
+					
+					Text
+					
+						Text
+						{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
+{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
+
+\f0\b\fs24 \cf0 Phone}
+						VerticalPad
+						0
+					
+				
+				
+					Bounds
+					{{62.5, 46.830299999999994}, {118, 50.169699999999999}}
+					Class
+					ShapedGraphic
+					FontInfo
+					
+						Color
+						
+							b
+							0
+							g
+							0
+							r
+							0
+						
+						Font
+						Roboto-BoldCondensed
+						Size
+						12
+					
+					ID
+					158
+					Layer
+					0
+					Magnets
+					
+						{1, 1}
+						{1, -1}
+						{-1, -1}
+						{-1, 1}
+						{0, 1}
+						{0, -1}
+						{1, 0}
+						{-1, 0}
+						{-0.5, -0.233518}
+						{-0.49144199999999999, 0.26006299999999999}
+						{0.50711799999999996, -0.22408600000000001}
+						{0.50711799999999996, 0.267179}
+						{-0.27431, -0.474028}
+						{0.27977999999999997, -0.47847800000000001}
+						{0.29393799999999998, 0.54304399999999997}
+						{-0.28623199999999999, 0.55380399999999996}
+					
+					Shape
+					RoundRect
+					Style
+					
+						fill
+						
+							Color
+							
+								b
+								0.898039
+								g
+								0.709804
+								r
+								0.2
+							
+						
+						shadow
+						
+							Color
+							
+								a
+								0.35
+								b
+								0.328823
+								g
+								0.328823
+								r
+								0.328823
+							
+							Fuzziness
+							1.5349206924438477
+							ShadowVector
+							{0, 1}
+						
+						stroke
+						
+							Color
+							
+								b
+								0.8
+								g
+								0.6
+								r
+								0
+							
+							CornerRadius
+							3
+							Draws
+							NO
+						
+					
+					Text
+					
+						Text
+						{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf210
+{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
+
+\f0\b\fs24 \cf0 Cloud Node}
+						VerticalPad
+						0
+					
+				
+				
+					Class
+					Group
+					Graphics
+					
+						
+							Bounds
+							{{890, 0}, {60, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							45
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{810, 0}, {60, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							46
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{730, 0}, {60, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							47
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{650, 0}, {60, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							48
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{570, 0}, {60, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							49
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{490, 0}, {60, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							50
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{410, 0}, {60, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							51
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{330, 0}, {60, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							52
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{250, 0}, {60, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							53
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{170, 0}, {60, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							54
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{90, 0}, {60, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							55
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{10, 0}, {60, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							56
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+					
+					ID
+					44
+					Layer
+					1
+				
+			
+			GridInfo
+			
+				GridSpacing
+				1
+				MajorGridColor
+				
+					a
+					0.15
+					b
+					0
+					g
+					0
+					r
+					0
+				
+				MajorGridSpacing
+				10
+				ShowsGrid
+				YES
+				SnapsToGrid
+				YES
+			
+			HPages
+			1
+			KeepToScale
+			
+			Layers
+			
+				
+					Lock
+					NO
+					Name
+					Layer 1
+					Print
+					YES
+					View
+					YES
+				
+				
+					Lock
+					YES
+					Name
+					12 Column Grid
+					Print
+					YES
+					View
+					NO
+				
+			
+			LayoutInfo
+			
+				Animate
+				NO
+				circoMinDist
+				18
+				circoSeparation
+				0.0
+				layoutEngine
+				dot
+				neatoLineLength
+				0.20000000298023224
+				neatoSeparation
+				0.0
+				twopiSeparation
+				0.0
+			
+			Orientation
+			2
+			PrintOnePage
+			
+			RowAlign
+			1
+			RowSpacing
+			24
+			SheetTitle
+			12 Columns
+			UniqueID
+			1
+			VPages
+			1
+			VerticalGuides
+			
+				10
+				70
+				90
+				149
+				170
+				230
+				250
+				310
+				330
+				390
+				410
+				470
+				490
+				550
+				570
+				630
+				650
+				710
+				730
+				790
+				810
+				870
+				890
+				950
+			
+		
+		
+			ActiveLayerIndex
+			0
+			AutoAdjust
+			
+			BackgroundGraphic
+			
+				Bounds
+				{{0, 0}, {960, 1172}}
+				Class
+				SolidGraphic
+				ID
+				2
+				Style
+				
+					stroke
+					
+						Draws
+						NO
+					
+				
+			
+			BaseZoom
+			0
+			CanvasOrigin
+			{0, 0}
+			CanvasSize
+			{960, 1172}
+			ColumnAlign
+			1
+			ColumnSpacing
+			20
+			DisplayScale
+			1.0 pt = 1.0 px
+			GraphicsList
+			
+				
+					Class
+					Group
+					Graphics
+					
+						
+							Bounds
+							{{910, 0}, {40, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							165
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{850, 0}, {40, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							166
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{790, 0}, {40, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							167
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{730, 0}, {40, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							168
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{670, 0}, {40, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							169
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{610, 0}, {40, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							170
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{550, 0}, {40, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							171
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{490, 0}, {40, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							172
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{430, 0}, {40, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							173
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{370, 0}, {40, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							174
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{310, 0}, {40, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							175
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{250, 0}, {40, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							176
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{190, 0}, {40, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							177
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{130, 0}, {40, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							178
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{70, 0}, {40, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							179
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{10, 0}, {40, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							180
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+					
+					ID
+					164
+					Layer
+					1
+				
+			
+			GridInfo
+			
+				GridSpacing
+				1
+				MajorGridColor
+				
+					a
+					0.15
+					b
+					0
+					g
+					0
+					r
+					0
+				
+				MajorGridSpacing
+				10
+				ShowsGrid
+				YES
+				SnapsToGrid
+				YES
+			
+			HPages
+			2
+			KeepToScale
+			
+			Layers
+			
+				
+					Lock
+					NO
+					Name
+					Layer 1
+					Print
+					YES
+					View
+					YES
+				
+				
+					Lock
+					YES
+					Name
+					16 Column Grid
+					Print
+					YES
+					View
+					YES
+				
+			
+			LayoutInfo
+			
+				Animate
+				NO
+				circoMinDist
+				18
+				circoSeparation
+				0.0
+				layoutEngine
+				dot
+				neatoLineLength
+				0.20000000298023224
+				neatoSeparation
+				0.0
+				twopiSeparation
+				0.0
+			
+			Orientation
+			2
+			PrintOnePage
+			
+			RowAlign
+			1
+			RowSpacing
+			24
+			SheetTitle
+			16 Columns
+			UniqueID
+			2
+			VPages
+			2
+			VerticalGuides
+			
+				10
+				50
+				70
+				110
+				130
+				170
+				190
+				230
+				250
+				290
+				310
+				350
+				370
+				410
+				430
+				470
+				490
+				530
+				550
+				590
+				610
+				650
+				670
+				710
+				730
+				770
+				790
+				830
+				850
+				890
+				910
+				950
+			
+		
+		
+			ActiveLayerIndex
+			0
+			AutoAdjust
+			
+			BackgroundGraphic
+			
+				Bounds
+				{{0, 0}, {960, 1172}}
+				Class
+				SolidGraphic
+				ID
+				2
+				Style
+				
+					stroke
+					
+						Draws
+						NO
+					
+				
+			
+			BaseZoom
+			0
+			CanvasOrigin
+			{0, 0}
+			CanvasSize
+			{960, 1172}
+			ColumnAlign
+			1
+			ColumnSpacing
+			10
+			DisplayScale
+			1.0 pt = 1.0 px
+			GraphicsList
+			
+				
+					Class
+					Group
+					Graphics
+					
+						
+							Bounds
+							{{925, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							193
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{885, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							194
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{845, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							195
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{805, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							196
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{765, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							197
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{725, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							198
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{685, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							199
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{645, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							200
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{605, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							201
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{565, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							202
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{525, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							203
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{485, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							204
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{445, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							205
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{405, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							206
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{365, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							207
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{325, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							208
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{285, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							209
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{245, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							210
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{205, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							211
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{165, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							212
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{125, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							213
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{85, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							214
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{45, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							215
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+						
+							Bounds
+							{{5, 0}, {30, 1172}}
+							Class
+							ShapedGraphic
+							FontInfo
+							
+								Color
+								
+									w
+									0
+								
+								Font
+								Helvetica
+								Size
+								12
+							
+							ID
+							216
+							Shape
+							Rectangle
+							Style
+							
+								fill
+								
+									Color
+									
+										a
+										0.1
+										b
+										1
+										g
+										0
+										r
+										1
+									
+								
+								shadow
+								
+									Draws
+									NO
+								
+								stroke
+								
+									Draws
+									NO
+								
+							
+						
+					
+					ID
+					192
+					Layer
+					1
+				
+			
+			GridInfo
+			
+				GridSpacing
+				1
+				MajorGridColor
+				
+					a
+					0.15
+					b
+					0
+					g
+					0
+					r
+					0
+				
+				MajorGridSpacing
+				5
+				ShowsGrid
+				YES
+				SnapsToGrid
+				YES
+			
+			HPages
+			2
+			KeepToScale
+			
+			Layers
+			
+				
+					Lock
+					NO
+					Name
+					Layer 1
+					Print
+					YES
+					View
+					YES
+				
+				
+					Lock
+					YES
+					Name
+					24 Column Grid
+					Print
+					YES
+					View
+					YES
+				
+			
+			LayoutInfo
+			
+				Animate
+				NO
+				circoMinDist
+				18
+				circoSeparation
+				0.0
+				layoutEngine
+				dot
+				neatoLineLength
+				0.20000000298023224
+				neatoSeparation
+				0.0
+				twopiSeparation
+				0.0
+			
+			Orientation
+			2
+			PrintOnePage
+			
+			RowAlign
+			1
+			RowSpacing
+			24
+			SheetTitle
+			24 Columns
+			UniqueID
+			3
+			VPages
+			2
+			VerticalGuides
+			
+				5
+				35
+				45
+				75
+				85
+				115
+				125
+				155
+				165
+				195
+				205
+				235
+				245
+				275
+				285
+				315
+				325
+				355
+				365
+				395
+				405
+				435
+				445
+				475
+				485
+				515
+				525
+				555
+				565
+				595
+				605
+				635
+				645
+				675
+				685
+				715
+				725
+				755
+				765
+				795
+				805
+				835
+				845
+				875
+				885
+				915
+				925
+				955
+			
+		
+	
+	SmartAlignmentGuidesActive
+	YES
+	SmartDistanceGuidesActive
+	YES
+	UseEntirePage
+	
+	WindowInfo
+	
+		BottomSlabHeight
+		471
+		CurrentSheet
+		0
+		Expanded_Canvases
+		
+		ShowInfo
+		
+		ShowRuler
+		
+		Sidebar
+		
+		SidebarWidth
+		230
+		VisibleRegion
+		{{0, 0}, {893, 674}}
+		Zoom
+		1
+		ZoomValues
+		
+			
+				12 Columns
+				1
+				1
+			
+		
+	
+
+