<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>android/tichooser/assets/Resources/data/test1.txt</filename>
    </added>
    <added>
      <filename>android/tichooser/assets/Resources/db.html</filename>
    </added>
    <added>
      <filename>android/tichooser/assets/Resources/filestream.html</filename>
    </added>
    <added>
      <filename>android/tichooser/assets/Resources/imageview.html</filename>
    </added>
    <added>
      <filename>android/tichooser/assets/Resources/iphone-api.html</filename>
    </added>
    <added>
      <filename>android/tichooser/assets/Resources/picker.html</filename>
    </added>
    <added>
      <filename>android/titanium/src/org/appcelerator/titanium/api/ITitaniumCheckedResult.java</filename>
    </added>
    <added>
      <filename>android/titanium/src/org/appcelerator/titanium/api/ITitaniumImageView.java</filename>
    </added>
    <added>
      <filename>android/titanium/src/org/appcelerator/titanium/api/ITitaniumInvoker.java</filename>
    </added>
    <added>
      <filename>android/titanium/src/org/appcelerator/titanium/api/ITitaniumModalPicker.java</filename>
    </added>
    <added>
      <filename>android/titanium/src/org/appcelerator/titanium/api/ITitaniumPicker.java</filename>
    </added>
    <added>
      <filename>android/titanium/src/org/appcelerator/titanium/api/ITitaniumPickerConstants.java</filename>
    </added>
    <added>
      <filename>android/titanium/src/org/appcelerator/titanium/module/TitaniumImageView.java</filename>
    </added>
    <added>
      <filename>android/titanium/src/org/appcelerator/titanium/module/ui/TitaniumBaseView.java</filename>
    </added>
    <added>
      <filename>android/titanium/src/org/appcelerator/titanium/module/ui/TitaniumPicker.java</filename>
    </added>
    <added>
      <filename>android/titanium/src/org/appcelerator/titanium/module/ui/TitaniumPickerDialog.java</filename>
    </added>
    <added>
      <filename>android/titanium/src/org/appcelerator/titanium/module/ui/TitaniumPickerHelper.java</filename>
    </added>
    <added>
      <filename>android/titanium/src/org/appcelerator/titanium/module/ui/widgets/TitaniumPickerView.java</filename>
    </added>
    <added>
      <filename>android/titanium/src/org/appcelerator/titanium/res/drawable/btn_picker_normal.9.png</filename>
    </added>
    <added>
      <filename>android/titanium/src/org/appcelerator/titanium/res/drawable/btn_picker_pressed.9.png</filename>
    </added>
    <added>
      <filename>android/titanium/src/org/appcelerator/titanium/res/drawable/btn_picker_selected.9.png</filename>
    </added>
    <added>
      <filename>android/titanium/src/org/appcelerator/titanium/util/TitaniumCheckedResult.java</filename>
    </added>
    <added>
      <filename>android/titanium/src/org/appcelerator/titanium/util/TitaniumDelegate.java</filename>
    </added>
    <added>
      <filename>iphone/Classes/PickerImageTextCell.h</filename>
    </added>
    <added>
      <filename>iphone/Classes/PickerImageTextCell.m</filename>
    </added>
    <added>
      <filename>iphone/Classes/TitaniumCellWrapper.h</filename>
    </added>
    <added>
      <filename>iphone/Classes/TitaniumCellWrapper.m</filename>
    </added>
    <added>
      <filename>iphone/Classes/TitaniumCompositeViewController.h</filename>
    </added>
    <added>
      <filename>iphone/Classes/TitaniumCompositeViewController.m</filename>
    </added>
    <added>
      <filename>iphone/Classes/TitaniumScrollableViewController.h</filename>
    </added>
    <added>
      <filename>iphone/Classes/TitaniumScrollableViewController.m</filename>
    </added>
    <added>
      <filename>iphone/Resources/closebox.png</filename>
    </added>
    <added>
      <filename>iphone/modules/NotificationModule/NotificationModule.h</filename>
    </added>
    <added>
      <filename>iphone/modules/NotificationModule/NotificationModule.m</filename>
    </added>
    <added>
      <filename>support/iphone/resources/closebox.png</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -31,10 +31,25 @@
 	  ap.setString(&quot;app.string&quot;, &quot;a string too&quot;);
 	  ap.setBool(&quot;app.bool&quot;, false);
 
-	  html += &quot;app.int=&quot; + ap.getInt(&quot;app.int&quot;) + &quot;&lt;br\&gt;&quot;;
-	  html += &quot;app.double=&quot; + ap.getDouble(&quot;app.double&quot;) + &quot;&lt;br\&gt;&quot;;
-	  html += &quot;app.string=&quot; + ap.getString(&quot;app.string&quot;) + &quot;&lt;br\&gt;&quot;;
-	  html += &quot;app.bool=&quot; + ap.getBool(&quot;app.bool&quot;) + &quot;&lt;br\&gt;&quot;;
+	  var l1 = [&quot;A&quot;, &quot;b&quot;, &quot;c&quot;, &quot;D&quot;];
+	  ap.setList(&quot;L1&quot;, l1);
+
+	  var l2 = ap.getList(&quot;L2&quot;, []);
+
+
+	  html += &quot;app.int=&quot; + ap.getInt(&quot;app.int&quot;) + &quot;&lt;br/&gt;&quot;;
+	  html += &quot;app.double=&quot; + ap.getDouble(&quot;app.double&quot;) + &quot;&lt;br/&gt;&quot;;
+	  html += &quot;app.string=&quot; + ap.getString(&quot;app.string&quot;) + &quot;&lt;br/&gt;&quot;;
+	  html += &quot;app.bool=&quot; + ap.getBool(&quot;app.bool&quot;) + &quot;&lt;br/&gt;&quot;;
+
+	  html += 'Has app.string: ' + ap.hasProperty('app.string') + '&lt;br/&gt;';
+	  html += 'L1: ' + ap.getList(&quot;L1&quot;).join(&quot;,&quot;) + '&lt;br/&gt;';
+	  html += 'L2: ' + l2.join(&quot;,&quot;) + '&lt;br/&gt;';
+
+	  ap.removeProperty('app.string');
+	  html += 'Has app.string after rm: ' + ap.hasProperty('app.string') + '&lt;br/&gt;';
+
+	  html += &quot;Properties: &quot; + ap.listProperties().join(&quot;,&quot;) + '&lt;br/&gt;';
 
 	  document.getElementById(&quot;app&quot;).innerHTML = html;
 </diff>
      <filename>android/tichooser/assets/Resources/properties.html</filename>
    </modified>
    <modified>
      <diff>@@ -72,7 +72,8 @@
   			header : 'Section 1',
 			title : 'Row 1',
 			image : 'images/icon.png',
-			name : 'n1'
+			name : 'n1',
+			fontWeight: 'bold'
 		},
 		{
 			title : 'Row 2',
@@ -82,7 +83,9 @@
 		},
 		{
 			title : 'Row 3',
-			name : 'n3'
+			name : 'n3',
+			fontSize : '20pt',
+			fontWeight : 'bold'
 		},
 		{
 			header : 'Section 2',
@@ -146,7 +149,9 @@
 	var page2 = [
         {
          title : 'click for option dlg',
-         header : 'Some config stuff'
+         header : 'Some config stuff',
+         fontWeight: 'bold',
+         fontSize: '8pt'
         },
         {
          html : '&lt;font size=&quot;+2&quot;&gt;&lt;b&gt;EXIT&lt;/b&gt;&lt;/font&gt;',
@@ -158,7 +163,8 @@
 			'data' : page1,
 			'name' : &quot;p1&quot;,
 			'rowHeight' : '65',
-			'isPrimary' : true
+			'isPrimary' : true,
+			'fontSize' :  '7pt'
  		},
  			function(e) {
  				// rowData, section, row, index, detail</diff>
      <filename>android/tichooser/assets/Resources/tableview.html</filename>
    </modified>
    <modified>
      <diff>@@ -87,7 +87,7 @@
             &lt;backgroundColor&gt;argb(0,255,255,255)&lt;/backgroundColor&gt;
             &lt;barColor&gt;#000&lt;/barColor&gt;
         &lt;/window&gt;
---&gt;
+
         &lt;window&gt;
             &lt;id&gt;dynamic-values&lt;/id&gt;
             &lt;title&gt;Dynamic Control Values&lt;/title&gt;
@@ -97,6 +97,16 @@
             &lt;backgroundColor&gt;argb(0,255,255,255)&lt;/backgroundColor&gt;
             &lt;barColor&gt;#000&lt;/barColor&gt;
         &lt;/window&gt;
+--&gt;
+        &lt;window&gt;
+            &lt;id&gt;ImageView&lt;/id&gt;
+            &lt;title&gt;Image View&lt;/title&gt;
+            &lt;url&gt;imageview.html&lt;/url&gt;
+            &lt;type&gt;single&lt;/type&gt;
+            &lt;fullscreen&gt;false&lt;/fullscreen&gt;
+            &lt;backgroundColor&gt;argb(0,255,255,255)&lt;/backgroundColor&gt;
+            &lt;barColor&gt;#000&lt;/barColor&gt;
+        &lt;/window&gt;
 &lt;!--
         &lt;window&gt;
             &lt;id&gt;TableView&lt;/id&gt;
@@ -225,7 +235,7 @@
             &lt;backgroundColor&gt;argb(0,128,128,128)&lt;/backgroundColor&gt;
             &lt;barColor&gt;#000&lt;/barColor&gt;
         &lt;/window&gt;
---&gt;
+
 		&lt;window&gt;
             &lt;id&gt;DatePicker&lt;/id&gt;
             &lt;title&gt;DatePicker&lt;/title&gt;
@@ -237,6 +247,16 @@
         &lt;/window&gt;
 
 		&lt;window&gt;
+            &lt;id&gt;Picker&lt;/id&gt;
+            &lt;title&gt;Picker&lt;/title&gt;
+            &lt;url&gt;picker.html&lt;/url&gt;
+            &lt;type&gt;single&lt;/type&gt;
+            &lt;fullscreen&gt;false&lt;/fullscreen&gt;
+            &lt;backgroundColor&gt;argb(0,128,128,128)&lt;/backgroundColor&gt;
+            &lt;barColor&gt;#000&lt;/barColor&gt;
+        &lt;/window&gt;
+
+		&lt;window&gt;
             &lt;id&gt;Fonts&lt;/id&gt;
             &lt;title&gt;fonts&lt;/title&gt;
             &lt;url&gt;fonts.html&lt;/url&gt;
@@ -246,6 +266,46 @@
             &lt;barColor&gt;#000&lt;/barColor&gt;
         &lt;/window&gt;
 
+		&lt;window&gt;
+            &lt;id&gt;Filestream&lt;/id&gt;
+            &lt;title&gt;filestream&lt;/title&gt;
+            &lt;url&gt;filestream.html&lt;/url&gt;
+            &lt;type&gt;single&lt;/type&gt;
+            &lt;fullscreen&gt;false&lt;/fullscreen&gt;
+            &lt;backgroundColor&gt;argb(0,128,128,128)&lt;/backgroundColor&gt;
+            &lt;barColor&gt;#000&lt;/barColor&gt;
+        &lt;/window&gt;
+
+		&lt;window&gt;
+            &lt;id&gt;iPhoneAPI&lt;/id&gt;
+            &lt;title&gt;iPhone API&lt;/title&gt;
+            &lt;url&gt;iphone-api.html&lt;/url&gt;
+            &lt;type&gt;single&lt;/type&gt;
+            &lt;fullscreen&gt;false&lt;/fullscreen&gt;
+            &lt;backgroundColor&gt;argb(0,128,128,128)&lt;/backgroundColor&gt;
+            &lt;barColor&gt;#000&lt;/barColor&gt;
+        &lt;/window&gt;
+
+		&lt;window&gt;
+            &lt;id&gt;Database&lt;/id&gt;
+            &lt;title&gt;Database API&lt;/title&gt;
+            &lt;url&gt;db.html&lt;/url&gt;
+            &lt;type&gt;single&lt;/type&gt;
+            &lt;fullscreen&gt;false&lt;/fullscreen&gt;
+            &lt;backgroundColor&gt;argb(0,128,128,128)&lt;/backgroundColor&gt;
+            &lt;barColor&gt;#000&lt;/barColor&gt;
+        &lt;/window&gt;
+
+		&lt;window&gt;
+            &lt;id&gt;Properties&lt;/id&gt;
+            &lt;title&gt;Properties API&lt;/title&gt;
+            &lt;url&gt;properties.html&lt;/url&gt;
+            &lt;type&gt;single&lt;/type&gt;
+            &lt;fullscreen&gt;false&lt;/fullscreen&gt;
+            &lt;backgroundColor&gt;argb(0,128,128,128)&lt;/backgroundColor&gt;
+            &lt;barColor&gt;#000&lt;/barColor&gt;
+        &lt;/window&gt;
+--&gt;
     &lt;/windows&gt;
     &lt;property name=&quot;ti.android.debug&quot; type=&quot;bool&quot;&gt;true&lt;/property&gt;
     &lt;property name=&quot;ti.android.watchlog&quot; type=&quot;bool&quot;&gt;false&lt;/property&gt;</diff>
      <filename>android/tichooser/assets/tiapp.xml</filename>
    </modified>
    <modified>
      <diff>@@ -22,6 +22,22 @@ var Titanium = new function() {
 
 	this.rethrow = function(e) { throw e; };
 
+	this.checked = function(r) {
+		if (!isUndefined(r)) {
+			if (typeof(r.getException) !== 'undefined') {
+				this.apiProxy.log(6,&quot;checking: &quot; + r.getException());
+				if(!isUndefined(r.getException())) {
+					throw r.getException();
+				} else {
+					if (typeof(r.getResult) !== 'undefined') {
+						r = r.getResult();
+					}
+				}
+			}
+		}
+		return r;
+	};
+
 	this.doPostProcessing = function () {
 		var imgs = document.getElementsByTagName('img');
 		for(i=0; i &lt; imgs.length;i++) {</diff>
      <filename>android/titanium/src/assets/ti/debug/ti.js</filename>
    </modified>
    <modified>
      <diff>@@ -223,20 +223,86 @@ Properties = function(proxy) {
 	},
 	this.setDouble = function(name,value){
 		return this.proxy.setDouble(name,value);
-	}
+	},
 	/**
-	 * @tiapi(method=True,name=App.Properties.getList,since=0.4) Retrieve a list property (Not Implemented, Android)
+	 * @tiapi(method=True,name=App.Properties.getList,since=0.7.0) Retrieve a list
 	 * @tiarg[string,name] property name
 	 * @tiarg[list,def] default value if no value set for key in name
 	 * @tiresult[list] property value or default
 	 */
 	/**
-	 * @tiapi(method=True,name=App.SystemProperties.getList,since=0.4) Retrieve a string property (Not Implemented, Android)
+	 * @tiapi(method=True,name=App.SystemProperties.getList,since=0.7.0) Retrieve a list
 	 * @tiarg[string,name] property name
 	 * @tiarg[list,def] default value if no value set for key in name
 	 * @tiresult[list] property value or default
 	 */
-	//TODO: list
+	this.getList = function(name, def)
+	{
+		 if (isUndefined(def)) {
+			 def = [];
+		 }
+		 var s = this.proxy.getList(name, Titanium.JSON.stringify(def));
+		 return eval(&quot;(&quot; + s + &quot;)&quot;);
+	},
+
+	/**
+	 * @tiapi(method=True,name=App.Properties.setList,since=0.7.0) Store a list of JSON'able objects
+	 * @tiarg[string,name] property name
+	 * @tiarg[list,value] value to store
+	 */
+	/**
+	 * @tiapi(method=True,name=App.SystemProperties.setList,since=0.7.0) Store a list of JSON'able objects
+	 * @tiarg[string,name] property name
+	 * @tiarg[list,def] value to store
+	 */
+	this.setList = function(name, value) {
+		if (isUndefined(value)) {
+			value = [];
+		}
+
+		if (!typeOf(value) == 'array') {
+			value = [ value ];
+		}
+
+		this.proxy.setList(name, Titanium.JSON.stringify(value));
+	},
+	/**
+	 * @tiapi(method=True,name=App.Properties.hasProperty,since=0.7.0) Detect existence of a property
+	 * @tiarg[string,name] property name
+	 * @tiresult[boolean] true if property with 'name' exists.
+	 */
+	/**
+	 * @tiapi(method=True,name=App.SystemProperties.hasProperty,since=0.7.0) Detect existence of a property
+	 * @tiarg[string,name] property name
+	 * @tiresult[boolean] true if property with 'name' exists.
+	 */
+	this.hasProperty = function(name) {
+		return this.proxy.hasProperty(name);
+	},
+	/**
+	 * @tiapi(method=True,name=App.Properties.listProperties,since=0.7.0) Retrieve a list of property names
+	 * @tiresult[list] list of property names
+	 */
+	/**
+	 * @tiapi(method=True,name=App.SystemProperties.listProperties,since=0.7.0) Retrieve a list of property names
+	 * @tiresult[list] list of property names
+	 */
+	this.listProperties = function() {
+		return eval(&quot;(&quot; + this.proxy.listProperties() + &quot;)&quot;);
+	},
+	/**
+	 * @tiapi(method=True,name=App.Properties.removeProperty,since=0.7.0) Remove a property
+	 * @tiarg[string,name] property name
+	 */
+	/**
+	 * @tiapi(method=True,name=App.SystemProperties.getList,since=0.7.0) Remove a property
+	 * @tiarg[string,name] property name
+	 */
+	this.removeProperty = function(name) {
+		if (!isUndefined(name)) {
+			this.proxy.removeProperty(name);
+		}
+	}
 };
 
 Titanium.App.Properties = new Properties(Titanium.appProxy.getAppProperties());</diff>
      <filename>android/titanium/src/assets/ti/debug/tiapp.js</filename>
    </modified>
    <modified>
      <diff>@@ -21,7 +21,7 @@ TitaniumFile = function(f) //Note: Not implemented on iPhone yet
  */
 TitaniumFile.prototype.isFile = function()
 {
-	return this.proxy.isFile();
+	return Titanium.checked(this.proxy.isFile());
 };
 /**
  * @tiapi(method = true,name=Filesystem.File.isDirectory,since=0.4) Checks whether a file object references a directory
@@ -29,7 +29,7 @@ TitaniumFile.prototype.isFile = function()
  *
  */TitaniumFile.prototype.isDirectory = function()
 {
-	return this.proxy.isDirectory();
+	return Titanium.checked(this.proxy.isDirectory());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.isHidden,since=0.4) Checks whether a file or directory is hidden
@@ -37,7 +37,7 @@ TitaniumFile.prototype.isFile = function()
  */
 TitaniumFile.prototype.isHidden = function()
 {
-	return this.proxy.isHidden();
+	return Titanium.checked(this.proxy.isHidden());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.isSymbolicLink,since=0.4) Checks whether the File object references a symbolic link
@@ -45,7 +45,7 @@ TitaniumFile.prototype.isHidden = function()
  */
 TitaniumFile.prototype.isSymbolicLink = function()
 {
-	return this.proxy.isSymbolicLink();
+	return Titanium.checked(this.proxy.isSymbolicLink());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.isExecutable,since=0.4) Checks whether a file is an executable file
@@ -53,7 +53,7 @@ TitaniumFile.prototype.isSymbolicLink = function()
  */
 TitaniumFile.prototype.isExecutable = function()
 {
-	return this.proxy.isExecutable();
+	return Titanium.checked(this.proxy.isExecutable());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.isReadonly,since=0.4) Checks whether a file or directory is read-only
@@ -61,7 +61,7 @@ TitaniumFile.prototype.isExecutable = function()
  */
 TitaniumFile.prototype.isReadonly = function()
 {
-	return this.proxy.isReadonly();
+	return Titanium.checked(this.proxy.isReadonly());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.isWritable,since=0.4) Checks whether a file or directory is writeable
@@ -69,7 +69,7 @@ TitaniumFile.prototype.isReadonly = function()
  */
 TitaniumFile.prototype.isWriteable = function()
 {
-	return this.proxy.isWriteable();
+	return Titanium.checked(this.proxy.isWriteable());
 };
 /**
  * @tiapi(method=True,name=Filesystem.File.resolve,since=0.4) Resolves a File object to a file path
@@ -78,7 +78,7 @@ TitaniumFile.prototype.isWriteable = function()
  */
 TitaniumFile.prototype.resolve = function()
 {
-	return this.proxy.resolve();
+	return Titanium.checked(this.proxy.resolve());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.read,since=0.4) Returns one line (separated by line ending) from a file
@@ -86,7 +86,7 @@ TitaniumFile.prototype.resolve = function()
  */
 TitaniumFile.prototype.read = function()
 {
-	return this.proxy.read();
+	return Titanium.checked(this.proxy.read());
 };
 /**
  * @tiapi (method=True,name=Filesystem.File.write,since=0.4) Writes data to the file
@@ -96,7 +96,7 @@ TitaniumFile.prototype.read = function()
 TitaniumFile.prototype.write = function(data,append)
 {
 	append = typeof(append)=='undefined' ? false : append;
-	return this.proxy.write(data,append);
+	return Titanium.checked(this.proxy.write(data,append));
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.readline,since=0.4) Returns one line (separated by line ending) from a file
@@ -104,7 +104,7 @@ TitaniumFile.prototype.write = function(data,append)
  */
 TitaniumFile.prototype.readLine = function()
 {
-	return this.proxy.readLine();
+	return Titanium.checked(this.proxy.readLine());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.copy,since=0.4) Copies a file to a specified location
@@ -113,7 +113,7 @@ TitaniumFile.prototype.readLine = function()
  */
 TitaniumFile.prototype.copy = function(destination)
 {
-	return this.proxy.copy(destination);
+	return Titanium.checked(this.proxy.copy(destination));
 };
 /**
  * @tiapi(method=True,name=Filesystem.File.move,since=0.4) Moves a file to a specified location
@@ -122,7 +122,7 @@ TitaniumFile.prototype.copy = function(destination)
  */
 TitaniumFile.prototype.move = function(destination)
 {
-	return this.proxy.move(destination);
+	return Titanium.checked(this.proxy.move(destination));
 };
 /**
  * @tiapi(method=True,name=Filesystem.File.rename,since=0.4) Renames a file
@@ -131,7 +131,7 @@ TitaniumFile.prototype.move = function(destination)
  */
 TitaniumFile.prototype.rename = function(destination)
 {
-	return this.proxy.rename(destination);
+	return Titanium.checked(this.proxy.rename(destination));
 };
 /**
  * @tiapi(method=True,name=Filesystem.File.createDirectory,since=0.4) Creates a new directory
@@ -140,7 +140,7 @@ TitaniumFile.prototype.rename = function(destination)
 TitaniumFile.prototype.createDirectory = function(recursive)
 {
 	recursive = typeof(recursive)=='undefined' ? false : recursive;
-	return this.proxy.createDirectory(recursive);
+	return Titanium.checked(this.proxy.createDirectory(recursive));
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.deleteDirectory,since=0.4) Deletes a directory
@@ -149,7 +149,7 @@ TitaniumFile.prototype.createDirectory = function(recursive)
 TitaniumFile.prototype.deleteDirectory = function(recursive)
 {
 	recursive = typeof(recursive)=='undefined' ? false : recursive;
-	return this.proxy.deleteDirectory(recursive);
+	return Titanium.checked(this.proxy.deleteDirectory(recursive));
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.deleteFile,since=0.4) Deletes a file
@@ -157,7 +157,7 @@ TitaniumFile.prototype.deleteDirectory = function(recursive)
  */
 TitaniumFile.prototype.deleteFile = function()
 {
-	return this.proxy.deleteFile();
+	return Titanium.checked(this.proxy.deleteFile());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.getDirectoryListing,since=0.4) Returns a list containing the names of items in a directory.
@@ -165,7 +165,7 @@ TitaniumFile.prototype.deleteFile = function()
  */
 TitaniumFile.prototype.getDirectoryListing = function()
 {
-	return this.proxy.getDirectoryListing();
+	return Titanium.checked(this.proxy.getDirectoryListing());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.getParent,since=0.4) Returns the parent directory of a file or directory
@@ -173,7 +173,7 @@ TitaniumFile.prototype.getDirectoryListing = function()
  */
 TitaniumFile.prototype.getParent = function()
 {
-	return this.proxy.getParent();
+	return Titanium.checked(this.proxy.getParent());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.exists,since=0.4) Checks whether a file or directory exists in the users system
@@ -181,7 +181,7 @@ TitaniumFile.prototype.getParent = function()
  */
 TitaniumFile.prototype.exists = function()
 {
-	return this.proxy.exists();
+	return Titanium.checked(this.proxy.exists());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.createTimestamp,since=0.4) Returns the created timestamp of a file or directory
@@ -189,7 +189,7 @@ TitaniumFile.prototype.exists = function()
  */
 TitaniumFile.prototype.createTimestamp = function()
 {
-	return this.proxy.createTimestamp();
+	return Titanium.checked(this.proxy.createTimestamp());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.modificationTimestamp,since=0.4) Returns the last modified timestamp of a file or directory
@@ -197,7 +197,7 @@ TitaniumFile.prototype.createTimestamp = function()
  */
 TitaniumFile.prototype.modificationTimestamp = function()
 {
-	return this.proxy.modificationTimestamp();
+	return Titanium.checked(this.proxy.modificationTimestamp());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.name,since=0.4) Returns the name of a file or directory
@@ -205,7 +205,7 @@ TitaniumFile.prototype.modificationTimestamp = function()
  */
 TitaniumFile.prototype.name = function()
 {
-	return this.proxy.name();
+	return Titanium.checked(this.proxy.name());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.extension,since=0.4) Returns the extension of a file
@@ -213,7 +213,7 @@ TitaniumFile.prototype.name = function()
  */
 TitaniumFile.prototype.extension = function()
 {
-	return this.proxy.extension();
+	return Titanium.checked(this.proxy.extension());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.size,since=0.4) Returns the size of the file in bytes
@@ -221,7 +221,7 @@ TitaniumFile.prototype.extension = function()
  */
 TitaniumFile.prototype.size = function()
 {
-	return this.proxy.size();
+	return Titanium.checked(this.proxy.size());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.nativePath,since=0.4) Returns the full native path of a file or directory
@@ -229,7 +229,7 @@ TitaniumFile.prototype.size = function()
  */
 TitaniumFile.prototype.nativePath = function()
 {
-	return this.proxy.nativePath();
+	return Titanium.checked(this.proxy.nativePath());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.spaceAvailable,since=0.4) Returns the space available on the filesystem
@@ -237,7 +237,7 @@ TitaniumFile.prototype.nativePath = function()
  */
 TitaniumFile.prototype.spaceAvailable = function()
 {
-	return this.proxy.spaceAvailable();
+	return Titanium.checked(this.proxy.spaceAvailable());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.setExecutable,since=0.4) Makes the file or directory executable
@@ -245,7 +245,7 @@ TitaniumFile.prototype.spaceAvailable = function()
  */
 TitaniumFile.prototype.setExecutable = function()
 {
-	return this.proxy.setExecutable();
+	return Titanium.checked(this.proxy.setExecutable());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.setReadonly,since=0.4) Makes the file or directory readonly
@@ -253,7 +253,7 @@ TitaniumFile.prototype.setExecutable = function()
  */
 TitaniumFile.prototype.setReadonly = function()
 {
-	return this.proxy.setReadonly();
+	return Titanium.checked(this.proxy.setReadonly());
 };
 /**
  * @tiapi(method=true,name=Filesystem.File.setWriteable,since=0.4) Makes the file or directory writeable
@@ -261,15 +261,15 @@ TitaniumFile.prototype.setReadonly = function()
  */
 TitaniumFile.prototype.setWriteable = function()
 {
-	return this.proxy.setWriteable();
+	return Titanium.checked(this.proxy.setWriteable());
 };
 /**
- * @tiapi(method=true,name=Filesystem.File.toString,since=0.4) Makes the file or directory readonly
+ * @tiapi(method=true,name=Filesystem.File.toString,since=0.4) Get the string representation
  * @tiresult[string] returns string representation of the file or directory
  */
 TitaniumFile.prototype.toString = function()
 {
-	return String(this.proxy.toString());
+	return String(Titanium.checked(this.proxy.toString()));
 };
 
 TitaniumFile.createBlob = function(native) {
@@ -285,6 +285,48 @@ TitaniumFile.createBlob = function(native) {
 	return b;
 };
 
+//TODO Doc
+Filestream = function(proxy) {
+	this.proxy = proxy;
+};
+
+// close, isOpen, open, read, readLine, ready, write, writeLine
+
+Filestream.prototype.close = function() {
+	Titanium.checked(this.proxy.call(&quot;close&quot;));
+};
+
+Filestream.prototype.isOpen = function() {
+	return Titanium.checked(this.proxy.call(&quot;isOpen&quot;));
+};
+
+Filestream.prototype.open = function(mode,binary) {
+	var p = this.proxy;
+	p.pushInteger(mode);
+	p.pushBoolean(binary);
+	Titanium.checked(p.call(&quot;open&quot;));
+};
+
+Filestream.prototype.read = function() {
+	return Titanium.checked(this.proxy.call(&quot;read&quot;));
+};
+
+Filestream.prototype.readLine = function() {
+	return Titanium.checked(this.proxy.call(&quot;readLine&quot;));
+};
+
+Filestream.prototype.write = function(value) {
+	var p = this.proxy;
+	p.pushString(value);
+	Titanium.checked(p.call(&quot;write&quot;));
+};
+
+Filestream.prototype.writeLine = function(value) {
+	var p = this.proxy;
+	p.pushString(value);
+	Titanium.checked(this.proxy.call(&quot;writeLine&quot;));
+};
+
 Titanium.Filesystem = {
 	/**
 	 * @tiapi(method=true,name=Filesystem.createTempFile, since=0.4) Creates a temporary file
@@ -305,15 +347,11 @@ Titanium.Filesystem = {
 	 * @tiarg[string,arguments] one or more path segments to join.
 	 * @tiresult[File] a File reference the file
 	 */
-	getFile : function(a,b,c,d,e,f,g) {
+	getFile : function() {
 		var parts = [];
-		if (arguments.length&gt;0) parts.push(String(a));
-		if (arguments.length&gt;1) parts.push(String(b));
-		if (arguments.length&gt;2) parts.push(String(c));
-		if (arguments.length&gt;3) parts.push(String(d));
-		if (arguments.length&gt;4) parts.push(String(e));
-		if (arguments.length&gt;5) parts.push(String(f));
-		if (arguments.length&gt;6) parts.push(String(g));
+		for(i=0; i &lt; arguments.length; i++) {
+			parts.push(String(arguments[i]));
+		}
 		return new TitaniumFile(Titanium.fileSystemProxy.getFile(parts));
 	},
 	/**
@@ -321,16 +359,13 @@ Titanium.Filesystem = {
 	 * @tiarg[string,arguments] one or more path segments to join.
 	 * @tiresult[FileStream] a FileStream reference the file
 	 */
-	getFileStream : function(a,b,c,d,e,f,g) {
+	getFileStream : function() {
 		var parts = [];
-		if (arguments.length&gt;0) parts.push(String(a));
-		if (arguments.length&gt;1) parts.push(String(b));
-		if (arguments.length&gt;2) parts.push(String(c));
-		if (arguments.length&gt;3) parts.push(String(d));
-		if (arguments.length&gt;4) parts.push(String(e));
-		if (arguments.length&gt;5) parts.push(String(f));
-		if (arguments.length&gt;6) parts.push(String(g));
-		return TitaniumFile(Titanium.fileSystemProxy.getFileStream(parts));
+
+		for(i=0; i &lt; arguments.length; i++) {
+			parts.push(String(arguments[i]));
+		}
+		return new Filestream(Titanium.fileSystemProxy.getFileStream(parts));
 	},
 	/**
 	 * @tiapi(method=true,name=Filesystem.getApplicationDirectory,since=0.4) Returns file object pointing to the applications installation directory
@@ -395,5 +430,22 @@ Titanium.Filesystem = {
 	 */
 	isExternalStoragePresent: function() {
 		return Titanium.fileSystemProxy.isExternalStoragePresent();
-	}
+	},
+
+	/**
+	 * @tiapi(property=true,name=Filesystem.MODE_READ,since=0.6.3) Flag for opening in read mode.
+	 */
+	MODE_READ : 0,
+	/**
+	 * @tiapi(property=true,name=Filesystem.MODE_WRITE,since=0.6.3) Flag for opening in write mode.
+	 */
+	MODE_WRITE : 1,
+	/**
+	 * @tiapi(property=true,name=Filesystem.MODE_APPEND,since=0.6.3) Flag for opening in append mode.
+	 */
+	MODE_APPEND : 2
 };
+
+Filestream.prototype.MODE_READ = Titanium.Filesystem.MODE_READ;
+Filestream.prototype.MODE_WRITE = Titanium.Filesystem.MODE_WRITE;
+Filestream.prototype.MODE_APPEND = Titanium.Filesystem.MODE_APPEND;</diff>
      <filename>android/titanium/src/assets/ti/debug/tifs.js</filename>
    </modified>
    <modified>
      <diff>@@ -446,6 +446,20 @@ var TitaniumNotifier = function(proxy) {
 	}
 };
 
+var ImageView = function(proxy) {
+	this.proxy = proxy; // reference to Java object
+
+	this.setURL = function(url) {
+		if (!isUndefined(url)) {
+			this.proxy.setURL(proxy);
+		}
+	};
+
+	this.setScale = function(scale) {
+		this.setScale(scale);
+	};
+};
+
 var TableView = function(proxy) {
 	this.proxy = proxy; // reference to Java object
 	this._callback;
@@ -575,16 +589,23 @@ var TableView = function(proxy) {
 	this.setIsPrimary = function(primary) {
 		this.proxy.setIsRoot(primary);
 	};
-	this.configure = function(options) {
-		var opt = null;
-		if (!isUndefined(options)) {
-			opt = Titanium.JSON.stringify(options);
-		}
-		this.proxy.configure(opt, registerCallback(this, this._callback));
-	};
 	this.close = function() {
 		this.proxy.close();
-	}
+	};
+	this.setFontWeight = function(fontWeight) {
+		if (!isUndefined(fontWeight)) {
+			this.proxy.setFontWeight(fontWeight);
+		}
+	};
+	this.setFontSize = function(fontSize) {
+		if (!isUndefined(fontSize)) {
+			this.proxy.setFontSize(fontSize);
+		}
+	};
+	this.setCallback = function(callback) {
+		this._callback = callback;
+		this.proxy.setCallback(registerCallback(this, this._callback));
+	};
 };
 
 var WebView = function(proxy) {
@@ -804,13 +825,16 @@ var UserWindow = function(proxy) {
 	};
 	this.hideNavBar = function(options) {
 
-	}
+	};
 	this.setBarColor = function(options) {
 
-	}
+	};
 	this.setTitleControl = function(button) {
 
-	}
+	};
+	this.setToolbar = function() {
+
+	};
 };
 
 UserWindow.prototype.__defineGetter__(&quot;window&quot;, function() {
@@ -869,6 +893,47 @@ var DatePicker = function(proxy) {
 	};
 };
 
+var Picker = function(proxy) {
+	this.proxy = proxy;
+
+	this.setData = function(value, options) {
+	};
+
+	/**
+	 * @tiapi(method=true,name=UI.Picker.addEventListener,since=0.6.3) Add a listener.
+	 * @tiarg[string,eventName] The name of the event. Supports:
+	 * @tiarg[function,listener] The event listener
+	 * @tiresult[int] listenerId used to unregister the event.
+	 */
+	this.addEventListener = function(eventName, listener) {
+		return this.proxy.addEventListener(eventName, registerCallback(this, listener));
+	};
+	/**
+	 * @tiapi(method=true,name=UI.Picker.removeEventListener,since=0.6.3) Add a listener.
+	 * @tiarg[string,eventName] The name of the event. Supports:
+	 * @tiarg[function,listenerId] The event listener id returned by addEventListener
+	 */
+	this.removeEventListener = function(eventName, listenerId) {
+		this.proxy.removeEventListener(eventName, listenerId);
+	};
+
+	this.setColumnData = function(col, data) {
+		this.proxy.setColumnData(col, Titanium.JSON.stringify(data));
+	};
+
+	this.getSelectedRow = function(col) {
+		return this.proxy.getSelectedRow(col);
+	};
+
+	this.setData = function(data) {
+		this.proxy.setData(Titanium.JSON.stringify(data));
+	};
+
+	this.selectRow = function(col, row) {
+		this.proxy.selectRow(col, row);
+	}
+};
+
 var Switch = function(proxy) {
 	this.proxy = proxy;
 
@@ -1287,37 +1352,30 @@ Titanium.UI = {
 		return ind;
 	},
 	/**
+	 * @tiapi(method=true,name=UI.createImageView,since=0.7.0) Create an image view
+	 * @tiarg[object, options] a dictionary/hash of options
+	 * @tiresult[ImageView] the image view.
+	 */
+	createImageView : function(options) {
+		var iv = new ImageView(Titanium.uiProxy.createImageView());
+		if (isUndefined(options)) {
+			options = {};
+		}
+		iv.proxy.processOptions(Titanium.JSON.stringify(options));
+		return iv;
+	},
+	/**
 	 * @tiapi(method=true,name=UI.createTableView,since=0.5) Create a table view
 	 * @tiarg[object, options] a dictionary/hash of options
 	 * @tiresult[TableView] the table view.
 	 */
 	createTableView : function(options, callback) {
 		 var tv = new TableView(Titanium.uiProxy.createTableView());
-
-		 tv._callback = callback;
-
-		 if(!isUndefined(options)) {
-			 var data = options['data'];
-			 var rowHeight = options['rowHeight'];
-			 var isPrimary = options['isPrimary'];
-			 var name = options['name'];
-
-			 if (!isUndefined(data)) {
-				 tv.setData(data);
-			 }
-			 if (!isUndefined(rowHeight)) {
-				 tv.setRowHeight(rowHeight);
-			 }
-			 if (!isUndefined(isPrimary)) {
-				 tv.setIsPrimary(isPrimary);
-			 }
-			 if (!isUndefined(name)) {
-				 tv.setName(name);
-			 }
+		 if (isUndefined(options)) {
+			 options = {}
 		 }
-
-		 tv.configure(null, registerCallback(this, this._callback));
-
+		 tv.proxy.processOptions(Titanium.JSON.stringify(options));
+		 tv.setCallback(callback);
 		 return tv;
 	},
 	/**
@@ -1327,22 +1385,10 @@ Titanium.UI = {
 	 */
 	createWebView : function(options) {
 		 var wv = new WebView(Titanium.uiProxy.createWebView());
-
-		 if(!isUndefined(options)) {
-			 var url = options['url'];
-			 var name = options['name'];
-
-			 if (!isUndefined(url)) {
-				 //wv.setUrl(url);
-				 wv.proxy.setUrl(url);
-			 }
-			 if (!isUndefined(name)) {
-				 wv.proxy.setName(name);
-			 }
+		 if (isUndefined(options)) {
+			 options = {};
 		 }
-
-		 wv.proxy.configure(null);
-
+		 wv.proxy.processOptions(Titanium.JSON.stringify(options));
 		 return wv;
 	},
 	/**
@@ -1608,12 +1654,27 @@ Titanium.UI = {
 		return dlg;
 	},
 
-	createPicker : function() {
+	createPicker : function(options) {
+		if(isUndefined(options)) {
+			options = {};
+		}
 
+		var c = new Picker(Titanium.uiProxy.createPicker(Titanium.JSON.stringify(options)));
+		c.proxy.open();
+		return c;
 	},
 
-	createModalPicker : function() {
+	createModalPicker : function(options) {
+		if(isUndefined(options)) {
+			options = {};
+		}
+
+		var dlg = new Picker(Titanium.uiProxy.createModalPicker(Titanium.JSON.stringify(options)));
+		dlg.show = function() { this.proxy.show(); };
+		dlg.hide = function() { this.proxy.hide(); };
+		dlg.proxy.open();
 
+		return dlg;
 	},
 
 	// createNotification is below. It needs the property currentWindow</diff>
      <filename>android/titanium/src/assets/ti/debug/tiui.js</filename>
    </modified>
    <modified>
      <diff>@@ -1,5 +1,6 @@
 
-var Titanium=new function(){this.platform='android';this.version='TI_VERSION';this.window=window;this.document=document;this.apiProxy=window.TitaniumAPI;this.rethrow=function(e){throw e;};this.doPostProcessing=function(){var imgs=document.getElementsByTagName('img');for(i=0;i&lt;imgs.length;i++){var s=imgs[i].src;if(s.indexOf('file:///')==0){if(s.indexOf('file:///sdcard/')==-1&amp;&amp;s.indexOf('file:///android_asset')==-1){imgs[i].src=s.substring(8);}}else if(s.indexOf('app://')==0){imgs[i].src=s.substring(6);}}
+var Titanium=new function(){this.platform='android';this.version='TI_VERSION';this.window=window;this.document=document;this.apiProxy=window.TitaniumAPI;this.rethrow=function(e){throw e;};this.checked=function(r){if(!isUndefined(r)){if(typeof(r.getException)!=='undefined'){this.apiProxy.log(6,&quot;checking: &quot;+r.getException());if(!isUndefined(r.getException())){throw r.getException();}else{if(typeof(r.getResult)!=='undefined'){r=r.getResult();}}}}
+return r;};this.doPostProcessing=function(){var imgs=document.getElementsByTagName('img');for(i=0;i&lt;imgs.length;i++){var s=imgs[i].src;if(s.indexOf('file:///')==0){if(s.indexOf('file:///sdcard/')==-1&amp;&amp;s.indexOf('file:///android_asset')==-1){imgs[i].src=s.substring(8);}}else if(s.indexOf('app://')==0){imgs[i].src=s.substring(6);}}
 document.addEventListener('DOMSubtreeModified',function(e){Titanium.apiProxy.invalidateLayout();});};this.getPosition=function(obj){var pos={top:0,left:0,width:0,height:0};if(!isUndefined(obj)){pos.width=obj.offsetWidth;pos.height=obj.offsetHeight;while(obj){pos.left+=obj.offsetLeft;pos.top+=obj.offsetTop;obj=obj.offsetParent;}}
 return pos;};this.sendLayoutToNative=function(ids){var positions={};for(i=0;i&lt;ids.length;i++){var id=ids[i];var o=document.getElementById(id);positions[id]=this.getPosition(o);}
 this.apiProxy.updateNativeControls(Titanium.JSON.stringify(positions));}
@@ -66,7 +67,11 @@ Titanium.appProxy=window.TitaniumApp;Titanium.App={getID:function()
 {return transformObjectValue(Titanium.appProxy.appURLToPath(url),null);},getStreamURL:function(stream)
 {return transformObjectValue(Titanium.appProxy.getStreamURL(stream),null);},triggerLoad:function()
 {Titanium.appProxy.triggerLoad();},setLoadOnPageEnd:function(load)
-{return transformObjectValue(Titanium.appProxy.setLoadOnPageEnd(load),null);}};Properties=function(proxy){this.proxy=proxy;this.getString=function(name,def){def=arguments.length==1||isUndefined(def)?null:def;var r=this.proxy.getString(name,def);return transformObjectValue(r,def);};this.setString=function(name,value){return this.proxy.setString(name,value);};this.getInt=function(name,def){def=arguments.length==1||isUndefined(def)?-1:def;var r=this.proxy.getInt(name,def);return transformObjectValue(r,def);};this.setInt=function(name,value){return this.proxy.setInt(name,value);};this.getBool=function(name,def){def=arguments.length==1||isUndefined(def)?false:def;var r=this.proxy.getBool(name,def);return transformObjectValue(r,def);};this.setBool=function(name,value){return this.proxy.setBool(name,value);},this.getDouble=function(name,def){def=arguments.length==1||isUndefined(def)?0.0:def;var r=this.proxy.getDouble(name,def);return transformObjectValue(r,def);},this.setDouble=function(name,value){return this.proxy.setDouble(name,value);}};Titanium.App.Properties=new Properties(Titanium.appProxy.getAppProperties());Titanium.App.SystemProperties=new Properties(Titanium.appProxy.getSystemProperties());
+{return transformObjectValue(Titanium.appProxy.setLoadOnPageEnd(load),null);}};Properties=function(proxy){this.proxy=proxy;this.getString=function(name,def){def=arguments.length==1||isUndefined(def)?null:def;var r=this.proxy.getString(name,def);return transformObjectValue(r,def);};this.setString=function(name,value){return this.proxy.setString(name,value);};this.getInt=function(name,def){def=arguments.length==1||isUndefined(def)?-1:def;var r=this.proxy.getInt(name,def);return transformObjectValue(r,def);};this.setInt=function(name,value){return this.proxy.setInt(name,value);};this.getBool=function(name,def){def=arguments.length==1||isUndefined(def)?false:def;var r=this.proxy.getBool(name,def);return transformObjectValue(r,def);};this.setBool=function(name,value){return this.proxy.setBool(name,value);},this.getDouble=function(name,def){def=arguments.length==1||isUndefined(def)?0.0:def;var r=this.proxy.getDouble(name,def);return transformObjectValue(r,def);},this.setDouble=function(name,value){return this.proxy.setDouble(name,value);},this.getList=function(name,def)
+{if(isUndefined(def)){def=[];}
+var s=this.proxy.getList(name,Titanium.JSON.stringify(def));return eval(&quot;(&quot;+s+&quot;)&quot;);},this.setList=function(name,value){if(isUndefined(value)){value=[];}
+if(!typeOf(value)=='array'){value=[value];}
+this.proxy.setList(name,Titanium.JSON.stringify(value));},this.hasProperty=function(name){return this.proxy.hasProperty(name);},this.listProperties=function(){return eval(&quot;(&quot;+this.proxy.listProperties()+&quot;)&quot;);},this.removeProperty=function(name){if(!isUndefined(name)){this.proxy.removeProperty(name);}}};Titanium.App.Properties=new Properties(Titanium.appProxy.getAppProperties());Titanium.App.SystemProperties=new Properties(Titanium.appProxy.getSystemProperties());
 Titanium.uiProxy=window.TitaniumUI;var MenuItem=function(){this.obj;this._callback;this.isRoot=function(){return this.obj.isRoot();};this.isSeparator=function(){return this.obj.isSeparator();};this.isItem=function(){return this.obj.isItem();};this.isSubMenu=function(){return this.obj.isSubMenu();};this.isEnabled=function(){return this.obj.isEnabled();};this.addSeparator=function(){var m=new MenuItem;m.obj=this.obj.addSeparator();return m;};this.addItem=function(label,callback,icon){var m=new MenuItem();this._callback=callback;m.obj=this.obj.addItem(label,registerCallback(this,this._callback),icon);return m;};this.addSubMenu=function(label,icon){var m=new MenuItem();m.obj=this.obj.addSubMenu(label,icon);return m;};this.enable=function(){this.obj.enable();};this.disable=function(){this.obj.disable();};this.setLabel=function(label){this.obj.setLabel(label);};this.getLabel=function(){return this.obj.getLabel();};this.setIcon=function(icon){this.obj.setIcon(icon);};this.getIcon=function(){return this.obj.getIcon();};this.setCallback=function(f){_callback=f;this.obj.setCallback(registerCallback(this,f));};};var OptionDialog=function(proxy){this.proxy=proxy;this.setTitle=function(title){this.proxy.setTitle(title);};this.setOptions=function(options){var o=transformObjectValue(options,[]);if(typeOf(o)!=='array'){o=[options];}
 this.proxy.setOptions(o);};this.addEventListener=function(eventName,listener){if(eventName!==&quot;click&quot;){throw new Error(&quot;OptionDialog only handles click events. Use event name 'click'&quot;);}
 return this.proxy.addEventListener(eventName,registerCallback(this,listener));};this.removeEventListener=function(eventName,listenerId){if(eventName!==&quot;click&quot;){throw new Error(&quot;OptionDialog only handles click events. Use event name 'click'&quot;);}
@@ -76,22 +81,19 @@ return this.proxy.addEventListener(eventName,registerCallback(this,listener));};
 this.proxy.removeEventListener(eventName,listenerId);};this.show=function(){this.proxy.show();}};var ActivityIndicator=function(proxy){this.proxy=proxy;this.setMessage=function(msg){this.proxy.setMessage(msg);};this.setMin=function(n){this.proxy.setMin(n);};this.setMax=function(n){this.proxy.setMax(n);};this.setValue=function(n){this.proxy.setPosition(n);};this.show=function(){this.proxy.show();};this.hide=function(){this.proxy.hide();};};var EmailDialog=function(proxy){this.proxy=proxy;this.setSubject=function(subject){if(isUndefined(subject)){subject=null;}
 proxy.setSubject(subject);};this.toStringArray=function(addrs){var sa=[];if(!isUndefined(addrs)){if(typeOf(addrs)==='string'){Titanium.API.debug(&quot;addrs is string&quot;);sa.push(addrs);}else if(typeOf(addrs)==='array'){Titanium.API.debug(&quot;addrs is array&quot;);for(addr in addrs){if(typeOf(addrs[addr])==='string'){sa.push(addrs[addr]);}}}}
 return sa;};this.setToRecipients=function(addrs){addrs=this.toStringArray(addrs);for(addr in addrs){this.proxy.addTo(addrs[addr]);}};this.setCcRecipients=function(addrs){addrs=this.toStringArray(addrs);for(addr in addrs){this.proxy.addCc(addrs[addr]);}};this.setBccRecipients=function(addrs){addrs=this.toStringArray(addrs);for(addr in addrs){this.proxy.addBcc(addrs[addr]);}};this.setMessageBody=function(msg){this.proxy.setMessage(msg);};this.addAttachment=function(attachment){var a={};if(!isUndefined(attachment)){Titanium.API.debug(&quot;Attachment type: &quot;+typeOf(attachment));if(typeOf(attachment)!='string'){if(!isUndefined(attachment.url)){a.file=String(attachment.url);}}else{a.file=attachment;}
-this.proxy.addAttachment(Titanium.JSON.stringify(a));}};this.open=function(){this.proxy.open();};};var TitaniumNotifier=function(proxy){this.proxy=proxy;this._callback;this.setTitle=function(title){this.proxy.setTitle(title);};this.setMessage=function(message){this.proxy.setMessage(message);};this.setIcon=function(iconUrl){this.proxy.setIcon(iconUrl);};this.setDelay=function(delay){this.proxy.setDelay(delay);};this.setCallback=function(callback){this._callback=callback;this.proxy.setCallback(registerCallback(this,_callback));};this.show=function(animate,autohide){this.proxy.show(transformObjectValue(animate,false),transformObjectValue(autohide,true));};this.hide=function(animate){this.proxy.hide(transformObjectValue(animate,false));}};var TableView=function(proxy){this.proxy=proxy;this._callback;this.setData=function(data){this.proxy.setData(Titanium.JSON.stringify(data));};this.setRowHeight=function(height){this.proxy.setRowHeight(height);};this.getIndexByName=function(name){return this.proxy.getIndexByName(name);};this.addEventListener=function(eventName,listener){return this.proxy.addEventListener(eventName,registerCallback(this,listener));};this.removeEventListener=function(eventName,listenerId){this.proxy.removeEventListener(eventName,listenerId);};this.insertRowAfter=function(index,options){if(isUndefined(options)){options={};}
+this.proxy.addAttachment(Titanium.JSON.stringify(a));}};this.open=function(){this.proxy.open();};};var TitaniumNotifier=function(proxy){this.proxy=proxy;this._callback;this.setTitle=function(title){this.proxy.setTitle(title);};this.setMessage=function(message){this.proxy.setMessage(message);};this.setIcon=function(iconUrl){this.proxy.setIcon(iconUrl);};this.setDelay=function(delay){this.proxy.setDelay(delay);};this.setCallback=function(callback){this._callback=callback;this.proxy.setCallback(registerCallback(this,_callback));};this.show=function(animate,autohide){this.proxy.show(transformObjectValue(animate,false),transformObjectValue(autohide,true));};this.hide=function(animate){this.proxy.hide(transformObjectValue(animate,false));}};var ImageView=function(proxy){this.proxy=proxy;this.setURL=function(url){if(!isUndefined(url)){this.proxy.setURL(proxy);}};this.setScale=function(scale){this.setScale(scale);};};var TableView=function(proxy){this.proxy=proxy;this._callback;this.setData=function(data){this.proxy.setData(Titanium.JSON.stringify(data));};this.setRowHeight=function(height){this.proxy.setRowHeight(height);};this.getIndexByName=function(name){return this.proxy.getIndexByName(name);};this.addEventListener=function(eventName,listener){return this.proxy.addEventListener(eventName,registerCallback(this,listener));};this.removeEventListener=function(eventName,listenerId){this.proxy.removeEventListener(eventName,listenerId);};this.insertRowAfter=function(index,options){if(isUndefined(options)){options={};}
 this.proxy.insertRowAfter(index,Titanium.JSON.stringify(options));};this.insertRowBefore=function(index,options){if(isUndefined(options)){options={};}
 this.proxy.insertRowBefore(index,Titanium.JSON.stringify(options));};this.deleteRow=function(index){this.proxy.deleteRow(index);};this.updateRow=function(index,options){if(isUndefined(options)){options={};}
 this.proxy.updateRow(index,Titanium.JSON.stringify(options));};this.appendRow=function(rowData,options){if(!isUndefined(rowData)){if(isUndefined(options)){options={};}
 this.proxy.appendRow(Titanium.JSON.stringify(rowData),Titanium.JSON.stringify(options));}};this.getRowCount=function(){return this.proxy.getRowCount();};this.getIndexByName=function(name){if(isUndefined(name)){name=null;}
-return this.proxy.getIndexByName(name);};this.getName=function(){return this.proxy.getName();};this.setName=function(name){if(!isUndefined(name)){this.proxy.setName(name);}};this.setIsPrimary=function(primary){this.proxy.setIsRoot(primary);};this.configure=function(options){var opt=null;if(!isUndefined(options)){opt=Titanium.JSON.stringify(options);}
-this.proxy.configure(opt,registerCallback(this,this._callback));};this.close=function(){this.proxy.close();}};var WebView=function(proxy){this.proxy=proxy;this.getName=function(){return this.proxy.getName();};this.addEventListener=function(eventName,listener){return this.proxy.addEventListener(eventName,registerCallback(this,listener));};this.removeEventListener=function(eventName,listenerId){this.proxy.removeEventListener(eventName,listenerId);};};var UserWindow=function(proxy){this.proxy=proxy;this._window;this.setWindowId=function(name){this.proxy.setWindowId(name);}
+return this.proxy.getIndexByName(name);};this.getName=function(){return this.proxy.getName();};this.setName=function(name){if(!isUndefined(name)){this.proxy.setName(name);}};this.setIsPrimary=function(primary){this.proxy.setIsRoot(primary);};this.close=function(){this.proxy.close();};this.setFontWeight=function(fontWeight){if(!isUndefined(fontWeight)){this.proxy.setFontWeight(fontWeight);}};this.setFontSize=function(fontSize){if(!isUndefined(fontSize)){this.proxy.setFontSize(fontSize);}};this.setCallback=function(callback){this._callback=callback;this.proxy.setCallback(registerCallback(this,this._callback));};};var WebView=function(proxy){this.proxy=proxy;this.getName=function(){return this.proxy.getName();};this.addEventListener=function(eventName,listener){return this.proxy.addEventListener(eventName,registerCallback(this,listener));};this.removeEventListener=function(eventName,listenerId){this.proxy.removeEventListener(eventName,listenerId);};};var UserWindow=function(proxy){this.proxy=proxy;this._window;this.setWindowId=function(name){this.proxy.setWindowId(name);}
 this.setURL=function(url){this.proxy.setUrl(url);};this.setTitle=function(title){this.proxy.setTitle(title);};this.setTitleImage=function(imageUrl){this.proxy.setTitleImage(imageUrl);};this.setFullscreen=function(fullscreen){this.proxy.setFullscreen(fullscreen);};this.setType=function(type){this.proxy.setType(type);}
 this.open=function(options){this._window=this.proxy.open();return this._window;};this.close=function(options){this.proxy.close();this._window=null;};this.addEventListener=function(eventName,listener){return this.proxy.addEventListener(eventName,registerCallback(this,listener));};this.removeEventListener=function(eventName,listenerId){this.proxy.removeEventListener(eventName,listenerId);};this.addView=function(view){this.proxy.addView(view.proxy);};this.getViews=function(){var views=[];var count=this.proxy.getViewCount();for(i=0;i&lt;count;i++){v={};v.window=this.proxy;v.key=this.proxy.getViewKey(i);v.index=i;v.name=this.proxy.getViewName(v.key);v.addEventListener=function(eventName,listener){return this.window.addViewEventListener(this.key,eventName,registerCallback(this,listener));};v.removeEventListener=function(eventName,listenerId){this.window.removeViewEventListener(this.key,eventName,listenerId);};views[i]=v;}
 return views;};this.setActiveViewIndex=function(index,options){if(isUndefined(options)){options=null;}else{options=Titanium.JSON.stringify(options);}
 this.proxy.setActiveViewIndex(index,options);};this.showView=function(view,options){if(isUndefined(options)){options=null;}else{options=Titanium.JSON.stringify(options);}
 if(!isUndefined(view.key)){this.proxy.showViewByKey(view.key,options);}else{this.proxy.showView(view.proxy,options);}};this.getViewByName=function(name){var v=null;if(!isUndefined(name)){var views=this.getViews();for(i=0;i&lt;views.length;i++){var view=views[i];Titanium.API.debug(&quot;*** Name: &quot;+name+&quot; vName: &quot;+view.name);if(!isUndefined(view.name)){if(name==view.name){v=view;break;}}}}
-return v;};this.getActiveViewIndex=function(){return this.proxy.getActiveViewIndex();};this.setNavBarColor=function(color){};this.setLeftNavButton=function(button){};this.setRightNavButton=function(button){};this.showNavBar=function(options){};this.hideNavBar=function(options){}
-this.setBarColor=function(options){}
-this.setTitleControl=function(button){}};UserWindow.prototype.__defineGetter__(&quot;window&quot;,function(){return this._window;});var Button=function(proxy){this.proxy=proxy;this.addEventListener=function(eventName,listener){return this.proxy.addEventListener(eventName,registerCallback(this,listener));};this.removeEventListener=function(eventName,listenerId){this.proxy.removeEventListener(eventName,listenerId);};};var DatePicker=function(proxy){this.proxy=proxy;this.setValue=function(value,options){};this.addEventListener=function(eventName,listener){var l=function(e){var d=new Date(0);d.setTime(e.value);listener({value:d});}
-return this.proxy.addEventListener(eventName,registerCallback(this,l));};this.removeEventListener=function(eventName,listenerId){this.proxy.removeEventListener(eventName,listenerId);};};var Switch=function(proxy){this.proxy=proxy;this.addEventListener=function(eventName,listener){return this.proxy.addEventListener(eventName,registerCallback(this,listener));};this.removeEventListener=function(eventname,listenerId){this.proxy.removeEventListener(eventName,listenerId);};this.setValue=function(value){if(!isUndefined(value)){this.proxy.setValue(value);}};this.getValue=function(){return this.proxy.getValue();};};Switch.prototype.__defineGetter__(&quot;value&quot;,function(){return this.getValue;});Switch.prototype.__defineSetter__(&quot;value&quot;,function(value){this.setValue(value);});var Slider=function(proxy){this.proxy=proxy;this.addEventListener=function(eventName,listener){return this.proxy.addEventListener(eventName,registerCallback(this,listener));};this.removeEventListener=function(eventname,listenerId){this.proxy.removeEventListener(eventName,listenerId);};this.setValue=function(value){if(!isUndefined(value)){this.proxy.setValue(value);}};this.getValue=function(){return this.proxy.getValue();};};Slider.prototype.__defineGetter__(&quot;value&quot;,function(){return this.getValue;});Slider.prototype.__defineSetter__(&quot;value&quot;,function(value){this.setValue(value);});var TextArea=function(proxy){this.proxy=proxy;this.focus=function(){this.proxy.focus();}
+return v;};this.getActiveViewIndex=function(){return this.proxy.getActiveViewIndex();};this.setNavBarColor=function(color){};this.setLeftNavButton=function(button){};this.setRightNavButton=function(button){};this.showNavBar=function(options){};this.hideNavBar=function(options){};this.setBarColor=function(options){};this.setTitleControl=function(button){};this.setToolbar=function(){};};UserWindow.prototype.__defineGetter__(&quot;window&quot;,function(){return this._window;});var Button=function(proxy){this.proxy=proxy;this.addEventListener=function(eventName,listener){return this.proxy.addEventListener(eventName,registerCallback(this,listener));};this.removeEventListener=function(eventName,listenerId){this.proxy.removeEventListener(eventName,listenerId);};};var DatePicker=function(proxy){this.proxy=proxy;this.setValue=function(value,options){};this.addEventListener=function(eventName,listener){var l=function(e){var d=new Date(0);d.setTime(e.value);listener({value:d});}
+return this.proxy.addEventListener(eventName,registerCallback(this,l));};this.removeEventListener=function(eventName,listenerId){this.proxy.removeEventListener(eventName,listenerId);};};var Picker=function(proxy){this.proxy=proxy;this.setData=function(value,options){};this.addEventListener=function(eventName,listener){return this.proxy.addEventListener(eventName,registerCallback(this,listener));};this.removeEventListener=function(eventName,listenerId){this.proxy.removeEventListener(eventName,listenerId);};this.setColumnData=function(col,data){this.proxy.setColumnData(col,Titanium.JSON.stringify(data));};this.getSelectedRow=function(col){return this.proxy.getSelectedRow(col);};this.setData=function(data){this.proxy.setData(Titanium.JSON.stringify(data));};this.selectRow=function(col,row){this.proxy.selectRow(col,row);}};var Switch=function(proxy){this.proxy=proxy;this.addEventListener=function(eventName,listener){return this.proxy.addEventListener(eventName,registerCallback(this,listener));};this.removeEventListener=function(eventname,listenerId){this.proxy.removeEventListener(eventName,listenerId);};this.setValue=function(value){if(!isUndefined(value)){this.proxy.setValue(value);}};this.getValue=function(){return this.proxy.getValue();};};Switch.prototype.__defineGetter__(&quot;value&quot;,function(){return this.getValue;});Switch.prototype.__defineSetter__(&quot;value&quot;,function(value){this.setValue(value);});var Slider=function(proxy){this.proxy=proxy;this.addEventListener=function(eventName,listener){return this.proxy.addEventListener(eventName,registerCallback(this,listener));};this.removeEventListener=function(eventname,listenerId){this.proxy.removeEventListener(eventName,listenerId);};this.setValue=function(value){if(!isUndefined(value)){this.proxy.setValue(value);}};this.getValue=function(){return this.proxy.getValue();};};Slider.prototype.__defineGetter__(&quot;value&quot;,function(){return this.getValue;});Slider.prototype.__defineSetter__(&quot;value&quot;,function(value){this.setValue(value);});var TextArea=function(proxy){this.proxy=proxy;this.focus=function(){this.proxy.focus();}
 this.blur=function(){this.proxy.blur();}
 this.addEventListener=function(eventName,listener){return this.proxy.addEventListener(eventName,registerCallback(this,listener));};this.removeEventListener=function(eventname,listenerId){this.proxy.removeEventListener(eventName,listenerId);};this.setValue=function(value){if(!isUndefined(value)){this.proxy.setValue(value);}};this.getValue=function(){return this.proxy.getValue();};};TextArea.prototype.__defineGetter__(&quot;value&quot;,function(){return this.getValue;});TextArea.prototype.__defineSetter__(&quot;value&quot;,function(value){this.setValue(value);});var TextField=function(proxy){this.proxy=proxy;this.focus=function(){this.proxy.focus();}
 this.blur=function(){this.proxy.blur();}
@@ -117,13 +119,10 @@ if(!isUndefined(type)){ind.setType(type);}
 if(!isUndefined(minVal)){ind.setMin(minVal);}
 if(!isUndefined(maxVal)){ind.setMax(maxVal);}
 if(!isUndefined(value)){ind.setValue(value);}}
-return ind;},createTableView:function(options,callback){var tv=new TableView(Titanium.uiProxy.createTableView());tv._callback=callback;if(!isUndefined(options)){var data=options['data'];var rowHeight=options['rowHeight'];var isPrimary=options['isPrimary'];var name=options['name'];if(!isUndefined(data)){tv.setData(data);}
-if(!isUndefined(rowHeight)){tv.setRowHeight(rowHeight);}
-if(!isUndefined(isPrimary)){tv.setIsPrimary(isPrimary);}
-if(!isUndefined(name)){tv.setName(name);}}
-tv.configure(null,registerCallback(this,this._callback));return tv;},createWebView:function(options){var wv=new WebView(Titanium.uiProxy.createWebView());if(!isUndefined(options)){var url=options['url'];var name=options['name'];if(!isUndefined(url)){wv.proxy.setUrl(url);}
-if(!isUndefined(name)){wv.proxy.setName(name);}}
-wv.proxy.configure(null);return wv;},createEmailDialog:function(options){var dlg=new EmailDialog(Titanium.uiProxy.createEmailDialog());if(!isUndefined(options)){var subject=options[&quot;subject&quot;];var to=options[&quot;toRecipients&quot;];var cc=options[&quot;ccRecipients&quot;];var bcc=options[&quot;bccRecipients&quot;];var msg=options[&quot;messageBody&quot;];var attachment=options[&quot;attachment&quot;];if(!isUndefined(subject)){dlg.setSubject(subject);}
+return ind;},createImageView:function(options){var iv=new ImageView(Titanium.uiProxy.createImageView());if(isUndefined(options)){options={};}
+iv.proxy.processOptions(Titanium.JSON.stringify(options));return iv;},createTableView:function(options,callback){var tv=new TableView(Titanium.uiProxy.createTableView());if(isUndefined(options)){options={}}
+tv.proxy.processOptions(Titanium.JSON.stringify(options));tv.setCallback(callback);return tv;},createWebView:function(options){var wv=new WebView(Titanium.uiProxy.createWebView());if(isUndefined(options)){options={};}
+wv.proxy.processOptions(Titanium.JSON.stringify(options));return wv;},createEmailDialog:function(options){var dlg=new EmailDialog(Titanium.uiProxy.createEmailDialog());if(!isUndefined(options)){var subject=options[&quot;subject&quot;];var to=options[&quot;toRecipients&quot;];var cc=options[&quot;ccRecipients&quot;];var bcc=options[&quot;bccRecipients&quot;];var msg=options[&quot;messageBody&quot;];var attachment=options[&quot;attachment&quot;];if(!isUndefined(subject)){dlg.setSubject(subject);}
 if(!isUndefined(to)){dlg.setToRecipients(to);}
 if(!isUndefined(cc)){dlg.setCcRecipients(cc);}
 if(!isUndefined(bcc)){dlg.setBccRecipients(bcc);}
@@ -138,7 +137,9 @@ o[k]=v;}
 var c=new DatePicker(Titanium.uiProxy.createDatePicker(Titanium.JSON.stringify(o)));c.proxy.open();return c},createModalDatePicker:function(options){if(isUndefined(options)){options={};}
 var o={};for(k in options){var v=options[k];if(k=='value'||k=='minDate'||k=='maxDate'){v=v.getTime();}
 o[k]=v;}
-var dlg=new DatePicker(Titanium.uiProxy.createModalDatePicker(Titanium.JSON.stringify(o)));dlg.show=function(){this.proxy.show();};dlg.hide=function(){this.proxy.hide();};dlg.proxy.open();return dlg;},createPicker:function(){},createModalPicker:function(){},createToolbar:function(options){return null;},setTabBadge:function(id){},setStatusBarColor:function(color){}};Titanium.UI.createAlert=Titanium.UI.createAlertDialog;Titanium.UI._currentWindow=null;Titanium.UI.__defineGetter__(&quot;currentWindow&quot;,function(){if(Titanium.UI._currentWindow==null){Titanium.UI._currentWindow=new UserWindow(Titanium.uiProxy.getCurrentWindow());}
+var dlg=new DatePicker(Titanium.uiProxy.createModalDatePicker(Titanium.JSON.stringify(o)));dlg.show=function(){this.proxy.show();};dlg.hide=function(){this.proxy.hide();};dlg.proxy.open();return dlg;},createPicker:function(options){if(isUndefined(options)){options={};}
+var c=new Picker(Titanium.uiProxy.createPicker(Titanium.JSON.stringify(options)));c.proxy.open();return c;},createModalPicker:function(options){if(isUndefined(options)){options={};}
+var dlg=new Picker(Titanium.uiProxy.createModalPicker(Titanium.JSON.stringify(options)));dlg.show=function(){this.proxy.show();};dlg.hide=function(){this.proxy.hide();};dlg.proxy.open();return dlg;},createToolbar:function(options){return null;},setTabBadge:function(id){},setStatusBarColor:function(color){}};Titanium.UI.createAlert=Titanium.UI.createAlertDialog;Titanium.UI._currentWindow=null;Titanium.UI.__defineGetter__(&quot;currentWindow&quot;,function(){if(Titanium.UI._currentWindow==null){Titanium.UI._currentWindow=new UserWindow(Titanium.uiProxy.getCurrentWindow());}
 return Titanium.UI._currentWindow;});Titanium.UI.__defineGetter__(&quot;currentView&quot;,function(){var view=null;var index=Titanium.UI.currentWindow.getActiveViewIndex();if(index&gt;-1){view=Titanium.UI.currentWindow.getViews()[index];}
 return view;});Titanium.UI.ActivityIndicator={STATUS_BAR:0,DIALOG:1,INDETERMINANT:0,DETERMINANT:1};Titanium.UI.Android={AnimationStyle:{FADE:'fade-in',SLIDE_FROM_TOP:'slide-from-top',SLIDE_FROM_LEFT:'slide-from-left',SLIDE_FROM_RIGHT:'slide-from-right',SLIDE_FROM_BOTTOM:'slide-from-bottom',SCALE:'scale-in',WINK:'wink-in',HEADLINES:'headlines'}};Titanium.UI.Android.SystemIcon={ACTION:'ti:Ti:default_icon',CAMERA:'ti:Sys:ic_menu_camera',COMPOSE:'ti:Sys:ic_menu_compose',BOOKMARKS:'ti:Ti:default_icon',SEARCH:'ti:Sys:ic_menu_search',ADD:'ti:Sys:ic_menu_add',TRASH:'ti:Sys:ic_menu_delete',ORGANIZE:'ti:Sys:ic_menu_archive',REPLY:'ti:Ti:default_icon',STOP:'ti:Sys:ic_menu_stop',REFRESH:'ti:Sys:ic_menu_refresh',PLAY:'ti:Sys:ic_media_play',FAST_FORWARD:'ti:Sys:ic_media_ff',PAUSE:'ti:Sys:ic_media_pause',REWIND:'ti:Sys:ic_media_rew',EDIT:'ti:Sys:ic_menu_edit',CANCEL:'ti:Sys:ic_menu_close_clear_cancel',SAVE:'ti:Sys:ic_menu_save',DONE:'ti:Sys:ic_menu_mark',BACK:'ti:Sys:ic_menu_back',FORWARD:'ti:Sys:ic_menu_forward',HELP:'ti:Sys:ic_menu_help',HOME:'ti:Sys:ic_menu_home',NEXT:'ti:Sys:ic_media_next',PREFERENCES:'ti:Sys:ic_menu_preferences',PREVIOUS:'ti:Sys:ic_media_previous',REVERT:'ti:Sys:ic_menu_revert',SEND:'ti:Sys:ic_menu_send',SHARE:'ti:Sys:ic_menu_share',VIEW:'ti:Sys:ic_menu_view',ZOOM:'ti:Sys:ic_menu_zoom'};Titanium.UI.DatePicker={MODE_DATE:0,MODE_TIME:1,MODE_DATE_AND_TIME:2};ActivityIndicator.prototype.setLocation=function(loc){if(!(loc==Titanium.UI.ActivityIndicator.STATUS_BAR||loc==Titanium.UI.ActivityIndicator.DIALOG)){throw new Error(&quot;Unsupported indicator location.&quot;);}
 this.proxy.setLocation(loc);};ActivityIndicator.prototype.setType=function(type){if(!(type==Titanium.UI.ActivityIndicator.DETERMINANT||type==Titanium.UI.ActivityIndicator.INDETERMINANT)){throw new Error(&quot;Unsupported indicator type.&quot;);}
@@ -151,41 +152,43 @@ if(!isUndefined(transparency)){notifier.setTransparency(transparency);}}}else{Ti
 return notifier;};Titanium.UI.iPhone={BORDERED:-1,StatusBar:{OPAQUE_BLACK:-1},setStatusBarStyle:function(x){},SystemButton:{PAUSE:-1,REWIND:-1,PLAY:-1,FIXED_SPACE:-1,FLEXIBLE_SPACE:-1,},SystemButtonStyle:{PLAIN:-1},AnimationStyle:{FLIP_FROM_LEFT:-1,FLIP_FROM_RIGHT:-1,CURL_UP:-1,CURL_DOWN:-1},RowAnimationStyle:{LEFT:-1,RIGHT:-1,UP:-1,DOWN:-1}};
 Titanium.fileSystemProxy=window.TitaniumFilesystem;TitaniumFile=function(f)
 {this.proxy=f;};TitaniumFile.prototype.isFile=function()
-{return this.proxy.isFile();};TitaniumFile.prototype.isDirectory=function()
-{return this.proxy.isDirectory();};TitaniumFile.prototype.isHidden=function()
-{return this.proxy.isHidden();};TitaniumFile.prototype.isSymbolicLink=function()
-{return this.proxy.isSymbolicLink();};TitaniumFile.prototype.isExecutable=function()
-{return this.proxy.isExecutable();};TitaniumFile.prototype.isReadonly=function()
-{return this.proxy.isReadonly();};TitaniumFile.prototype.isWriteable=function()
-{return this.proxy.isWriteable();};TitaniumFile.prototype.resolve=function()
-{return this.proxy.resolve();};TitaniumFile.prototype.read=function()
-{return this.proxy.read();};TitaniumFile.prototype.write=function(data,append)
-{append=typeof(append)=='undefined'?false:append;return this.proxy.write(data,append);};TitaniumFile.prototype.readLine=function()
-{return this.proxy.readLine();};TitaniumFile.prototype.copy=function(destination)
-{return this.proxy.copy(destination);};TitaniumFile.prototype.move=function(destination)
-{return this.proxy.move(destination);};TitaniumFile.prototype.rename=function(destination)
-{return this.proxy.rename(destination);};TitaniumFile.prototype.createDirectory=function(recursive)
-{recursive=typeof(recursive)=='undefined'?false:recursive;return this.proxy.createDirectory(recursive);};TitaniumFile.prototype.deleteDirectory=function(recursive)
-{recursive=typeof(recursive)=='undefined'?false:recursive;return this.proxy.deleteDirectory(recursive);};TitaniumFile.prototype.deleteFile=function()
-{return this.proxy.deleteFile();};TitaniumFile.prototype.getDirectoryListing=function()
-{return this.proxy.getDirectoryListing();};TitaniumFile.prototype.getParent=function()
-{return this.proxy.getParent();};TitaniumFile.prototype.exists=function()
-{return this.proxy.exists();};TitaniumFile.prototype.createTimestamp=function()
-{return this.proxy.createTimestamp();};TitaniumFile.prototype.modificationTimestamp=function()
-{return this.proxy.modificationTimestamp();};TitaniumFile.prototype.name=function()
-{return this.proxy.name();};TitaniumFile.prototype.extension=function()
-{return this.proxy.extension();};TitaniumFile.prototype.size=function()
-{return this.proxy.size();};TitaniumFile.prototype.nativePath=function()
-{return this.proxy.nativePath();};TitaniumFile.prototype.spaceAvailable=function()
-{return this.proxy.spaceAvailable();};TitaniumFile.prototype.setExecutable=function()
-{return this.proxy.setExecutable();};TitaniumFile.prototype.setReadonly=function()
-{return this.proxy.setReadonly();};TitaniumFile.prototype.setWriteable=function()
-{return this.proxy.setWriteable();};TitaniumFile.prototype.toString=function()
-{return String(this.proxy.toString());};TitaniumFile.createBlob=function(native){var f=new TitaniumFile(native);function TitaniumBlob(f){this.obj=f;};TitaniumBlob.prototype=f;var b=new TitaniumBlob(f);b.__defineGetter__(&quot;url&quot;,function(){return this.nativePath();});return b;};Titanium.Filesystem={createTempFile:function(){return new TitaniumFile(Titanium.fileSystemProxy.createTempFile());},createTempDirectory:function(){return new TitaniumFile(Titanium.fileSystemProxy.createTempDirectory());},getFile:function(a,b,c,d,e,f,g){var parts=[];if(arguments.length&gt;0)parts.push(String(a));if(arguments.length&gt;1)parts.push(String(b));if(arguments.length&gt;2)parts.push(String(c));if(arguments.length&gt;3)parts.push(String(d));if(arguments.length&gt;4)parts.push(String(e));if(arguments.length&gt;5)parts.push(String(f));if(arguments.length&gt;6)parts.push(String(g));return new TitaniumFile(Titanium.fileSystemProxy.getFile(parts));},getFileStream:function(a,b,c,d,e,f,g){var parts=[];if(arguments.length&gt;0)parts.push(String(a));if(arguments.length&gt;1)parts.push(String(b));if(arguments.length&gt;2)parts.push(String(c));if(arguments.length&gt;3)parts.push(String(d));if(arguments.length&gt;4)parts.push(String(e));if(arguments.length&gt;5)parts.push(String(f));if(arguments.length&gt;6)parts.push(String(g));return TitaniumFile(Titanium.fileSystemProxy.getFileStream(parts));},getApplicationDirectory:function(){return new TitaniumFile(Titanium.fileSystemProxy.getApplicationDirectory());},getApplicationDataDirectory:function(private){private=typeof(private)=='undefined'?false:private;return new TitaniumFile(Titanium.fileSystemProxy.getApplicationDataDirectory(private));},getResourcesDirectory:function(){return new TitaniumFile(Titanium.fileSystemProxy.getResourcesDirectory());},getUserDirectory:function(){return new TitaniumFile(Titanium.fileSystemProxy.getUserDirectory());},getLineEnding:function(){return&quot;\n&quot;;},getSeparator:function(){return&quot;;&quot;;},getRootDirectories:function(){var results=Titanium.fileSystemProxy.getRootDirectories();if(results)
+{return Titanium.checked(this.proxy.isFile());};TitaniumFile.prototype.isDirectory=function()
+{return Titanium.checked(this.proxy.isDirectory());};TitaniumFile.prototype.isHidden=function()
+{return Titanium.checked(this.proxy.isHidden());};TitaniumFile.prototype.isSymbolicLink=function()
+{return Titanium.checked(this.proxy.isSymbolicLink());};TitaniumFile.prototype.isExecutable=function()
+{return Titanium.checked(this.proxy.isExecutable());};TitaniumFile.prototype.isReadonly=function()
+{return Titanium.checked(this.proxy.isReadonly());};TitaniumFile.prototype.isWriteable=function()
+{return Titanium.checked(this.proxy.isWriteable());};TitaniumFile.prototype.resolve=function()
+{return Titanium.checked(this.proxy.resolve());};TitaniumFile.prototype.read=function()
+{return Titanium.checked(this.proxy.read());};TitaniumFile.prototype.write=function(data,append)
+{append=typeof(append)=='undefined'?false:append;return Titanium.checked(this.proxy.write(data,append));};TitaniumFile.prototype.readLine=function()
+{return Titanium.checked(this.proxy.readLine());};TitaniumFile.prototype.copy=function(destination)
+{return Titanium.checked(this.proxy.copy(destination));};TitaniumFile.prototype.move=function(destination)
+{return Titanium.checked(this.proxy.move(destination));};TitaniumFile.prototype.rename=function(destination)
+{return Titanium.checked(this.proxy.rename(destination));};TitaniumFile.prototype.createDirectory=function(recursive)
+{recursive=typeof(recursive)=='undefined'?false:recursive;return Titanium.checked(this.proxy.createDirectory(recursive));};TitaniumFile.prototype.deleteDirectory=function(recursive)
+{recursive=typeof(recursive)=='undefined'?false:recursive;return Titanium.checked(this.proxy.deleteDirectory(recursive));};TitaniumFile.prototype.deleteFile=function()
+{return Titanium.checked(this.proxy.deleteFile());};TitaniumFile.prototype.getDirectoryListing=function()
+{return Titanium.checked(this.proxy.getDirectoryListing());};TitaniumFile.prototype.getParent=function()
+{return Titanium.checked(this.proxy.getParent());};TitaniumFile.prototype.exists=function()
+{return Titanium.checked(this.proxy.exists());};TitaniumFile.prototype.createTimestamp=function()
+{return Titanium.checked(this.proxy.createTimestamp());};TitaniumFile.prototype.modificationTimestamp=function()
+{return Titanium.checked(this.proxy.modificationTimestamp());};TitaniumFile.prototype.name=function()
+{return Titanium.checked(this.proxy.name());};TitaniumFile.prototype.extension=function()
+{return Titanium.checked(this.proxy.extension());};TitaniumFile.prototype.size=function()
+{return Titanium.checked(this.proxy.size());};TitaniumFile.prototype.nativePath=function()
+{return Titanium.checked(this.proxy.nativePath());};TitaniumFile.prototype.spaceAvailable=function()
+{return Titanium.checked(this.proxy.spaceAvailable());};TitaniumFile.prototype.setExecutable=function()
+{return Titanium.checked(this.proxy.setExecutable());};TitaniumFile.prototype.setReadonly=function()
+{return Titanium.checked(this.proxy.setReadonly());};TitaniumFile.prototype.setWriteable=function()
+{return Titanium.checked(this.proxy.setWriteable());};TitaniumFile.prototype.toString=function()
+{return String(Titanium.checked(this.proxy.toString()));};TitaniumFile.createBlob=function(native){var f=new TitaniumFile(native);function TitaniumBlob(f){this.obj=f;};TitaniumBlob.prototype=f;var b=new TitaniumBlob(f);b.__defineGetter__(&quot;url&quot;,function(){return this.nativePath();});return b;};Filestream=function(proxy){this.proxy=proxy;};Filestream.prototype.close=function(){Titanium.checked(this.proxy.call(&quot;close&quot;));};Filestream.prototype.isOpen=function(){return Titanium.checked(this.proxy.call(&quot;isOpen&quot;));};Filestream.prototype.open=function(mode,binary){var p=this.proxy;p.pushInteger(mode);p.pushBoolean(binary);Titanium.checked(p.call(&quot;open&quot;));};Filestream.prototype.read=function(){return Titanium.checked(this.proxy.call(&quot;read&quot;));};Filestream.prototype.readLine=function(){return Titanium.checked(this.proxy.call(&quot;readLine&quot;));};Filestream.prototype.write=function(value){var p=this.proxy;p.pushString(value);Titanium.checked(p.call(&quot;write&quot;));};Filestream.prototype.writeLine=function(value){var p=this.proxy;p.pushString(value);Titanium.checked(this.proxy.call(&quot;writeLine&quot;));};Titanium.Filesystem={createTempFile:function(){return new TitaniumFile(Titanium.fileSystemProxy.createTempFile());},createTempDirectory:function(){return new TitaniumFile(Titanium.fileSystemProxy.createTempDirectory());},getFile:function(){var parts=[];for(i=0;i&lt;arguments.length;i++){parts.push(String(arguments[i]));}
+return new TitaniumFile(Titanium.fileSystemProxy.getFile(parts));},getFileStream:function(){var parts=[];for(i=0;i&lt;arguments.length;i++){parts.push(String(arguments[i]));}
+return new Filestream(Titanium.fileSystemProxy.getFileStream(parts));},getApplicationDirectory:function(){return new TitaniumFile(Titanium.fileSystemProxy.getApplicationDirectory());},getApplicationDataDirectory:function(private){private=typeof(private)=='undefined'?false:private;return new TitaniumFile(Titanium.fileSystemProxy.getApplicationDataDirectory(private));},getResourcesDirectory:function(){return new TitaniumFile(Titanium.fileSystemProxy.getResourcesDirectory());},getUserDirectory:function(){return new TitaniumFile(Titanium.fileSystemProxy.getUserDirectory());},getLineEnding:function(){return&quot;\n&quot;;},getSeparator:function(){return&quot;;&quot;;},getRootDirectories:function(){var results=Titanium.fileSystemProxy.getRootDirectories();if(results)
 {var files=[];for(var c=0;c&lt;results.length;c++)
 {files[c].push(new TitaniumFile(results[c]));}
 return files;}
-return[];},asyncCopy:function(){return Titanium.fileSystemProxy.asyncCopy(arguments);},isExternalStoragePresent:function(){return Titanium.fileSystemProxy.isExternalStoragePresent();}};
+return[];},asyncCopy:function(){return Titanium.fileSystemProxy.asyncCopy(arguments);},isExternalStoragePresent:function(){return Titanium.fileSystemProxy.isExternalStoragePresent();},MODE_READ:0,MODE_WRITE:1,MODE_APPEND:2};Filestream.prototype.MODE_READ=Titanium.Filesystem.MODE_READ;Filestream.prototype.MODE_WRITE=Titanium.Filesystem.MODE_WRITE;Filestream.prototype.MODE_APPEND=Titanium.Filesystem.MODE_APPEND;
 Titanium.mediaProxy=window.TitaniumMedia;var Sound=function(proxy){this.proxy=proxy;this.play=function(){this.proxy.play();};this.pause=function(){this.proxy.pause();};this.stop=function(){this.proxy.stop();};this.reset=function(){this.proxy.reset();};this.release=function(){this.proxy.release();};this.setVolume=function(v){this.proxy.setVolume(v);};this.getVolume=function(){return this.proxy.getVolume();};this.setLooping=function(loop){this.proxy.setLooping(loop);};this.isLooping=function(){return this.proxy.isLooping();};this.isPlaying=function(){return this.proxy.isPlaying();};this.isPaused=function(){return this.proxy.isPaused();};this.addEventListener=function(eventName,listener){return this.proxy.addEventListener(eventName,registerCallback(this,listener));};this.removeEventListener=function(eventName,listenerId){this.proxy.removeEventListener(eventName,listenerId);}};var Video=function(proxy){this.proxy=proxy;this.errorId=-1;this.completeId=-1;this.play=function(){this.proxy.play();};this.pause=function(){this.proxy.pause();};this.stop=function(){this.proxy.stop();};this.reset=function(){this.proxy.reset();};this.release=function(){if(this.errorId!=-1){this.proxy.removeListener(&quot;error&quot;,this.errorId);this.errorId=-1;}
 if(this.completeId!=-1){this.proxy.removeListener(&quot;complete&quot;,this.completeId);this.completeId=-1;}
 this.proxy.release();};this.isPlaying=function(){return this.proxy.isPlaying();};this.isPaused=function(){return this.proxy.isPaused();};this.addEventListener=function(eventName,listener){return this.proxy.addEventListener(eventName,registerCallback(this,listener));};this.removeEventListener=function(eventName,listenerId){this.proxy.removeEventListener(eventName,listenerId);}};Titanium.Media={beep:function(){Titanium.mediaProxy.beep();},createSound:function(url){return new Sound(Titanium.mediaProxy.createSound(url));},vibrate:function(){Titanium.mediaProxy.vibrate(null);},showCamera:function(options){var userSuccess=transformObjectValue(options.success,function(){});var userCancel=transformObjectValue(options.cancel,function(){});var userError=transformObjectValue(options.error,function(){});var blob=Titanium.mediaProxy.createBlob();var success=registerCallback(this,function(attrs){var b=TitaniumFile.createBlob(blob);b.width=attrs.w;b.height=attrs.h;userSuccess(b);});var cancel=registerCallback(this,function(){blob=null;userCancel();});var error=registerCallback(this,function(err){blob=null;userError(err);});var args={saveToPhotoGallery:options.saveToPhotoGallery};Titanium.mediaProxy.showCamera(success,cancel,error,Titanium.JSON.stringify(args),blob);},openPhotoGallery:function(options){var userSuccess=transformObjectValue(options.success,function(){});var userCancel=transformObjectValue(options.cancel,function(){});var userError=transformObjectValue(options.error,function(){});var blob=Titanium.mediaProxy.createBlob();var success=registerCallback(this,function(attrs){var b=TitaniumFile.createBlob(blob);b.width=attrs.w;b.height=attrs.h;userSuccess(b);});var cancel=registerCallback(this,function(){blob=null;userCancel();});var error=registerCallback(this,function(err){blob=null;userError(err);});Titanium.mediaProxy.openPhotoGallery(success,cancel,error,blob);},previewImage:function(options){var success=registerCallback(this,transformObjectValue(options.success,function(){}));var error=registerCallback(this,transformObjectValue(options.error,function(){}));var img=options.image;var blob=Titanium.mediaProxy.createBlob();blob.setUrl(img.url);Titanium.mediaProxy.previewImage(success,error,blob);},createVideoPlayer:function(options){var player=null;if(!isUndefined(options)){var proxy=Titanium.mediaProxy.createVideoPlayer(Titanium.JSON.stringify(options));if(proxy!=null){player=new Video(proxy);if(!isUndefined(options.complete)){player.completeId=addEventListener(&quot;complete&quot;,registerCallback(this,options.complete));}</diff>
      <filename>android/titanium/src/assets/ti/release/tiall.js</filename>
    </modified>
    <modified>
      <diff>@@ -219,7 +219,12 @@ public class TitaniumWebView extends WebView
         }
 	}
 
-    protected void initializeModules() {
+    public void processOptions(String options) {
+		// TODO Auto-generated method stub
+
+	}
+
+	protected void initializeModules() {
         // Add Modules
         this.tiUI = new TitaniumUI(tmm, &quot;TitaniumUI&quot;);
         TitaniumAppInfo appInfo = tmm.getActivity().getAppInfo();
@@ -324,7 +329,7 @@ public class TitaniumWebView extends WebView
 		synchronized(locks) {
 			l = locks.get(syncId);
 		}
-			l.release();
+		l.release();
 	}
 
 	public void evalJS(final String method) {</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/TitaniumWebView.java</filename>
    </modified>
    <modified>
      <diff>@@ -12,6 +12,10 @@ import java.util.List;
 
 public interface ITitaniumFile
 {
+	public static final int MODE_READ = 0;
+	public static final int MODE_WRITE = 1;
+	public static final int MODE_APPEND = 2;
+
 	public boolean isFile();
 	public boolean isDirectory();
 	public boolean isHidden();
@@ -23,6 +27,7 @@ public interface ITitaniumFile
 	public void write(String data, boolean append)  throws IOException;
 	public String read()  throws IOException;
 	public String readLine()  throws IOException;
+	public void writeLine(String data) throws IOException;
 	public boolean copy(String destination);
 	public boolean move(String destination);
 	public boolean rename(String destination);
@@ -44,4 +49,9 @@ public interface ITitaniumFile
 	public boolean setReadonly();
 	public boolean setWriteable();
 	public void unzip (String destination);
+
+	// Filestream methods
+	public void close();
+	public boolean isOpen();
+	public void open(int mode, boolean binary) throws IOException;
 }</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/api/ITitaniumFile.java</filename>
    </modified>
    <modified>
      <diff>@@ -14,7 +14,7 @@ public interface ITitaniumFilesystem
 	public ITitaniumFile createTempFile() throws IOException;
 	public ITitaniumFile createTempDirectory() throws IOException;
 	public ITitaniumFile getFile(String parts[]) throws IOException;
-	public ITitaniumFile getFileStream(Object parts[]) throws IOException;
+	public ITitaniumInvoker getFileStream(String[] parts) throws IOException;
 	public ITitaniumFile getApplicationDirectory();
 	public ITitaniumFile getApplicationDataDirectory(boolean privateStorage);
 	public ITitaniumFile getResourcesDirectory();</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/api/ITitaniumFilesystem.java</filename>
    </modified>
    <modified>
      <diff>@@ -10,4 +10,9 @@ public interface ITitaniumProperties
 	public void setDouble(String key, double value);
 	public boolean getBool(String key, boolean def);
 	public void setBool(String key, boolean value);
+	public String getList(String key, String def);
+	public void setList(String key, String value);
+	public boolean hasProperty(String key);
+	public String listProperties();
+	public void removeProperty(String key);
 }</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/api/ITitaniumProperties.java</filename>
    </modified>
    <modified>
      <diff>@@ -5,8 +5,7 @@ public interface ITitaniumTableView
 	public void setData(String data);
 	public void setRowHeight(String height);
 	public void setIsRoot(boolean root);
-	public void configure(String json, String callback);
-	public void close();
+	public void setCallback(String callback);
 
 	// New in 0.6.0
 	public void insertRowAfter(int index, String json);
@@ -18,4 +17,6 @@ public interface ITitaniumTableView
 
 	// New in 0.6.3/1.0
 	public void appendRow(String rowData, String json);
+	public void setFontWeight(String fontWeight);
+	public void setFontSize(String fontSize);
 }</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/api/ITitaniumTableView.java</filename>
    </modified>
    <modified>
      <diff>@@ -46,4 +46,7 @@ public interface ITitaniumUI
 	// In 0.6.3/1.0.0 not sure yet.
 	public ITitaniumDatePicker createDatePicker(String json);
 	public ITitaniumModalDatePicker createModalDatePicker(String json);
+	public ITitaniumPicker createPicker(String json);
+	public ITitaniumModalPicker createModalPicker(String json);
+	public ITitaniumImageView createImageView();
 }</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/api/ITitaniumUI.java</filename>
    </modified>
    <modified>
      <diff>@@ -2,5 +2,4 @@ package org.appcelerator.titanium.api;
 
 public interface ITitaniumUIWebView {
 	public void setUrl(String url);
-	public void configure(String json);
 }</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/api/ITitaniumUIWebView.java</filename>
    </modified>
    <modified>
      <diff>@@ -31,4 +31,6 @@ public interface ITitaniumView
 
 	String getKey();
 	void setKey(String key);
+
+	void processOptions(String options);
 }</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/api/ITitaniumView.java</filename>
    </modified>
    <modified>
      <diff>@@ -13,14 +13,25 @@ import java.io.IOException;
 import org.appcelerator.titanium.TitaniumModuleManager;
 import org.appcelerator.titanium.api.ITitaniumFile;
 import org.appcelerator.titanium.api.ITitaniumFilesystem;
+import org.appcelerator.titanium.api.ITitaniumInvoker;
+import org.appcelerator.titanium.config.TitaniumConfig;
 import org.appcelerator.titanium.module.fs.TitaniumFile;
 import org.appcelerator.titanium.module.fs.TitaniumResourceFile;
+import org.appcelerator.titanium.util.Log;
+import org.appcelerator.titanium.util.TitaniumDelegate;
 import org.appcelerator.titanium.util.TitaniumFileHelper;
 
-import org.appcelerator.titanium.config.TitaniumConfig;
-import org.appcelerator.titanium.util.Log;
 import android.webkit.WebView;
 
+class InternalFile {
+	public File file;
+	public String path;
+	public InternalFile(File file, String path) {
+		this.file = file;
+		this.path = path;
+	}
+}
+
 public class TitaniumFilesystem extends TitaniumBaseModule implements ITitaniumFilesystem
 {
 	private static final String LCAT = &quot;TiFilesystem&quot;;
@@ -42,7 +53,7 @@ public class TitaniumFilesystem extends TitaniumBaseModule implements ITitaniumF
 	public ITitaniumFile createTempFile() throws IOException
 	{
 		File f = File.createTempFile(&quot;ti&quot;,&quot;tmp&quot;);
-		return new TitaniumFile(f,f.getAbsolutePath());
+		return new TitaniumFile(f,f.getAbsolutePath(), false);
 	}
 
 	public ITitaniumFile createTempDirectory() throws IOException
@@ -51,7 +62,7 @@ public class TitaniumFilesystem extends TitaniumBaseModule implements ITitaniumF
 		File tmpdir = new File(System.getProperty(&quot;java.io.tmpdir&quot;));
 		File f = new File(tmpdir,dir);
 		f.mkdirs();
-		return new TitaniumFile(f,f.getAbsolutePath());
+		return new TitaniumFile(f,f.getAbsolutePath(), false);
 	}
 
 	private String formPath(String path, String parts[])
@@ -76,12 +87,9 @@ public class TitaniumFilesystem extends TitaniumBaseModule implements ITitaniumF
 		return android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);
 	}
 
-	public ITitaniumFile getFile(String parts[]) throws IOException
+	private ITitaniumFile parseParts(String[] parts, boolean stream)
 	{
-		if (parts==null)
-		{
-			throw new IOException(&quot;invalid file passed&quot;);
-		}
+		ITitaniumFile file = null;
 
 		String initial = parts[0];
 		if (DBG) {
@@ -91,7 +99,7 @@ public class TitaniumFilesystem extends TitaniumBaseModule implements ITitaniumF
 		{
 			String path = initial.substring(6);
 			path = formPath(path,parts);
-			return new TitaniumResourceFile(this,getContext(),path);
+			file = new TitaniumResourceFile(this,getContext(),path);
 		}
 		else if (initial.startsWith(&quot;appdata://&quot;))
 		{
@@ -102,21 +110,35 @@ public class TitaniumFilesystem extends TitaniumBaseModule implements ITitaniumF
 				path = path.substring(1);
 			}
 			File f = new File(getDataDirectory(false),path);
-			return new TitaniumFile(f,&quot;appdata://&quot;+path);
+			file = new TitaniumFile(f,&quot;appdata://&quot;+path, stream);
 		}
 		else if (initial.startsWith(&quot;appdata-private://&quot;))
 		{
 			String path = initial.substring(18);
 			path = formPath(path,parts);
 			File f = new File(getDataDirectory(true),path);
-			return new TitaniumFile(f,&quot;appdata-private://&quot;+path);
+			file = new TitaniumFile(f,&quot;appdata-private://&quot;+path, stream);
 		}
-		return null;
+
+		return file;
 	}
 
-	public ITitaniumFile getFileStream(Object parts[])  throws IOException
+	public ITitaniumFile getFile(String parts[]) throws IOException
 	{
-		return null;
+		if (parts==null)
+		{
+			throw new IOException(&quot;invalid file passed&quot;);
+		}
+		return parseParts(parts, false);
+	}
+
+	public ITitaniumInvoker getFileStream(String[] parts)  throws IOException
+	{
+		if (parts==null)
+		{
+			throw new IOException(&quot;invalid file passed&quot;);
+		}
+		return new TitaniumDelegate(parseParts(parts, true));
 	}
 
 	public ITitaniumFile getApplicationDirectory()
@@ -134,12 +156,12 @@ public class TitaniumFilesystem extends TitaniumBaseModule implements ITitaniumF
 	{
 		if (privateStorage)
 		{
-			TitaniumFile f = new TitaniumFile(getDataDirectory(true),&quot;appdata-private://&quot;);
+			TitaniumFile f = new TitaniumFile(getDataDirectory(true),&quot;appdata-private://&quot;, false);
 			f.createDirectory(true);
 			return f;
 		}
 		File f = getDataDirectory(false);
-		return new TitaniumFile(f,&quot;appdata://&quot;);
+		return new TitaniumFile(f,&quot;appdata://&quot;, false);
 	}
 
 	public ITitaniumFile getResourcesDirectory()</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/module/TitaniumFilesystem.java</filename>
    </modified>
    <modified>
      <diff>@@ -18,10 +18,13 @@ import org.appcelerator.titanium.api.ITitaniumButton;
 import org.appcelerator.titanium.api.ITitaniumDatePicker;
 import org.appcelerator.titanium.api.ITitaniumDialog;
 import org.appcelerator.titanium.api.ITitaniumEmailDialog;
+import org.appcelerator.titanium.api.ITitaniumImageView;
 import org.appcelerator.titanium.api.ITitaniumLifecycle;
 import org.appcelerator.titanium.api.ITitaniumMenuItem;
 import org.appcelerator.titanium.api.ITitaniumModalDatePicker;
+import org.appcelerator.titanium.api.ITitaniumModalPicker;
 import org.appcelerator.titanium.api.ITitaniumNotifier;
+import org.appcelerator.titanium.api.ITitaniumPicker;
 import org.appcelerator.titanium.api.ITitaniumProgressDialog;
 import org.appcelerator.titanium.api.ITitaniumSlider;
 import org.appcelerator.titanium.api.ITitaniumSwitch;
@@ -38,6 +41,8 @@ import org.appcelerator.titanium.module.ui.TitaniumDatePickerDialog;
 import org.appcelerator.titanium.module.ui.TitaniumDialog;
 import org.appcelerator.titanium.module.ui.TitaniumEmailDialog;
 import org.appcelerator.titanium.module.ui.TitaniumMenuItem;
+import org.appcelerator.titanium.module.ui.TitaniumPicker;
+import org.appcelerator.titanium.module.ui.TitaniumPickerDialog;
 import org.appcelerator.titanium.module.ui.TitaniumProgressDialog;
 import org.appcelerator.titanium.module.ui.TitaniumSlider;
 import org.appcelerator.titanium.module.ui.TitaniumSwitch;
@@ -80,6 +85,7 @@ public class TitaniumUI extends TitaniumBaseModule implements ITitaniumUI, Handl
 	private static final int MSG_CREATE_PICKER = 314;
 	private static final int MSG_CREATE_MODALDATEPICKER = 315;
 	private static final int MSG_CREATE_MODALPICKER = 316;
+	private static final int MSG_CREATE_IMAGEVIEW = 317;
 
 	private static final int MSG_END_CREATE_SECTION = 330;
 
@@ -182,6 +188,12 @@ public class TitaniumUI extends TitaniumBaseModule implements ITitaniumUI, Handl
 				case MSG_CREATE_MODALDATEPICKER :
 					h.o = new TitaniumDatePickerDialog(getModuleManager());
 					break;
+				case MSG_CREATE_PICKER :
+					h.o = new TitaniumPicker(getModuleManager());
+					break;
+				case MSG_CREATE_MODALPICKER :
+					h.o = new TitaniumPickerDialog(getModuleManager());
+					break;
 				default :
 					throw new IllegalStateException(&quot;Unimplemented Control Creator: &quot; + msg.what);
 			}
@@ -393,6 +405,23 @@ public class TitaniumUI extends TitaniumBaseModule implements ITitaniumUI, Handl
 		return picker;
 	}
 
+	public ITitaniumPicker createPicker(String json) {
+		TitaniumPicker picker = (TitaniumPicker) create(MSG_CREATE_PICKER);
+		picker.setOptions(json);
+		return picker;
+	}
+
+	public ITitaniumModalPicker createModalPicker(String json) {
+		TitaniumPickerDialog picker = (TitaniumPickerDialog) create(MSG_CREATE_MODALPICKER);
+		picker.setOptions(json);
+		return picker;
+	}
+
+	public ITitaniumImageView createImageView() {
+		TitaniumImageView view = (TitaniumImageView) create(MSG_CREATE_IMAGEVIEW);
+		return view;
+	}
+
 	// Expects the message handler to put the object in h.o and release the holder
 	private Object create(int what)
 	{</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/module/TitaniumUI.java</filename>
    </modified>
    <modified>
      <diff>@@ -8,11 +8,13 @@
 package org.appcelerator.titanium.module.app;
 
 import org.appcelerator.titanium.api.ITitaniumProperties;
+import org.appcelerator.titanium.config.TitaniumConfig;
+import org.appcelerator.titanium.util.Log;
+import org.json.JSONArray;
+import org.json.JSONException;
 
 import android.content.Context;
 import android.content.SharedPreferences;
-import org.appcelerator.titanium.config.TitaniumConfig;
-import org.appcelerator.titanium.util.Log;
 
 public class TitaniumProperties implements ITitaniumProperties
 {
@@ -104,4 +106,49 @@ public class TitaniumProperties implements ITitaniumProperties
 		editor.putBoolean(key,value);
 		editor.commit();
 	}
+
+	public String getList(String key, String def)
+	{
+		if (DBG) {
+			Log.d(LCAT,&quot;getList called with key:&quot;+key+&quot;, def:&quot;+def);
+		}
+		return preferences.getString(key,def);
+	}
+
+	public void setList(String key, String value)
+	{
+		if (DBG) {
+			Log.d(LCAT,&quot;setList called with key:&quot;+key+&quot;, value:&quot;+value);
+		}
+
+		SharedPreferences.Editor editor = preferences.edit();
+		editor.putString(key, value); // stringified array.
+		editor.commit();
+
+	}
+
+	public boolean hasProperty(String key)
+	{
+		return preferences.contains(key);
+	}
+
+	public String listProperties()
+	{
+		JSONArray a = new JSONArray();
+
+		for (String key : preferences.getAll().keySet()) {
+			a.put(key);
+		}
+
+		return a.toString();
+	}
+
+	public void removeProperty(String key)
+	{
+		if (preferences.contains(key)) {
+			SharedPreferences.Editor editor = preferences.edit();
+			editor.remove(key);
+			editor.commit();
+		}
+	}
 }
\ No newline at end of file</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/module/app/TitaniumProperties.java</filename>
    </modified>
    <modified>
      <diff>@@ -7,11 +7,14 @@
 
 package org.appcelerator.titanium.module.fs;
 
+import java.io.BufferedReader;
+import java.io.BufferedWriter;
 import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
 import java.util.List;
 
 import org.appcelerator.titanium.api.ITitaniumFile;
-
 import org.appcelerator.titanium.util.Log;
 
 public abstract class TitaniumBaseFile implements ITitaniumFile
@@ -32,6 +35,13 @@ public abstract class TitaniumBaseFile implements ITitaniumFile
 	protected boolean modeRead;
 	protected boolean modeWrite;
 
+	protected boolean opened;
+	protected InputStream instream;
+	protected BufferedReader inreader;
+	protected OutputStream outstream;
+	protected BufferedWriter outwriter;
+	protected boolean stream;
+	protected boolean binary;
 
 	protected TitaniumBaseFile(int type) {
 		this.type = type;
@@ -42,6 +52,14 @@ public abstract class TitaniumBaseFile implements ITitaniumFile
 		this.modeExecutable = false;
 		this.modeRead = true;
 		this.modeWrite = false;
+
+		this.opened = false;
+		this.instream = null;
+		this.inreader = null;
+		this.outstream = null;
+		this.outwriter = null;
+		this.stream = false;
+		this.binary = false;
 	}
 
 	public boolean isFile() {
@@ -141,22 +159,22 @@ public abstract class TitaniumBaseFile implements ITitaniumFile
 	}
 
 	public String read() throws IOException {
-		logNotSupported(null);
+		logNotSupported(&quot;read&quot;);
 		return null;
 	}
 
 	public String readLine() throws IOException {
-		logNotSupported(null);
+		logNotSupported(&quot;readLine&quot;);
 		return null;
 	}
 
 	public boolean rename(String destination) {
-		logNotSupported(null);
+		logNotSupported(&quot;rename&quot;);
 		return false;
 	}
 
 	public ITitaniumFile resolve() {
-		logNotSupported(null);
+		logNotSupported(&quot;resolve&quot;);
 		return null;
 	}
 
@@ -193,10 +211,66 @@ public abstract class TitaniumBaseFile implements ITitaniumFile
 		logNotSupported(null);
 	}
 
+	public void writeLine(String data) throws IOException {
+		logNotSupported(&quot;writeLine&quot;);
+	}
+
+	public void close() {
+		if (opened) {
+			if (instream != null) {
+				try {
+					instream.close();
+				} catch (IOException e) {
+					//Ignore
+				}
+				instream = null;
+			}
+
+			if (inreader != null) {
+				try {
+					inreader.close();
+				} catch (IOException e) {
+					//Ignore
+				}
+				inreader = null;
+			}
+			if (outstream != null) {
+				try {
+					outstream.close();
+				} catch (IOException e) {
+					// Ignore
+				}
+				outstream = null;
+			}
+
+			if (outwriter != null) {
+				try {
+					outwriter.close();
+				} catch (IOException e) {
+					// Ignore
+				}
+				outwriter = null;
+			}
+
+			opened = false;
+		}
+
+		binary = false;
+	}
+
+	public boolean isOpen() {
+		return opened;
+	}
+
+	public void open(int mode, boolean binary) throws IOException
+	{
+		logNotSupported(&quot;open&quot;);
+	}
+
 	protected void logNotSupported(String method) {
 		if (method == null) {
 			method = Thread.currentThread().getStackTrace()[1].getMethodName();
 		}
-		Log.w(LCAT, &quot;Method is not supported &quot; + method);
+		Log.w(LCAT, &quot;Method is not supported &quot; + this.getClass().getName() + &quot; : &quot; + method);
 	}
 }</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/module/fs/TitaniumBaseFile.java</filename>
    </modified>
    <modified>
      <diff>@@ -7,10 +7,17 @@
 
 package org.appcelerator.titanium.module.fs;
 
+import java.io.BufferedInputStream;
+import java.io.BufferedOutputStream;
+import java.io.BufferedReader;
+import java.io.BufferedWriter;
 import java.io.File;
 import java.io.FileInputStream;
+import java.io.FileNotFoundException;
 import java.io.FileOutputStream;
 import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.OutputStreamWriter;
 
 import org.appcelerator.titanium.config.TitaniumConfig;
 import org.appcelerator.titanium.util.Log;
@@ -23,11 +30,12 @@ public class TitaniumFile extends TitaniumBaseFile
 	private final File file;
 	private final String path;
 
-	public TitaniumFile(File file, String path)
+	public TitaniumFile(File file, String path, boolean stream)
 	{
 		super(TitaniumBaseFile.TYPE_FILE);
 		this.file = file;
 		this.path = path;
+		this.stream = stream;
 	}
 	@Override
 	public boolean isFile()
@@ -60,65 +68,6 @@ public class TitaniumFile extends TitaniumBaseFile
 	}
 
 	@Override
-	public void write(String data, boolean append) throws IOException
-	{
-		if (DBG) {
-			Log.d(LCAT,&quot;write called for file = &quot; + file);
-		}
-		if (!file.exists())
-		{
-			file.createNewFile();
-		}
-		FileOutputStream out = null;
-		try
-		{
-			out = new FileOutputStream(file,append);
-			out.write(data.getBytes());
-			out.flush();
-		}
-		finally
-		{
-			if (out!=null)
-			{
-				out.close();
-			}
-		}
-	}
-
-	@Override
-	public String read() throws IOException
-	{
-		if (!file.exists())
-		{
-			return null;
-		}
-		StringBuilder builder=new StringBuilder();
-		FileInputStream in = null;
-		try
-		{
-			in = new FileInputStream(file);
-			byte buffer [] = new byte[4096];
-			while(true)
-			{
-				int count = in.read(buffer);
-				if (count &lt; 0)
-				{
-					break;
-				}
-				builder.append(new String(buffer,0,count));
-			}
-		}
-		finally
-		{
-			if (in!=null)
-			{
-				in.close();
-			}
-		}
-		return builder.toString();
-	}
-
-	@Override
 	public void createDirectory(boolean recursive)
 	{
 		if (recursive)
@@ -208,4 +157,137 @@ public class TitaniumFile extends TitaniumBaseFile
 	{
 		return file;
 	}
+
+	@Override
+	public void open(int mode, boolean binary) throws IOException
+	{
+		this.binary = binary;
+
+		if (mode == MODE_READ) {
+			if (!file.exists()) {
+				throw new FileNotFoundException(file.getAbsolutePath());
+			}
+			if (binary) {
+				instream = new BufferedInputStream(new FileInputStream(file));
+			} else {
+				inreader = new BufferedReader(new InputStreamReader(new FileInputStream(file), &quot;utf-8&quot;));
+			}
+		} else {
+			FileOutputStream os = new FileOutputStream(file, mode == MODE_APPEND ? true : false);
+			if (binary) {
+				outstream = new BufferedOutputStream(os);
+			} else {
+				outwriter = new BufferedWriter(new OutputStreamWriter(os));
+			}
+			os = null;
+		}
+
+		opened = true; // no exception getting here.
+	}
+
+	@Override
+	public String read() throws IOException
+	{
+		String result = null;
+
+		if (file.exists()) {
+			if (!stream) {
+				StringBuilder builder=new StringBuilder();
+				try
+				{
+					open(MODE_READ, false);
+
+					char buffer [] = new char[4096];
+					int count = 0;
+					while((count = inreader.read(buffer)) != -1)
+					{
+						builder.append(buffer, 0, count);
+					}
+				}
+				finally
+				{
+					close();
+				}
+				result = builder.toString();
+			} else {
+				if (!opened) {
+					throw new IOException(&quot;File must be opened before reading&quot;);
+				}
+
+				if (binary) {
+					byte buffer[] = new byte[4096];
+					int count = 0;
+					count = instream.read(buffer);
+					if (count != -1) {
+						result = new String(buffer, &quot;utf-8&quot;);
+					}
+				} else {
+					result = inreader.readLine();
+				}
+			}
+		}
+
+		return result;
+	}
+
+	@Override
+	public String readLine() throws IOException
+	{
+		String result = null;
+
+		if (!opened) {
+			throw new IOException(&quot;Must open before calling readLine&quot;);
+		}
+		if (binary) {
+			throw new IOException(&quot;File opened in binary mode, readLine not available.&quot;);
+		}
+
+		try {
+			result = inreader.readLine();
+		} catch (IOException e) {
+			Log.e(LCAT, &quot;Error reading a line from the file: &quot;, e);
+		}
+
+		return result;
+	}
+
+	@Override
+	public void write(String data, boolean append) throws IOException
+	{
+		if (DBG) {
+			Log.d(LCAT,&quot;write called for file = &quot; + file);
+		}
+		if (!stream) {
+			try {
+				open(append ? MODE_APPEND : MODE_WRITE, false);
+				outwriter.write(data);
+			} finally {
+				close();
+			}
+		} else {
+			if (!opened) {
+				throw new IOException(&quot;Must open before calling write&quot;);
+			}
+
+			if (binary) {
+				outstream.write(data.getBytes());
+			} else {
+				outwriter.write(data);
+			}
+		}
+	}
+
+	@Override
+	public void writeLine(String data) throws IOException
+	{
+		if (!opened) {
+			throw new IOException(&quot;Must open before calling readLine&quot;);
+		}
+		if (binary) {
+			throw new IOException(&quot;File opened in binary mode, writeLine not available.&quot;);
+		}
+
+		outwriter.write(data);
+		outwriter.write(&quot;\n&quot;);
+	}
 }</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/module/fs/TitaniumFile.java</filename>
    </modified>
    <modified>
      <diff>@@ -7,15 +7,20 @@
 
 package org.appcelerator.titanium.module.fs;
 
+import java.io.BufferedInputStream;
+import java.io.BufferedReader;
+import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.io.InputStream;
+import java.io.InputStreamReader;
 import java.lang.ref.SoftReference;
 
 import org.appcelerator.titanium.api.ITitaniumFile;
 import org.appcelerator.titanium.api.ITitaniumFilesystem;
+import org.appcelerator.titanium.config.TitaniumConfig;
+import org.appcelerator.titanium.util.Log;
 
 import android.content.Context;
-import org.appcelerator.titanium.config.TitaniumConfig;
 
 public class TitaniumResourceFile extends TitaniumBaseFile
 {
@@ -49,6 +54,30 @@ public class TitaniumResourceFile extends TitaniumBaseFile
 	}
 
 	@Override
+	public void open(int mode, boolean binary) throws IOException {
+		if (mode == MODE_READ) {
+			Context context = softContext.get();
+			if (context != null) {
+				InputStream in = context.getAssets().open(&quot;Resources/&quot;+path);
+				if (in != null) {
+					if (binary) {
+						instream = new BufferedInputStream(in);
+					} else {
+						inreader = new BufferedReader(new InputStreamReader(in, &quot;utf-8&quot;));
+					}
+					opened = true;
+				} else {
+					throw new FileNotFoundException(&quot;File does not exist: &quot; + path);
+				}
+			} else {
+				Log.w(LCAT, &quot;Context has been reclaimed by GC&quot;);
+			}
+		} else {
+			throw new IOException(&quot;Resource file may not be written.&quot;);
+		}
+	}
+
+	@Override
 	public String read() throws IOException
 	{
 		StringBuilder builder=new StringBuilder();
@@ -80,6 +109,27 @@ public class TitaniumResourceFile extends TitaniumBaseFile
 		return builder.toString();
 	}
 
+	@Override
+	public String readLine() throws IOException
+	{
+		String result = null;
+
+		if (!opened) {
+			throw new IOException(&quot;Must open before calling readLine&quot;);
+		}
+		if (binary) {
+			throw new IOException(&quot;File opened in binary mode, readLine not available.&quot;);
+		}
+
+		try {
+			result = inreader.readLine();
+		} catch (IOException e) {
+			Log.e(LCAT, &quot;Error reading a line from the file: &quot;, e);
+		}
+
+		return result;
+	}
+
 	public boolean copy(String destination)
 	{
 		//NOTE: this isn't really efficient but not sure</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/module/fs/TitaniumResourceFile.java</filename>
    </modified>
    <modified>
      <diff>@@ -101,9 +101,7 @@ public class TitaniumButton extends TitaniumBaseNativeControl
 				b.setBackgroundColor(TitaniumColorHelper.parseColor(backgroundColor));
 			}
 
-			Typeface tf = b.getTypeface();
-			b.setTypeface(tf, TitaniumUIHelper.toTypefaceStyle(fontWeight));
-			b.setTextSize(TitaniumUIHelper.getSizeUnits(fontSize), TitaniumUIHelper.getSize(fontSize));
+			TitaniumUIHelper.styleText(b, fontSize, fontWeight);
 
 			if (backgroundImage != null || backgroundSelectedImage != null || backgroundFocusedImage != null) {
 				TitaniumFileHelper tfh = new TitaniumFileHelper(context);</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/module/ui/TitaniumButton.java</filename>
    </modified>
    <modified>
      <diff>@@ -5,20 +5,15 @@ import java.util.concurrent.Semaphore;
 import org.appcelerator.titanium.TitaniumModuleManager;
 import org.appcelerator.titanium.api.ITitaniumLifecycle;
 import org.appcelerator.titanium.api.ITitaniumTableView;
-import org.appcelerator.titanium.api.ITitaniumView;
 import org.appcelerator.titanium.module.ui.tableview.TableViewModel;
 import org.appcelerator.titanium.util.Log;
-import org.appcelerator.titanium.util.TitaniumJSEventManager;
+import org.appcelerator.titanium.util.TitaniumUIHelper;
 import org.json.JSONException;
 import org.json.JSONObject;
 
-import android.content.res.Configuration;
-import android.os.Bundle;
 import android.os.Handler;
 import android.os.Message;
 import android.view.KeyEvent;
-import android.view.Menu;
-import android.view.MenuItem;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.AdapterView;
@@ -27,13 +22,11 @@ import android.widget.FrameLayout;
 import android.widget.ListView;
 import android.widget.AdapterView.OnItemClickListener;
 
-public class TitaniumTableView extends FrameLayout
-	implements ITitaniumTableView, Handler.Callback, ITitaniumView
+public class TitaniumTableView extends TitaniumBaseView
+	implements ITitaniumTableView, Handler.Callback
 {
 	private static final String LCAT = &quot;TitaniumTableView&quot;;
 
-	private static final int MSG_OPEN = 300;
-	private static final int MSG_CLOSE = 301;
 	private static final int MSG_SETDATA = 302;
 	private static final int MSG_DELETEROW = 303;
 	private static final int MSG_UPDATEROW = 304;
@@ -41,26 +34,14 @@ public class TitaniumTableView extends FrameLayout
 	private static final int MSG_INSERTAFTER = 306;
 	private static final int MSG_INDEXBYNAME = 307;
 
-	private static final String MSG_EXTRA_CALLBACK = &quot;cb&quot;;
-
-	public static final String EVENT_FOCUSED = &quot;focused&quot;;
-	public static final String EVENT_FOCUSED_JSON = &quot;{type:'&quot; + EVENT_FOCUSED + &quot;'}&quot;;
-	public static final String EVENT_UNFOCUSED = &quot;unfocused&quot;;
-	public static final String EVENT_UNFOCUSED_JSON = &quot;{type:'&quot; + EVENT_UNFOCUSED + &quot;'}&quot;;
-
-	private TitaniumModuleManager tmm;
 	private int rowHeight;
-	private Handler handler;
 	private boolean root;
-	private String name;
-	private String openJSON;
 	private String callback;
 	private TableViewModel viewModel;
-	boolean hasBeenOpened;
 	private TTVListAdapter adapter;
 	private ListView view;
-	private TitaniumJSEventManager eventListeners;
-	private String key;
+	private String fontWeight;
+	private String fontSize;
 
 	private Runnable dataSetChanged = new Runnable() {
 
@@ -108,7 +89,7 @@ public class TitaniumTableView extends FrameLayout
 				v = new TitaniumTableViewItem(tmm.getAppContext());
 			}
 
-			v.setRowData((JSONObject) getItem(position), rowHeight);
+			v.setRowData((JSONObject) getItem(position), rowHeight, fontSize, fontWeight);
 
 			return v;
 		}
@@ -141,18 +122,33 @@ public class TitaniumTableView extends FrameLayout
 
 	public TitaniumTableView(TitaniumModuleManager tmm, int themeId)
 	{
-		super(tmm.getAppContext(), null, themeId);
+		super(tmm, themeId);
 
-		this.tmm = tmm;
-		this.handler = new Handler(this);
 		this.rowHeight = 65;
-		this.root = false;
+		this.root = true;
 		this.viewModel = new TableViewModel();
 		this.hasBeenOpened = false;
+		this.fontSize = TitaniumUIHelper.getDefaultFontSize(tmm.getActivity());
+		this.fontWeight = TitaniumUIHelper.getDefaultFontWeight(tmm.getActivity());
+	}
 
-		this.eventListeners = new TitaniumJSEventManager(tmm);
-		this.eventListeners.supportEvent(EVENT_FOCUSED);
-		this.eventListeners.supportEvent(EVENT_UNFOCUSED);
+	public void processLocalOptions(JSONObject o) throws JSONException
+	{
+		if (o.has(&quot;data&quot;)) {
+			setData(o.getString(&quot;data&quot;));
+		}
+		if (o.has(&quot;rowHeight&quot;)) {
+			setRowHeight(o.getString(&quot;rowHeight&quot;));
+		}
+		if (o.has(&quot;isPrimary&quot;)) {
+			setIsRoot(o.getBoolean(&quot;isPrimary&quot;));
+		}
+		if (o.has(&quot;fontSize&quot;)) {
+			setFontSize(o.getString(&quot;fontSize&quot;));
+		}
+		if (o.has(&quot;fontWeight&quot;)) {
+			setFontWeight(o.getString(&quot;fontWeight&quot;));
+		}
 	}
 
 	public void setData(String data) {
@@ -262,79 +258,50 @@ public class TitaniumTableView extends FrameLayout
 
 	public boolean handleMessage(Message msg)
 	{
-		Bundle b = msg.getData();
-
-		switch(msg.what) {
-		case MSG_OPEN:
-			doOpen(b.getString(MSG_EXTRA_CALLBACK));
-			eventListeners.invokeSuccessListeners(EVENT_FOCUSED, EVENT_FOCUSED_JSON);
-			return true;
-		case MSG_CLOSE:
-			doClose();
-			return true;
-		case MSG_SETDATA:
-			doSetData((String) msg.obj);
-			return true;
-		case MSG_DELETEROW:
-			doDeleteRow(msg.arg1);
-			return true;
-		case MSG_INSERTAFTER:
-			doInsertRowAfter(msg.arg1, (String) msg.obj);
-			return true;
-		case MSG_INSERTBEFORE:
-			doInsertRowBefore(msg.arg1, (String) msg.obj);
-			return true;
-		case MSG_UPDATEROW:
-			doUpdateRow(msg.arg1, (String) msg.obj);
-			return true;
-		case MSG_INDEXBYNAME :
-			IndexHolder h = (IndexHolder) msg.obj;
-			String name = msg.getData().getString(&quot;name&quot;);
-			h.index = doGetIndexByName(name);
-			h.release();
-			return true;
+		boolean handled = super.handleMessage(msg);
+
+		if (!handled) {
+			switch(msg.what) {
+			case MSG_SETDATA:
+				doSetData((String) msg.obj);
+				return true;
+			case MSG_DELETEROW:
+				doDeleteRow(msg.arg1);
+				return true;
+			case MSG_INSERTAFTER:
+				doInsertRowAfter(msg.arg1, (String) msg.obj);
+				return true;
+			case MSG_INSERTBEFORE:
+				doInsertRowBefore(msg.arg1, (String) msg.obj);
+				return true;
+			case MSG_UPDATEROW:
+				doUpdateRow(msg.arg1, (String) msg.obj);
+				return true;
+			case MSG_INDEXBYNAME :
+				IndexHolder h = (IndexHolder) msg.obj;
+				String name = msg.getData().getString(&quot;name&quot;);
+				h.index = doGetIndexByName(name);
+				h.release();
+				return true;
+			}
 		}
 		return false;
 	}
 
-	public void configure(String json, final String callback)
+	public void setCallback(final String callback)
 	{
-		this.openJSON = json;
 		this.callback = callback;
-		this.root = true;
-	}
-
-	public void showing() {
-		if (!hasBeenOpened) {
-			Message m = handler.obtainMessage(MSG_OPEN);
-			m.getData().putString(MSG_EXTRA_CALLBACK, callback);
-			m.sendToTarget();
-		} else {
-			eventListeners.invokeSuccessListeners(EVENT_FOCUSED, EVENT_FOCUSED_JSON);
-		}
-	}
-
-	public void hiding() {
-		eventListeners.invokeSuccessListeners(EVENT_UNFOCUSED, EVENT_UNFOCUSED_JSON);
 	}
 
-	public int addEventListener(String eventName, String listener) {
-		return eventListeners.addListener(eventName, listener);
-	}
 
-	public void removeEventListener(String eventName, int listenerId) {
-		eventListeners.removeListener(eventName, listenerId);
-	}
-
-	private void doOpen(final String callback)
+	protected void doOpen()
 	{
-		FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT);
-		setLayoutParams(params);
-		setPadding(5,5,5,5);
+		final String callback = this.callback;
 
-		view = new ListView(tmm.getAppContext());
+		view = new ListView(getContext());
 		view.setFocusable(true);
 		view.setFocusableInTouchMode(true);
+		//view.setDrawingCacheEnabled(true);
 		adapter = new TTVListAdapter(viewModel);
 		view.setAdapter(adapter);
 		view.setOnKeyListener(new View.OnKeyListener() {
@@ -376,55 +343,27 @@ public class TitaniumTableView extends FrameLayout
 				}
 			}});
 
-		addView(view, new FrameLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
-		hasBeenOpened = true;
-	}
-
-	public void close()
-	{
-		handler.sendEmptyMessage(MSG_CLOSE);
 	}
 
-	private void doClose() {
-		//tmm.getActivity().popView(this);
-		destroyDrawingCache();
-		removeAllViews();
+	@Override
+	protected View getContentView() {
+		return view;
 	}
 
-	public ITitaniumLifecycle getLifecycle() {
-		return null;
+	public void setFontSize(String fontSize) {
+		this.fontSize = fontSize;
 	}
 
-	public View getNativeView() {
-		return this;
+	public void setFontWeight(String fontWeight) {
+		this.fontWeight = fontWeight;
 	}
 
-	public void dispatchWindowFocusChanged(boolean hasFocus) {
-		tmm.getWebView().dispatchWindowFocusChanged(hasFocus);
-	}
-
-	public void dispatchConfigurationChange(Configuration newConfig) {
-		//tmm.getWebView().dispatchConfigurationChange(newConfig);
-	}
-
-	// Called on the current view, so forward to our controller
-	public boolean dispatchOptionsItemSelected(MenuItem item) {
-		return tmm.getWebView().dispatchOptionsItemSelected(item);
-	}
-
-	// Called on the current view, so forward to our controller
-	public boolean dispatchPrepareOptionsMenu(Menu menu) {
-		return tmm.getWebView().dispatchPrepareOptionsMenu(menu);
-	}
-
-	public void dispatchApplicationEvent(String eventName, String data) {
-	}
-
-	public String getKey() {
-		return key;
+	public void close()
+	{
+		handler.sendEmptyMessage(MSG_CLOSE);
 	}
 
-	public void setKey(String key) {
-		this.key = key;
+	public ITitaniumLifecycle getLifecycle() {
+		return null;
 	}
 }</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/module/ui/TitaniumTableView.java</filename>
    </modified>
    <modified>
      <diff>@@ -2,199 +2,337 @@ package org.appcelerator.titanium.module.ui;
 
 import org.appcelerator.titanium.util.Log;
 import org.appcelerator.titanium.util.TitaniumFileHelper;
+import org.appcelerator.titanium.util.TitaniumUIHelper;
 import org.json.JSONException;
 import org.json.JSONObject;
 
 import android.content.Context;
 import android.graphics.Bitmap;
 import android.graphics.Color;
-import android.graphics.Rect;
 import android.graphics.drawable.BitmapDrawable;
+import android.graphics.drawable.ColorDrawable;
 import android.graphics.drawable.Drawable;
-import android.text.Html;
+import android.os.Handler;
+import android.os.Message;
 import android.view.Gravity;
 import android.view.KeyEvent;
 import android.view.View;
+import android.view.animation.AlphaAnimation;
+import android.view.animation.Animation;
+import android.webkit.WebSettings;
+import android.webkit.WebView;
+import android.webkit.WebViewClient;
 import android.widget.ImageView;
 import android.widget.RelativeLayout;
 import android.widget.TextView;
+import android.widget.ViewAnimator;
 
-public class TitaniumTableViewItem extends RelativeLayout
+public class TitaniumTableViewItem extends ViewAnimator implements Handler.Callback
 {
 	private static final String LCAT = &quot;TitaniamTableViewItem&quot;;
 
-	private ImageView iconView;
-	private TextView textView;
-	private ImageView hasChildView;
-	private boolean header;
+	private static final int MSG_SHOW_VIEW_1 = 300;
 
-	private Drawable defaultBackground;
-	private int defaultTextColor;
-	private float defaultTextSize;
+	private Handler handler;
 
-	private static Object initLock = new Object();
+	private RowView rowView;
+	private EmptyView emptyView;
 
-	class ImgGetter implements Html.ImageGetter {
-
-		private TitaniumFileHelper tfh;
-
-		public ImgGetter(Context context) {
-			tfh = new TitaniumFileHelper(context);
-		}
-		public Drawable getDrawable(String src) {
-			Drawable d = tfh.loadDrawable(src, false);
-			d.setBounds(0, 0, d.getIntrinsicWidth(), d.getIntrinsicHeight());
-			return d;
+	class EmptyView extends ImageView
+	{
+		public int rowHeight;
+
+		public EmptyView(Context context)
+		{
+			super(context);
+
+			setImageDrawable(new ColorDrawable(Color.TRANSPARENT));
+			setScaleType(ImageView.ScaleType.FIT_XY);
+			setAdjustViewBounds(true);
+			setFocusable(false);
+			setFocusableInTouchMode(false);
+			setClickable(false);
 		}
-	}
-	private static ImgGetter imageGetter;
-
-	public TitaniumTableViewItem(Context context) {
-		super(context);
 
-		synchronized (initLock) {
-			if (imageGetter == null) {
-				imageGetter = new ImgGetter(context.getApplicationContext());
-			}
+		@Override
+		protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
+			setMeasuredDimension(widthMeasureSpec, rowHeight);
 		}
 
-		setGravity(Gravity.CENTER_VERTICAL);
-		//setFocusable(true);
-		//requestFocus();
-
-		iconView = new ImageView(context);
-		iconView.setId(100);
-		iconView.setFocusable(false);
-		iconView.setFocusableInTouchMode(false);
-
-		textView = new TextView(context);
-		textView.setId(101);
-		textView.setFocusable(false);
-		textView.setFocusableInTouchMode(false);
-
-		hasChildView = new ImageView(context);
-		hasChildView.setId(102);
-		hasChildView.setFocusable(false);
-		hasChildView.setFocusableInTouchMode(false);
-
-		LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
-		params.addRule(CENTER_VERTICAL);
-		params.setMargins(0, 0, 5, 0);
-		addView(iconView, params);
-
-		params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.FILL_PARENT);
-		params.addRule(CENTER_VERTICAL);
-		params.addRule(RIGHT_OF, iconView.getId());
-		params.alignWithParent = false;
-		addView(textView, params);
-
-		params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
-		params.addRule(CENTER_VERTICAL);
-		params.addRule(ALIGN_PARENT_RIGHT, textView.getId());
-		addView(hasChildView, params);
-
-		defaultBackground = getBackground();
-		defaultTextColor = textView.getCurrentTextColor();
-		defaultTextSize = textView.getTextSize();
-
 	}
 
-	public void setRowData(JSONObject data, int rowHeight)
+	class RowView extends RelativeLayout
 	{
-		TitaniumFileHelper tfh = new TitaniumFileHelper(getContext());
-
-		destroyDrawingCache();
-		iconView.setVisibility(View.GONE);
-		iconView.destroyDrawingCache();
-		textView.setVisibility(View.GONE);
-		textView.destroyDrawingCache();
-		hasChildView.setVisibility(View.GONE);
-		setMinimumHeight(rowHeight);
-		header = false;
-
-		setBackgroundDrawable(defaultBackground);
-		textView.setTextColor(defaultTextColor);
-		textView.setTextSize(defaultTextSize);
-		textView.setPadding(0, 0, 0, 0);
-
-		setVerticalFadingEdgeEnabled(true);
-		setPadding(10, 2, 10, 2);
-
-		boolean isDisplayHeader = false;
-		try {
-			isDisplayHeader = data.getBoolean(&quot;isDisplayHeader&quot;);
-		} catch (JSONException e) {
-			Log.e(LCAT, &quot;Unable to get header flag&quot;, e);
+		private ImageView iconView;
+		private TextView textView;
+		private ImageView hasChildView;
+		public boolean header;
+		private LocalWebView webView;
+
+		private Drawable hasMoreDrawable;
+
+		private Drawable defaultBackground;
+		private int defaultTextColor;
+
+		public RowView(Context context) {
+			super(context);
+
+			setGravity(Gravity.CENTER_VERTICAL);
+
+			iconView = new ImageView(context);
+			iconView.setId(100);
+			iconView.setFocusable(false);
+			iconView.setFocusableInTouchMode(false);
+
+			textView = new TextView(context);
+			textView.setId(101);
+			textView.setFocusable(false);
+			textView.setFocusableInTouchMode(false);
+
+			defaultBackground = getBackground();
+			defaultTextColor = textView.getCurrentTextColor();
+
+			hasChildView = new ImageView(context);
+			hasChildView.setId(102);
+			hasChildView.setFocusable(false);
+			hasChildView.setFocusableInTouchMode(false);
+
+			webView = new LocalWebView(context, defaultTextColor);
+
+			LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.FILL_PARENT);
+			params.addRule(CENTER_VERTICAL);
+			params.setMargins(0, 0, 5, 0);
+			addView(iconView, params);
+
+			params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.FILL_PARENT);
+			params.addRule(CENTER_VERTICAL);
+			params.addRule(ALIGN_RIGHT);
+			params.alignWithParent = true;
+			addView(hasChildView, params);
+
+			params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.FILL_PARENT);
+			params.addRule(CENTER_VERTICAL);
+			params.addRule(RIGHT_OF, iconView.getId());
+			params.addRule(LEFT_OF, hasChildView.getId());
+			params.alignWithParent = true;
+			addView(textView, params);
+
+			params = new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
+			params.addRule(CENTER_VERTICAL);
+			params.addRule(RIGHT_OF, iconView.getId());
+			params.addRule(LEFT_OF, hasChildView.getId());
+			params.alignWithParent = true;
+			addView(webView, params);
 		}
 
+		public void setRowData(JSONObject data, int rowHeight, String fontSize, String fontWeight)
+		{
+			boolean switchView = true;
 
-		if (!isDisplayHeader &amp;&amp; data.has(&quot;image&quot;)) {
-			try {
-				String path = data.getString(&quot;image&quot;);
-				Drawable d = tfh.loadDrawable(path, false);
-				if (d != null) {
-					BitmapDrawable b = (BitmapDrawable) d;
-					if (b.getBitmap().getHeight() &gt; rowHeight) {
-						d = new BitmapDrawable(Bitmap.createScaledBitmap(b.getBitmap(), rowHeight, rowHeight, true));
-					}
-					iconView.setImageDrawable(d);
-					iconView.setVisibility(View.VISIBLE);
-				}
+			handler.removeMessages(MSG_SHOW_VIEW_1);
+			emptyView.rowHeight = rowHeight;
+			setDisplayedChild(0);
 
-			} catch (JSONException e) {
-				Log.e(LCAT, &quot;Error retrieving image&quot;, e);
-			}
-		}
+			TitaniumFileHelper tfh = new TitaniumFileHelper(getContext());
+
+			destroyDrawingCache();
+			iconView.setVisibility(View.GONE);
+			iconView.destroyDrawingCache();
+			textView.setVisibility(View.GONE);
+			textView.destroyDrawingCache();
+			hasChildView.setVisibility(View.GONE);
+			hasChildView.destroyDrawingCache();
+			webView.setVisibility(View.GONE);
+			webView.destroyDrawingCache();
 
-		if (isDisplayHeader &amp;&amp; data.has(&quot;header&quot;)) {
-			textView.setVisibility(View.VISIBLE);
-			header = true;
+			header = false;
+
+			setBackgroundDrawable(defaultBackground);
+ 			textView.setTextColor(defaultTextColor);
+			TitaniumUIHelper.styleText(textView, fontSize, fontWeight);
+			textView.setPadding(0, 0, 0, 0);
+
+			webView.setPadding(0, 0, 0, 0);
+			//webView.rowHeight = rowHeight;
+
+			setVerticalFadingEdgeEnabled(true);
+			setPadding(10, 2, 10, 2);
+
+			setMinimumHeight(rowHeight);
+
+			boolean isDisplayHeader = false;
 			try {
-				textView.setText(data.getString(&quot;header&quot;), TextView.BufferType.NORMAL);
-				setBackgroundColor(Color.DKGRAY);
-				textView.setTextColor(Color.LTGRAY);
-				textView.setTextSize(12.0f);
-				textView.setPadding(4, 2, 4, 2);
-				setMinimumHeight(17);
-				setVerticalFadingEdgeEnabled(false);
-				setPadding(0, 0, 0, 0);
+				isDisplayHeader = data.getBoolean(&quot;isDisplayHeader&quot;);
 			} catch (JSONException e) {
-				textView.setText(e.getMessage());
-				Log.e(LCAT, &quot;Error retrieving header&quot;, e);
+				Log.e(LCAT, &quot;Unable to get header flag&quot;, e);
 			}
-		} else if (data.has(&quot;html&quot;)) {
-			textView.setVisibility(View.VISIBLE);
-			try {
-				String html = data.getString(&quot;html&quot;);
-				if (html != null) {
-					textView.setText(Html.fromHtml(html, imageGetter, null), TextView.BufferType.SPANNABLE);
+
+
+			if (!isDisplayHeader &amp;&amp; data.has(&quot;image&quot;)) {
+				try {
+					String path = data.getString(&quot;image&quot;);
+					Drawable d = tfh.loadDrawable(path, false);
+					if (d != null) {
+						BitmapDrawable b = (BitmapDrawable) d;
+						if (b.getBitmap().getHeight() &gt; rowHeight) {
+							d = new BitmapDrawable(Bitmap.createScaledBitmap(b.getBitmap(), rowHeight, rowHeight, true));
+						}
+						iconView.setImageDrawable(d);
+						iconView.setVisibility(View.VISIBLE);
+					}
+
+				} catch (JSONException e) {
+					Log.e(LCAT, &quot;Error retrieving image&quot;, e);
 				}
-			} catch (JSONException e) {
-				Log.e(LCAT, &quot;Error retrieving html&quot;, e);
 			}
-		} else if (data.has(&quot;title&quot;)) {
-			textView.setVisibility(View.VISIBLE);
-			try {
-				textView.setText(data.getString(&quot;title&quot;), TextView.BufferType.NORMAL);
-			} catch (JSONException e) {
-				textView.setText(e.getMessage());
-				Log.e(LCAT, &quot;Error retrieving title&quot;, e);
+
+			if (!isDisplayHeader &amp;&amp; data.has(&quot;hasChild&quot;)) {
+				try {
+					if (data.getBoolean(&quot;hasChild&quot;)) {
+						if(hasMoreDrawable == null) {
+							hasMoreDrawable = new BitmapDrawable(getClass().getResourceAsStream(&quot;/org/appcelerator/titanium/res/drawable/btn_more.png&quot;));
+						}
+						if (hasMoreDrawable != null) {
+							hasChildView.setImageDrawable(hasMoreDrawable);
+						}
+						hasChildView.setVisibility(View.VISIBLE);
+					}
+				} catch (JSONException e) {
+					Log.e(LCAT, &quot;Error retrieving hasChild&quot;, e);
+				}
 			}
-		}
 
-		if (!isDisplayHeader &amp;&amp; data.has(&quot;hasChild&quot;)) {
-			try {
-				if (data.getBoolean(&quot;hasChild&quot;)) {
-					BitmapDrawable d = new BitmapDrawable(getClass().getResourceAsStream(&quot;/org/appcelerator/titanium/res/drawable/btn_more.png&quot;));
-					if (d != null) {
-						hasChildView.setImageDrawable(d);
+			if (isDisplayHeader &amp;&amp; data.has(&quot;header&quot;)) {
+				textView.setVisibility(View.VISIBLE);
+				header = true;
+				try {
+					textView.setText(data.getString(&quot;header&quot;), TextView.BufferType.NORMAL);
+					setBackgroundColor(Color.DKGRAY);
+					textView.setTextColor(Color.LTGRAY);
+					textView.setTextSize(12.0f);
+					textView.setPadding(4, 2, 4, 2);
+					emptyView.rowHeight = 17;
+					setMinimumHeight(17);
+					setVerticalFadingEdgeEnabled(false);
+					setPadding(0, 0, 0, 0);
+				} catch (JSONException e) {
+					textView.setText(e.getMessage());
+					Log.e(LCAT, &quot;Error retrieving header&quot;, e);
+				}
+			} else if (!isDisplayHeader &amp;&amp; data.has(&quot;html&quot;)) {
+				webView.setVisibility(View.VISIBLE);
+				try {
+					String html = data.getString(&quot;html&quot;);
+					if (html != null) {
+						webView.load(html);
+						switchView = false;
 					}
-					hasChildView.setVisibility(View.VISIBLE);
+				} catch (JSONException e) {
+					Log.e(LCAT, &quot;Error retrieving html&quot;, e);
+				}
+			} else if (!isDisplayHeader &amp;&amp; data.has(&quot;title&quot;)) {
+				textView.setVisibility(View.VISIBLE);
+				try {
+					textView.setText(data.getString(&quot;title&quot;), TextView.BufferType.NORMAL);
+					TitaniumUIHelper.styleText(textView, data.optString(&quot;fontSize&quot;, fontSize), data.optString(&quot;fontWeight&quot;, fontWeight));
+				} catch (JSONException e) {
+					textView.setText(e.getMessage());
+					Log.e(LCAT, &quot;Error retrieving title&quot;, e);
 				}
-			} catch (JSONException e) {
-				Log.e(LCAT, &quot;Error retrieving hasChild&quot;, e);
 			}
+
+			if (switchView) {
+				handler.sendEmptyMessage(MSG_SHOW_VIEW_1);
+			}
+		}
+	}
+
+	class LocalWebView extends WebView
+	{
+		///public int rowHeight;
+
+		private String htmlPrefix;
+		private String htmlPostfix;
+
+		public LocalWebView(Context context, int defaultTextColor)
+		{
+			super(context);
+
+			this.setFocusable(false);
+			this.setFocusableInTouchMode(false);
+			this.setClickable(false);
+
+			WebSettings settings = getSettings();
+			settings.setLoadsImagesAutomatically(true);
+			settings.setSupportMultipleWindows(false);
+			settings.setSupportZoom(false);
+			settings.setJavaScriptCanOpenWindowsAutomatically(false);
+			settings.setJavaScriptEnabled(false);
+
+			setScrollContainer(false);
+			setHorizontalScrollBarEnabled(false);
+			setVerticalScrollBarEnabled(false);
+
+			setBackgroundColor(Color.TRANSPARENT);
+			setId(101);
+
+			StringBuilder sb = new StringBuilder();
+			sb.append(&quot;&lt;html&gt;&lt;body style='color:rgba(&quot;).append(Color.red(defaultTextColor)).append(&quot;,&quot;)
+				.append(Color.green(defaultTextColor)).append(&quot;,&quot;)
+				.append(Color.blue(defaultTextColor)).append(&quot;,&quot;)
+				.append(Color.alpha(defaultTextColor))
+				.append(&quot;); '&gt;&quot;)
+				;
+			htmlPrefix = sb.toString();
+			htmlPostfix = &quot;&lt;/body&gt;&lt;/html&gt;&quot;;
+
+			setWebViewClient(new WebViewClient() {
+
+				@Override
+				public void onPageFinished(WebView view, String url) {
+					super.onPageFinished(view, url);
+
+					handler.sendEmptyMessageDelayed(MSG_SHOW_VIEW_1, 100);
+				}
+
+			});
+		}
+
+		public void load(String html)
+		{
+			StringBuilder sb = new StringBuilder();
+			sb.append(htmlPrefix).append(html).append(htmlPostfix);
+			loadDataWithBaseURL(&quot;file:///android_asset/Resources/&quot;, sb.toString(), &quot;text/html&quot;, &quot;UTF-8&quot;, null);
+		}
+	}
+
+	public TitaniumTableViewItem(Context context)
+	{
+		super(context);
+
+		this.handler = new Handler(this);
+		emptyView = new EmptyView(context);
+		this.addView(emptyView, new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT));
+
+		rowView = new RowView(context);
+		this.addView(rowView, new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT));
+
+		//Animation a = new AlphaAnimation(0.0f, 1.0f);
+		//a.setDuration(150);
+		//setInAnimation(a);
+	}
+
+	public void setRowData(JSONObject data, int rowHeight, String fontSize, String fontWeight) {
+		rowView.setRowData(data, rowHeight, fontSize, fontWeight);
+	}
+
+	public boolean handleMessage(Message msg)
+	{
+		if (msg.what == MSG_SHOW_VIEW_1) {
+			setDisplayedChild(1);
+			return true;
 		}
+		return false;
 	}
 
 	@Override
@@ -210,6 +348,6 @@ public class TitaniumTableViewItem extends RelativeLayout
 	}
 
 	public boolean isHeader() {
-		return header;
+		return rowView.header;
 	}
 }</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/module/ui/TitaniumTableViewItem.java</filename>
    </modified>
    <modified>
      <diff>@@ -83,9 +83,7 @@ public class TitaniumText extends TitaniumBaseNativeControl
 		tv.setText(value);
 		tv.setGravity(Gravity.TOP | Gravity.LEFT);
 		tv.setPadding(10, 5, 10, 7);
-		Typeface tf = tv.getTypeface();
-		tv.setTypeface(tf, TitaniumUIHelper.toTypefaceStyle(fontWeight));
-		tv.setTextSize(TitaniumUIHelper.getSizeUnits(fontSize), TitaniumUIHelper.getSize(fontSize));
+		TitaniumUIHelper.styleText(tv, fontSize, fontWeight);
 
 		if (color != null) {
 			tv.setTextColor(TitaniumColorHelper.parseColor(color));</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/module/ui/TitaniumText.java</filename>
    </modified>
    <modified>
      <diff>@@ -163,10 +163,7 @@ public class TitaniumTextField extends TitaniumBaseNativeControl
 		tv.setText(value);
 		tv.setHint(hintText);
 		tv.setPadding(10, 5, 10, 7);
-		Typeface tf = tv.getTypeface();
-		tv.setTypeface(tf, TitaniumUIHelper.toTypefaceStyle(fontWeight));
-		tv.setTextSize(TitaniumUIHelper.getSizeUnits(fontSize), TitaniumUIHelper.getSize(fontSize));
-
+		TitaniumUIHelper.styleText(tv, fontSize, fontWeight);
 
 		switch(textAlign) {
 			case TEXT_ALIGN_LEFT : tv.setGravity(Gravity.CENTER_VERTICAL | Gravity.LEFT); break;</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/module/ui/TitaniumTextField.java</filename>
    </modified>
    <modified>
      <diff>@@ -5,8 +5,11 @@ import org.appcelerator.titanium.TitaniumWebView;
 import org.appcelerator.titanium.api.ITitaniumLifecycle;
 import org.appcelerator.titanium.api.ITitaniumUIWebView;
 import org.appcelerator.titanium.api.ITitaniumView;
+import org.appcelerator.titanium.util.Log;
 import org.appcelerator.titanium.util.TitaniumFileHelper;
 import org.appcelerator.titanium.util.TitaniumJSEventManager;
+import org.json.JSONException;
+import org.json.JSONObject;
 
 import android.content.res.Configuration;
 import android.os.Handler;
@@ -37,7 +40,6 @@ public class TitaniumUIWebView
 	private String url;
 	private Handler handler;
 	private String name;
-	private String openJSON;
 	private boolean hasBeenOpened;
 	private TitaniumJSEventManager eventListeners;
 	private String key;
@@ -76,14 +78,28 @@ public class TitaniumUIWebView
 		}
 		return false;
 	}
+
+	public void processOptions(String options) {
+		try {
+			JSONObject o = new JSONObject(options);
+
+			if (o.has(&quot;url&quot;)) {
+				setUrl(o.getString(&quot;url&quot;));
+			}
+			if (o.has(&quot;name&quot;)) {
+				setName(o.getString(&quot;name&quot;));
+			}
+
+		} catch (JSONException e) {
+			Log.e(LCAT, &quot;Unable to process options: &quot; + options, e);
+		}
+		handler.obtainMessage(MSG_CONFIG).sendToTarget();
+	}
+
 	public void setUrl(String url) {
 		this.url = url;
 	}
 
-	public void configure(String json) {
-		this.openJSON = json;
-		handler.obtainMessage(MSG_CONFIG).sendToTarget();
-	}
 	public void showing() {
 		if (!hasBeenOpened) {
 			handler.obtainMessage(MSG_SHOWING).sendToTarget();</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/module/ui/TitaniumUIWebView.java</filename>
    </modified>
    <modified>
      <diff>@@ -20,6 +20,7 @@ import android.content.DialogInterface.OnClickListener;
 import android.graphics.Typeface;
 import android.os.Process;
 import android.util.TypedValue;
+import android.widget.TextView;
 
 public class TitaniumUIHelper
 {
@@ -141,4 +142,34 @@ public class TitaniumUIHelper
 
 		return value;
 	}
+
+	public static void styleText(TextView tv, String fontSize, String fontWeight) {
+		Typeface tf = tv.getTypeface();
+		tv.setTypeface(tf, toTypefaceStyle(fontWeight));
+		tv.setTextSize(getSizeUnits(fontSize), getSize(fontSize));
+	}
+
+	public static String getDefaultFontSize(Context context) {
+		String size = &quot;15.0px&quot;;
+		TextView tv = new TextView(context);
+		if (tv != null) {
+			size = String.valueOf(tv.getTextSize()) + &quot;px&quot;;
+			tv = null;
+		}
+
+		return size;
+	}
+
+	public static String getDefaultFontWeight(Context context) {
+		String style = &quot;normal&quot;;
+		TextView tv = new TextView(context);
+		if (tv != null) {
+			Typeface tf = tv.getTypeface();
+			if (tf != null &amp;&amp; tf.isBold()) {
+				style = &quot;bold&quot;;
+			}
+		}
+
+		return style;
+	}
 }</diff>
      <filename>android/titanium/src/org/appcelerator/titanium/util/TitaniumUIHelper.java</filename>
    </modified>
    <modified>
      <diff>@@ -1 +1 @@
-version = '0.6.3'
+version = '0.7.0'</diff>
      <filename>build/titanium_version.py</filename>
    </modified>
    <modified>
      <diff>@@ -12,6 +12,7 @@
 	&lt;div id=&quot;buttonbar2&quot; style=&quot;height:30px;width:200px;margin:auto;margin-top:10px&quot;&gt;&lt;/div&gt;
 	
 	&lt;script&gt;
+	
 	var buttonBar = Titanium.UI.createButtonBar({
 		id:'buttonbar', 
 		labels:['Button3', 'Button4']</diff>
      <filename>demos/KitchenSink/Resources/buttonbar.html</filename>
    </modified>
    <modified>
      <diff>@@ -8,11 +8,11 @@
 	&lt;div id=&quot;button1&quot; style=&quot;height:50px&quot;&gt;&lt;/div&gt;
 	&lt;div id=&quot;button2&quot; style=&quot;height:50px&quot;&gt;&lt;/div&gt;
 
-
 	&lt;script&gt;
+	
 	var a = Titanium.UI.createAlertDialog();
 	a.setTitle('Button Test');
-
+	
 	var button1 = Titanium.UI.createButton({
 		id:'button1',
 		backgroundImage:'blue.png',
@@ -24,10 +24,10 @@
 	});
 	button1.addEventListener('click',function(e)
 	{
-		a.setMessage('You clicked the first button.');
+		a.setMessage('You clicked the first button.');		
 		a.show();
 	})
-
+	
 	var button2 = Titanium.UI.createButton({
 		id:'button2',
 		title:'Hello',
@@ -40,7 +40,6 @@
 		a.setMessage('You clicked the second button.');
 		a.show();
 	})
-
 	&lt;/script&gt;
 &lt;/body&gt;
 &lt;/html&gt;
\ No newline at end of file</diff>
      <filename>demos/KitchenSink/Resources/buttons.html</filename>
    </modified>
    <modified>
      <diff>@@ -12,7 +12,6 @@
 
 	var db = Titanium.Database.open('mydb');
 
-	db.execute('CREATE TABLE IF NOT EXISTS DATABASETEST  (ID INTEGER, NAME TEXT)');
 
 	db.execute('INSERT INTO DATABASETEST (ID, NAME ) VALUES(?,?)',5,'Name 5');
 	db.execute('INSERT INTO DATABASETEST (ID, NAME ) VALUES(?,?)',6,'Name 6');</diff>
      <filename>demos/KitchenSink/Resources/database2.html</filename>
    </modified>
    <modified>
      <diff>@@ -11,6 +11,9 @@
 	&lt;div style=&quot;margin-bottom:5px&quot;&gt;
 		&lt;input type=&quot;button&quot; value=&quot;hide navbar&quot; id=&quot;button_2&quot; style=&quot;font-size:18px&quot;/&gt;
 	&lt;/div&gt;
+	&lt;div style=&quot;margin-bottom:5px&quot;&gt;
+		&lt;input type=&quot;button&quot; value=&quot;close window&quot; id=&quot;button_3&quot; style=&quot;font-size:18px&quot;/&gt;
+	&lt;/div&gt;
 	
 	
 	&lt;script&gt;
@@ -22,6 +25,10 @@
 	{
 		Titanium.UI.currentWindow.hideNavBar();
 	};
+	document.getElementById('button_3').onclick = function(e)
+	{
+		Titanium.UI.currentWindow.close();
+	};
 	
 	&lt;/script&gt;
 &lt;/body&gt;</diff>
      <filename>demos/KitchenSink/Resources/navbar_hide.html</filename>
    </modified>
    <modified>
      <diff>@@ -78,7 +78,7 @@
 	
 	&lt;script&gt;
 	var a= Titanium.UI.createAlertDialog();
-	a.setTitle('Navbar Right Test');
+	a.setTitle('Navbar Left Test');
 
 	document.getElementById('close').onclick = function()
 	{
@@ -88,7 +88,7 @@
 	document.getElementById('button').onclick = function()
 	{
 		var b = Titanium.UI.createButton({
-			title:'Text'
+			image:'chat.png'
 		});
 		b.addEventListener('click',function()
 		{</diff>
      <filename>demos/KitchenSink/Resources/navbar_left.html</filename>
    </modified>
    <modified>
      <diff>@@ -27,6 +27,7 @@
 	// tableview object
 	var tableView = Titanium.UI.createTableView({
 		data:data,
+		fontSize:30,
 		title:'Phone API',
 	}, function(eventObject) 
 	{</diff>
      <filename>demos/KitchenSink/Resources/phone.html</filename>
    </modified>
    <modified>
      <diff>@@ -3,6 +3,7 @@
 	&lt;title&gt;Platform API&lt;/title&gt;
 	
 	&lt;script&gt;
+	
 	Titanium.UI.addEventListener('tabchange',function(e)
 	{
 		Titanium.API.info('&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; TABCHANGE index ' + e.index  + ' name ' + e.name + ' prevIndex ' + e.prevIndex + ' prevName ' + e.prevName);
@@ -84,7 +85,7 @@
 			}
 			case 7:
 			{
-				Titanium.Platform.openURL('http://maps.google.com/maps?q=cupertino');
+				Titanium.Platform.openURL('http://maps.google.com/');
 				break;
 			}
 			case 8:</diff>
      <filename>demos/KitchenSink/Resources/platform.html</filename>
    </modified>
    <modified>
      <diff>@@ -7,7 +7,7 @@
 	&lt;div id=&quot;message&quot;&gt;&lt;/div&gt;
 	
 	&lt;script&gt;
-	Titanium.App.Properties.setString('String','I am a String Value');
+	Titanium.App.Properties.setString('String','I am a String Value 123456789abcdefghijklmnopqrstuvwxyz123');
 	Titanium.App.Properties.setInt('Int',10);
 	Titanium.App.Properties.setBool('Bool',true);
 	Titanium.App.Properties.setDouble('Double',10.6);</diff>
      <filename>demos/KitchenSink/Resources/properties.html</filename>
    </modified>
    <modified>
      <diff>@@ -6,7 +6,7 @@
 &lt;body  style=&quot;font-family:'Helvetica Neue';font-size:11px&quot;&gt;
 	
 	&lt;div style=&quot;margin-bottom:5px;height:10px&quot;&gt;ASCII Keyboard / GOOGLE Return Key / Password Mask&lt;/div&gt;	
-	&lt;div id=&quot;textfield1&quot; style=&quot;height:30px&quot;&gt;&lt;/div&gt;
+	&lt;div id=&quot;textfield1&quot; style=&quot;height:25px&quot;&gt;&lt;/div&gt;
 	&lt;div id=&quot;textfield1_value&quot; style=&quot;margin-top:5px;margin-bottom:20px;color:#999;height:10px&quot;&gt;&lt;/div&gt;
 
 	&lt;div style=&quot;margin-bottom:5px;height:10px&quot;&gt;Numbers and Punc Keyboard / GO Return Key&lt;/div&gt;	
@@ -49,7 +49,7 @@
 	// Titanium.UI.RETURNKEY_EMERGENCY_CALL
 
 	var refresh = Titanium.UI.createButton({
-		image:'chat.png',
+		title:'To:',
 		style:Titanium.UI.iPhone.SystemButtonStyle.PLAIN
 		
 	});
@@ -58,21 +58,20 @@
 		id:'textfield1',
 		value:'hello',
 		color:'#336699',
-		backgroundColor:'#eeeeee',
+		backgroundColor:'#fff',
 		returnKeyType:Titanium.UI.RETURNKEY_GOOGLE,
 		enableReturnKey:true,
 		keyboardType:Titanium.UI.KEYBOARD_ASCII,
 		autocorrect:false,
 		hintText:'fieldone hint text',
-		textAlign:'center',
+		textAlign:'left',
 		passwordMask:true,
 		clearOnEdit:true,
-		borderStyle:Titanium.UI.INPUT_BORDERSTYLE_ROUNDED,
+		borderStyle:Titanium.UI.INPUT_BORDERSTYLE_NONE,
 		clearButtonMode:Titanium.UI.INPUT_BUTTONMODE_ONFOCUS,
 		leftButton:refresh,
 		leftButtonMode:Titanium.UI.INPUT_BUTTONMODE_ALWAYS
 	});
-	tf1.value='foo';
 
 	tf1.addEventListener('return',function(e)
 	{
@@ -164,7 +163,7 @@
 		color:'#336699',
 		backgroundColor:'#eeeeee',
 		enableReturnKey:false,
-		keyboardType:Titanium.UI.KEYBOARD_EMAIL_ADDRESS,
+		keyboardType:Titanium.KEYBOARD_NUMBERS_PUNCTUATION,
 		returnKeyType:Titanium.UI.RETURNKEY_EMERGENCY_CALL,
 		autocorrect:false,
 		hintText:'fieldone hint text',</diff>
      <filename>demos/KitchenSink/Resources/textfields.html</filename>
    </modified>
    <modified>
      <diff>@@ -3,6 +3,7 @@
 	&lt;title&gt;UI API&lt;/title&gt;
 
 	&lt;script&gt;
+	
 	Titanium.UI.addEventListener('tabchange',function(e)
 	{
 		Titanium.API.info('&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; TABCHANGE index ' + e.index  + ' name ' + e.name + ' prevIndex ' + e.prevIndex + ' prevName ' + e.prevName);</diff>
      <filename>demos/KitchenSink/Resources/ui.html</filename>
    </modified>
    <modified>
      <diff>@@ -149,14 +149,16 @@
 				{title:'Sound', input:sliderInstance, image:'Mail.png'},
 				{title:'Name', input:textInstance},
 				{title:'Input 2', value:'foo', hasChild:true},
-				{title:'Input 3'}
+				{html:'&lt;div&gt;&lt;img src=&quot;Phone.png&quot;/&gt; Input 3&lt;/div&gt;', hasChild:true}
 			];
 
 			var inputSection = Titanium.UI.iPhone.createGroupedSection({
 				header:'Input Group',
 				type:'input',
-				data:inputData
+				data:inputData,
+				rowHeight:120
 			});
+			
 			inputSection.addEventListener('click',function(e)
 			{
 				a.setMessage('You clicked index ' + e.index + ' section row ' + e.row + ' section ' + e.section 
@@ -178,7 +180,7 @@
 
 		// data for tableview
 		var data = [
-			{html:'&lt;div style=&quot;font-family:Helvetica Neue&quot;&gt;Show View 1&lt;/div&gt; ', hasDetail:true, header:'Section 0'},
+			{html:'&lt;div style=&quot;font-family:Helvetica Neue;background-color:#336699&quot;&gt;Show View 1&lt;/div&gt; ', hasDetail:true, header:'Section 0'},
 
 			{html:'&lt;div style=&quot;font-family:Helvetica Neue&quot;&gt;Show View 2&lt;/div&gt; ', hasChild:true},
 </diff>
      <filename>demos/KitchenSink/Resources/views.html</filename>
    </modified>
    <modified>
      <diff>@@ -27,6 +27,7 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 {
    NSString *urlStr = [url absoluteString];
 
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
    if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.appcelerator.KitchenSink&quot;,@&quot;accelerometer.html&quot;]]){
      return [self pageNamedAccelerometer];
    }
@@ -190,6 +191,171 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
      return [self pageNamedWindow_unfocus];
    }
    else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.appcelerator.KitchenSink&quot;,@&quot;xhr.html&quot;]]){
+=======
+   if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;accelerometer.html&quot;]]){
+     return [self pageNamedAccelerometer];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;activity_indicators.html&quot;]]){
+     return [self pageNamedActivity_indicators];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;animated_false.html&quot;]]){
+     return [self pageNamedAnimated_false];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;application_data.html&quot;]]){
+     return [self pageNamedApplication_data];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;buttonbar.html&quot;]]){
+     return [self pageNamedButtonbar];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;buttons.html&quot;]]){
+     return [self pageNamedButtons];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;composite.html&quot;]]){
+     return [self pageNamedComposite];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;database.html&quot;]]){
+     return [self pageNamedDatabase];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;database2.html&quot;]]){
+     return [self pageNamedDatabase2];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;dynamic_content.html&quot;]]){
+     return [self pageNamedDynamic_content];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;email.html&quot;]]){
+     return [self pageNamedEmail];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;filesystem.html&quot;]]){
+     return [self pageNamedFilesystem];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;fullscreen.html&quot;]]){
+     return [self pageNamedFullscreen];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;geo.html&quot;]]){
+     return [self pageNamedGeo];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;image.html&quot;]]){
+     return [self pageNamedImage];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;index.js&quot;]]){
+     return [self scriptNamedIndex];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;iphone_ui.html&quot;]]){
+     return [self pageNamedIphone_ui];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;navbar_color.html&quot;]]){
+     return [self pageNamedNavbar_color];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;navbar_hide.html&quot;]]){
+     return [self pageNamedNavbar_hide];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;navbar_left.html&quot;]]){
+     return [self pageNamedNavbar_left];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;navbar_right.html&quot;]]){
+     return [self pageNamedNavbar_right];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;navbar_title.html&quot;]]){
+     return [self pageNamedNavbar_title];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;orientation.html&quot;]]){
+     return [self pageNamedOrientation];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;phone.html&quot;]]){
+     return [self pageNamedPhone];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;platform.html&quot;]]){
+     return [self pageNamedPlatform];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;platform_data.html&quot;]]){
+     return [self pageNamedPlatform_data];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;progress_bars.html&quot;]]){
+     return [self pageNamedProgress_bars];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;properties.html&quot;]]){
+     return [self pageNamedProperties];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;shake.html&quot;]]){
+     return [self pageNamedShake];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;slider.html&quot;]]){
+     return [self pageNamedSlider];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;sound.html&quot;]]){
+     return [self pageNamedSound];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;statusbar.html&quot;]]){
+     return [self pageNamedStatusbar];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;switch.html&quot;]]){
+     return [self pageNamedSwitch];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;tabbar.html&quot;]]){
+     return [self pageNamedTabbar];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;tabbar_hide.html&quot;]]){
+     return [self pageNamedTabbar_hide];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;tabchange.html&quot;]]){
+     return [self pageNamedTabchange];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;tableview_add.html&quot;]]){
+     return [self pageNamedTableview_add];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;tableview_delete.html&quot;]]){
+     return [self pageNamedTableview_delete];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;tableview_set.html&quot;]]){
+     return [self pageNamedTableview_set];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;tableview_update.html&quot;]]){
+     return [self pageNamedTableview_update];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;textfield_events.html&quot;]]){
+     return [self pageNamedTextfield_events];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;textfields.html&quot;]]){
+     return [self pageNamedTextfields];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;toolbar_fixedspace.html&quot;]]){
+     return [self pageNamedToolbar_fixedspace];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;toolbar_hideshow.html&quot;]]){
+     return [self pageNamedToolbar_hideshow];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;toolbar_left.html&quot;]]){
+     return [self pageNamedToolbar_left];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;toolbar_lots.html&quot;]]){
+     return [self pageNamedToolbar_lots];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;toolbar_middle.html&quot;]]){
+     return [self pageNamedToolbar_middle];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;toolbar_right.html&quot;]]){
+     return [self pageNamedToolbar_right];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;ui.html&quot;]]){
+     return [self pageNamedUi];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;views.html&quot;]]){
+     return [self pageNamedViews];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;views1.html&quot;]]){
+     return [self pageNamedViews1];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;views2.html&quot;]]){
+     return [self pageNamedViews2];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;views3.html&quot;]]){
+     return [self pageNamedViews3];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;window_unfocus.html&quot;]]){
+     return [self pageNamedWindow_unfocus];
+   }
+   else if ([urlStr isEqualToString:[NSString stringWithFormat:@&quot;app%s//%@/%@&quot;,&quot;:&quot;,@&quot;com.nolanwright.kitchensink&quot;,@&quot;xhr.html&quot;]]){
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
      return [self pageNamedXhr];
    }
    else {
@@ -197,8 +363,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
    }
 }
 
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/accelerometer.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/accelerometer.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/accelerometer.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/accelerometer.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedAccelerometer;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a0a093c6469763e583a203c7370616e2069643d2278223e3c2f7370616e3e3c2f6469763e0a093c6469763e593a203c7370616e2069643d2279223e3c2f7370616e3e3c2f6469763e0a093c6469763e5a3a203c7370616e2069643d227a223e3c2f7370616e3e3c2f6469763e0a090a093c7363726970743e0a0a0a09546974616e69756d2e416363656c65726f6d657465722e6164644576656e744c697374656e65722827757064617465272c66756e6374696f6e2865290a097b0a092009646f63756d656e742e676574456c656d656e744279496428277827292e696e6e657248544d4c203d2020652e783b0a0909646f63756d656e742e676574456c656d656e744279496428277927292e696e6e657248544d4c203d20652e793b0a0909646f63756d656e742e676574456c656d656e744279496428277a27292e696e6e657248544d4c203d20652e7a0a097d293b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -206,8 +377,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/activity_indicators.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/activity_indicators.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/activity_indicators.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/activity_indicators.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedActivity_indicators;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a3c7374796c653e0a2e627574746f6e0a7b0a09666f6e742d73697a653a313870783b77696474683a32383070783b746578742d616c69676e3a63656e7465720a7d0a3c2f7374796c653e0a3c2f686561643e0a3c626f6479207374796c653d226261636b67726f756e642d636f6c6f723a236666663b666f6e742d73697a653a323070783b666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d7765696768743a626f6c64223e0a0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d2231222076616c75653d22546f6f6c62617220286950686f6e65292220636c6173733d22627574746f6e222f3e3c2f6469763e0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d2232222076616c75653d22546f6f6c62617220772f6d65737361676520286950686f6e65292220636c6173733d22627574746f6e222f3e3c2f6469763e0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d2233222076616c75653d22546f6f6c626172204c6172676520286950686f6e65292220636c6173733d22627574746f6e222f3e3c2f6469763e0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d2234222076616c75653d224e6176426172204c6172676520286950686f6e65292220636c6173733d22627574746f6e222f3e3c2f6469763e0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d2235222076616c75653d224e617642617220772f6d65737361676520286950686f6e65292220636c6173733d22627574746f6e222f3e3c2f6469763e0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d2236222076616c75653d22436f6e74656e7420772f6d65737361676520286950686f6e65292220636c6173733d22627574746f6e222f3e3c2f6469763e0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d2237222076616c75653d22416e64726f69642220636c6173733d22627574746f6e222f3e3c2f6469763e0a093c6469762069643d22636f6e74656e745f696e64696361746f7222207374796c653d2277696474683a31303070783b6d617267696e3a6175746f223e3c2f6469763e0a090a093c7363726970743e0a090a092f2f2054484553452053484f554c4420424520464958454420494e204e45585420505553480a092f2f206d65737361676520696e20636f6e7374727563746f7220646f65736e277420776f726b0a092f2f206d65737361676520646f6573206e6f742068696465207768656e20696e64696361746f722069732068696464656e0a090a090a092f2f2073686f756c642077652075736520626f6c6420666f6e74207768656e206f6e20746f6f6c62617220616e64206e61766261720a090a09646f63756d656e742e676574456c656d656e744279496428273127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a090976617220666c65785370616365203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464c455849424c455f53504143450a09097d293b0a09090a090976617220696e64203d20546974616e69756d2e55492e6372656174654163746976697479496e64696361746f7228293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c696e642c666c657853706163655d293b0a0909696e642e73686f7728293b0a2020202020200973657454696d656f75742866756e6374696f6e28290a202020202020097b0a2020202020202020202020202020696e642e6869646528293b0a202020202020097d2c32303030293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e744279496428273227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a090976617220666c65785370616365203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464c455849424c455f53504143450a09097d293b0a0a090976617220696e64203d20546974616e69756d2e55492e6372656174654163746976697479496e64696361746f72287b77696474683a3130307d293b0a0909696e642e7365744d657373616765282748656c6c6f20576f726c642e2e2e27293b0a0a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c696e642c666c657853706163655d293b0a0a0909696e642e73686f7728293b0a2020202020200973657454696d656f75742866756e6374696f6e28290a202020202020097b0a2020202020202020202020202020696e642e6869646528293b0a202020202020097d2c35303030293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e744279496428273327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a090976617220666c65785370616365203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464c455849424c455f53504143450a09097d293b0a09090a090976617220696e64203d20546974616e69756d2e55492e6372656174654163746976697479496e64696361746f72287b0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e4163746976697479496e64696361746f725374796c652e4249470a09097d293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c696e642c666c657853706163655d293b0a0909696e642e73686f7728293b0a2020202020200973657454696d656f75742866756e6374696f6e28290a202020202020097b0a2020202020202020202020202020696e642e6869646528293b0a202020202020097d2c32303030293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e744279496428273427292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a090976617220696e64203d20546974616e69756d2e55492e6372656174654163746976697479496e64696361746f72287b0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e4163746976697479496e64696361746f725374796c652e4249470a09097d293b0a0a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365745469746c65436f6e74726f6c28696e64293b0a09090a0909696e642e73686f7728293b0a2020202020200973657454696d656f75742866756e6374696f6e28290a202020202020097b0a2020202020202020202020202020696e642e6869646528293b0a202020202020097d2c32303030293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e744279496428273527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a090976617220696e64203d20546974616e69756d2e55492e6372656174654163746976697479496e64696361746f72287b77696474683a3130307d293b0a0909696e642e7365744d657373616765282748656c6c6f20576f726c642e2e2e27290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365745469746c65436f6e74726f6c28696e64293b0a0909696e642e73686f7728293b0a2020202020200973657454696d656f75742866756e6374696f6e28290a202020202020097b0a2020202020202020202020202020696e642e6869646528293b0a202020202020097d2c32303030293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e744279496428273627292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a090976617220696e64203d20546974616e69756d2e55492e6372656174654163746976697479496e64696361746f72287b0a09090969643a27636f6e74656e745f696e64696361746f72272c0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e4163746976697479496e64696361746f725374796c652e4441524b2c0a090909636f6c6f723a2723303030303030270a09097d293b0a0909696e642e7365744d657373616765282748656c6c6f20576f726c642e2e2e27293b0a0909696e642e73686f7728293b0a2020202020200973657454696d656f75742866756e6374696f6e28290a202020202020097b0a2020202020202020202020202020696e642e6869646528293b0a202020202020097d2c32303030293b0a097d3b0a0a0a09646f63756d656e742e676574456c656d656e744279496428273727292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09092f2f2063726561746520696e64696361746f720a2020202020200976617220696e64203d20546974616e69756d2e55492e6372656174654163746976697479496e64696361746f7228293b0a20202020202009696e642e7365744d65737361676528274c6f6164696e672e2e2e27293b0a2020202020202020696e642e7365744c6f636174696f6e28546974616e69756d2e55492e4163746976697479496e64696361746f722e4449414c4f47290a2020202020202020696e642e7365745479706528546974616e69756d2e55492e4163746976697479496e64696361746f722e494e44455445524d494e414e54290a20202020202009696e642e73686f7728293b0a0a2020202020200973657454696d656f75742866756e6374696f6e28290a202020202020097b0a2020202020202020202020202020696e642e6869646528293b0a0a202020202020097d2c32303030293b0a09090a097d3b0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -215,8 +391,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/animated_false.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/animated_false.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/animated_false.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/animated_false.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedAnimated_false;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a0a09546869732077696e646f772073686f756c642068617665206f70656e20574954484f555420616e696d6174696f6e2e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -224,8 +405,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/application_data.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/application_data.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/application_data.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/application_data.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedApplication_data;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a093c6469762069643d226d657373616765223e3c2f6469763e0a090a093c7363726970743e0a097661722068746d6c20203d2027273b0a0968746d6c2b3d202749443a2027202b20546974616e69756d2e4170702e67657449442829202b20273c62722f3e273b0a0968746d6c2b3d20274e616d653a2027202b20546974616e69756d2e4170702e6765744e616d652829202b20273c62722f3e273b0a0968746d6c2b3d202756657273696f6e3a2027202b20546974616e69756d2e4170702e67657456657273696f6e2829202b20273c62722f3e273b0a0968746d6c2b3d20275075626c69736865723a2027202b20546974616e69756d2e4170702e6765745075626c69736865722829202b20273c62722f3e273b0a0968746d6c2b3d202755524c3a2027202b20546974616e69756d2e4170702e67657455524c2829202b20273c62722f3e273b0a0968746d6c2b3d20274465736372697074696f6e3a2027202b20546974616e69756d2e4170702e6765744465736372697074696f6e2829202b20273c62722f3e273b0a0968746d6c2b3d2027436f707972696768743a2027202b20546974616e69756d2e4170702e676574436f707972696768742829202b20273c62722f3e273b0a0968746d6c2b3d2027475549443a2027202b20546974616e69756d2e4170702e676574475549442829202b20273c62722f3e273b0a0968746d6c2b3d2027506174683a2027202b20546974616e69756d2e4170702e61707055524c546f506174682827696e6465782e68746d6c2729202b20273c62722f3e273b0a09646f63756d656e742e676574456c656d656e744279496428276d65737361676527292e696e6e657248544d4c203d2068746d6c3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -233,26 +419,41 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/buttonbar.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/buttonbar.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/buttonbar.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/buttonbar.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedButtonbar;
 	{
-		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d73697a653a31327078223e0a090a093c646976207374796c653d226d617267696e2d626f74746f6d3a31307078223e0a09596f752063616e2075736520627574746f6e206261727320696e2074686520636f6e74656e7420617265612c20746865206e61762062617220616e6420696e2074686520746f6f6c6261722e0a093c2f6469763e0a093c6469762069643d22627574746f6e62617222207374796c653d226865696768743a343070783b77696474683a32303070783b6d617267696e3a6175746f3b6d617267696e2d746f703a313070783b223e3c2f6469763e0a093c6469762069643d22627574746f6e6261723222207374796c653d226865696768743a333070783b77696474683a32303070783b6d617267696e3a6175746f3b6d617267696e2d746f703a31307078223e3c2f6469763e0a090a093c7363726970743e0a0976617220627574746f6e426172203d20546974616e69756d2e55492e637265617465427574746f6e426172287b0a090969643a27627574746f6e626172272c200a09096c6162656c733a5b27427574746f6e33272c2027427574746f6e34275d0a097d293b0a09627574746f6e4261722e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a097b0a09097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0909612e7365745469746c652827427574746f6e626172205465737427293b0a0909612e7365744d6573736167652827596f7520636c69636b20627574746f6e20696e646578203d2027202b20652e696e646578293b0a0909612e73686f7728293b0a097d293b0a0a0976617220627574746f6e42617232203d20546974616e69756d2e55492e637265617465427574746f6e426172287b0a090969643a27627574746f6e62617232272c200a09097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e4241522c0a09096c6162656c733a5b27427574746f6e33272c2027427574746f6e34275d2c0a09096261636b67726f756e64436f6c6f723a272333333636393927200a097d293b0a09627574746f6e426172322e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a097b0a09097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0909612e7365745469746c652827427574746f6e626172205465737427293b0a0909612e7365744d6573736167652827596f7520636c69636b20627574746f6e20696e646578203d2027202b20652e696e646578293b0a0909612e73686f7728293b0a097d293b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
+		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d73697a653a31327078223e0a090a093c646976207374796c653d226d617267696e2d626f74746f6d3a31307078223e0a09596f752063616e2075736520627574746f6e206261727320696e2074686520636f6e74656e7420617265612c20746865206e61762062617220616e6420696e2074686520746f6f6c6261722e0a093c2f6469763e0a093c6469762069643d22627574746f6e62617222207374796c653d226865696768743a343070783b77696474683a32303070783b6d617267696e3a6175746f3b6d617267696e2d746f703a313070783b223e3c2f6469763e0a093c6469762069643d22627574746f6e6261723222207374796c653d226865696768743a333070783b77696474683a32303070783b6d617267696e3a6175746f3b6d617267696e2d746f703a31307078223e3c2f6469763e0a090a093c7363726970743e0a090a0976617220627574746f6e426172203d20546974616e69756d2e55492e637265617465427574746f6e426172287b0a090969643a27627574746f6e626172272c200a09096c6162656c733a5b27427574746f6e33272c2027427574746f6e34275d0a097d293b0a09627574746f6e4261722e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a097b0a09097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0909612e7365745469746c652827427574746f6e626172205465737427293b0a0909612e7365744d6573736167652827596f7520636c69636b20627574746f6e20696e646578203d2027202b20652e696e646578293b0a0909612e73686f7728293b0a097d293b0a0a0976617220627574746f6e42617232203d20546974616e69756d2e55492e637265617465427574746f6e426172287b0a090969643a27627574746f6e62617232272c200a09097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e4241522c0a09096c6162656c733a5b27427574746f6e33272c2027427574746f6e34275d2c0a09096261636b67726f756e64436f6c6f723a272333333636393927200a097d293b0a09627574746f6e426172322e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a097b0a09097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0909612e7365745469746c652827427574746f6e626172205465737427293b0a0909612e7365744d6573736167652827596f7520636c69636b20627574746f6e20696e646578203d2027202b20652e696e646578293b0a0909612e73686f7728293b0a097d293b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
 	   	if ([d length] == 0) return nil;
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/buttons.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/buttons.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/buttons.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/buttons.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedButtons;
 	{
-		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d73697a653a31317078223e0a0a093c6469762069643d22627574746f6e3122207374796c653d226865696768743a35307078223e3c2f6469763e0a093c6469762069643d22627574746f6e3222207374796c653d226865696768743a35307078223e3c2f6469763e0a0a0a093c7363726970743e0a097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a09612e7365745469746c652827427574746f6e205465737427293b0a0a0976617220627574746f6e31203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090969643a27627574746f6e31272c0a09096261636b67726f756e64496d6167653a27626c75652e706e67272c0a09096261636b67726f756e6453656c6563746564496d6167653a27626c75655f707265737365642e706e67272c0a09096261636b67726f756e64466f6375736564496d6167653a27626c75655f666f63757365642e706e67272c0a09097469746c653a2748656c6c6f272c0a0909636f6c6f723a2723666666666666272c0a09096865696768743a34372c0a097d293b0a09627574746f6e312e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a097b0a0909612e7365744d6573736167652827596f7520636c69636b65642074686520666972737420627574746f6e2e27293b0a0909612e73686f7728293b0a097d290a0a0976617220627574746f6e32203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090969643a27627574746f6e32272c0a09097469746c653a2748656c6c6f272c0a0909636f6c6f723a2723333336363939272c0a09096865696768743a34302c0a090977696474683a3130300a097d293b0a09627574746f6e322e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a097b0a0909612e7365744d6573736167652827596f7520636c69636b656420746865207365636f6e6420627574746f6e2e27293b0a0909612e73686f7728293b0a097d290a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
+		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d73697a653a31317078223e0a0a093c6469762069643d22627574746f6e3122207374796c653d226865696768743a35307078223e3c2f6469763e0a093c6469762069643d22627574746f6e3222207374796c653d226865696768743a35307078223e3c2f6469763e0a0a093c7363726970743e0a090a097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a09612e7365745469746c652827427574746f6e205465737427293b0a090a0976617220627574746f6e31203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090969643a27627574746f6e31272c0a09096261636b67726f756e64496d6167653a27626c75652e706e67272c0a09096261636b67726f756e6453656c6563746564496d6167653a27626c75655f707265737365642e706e67272c0a09096261636b67726f756e64466f6375736564496d6167653a27626c75655f666f63757365642e706e67272c0a09097469746c653a2748656c6c6f272c0a0909636f6c6f723a2723666666666666272c0a09096865696768743a34372c0a097d293b0a09627574746f6e312e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a097b0a0909612e7365744d6573736167652827596f7520636c69636b65642074686520666972737420627574746f6e2e27293b09090a0909612e73686f7728293b0a097d290a090a0976617220627574746f6e32203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090969643a27627574746f6e32272c0a09097469746c653a2748656c6c6f272c0a0909636f6c6f723a2723333336363939272c0a09096865696768743a34302c0a090977696474683a3130300a097d293b0a09627574746f6e322e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a097b0a0909612e7365744d6573736167652827596f7520636c69636b656420746865207365636f6e6420627574746f6e2e27293b0a0909612e73686f7728293b0a097d290a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
 	   	if ([d length] == 0) return nil;
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/composite.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/composite.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/composite.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/composite.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedComposite;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a093c686561643e0a09093c73637269707420747970653d22746578742f6a61766173637269707422207372633d226a71756572792e6a73223e3c2f7363726970743e0a09090a09093c7374796c653e0a09092e73656374696f6e0a09097b0a090909626f726465723a31707820736f6c696420236363633b0a0909092d7765626b69742d626f726465722d746f702d72696768742d7261646975733a203570783b0a0909092d7765626b69742d626f726465722d746f702d6c6566742d7261646975733a203570783b0a0909092d7765626b69742d626f726465722d626f74746f6d2d72696768742d7261646975733a203570783b0a0909092d7765626b69742d626f726465722d626f74746f6d2d6c6566742d7261646975733a203570783b0a09090970616464696e673a313070783b0a090909636f6c6f723a233737373b0a0909096d617267696e3a313070783b0a09097d0a09093c2f7374796c653e0a093c2f686561643e0a093c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a09093c64697620636c6173733d2273656374696f6e22207374796c653d226865696768743a353070783b746578742d616c69676e3a63656e746572223e0a090909093c696d67207372633d22747769747465722e706e67223e3c2f696d673e0a09093c2f6469763e0a09093c646976207374796c653d226865696768743a33303070782220636c6173733d2273656374696f6e223e0a0909093c646976207374796c653d226865696768743a353070783b666c6f61743a6c6566743b6d617267696e2d72696768743a31307078223e0a09090909557365726e616d653a0a0909093c2f6469763e0a0909093c646976207374796c653d22666c6f61743a6c656674223e0a090909093c6469762069643d22746578746669656c643122207374796c653d226865696768743a353070783b77696474683a3137307078223e3c2f6469763e0a0909093c2f6469763e0a0909093c646976207374796c653d22636c6561723a626f74683b6d617267696e3b746f703a31307078223e3c2f6469763e0a0909093c646976207374796c653d226865696768743a353070783b666c6f61743a6c6566743b6d617267696e2d72696768743a31307078223e0a090909094c696b657320426565723a0a0909093c2f6469763e0a0909093c646976207374796c653d22666c6f61743a6c656674223e0a090909093c6469762069643d227377697463683122207374796c653d226865696768743a353070783b77696474683a38307078223e3c2f6469763e0a0909093c2f6469763e0a0909093c646976207374796c653d22636c6561723a626f74683b6d617267696e3b746f703a31307078223e3c2f6469763e0a0909093c646976207374796c653d226865696768743a353070783b666c6f61743a6c6566743b6d617267696e2d72696768743a31307078223e0a090909094861707079205363616c653a0a0909093c2f6469763e0a0909093c646976207374796c653d22666c6f61743a6c656674223e0a090909093c6469762069643d22736c696465723122207374796c653d226865696768743a333070783b77696474683a3130307078223e3c2f6469763e0a0909093c2f6469763e0a0909093c646976207374796c653d22636c6561723a626f74683b6d617267696e3b746f703a31307078223e3c2f6469763e0a09093c2f6469763e0a09093c64697620636c6173733d2273656374696f6e22207374796c653d226865696768743a353070783b746578742d616c69676e3a63656e746572223e0a090909466f6f7465720a09093c2f6469763e0a0a09093c7363726970743e0a090976617220686569676874203d2028546974616e69756d2e506c6174666f726d2e6e616d652e696e6465784f6628276950686f6e65272920213d202d3129203f2033303a2034303b0a090976617220746631203d20546974616e69756d2e55492e637265617465546578744669656c64287b0a09090969643a27746578746669656c6431272c0a09090976616c75653a27467265642053616e666f7264272c0a0909096b6579626f617264547970653a546974616e69756d2e55492e4b4559424f4152445f41534349492c0a09090968696e74546578743a27656e74657220757365726e616d65272c0a09090977696474683a3137302c0a0909096865696768743a6865696768742c0a090909636c6561724f6e456469743a747275652c0a0909090a090909626f726465725374796c653a546974616e69756d2e55492e494e5055545f424f524445525354594c455f524f554e4445442c0a090909636c656172427574746f6e4d6f64653a546974616e69756d2e55492e494e5055545f425554544f4e4d4f44455f414c574159532c0a09097d293b0a09090a090976617220737731203d20546974616e69756d2e55492e637265617465537769746368287b69643a2773776974636831272c2076616c75653a747275657d293b0a09090a090976617220736c31203d20546974616e69756d2e55492e637265617465536c69646572287b69643a27736c6964657231272c6d696e3a302c6d61783a31302c76616c75653a31302c77696474683a3133307d293b0a09090a09093c2f7363726970743e0a093c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -260,8 +461,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/database.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/database.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/database.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/database.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedDatabase;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f6479207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a093c6469762069643d226d657373616765223e3c2f6469763e0a093c6469762069643d22627574746f6e3122207374796c653d226865696768743a353070783b6d617267696e2d746f703a32307078223e3c2f6469763e0a090a093c7363726970743e0a0976617220627574746f6e31203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090969643a27627574746f6e31272c0a09096261636b67726f756e64496d6167653a27626c75652e706e67272c0a09096261636b67726f756e6453656c6563746564496d6167653a27626c75655f707265737365642e706e67272c0a09097469746c653a274f70656e205061676520776974682044422063616c6c73272c0a0909636f6c6f723a2723666666666666272c0a09096865696768743a34372c0a097d293b0a09627574746f6e312e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a097b0a09097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a276461746162617365322e68746d6c272c7469746c653a27444220546573742032277d293b0a090977696e2e6f70656e287b616e696d617465643a747275657d293b0a097d290a090a097661722068746d6c203d2027273b0a0a09766172206462203d20546974616e69756d2e44617461626173652e6f70656e28276d79646227293b0a0a0964622e657865637574652827435245415445205441424c45204946204e4f542045584953545320444154414241534554455354202028494420494e54454745522c204e414d4520544558542927293b0a0964622e65786563757465282744454c4554452046524f4d2044415441424153455445535427293b0a0a0964622e657865637574652827494e5345525420494e544f20444154414241534554455354202849442c204e414d4520292056414c554553283f2c3f29272c312c274e616d65203127293b0a0964622e657865637574652827494e5345525420494e544f20444154414241534554455354202849442c204e414d4520292056414c554553283f2c3f29272c322c274e616d65203227293b0a0964622e657865637574652827494e5345525420494e544f20444154414241534554455354202849442c204e414d4520292056414c554553283f2c3f29272c332c274e616d65203327293b0a0964622e657865637574652827494e5345525420494e544f20444154414241534554455354202849442c204e414d4520292056414c554553283f2c3f29272c342c274e616d65203427293b0a0968746d6c202b3d20274a55535420494e5345525445442c20726f77734166666563746564203d2027202b2064622e726f77734166666563746564202b20273c62722f3e273b0a0968746d6c202b3d20274a55535420494e5345525445442c206c617374496e73657274526f774964203d2027202b2064622e6c617374496e73657274526f774964202b20273c62722f3e273b0a090a0976617220726f7773203d2064622e65786563757465282753454c454354202a2046524f4d2044415441424153455445535427293b0a0968746d6c202b3d2027726f7720636f756e74203d2027202b20726f77732e676574526f77436f756e742829202b20273c62722f3e273b0a090a097768696c652028726f77732e697356616c6964526f772829290a097b0a090968746d6c202b3d202749443a2027202b20726f77732e6669656c64283029202b2027204e414d453a2027202b20726f77732e6669656c6442794e616d6528276e616d652729202b20273c62722f3e273b0a0909726f77732e6e65787428293b0a097d0a092f2f20636c6f73652064617461626173650a09726f77732e636c6f736528293b0a090a090a09646f63756d656e742e676574456c656d656e744279496428276d65737361676527292e696e6e657248544d4c203d2068746d6c3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -269,17 +475,27 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/database2.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/database2.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/database2.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/database2.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedDatabase2;
 	{
-		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f6479207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a093c6469762069643d226d657373616765223e3c2f6469763e0a090a093c7363726970743e0a090a097661722068746d6c203d2027273b0a0a09766172206462203d20546974616e69756d2e44617461626173652e6f70656e28276d79646227293b0a0a0964622e657865637574652827435245415445205441424c45204946204e4f542045584953545320444154414241534554455354202028494420494e54454745522c204e414d4520544558542927293b0a0a0964622e657865637574652827494e5345525420494e544f20444154414241534554455354202849442c204e414d4520292056414c554553283f2c3f29272c352c274e616d65203527293b0a0964622e657865637574652827494e5345525420494e544f20444154414241534554455354202849442c204e414d4520292056414c554553283f2c3f29272c362c274e616d65203627293b0a0964622e657865637574652827494e5345525420494e544f20444154414241534554455354202849442c204e414d4520292056414c554553283f2c3f29272c372c274e616d65203727293b0a0964622e657865637574652827494e5345525420494e544f20444154414241534554455354202849442c204e414d4520292056414c554553283f2c3f29272c382c274e616d65203827293b0a0968746d6c202b3d20274a55535420494e5345525445442c20726f77734166666563746564203d2027202b2064622e726f77734166666563746564202b20273c62722f3e273b0a0968746d6c202b3d20274a55535420494e5345525445442c206c617374496e73657274526f774964203d2027202b2064622e6c617374496e73657274526f774964202b20273c62722f3e273b0a090a0976617220726f7773203d2064622e65786563757465282753454c454354202a2046524f4d2044415441424153455445535427293b0a0968746d6c202b3d2027726f7720636f756e74203d2027202b20726f77732e676574526f77436f756e742829202b20273c62722f3e273b0a090a097768696c652028726f77732e697356616c6964526f772829290a097b0a090968746d6c202b3d202749443a2027202b20726f77732e6669656c64283029202b2027204e414d453a2027202b20726f77732e6669656c6442794e616d6528276e616d652729202b20273c62722f3e273b0a0909726f77732e6e65787428293b0a097d0a092f2f20636c6f73652064617461626173650a09726f77732e636c6f736528293b0a090a090a090a09646f63756d656e742e676574456c656d656e744279496428276d65737361676527292e696e6e657248544d4c203d2068746d6c3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
+		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f6479207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a093c6469762069643d226d657373616765223e3c2f6469763e0a090a093c7363726970743e0a090a097661722068746d6c203d2027273b0a0a09766172206462203d20546974616e69756d2e44617461626173652e6f70656e28276d79646227293b0a0a0a0964622e657865637574652827494e5345525420494e544f20444154414241534554455354202849442c204e414d4520292056414c554553283f2c3f29272c352c274e616d65203527293b0a0964622e657865637574652827494e5345525420494e544f20444154414241534554455354202849442c204e414d4520292056414c554553283f2c3f29272c362c274e616d65203627293b0a0964622e657865637574652827494e5345525420494e544f20444154414241534554455354202849442c204e414d4520292056414c554553283f2c3f29272c372c274e616d65203727293b0a0964622e657865637574652827494e5345525420494e544f20444154414241534554455354202849442c204e414d4520292056414c554553283f2c3f29272c382c274e616d65203827293b0a0968746d6c202b3d20274a55535420494e5345525445442c20726f77734166666563746564203d2027202b2064622e726f77734166666563746564202b20273c62722f3e273b0a0968746d6c202b3d20274a55535420494e5345525445442c206c617374496e73657274526f774964203d2027202b2064622e6c617374496e73657274526f774964202b20273c62722f3e273b0a090a0976617220726f7773203d2064622e65786563757465282753454c454354202a2046524f4d2044415441424153455445535427293b0a0968746d6c202b3d2027726f7720636f756e74203d2027202b20726f77732e676574526f77436f756e742829202b20273c62722f3e273b0a090a097768696c652028726f77732e697356616c6964526f772829290a097b0a090968746d6c202b3d202749443a2027202b20726f77732e6669656c64283029202b2027204e414d453a2027202b20726f77732e6669656c6442794e616d6528276e616d652729202b20273c62722f3e273b0a0909726f77732e6e65787428293b0a097d0a092f2f20636c6f73652064617461626173650a09726f77732e636c6f736528293b0a090a090a090a09646f63756d656e742e676574456c656d656e744279496428276d65737361676527292e696e6e657248544d4c203d2068746d6c3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
 	   	if ([d length] == 0) return nil;
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/dynamic_content.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/dynamic_content.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/dynamic_content.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/dynamic_content.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedDynamic_content;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a093c646976203e0a09093c6469762069643d226d6f766522207374796c653d226d617267696e2d746f703a357078223e546f7563684d6f766520436f756e743a20303c2f6469763e0a09093c6469762069643d22737461727422207374796c653d226d617267696e2d746f703a357078223e546f756368537461727420436f756e743a20303c2f6469763e0a09093c6469762069643d22656e6422207374796c653d226d617267696e2d746f703a357078223e546f756368456e6420436f756e743a20303c2f6469763e0a09093c6469762069643d22636f6e74656e74223e3c2f6469763e0a09093c6469762069643d22627574746f6e22207374796c653d226865696768743a34377078223e3c2f6469763e0a093c2f6469763e0a093c7363726970743e0a0976617220627574746f6e32203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090969643a27627574746f6e272c0a09096261636b67726f756e64496d6167653a27626c75652e706e67272c0a09096261636b67726f756e6453656c6563746564496d6167653a27626c75655f707265737365642e706e67272c0a09097469746c653a2741646420436f6e74656e74272c0a0909636f6c6f723a2723666666666666272c0a09096865696768743a34372c0a097d293b0a09627574746f6e322e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a097b0a0920097661722068746d6c203d20273c646976207374796c653d226865696768743a323070783b6261636b67726f756e642d636f6c6f723a236363633b6d617267696e2d626f74746f6d3a313070783b70616464696e673a357078223e726f773c2f6469763e273b0a090968746d6c202b3d20273c646976207374796c653d226865696768743a323070783b6261636b67726f756e642d636f6c6f723a236363633b6d617267696e2d626f74746f6d3a313070783b70616464696e673a357078223e726f773c2f6469763e273b0a090968746d6c202b3d20273c646976207374796c653d226865696768743a323070783b6261636b67726f756e642d636f6c6f723a236363633b6d617267696e2d626f74746f6d3a313070783b70616464696e673a357078223e726f773c2f6469763e273b0a090968746d6c202b3d20273c646976207374796c653d226865696768743a323070783b6261636b67726f756e642d636f6c6f723a236363633b6d617267696e2d626f74746f6d3a313070783b70616464696e673a357078223e726f773c2f6469763e273b0a090968746d6c202b3d20273c646976207374796c653d226865696768743a323070783b6261636b67726f756e642d636f6c6f723a236363633b6d617267696e2d626f74746f6d3a313070783b70616464696e673a357078223e726f773c2f6469763e273b0a090968746d6c202b3d20273c646976207374796c653d226865696768743a323070783b6261636b67726f756e642d636f6c6f723a236363633b6d617267696e2d626f74746f6d3a313070783b70616464696e673a357078223e726f773c2f6469763e273b0a090968746d6c202b3d20273c646976207374796c653d226865696768743a323070783b6261636b67726f756e642d636f6c6f723a236363633b6d617267696e2d626f74746f6d3a313070783b70616464696e673a357078223e726f773c2f6469763e273b0a090968746d6c202b3d20273c646976207374796c653d226865696768743a323070783b6261636b67726f756e642d636f6c6f723a236363633b6d617267696e2d626f74746f6d3a313070783b70616464696e673a357078223e726f773c2f6469763e273b0a090968746d6c202b3d20273c646976207374796c653d226865696768743a323070783b6261636b67726f756e642d636f6c6f723a236363633b6d617267696e2d626f74746f6d3a313070783b70616464696e673a357078223e726f773c2f6469763e273b0a090968746d6c202b3d20273c646976207374796c653d226865696768743a323070783b6261636b67726f756e642d636f6c6f723a236363633b6d617267696e2d626f74746f6d3a313070783b70616464696e673a357078223e726f773c2f6469763e273b0a090968746d6c202b3d20273c646976207374796c653d226865696768743a323070783b6261636b67726f756e642d636f6c6f723a236363633b6d617267696e2d626f74746f6d3a313070783b70616464696e673a357078223e726f773c2f6469763e273b0a090968746d6c202b3d20273c646976207374796c653d226865696768743a323070783b6261636b67726f756e642d636f6c6f723a236363633b6d617267696e2d626f74746f6d3a313070783b70616464696e673a357078223e726f773c2f6469763e273b0a090968746d6c202b3d20273c646976207374796c653d226865696768743a323070783b6261636b67726f756e642d636f6c6f723a236363633b6d617267696e2d626f74746f6d3a313070783b70616464696e673a357078223e726f773c2f6469763e273b0a090968746d6c202b3d20273c646976207374796c653d226865696768743a323070783b6261636b67726f756e642d636f6c6f723a236363633b6d617267696e2d626f74746f6d3a313070783b70616464696e673a357078223e726f773c2f6469763e273b0a0909646f63756d656e742e676574456c656d656e74427949642827636f6e74656e7427292e696e6e657248544d4c202b3d2068746d6c3b0a097d290a090a09766172206d6f7665436f756e74203d20303b0a09766172207374617274436f756e74203d20303b0a0976617220656e64436f756e74203d20303b0a090a09646f63756d656e742e676574456c656d656e74427949642827636f6e74656e7427292e6f6e746f7563686d6f7665203d2066756e6374696f6e28290a097b0a09096d6f7665436f756e742b2b0a0909646f63756d656e742e676574456c656d656e744279496428276d6f766527292e696e6e657248544d4c203d2027546f7563684d6f766520436f756e743a2027202b206d6f7665436f756e743b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827636f6e74656e7427292e6f6e746f7563687374617274203d2066756e6374696f6e28290a097b0a09097374617274436f756e742b2b0a0909646f63756d656e742e676574456c656d656e74427949642827737461727427292e696e6e657248544d4c203d2027546f756368537461727420436f756e743a2027202b207374617274436f756e743b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827636f6e74656e7427292e6f6e746f756368656e64203d2066756e6374696f6e28290a097b0a0909656e64436f756e742b2b0a0909646f63756d656e742e676574456c656d656e74427949642827656e6427292e696e6e657248544d4c203d2027546f756368456e6420436f756e743a2027202b20656e64436f756e743b0a097d3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -287,8 +503,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/email.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/email.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/email.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/email.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedEmail;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a3c7374796c653e0a2e627574746f6e0a7b0a09666f6e742d73697a653a313870783b77696474683a32383070783b746578742d616c69676e3a63656e7465720a7d0a3c2f7374796c653e0a3c2f686561643e0a3c626f6479207374796c653d226261636b67726f756e642d636f6c6f723a236666663b666f6e742d73697a653a323070783b666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d7765696768743a626f6c64223e0a0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d2231222076616c75653d224c61756e636820456d61696c2220636c6173733d22627574746f6e222f3e3c2f6469763e0a0a093c7363726970743e0a09646f63756d656e742e676574456c656d656e744279496428273127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909546974616e69756d2e4d656469612e6f70656e50686f746f47616c6c657279287b0a090909737563636573733a2066756e6374696f6e28696d6167652c64657461696c73290a0909097b0a0909090976617220656d61696c4469616c6f67203d20546974616e69756d2e55492e637265617465456d61696c4469616c6f6728290a09090909656d61696c4469616c6f672e7365745375626a6563742827666f6f27293b0a09090909656d61696c4469616c6f672e736574546f526563697069656e7473285b27666f6f407961686f6f2e636f6d275d293b0a09090909656d61696c4469616c6f672e7365744363526563697069656e7473285b27626172407961686f6f2e636f6d275d293b0a09090909656d61696c4469616c6f672e736574426363526563697069656e7473285b276f62616d61407768697465686f7573652e676f76275d293b0a09090909656d61696c4469616c6f672e7365744d657373616765426f647928277468697320697320612074657374206d65737361676527293b0a09090909656d61696c4469616c6f672e6164644174746163686d656e7428696d616765293b0a09090909656d61696c4469616c6f672e6f70656e28293b0a0a0909097d2c0a0909096572726f723a2066756e6374696f6e286572726f72290a0909097b0a0909097d2c0a09090963616e63656c3a2066756e6374696f6e28290a0909097b0a0a0909097d2c0a090909616c6c6f77496d61676545646974696e673a747275650a09097d293b0a09090a097d3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -296,8 +517,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/filesystem.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/filesystem.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/filesystem.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/filesystem.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedFilesystem;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a09436f6d696e6720736f6f6e2e0a093c7363726970743e0a0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -305,8 +531,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/fullscreen.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/fullscreen.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/fullscreen.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/fullscreen.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedFullscreen;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a203c686561643e0a0a203c2f686561643e0a3c626f64793e0a0946756c6c73637265656e204d6f64650a093c696e70757420747970653d22627574746f6e22207374796c653d22666f6e742d73697a653a31387078222069643d22627574746f6e222076616c75653d22436c6f73652057696e646f77222f3e0a093c7363726970743e0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e27292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e636c6f736528293b0a097d0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -314,8 +545,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/geo.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/geo.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/geo.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/geo.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedGeo;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a31307078223e576174636820506f736974696f6e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d2263616c6c636f756e74223e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d2274696d657374616d70223e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d226c61746974756465223e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d226c6f6e676974756465223e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d22616c746974756465223e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d226163637572616379223e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d22616c7469747564654163637572616379223e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d2268656164696e67223e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d227370656564223e3c2f6469763e0a090a093c646976207374796c653d226d617267696e2d746f703a31307078223e43757272656e7420506f736974696f6e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d2263616c6c636f756e7432223e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d2274696d657374616d7032223e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d226c6174697475646532223e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d226c6f6e67697475646532223e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d22616c74697475646532223e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d22616363757261637932223e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d22616c746974756465416363757261637932223e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d2268656164696e6732223e3c2f6469763e0a093c646976207374796c653d226865696768743a32307078222069643d22737065656432223e3c2f6469763e0a090a093c7363726970743e0a0976617220636f756e74203d303b0a0976617220636f756e7432203d20303b0a09546974616e69756d2e47656f6c6f636174696f6e2e67657443757272656e74506f736974696f6e280a090966756e6374696f6e28706f73290a09097b0a090909636f756e74322b2b3b0a090909646f63756d656e742e676574456c656d656e7442794964282763616c6c636f756e743227292e696e6e657248544d4c203d202743616c6c20636f756e74203d2027202b20636f756e74323b0a0909097661722074696d657374616d70203d20646f63756d656e742e676574456c656d656e7442794964282774696d657374616d703227293b0a090909766172206c61746974756465203d20646f63756d656e742e676574456c656d656e744279496428276c617469747564653227293b0a090909766172206c6f6e676974756465203d20646f63756d656e742e676574456c656d656e744279496428276c6f6e6769747564653227293b0a09090976617220616c746974756465203d20646f63756d656e742e676574456c656d656e74427949642827616c7469747564653227293b0a090909766172206163637572616379203d20646f63756d656e742e676574456c656d656e7442794964282761636375726163793227293b0a09090976617220616c7469747564654163637572616379203d20646f63756d656e742e676574456c656d656e74427949642827616c74697475646541636375726163793227293b0a0909097661722068656164696e67203d20646f63756d656e742e676574456c656d656e7442794964282768656164696e673227293b0a090909766172207370656564203d20646f63756d656e742e676574456c656d656e7442794964282773706565643227293b0a0909090a09090976617220636f6f726473203d20706f732e636f6f7264733b0a09090974696d657374616d702e696e6e657248544d4c203d202754696d657374616d703a2027202b20706f732e74696d657374616d703b0a0909096c617469747564652e696e6e657248544d4c203d20274c617469747564653a2027202b20636f6f7264732e6c617469747564653b0a0909096c6f6e6769747564652e696e6e657248544d4c203d20274c6f6e6769747564653a2027202b20636f6f7264732e6c6f6e6769747564653b0a090920202020616c7469747564652e696e6e657248544d4c3d2027416c7469747564653a2027202b20636f6f7264732e616c7469747564653b0a09090961636375726163792e696e6e657248544d4c203d202741636375726163793a2027202b20636f6f7264732e61636375726163793b0a090909616c74697475646541636375726163792e696e6e657248544d4c203d2027416c7469747564652041636375726163793a2027202b20636f6f7264732e616c74697475646541636375726163793b0a09090968656164696e672e696e6e657248544d4c203d202748656164696e673a2027202b20636f6f7264732e68656164696e673b0a09090973706565642e696e6e657248544d4c203d202753706565643a2027202b20636f6f7264732e73706565643b0a0909090a09097d2c200a090966756e6374696f6e28290a09097b0a0909090a09097d0a09293b0a0a09546974616e69756d2e47656f6c6f636174696f6e2e7761746368506f736974696f6e280a090966756e6374696f6e28706f73290a09097b0a090909636f756e742b2b3b0a090909646f63756d656e742e676574456c656d656e7442794964282763616c6c636f756e7427292e696e6e657248544d4c203d202743616c6c20636f756e74203d2027202b20636f756e743b0a0a0909097661722074696d657374616d70203d20646f63756d656e742e676574456c656d656e7442794964282774696d657374616d7027293b0a090909766172206c61746974756465203d20646f63756d656e742e676574456c656d656e744279496428276c6174697475646527293b0a090909766172206c6f6e676974756465203d20646f63756d656e742e676574456c656d656e744279496428276c6f6e67697475646527293b0a09090976617220616c746974756465203d20646f63756d656e742e676574456c656d656e74427949642827616c74697475646527293b0a090909766172206163637572616379203d20646f63756d656e742e676574456c656d656e74427949642827616363757261637927293b0a09090976617220616c7469747564654163637572616379203d20646f63756d656e742e676574456c656d656e74427949642827616c746974756465416363757261637927293b0a0909097661722068656164696e67203d20646f63756d656e742e676574456c656d656e7442794964282768656164696e6727293b0a090909766172207370656564203d20646f63756d656e742e676574456c656d656e74427949642827737065656427293b0a0a09090976617220636f6f726473203d20706f732e636f6f7264733b0a09090974696d657374616d702e696e6e657248544d4c203d202754696d657374616d703a2027202b20706f732e74696d657374616d703b0a0909096c617469747564652e696e6e657248544d4c203d20274c617469747564653a2027202b20636f6f7264732e6c617469747564653b0a0909096c6f6e6769747564652e696e6e657248544d4c203d20274c6f6e6769747564653a2027202b20636f6f7264732e6c6f6e6769747564653b0a090920202020616c7469747564652e696e6e657248544d4c3d2027416c7469747564653a2027202b20636f6f7264732e616c7469747564653b0a09090961636375726163792e696e6e657248544d4c203d202741636375726163793a2027202b20636f6f7264732e61636375726163793b0a090909616c74697475646541636375726163792e696e6e657248544d4c203d2027416c7469747564652041636375726163793a2027202b20636f6f7264732e616c74697475646541636375726163793b0a09090968656164696e672e696e6e657248544d4c203d202748656164696e673a2027202b20636f6f7264732e68656164696e673b0a09090973706565642e696e6e657248544d4c203d202753706565643a2027202b20636f6f7264732e73706565643b0a0a09097d2c200a090966756e6374696f6e28290a09097b0a0a09097d0a09293b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -323,8 +559,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/image.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/image.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/image.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/image.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedImage;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a093c686561643e0a0a093c2f686561643e0a093c626f6479207374796c653d226d617267696e3a303b6261636b67726f756e642d636f6c6f723a233131313b746578742d616c69676e3a63656e746572223e0a09093c696d672069643d22696d6167652220626f726465723d223022206865696768743d22333630222077696474683d2233323022202f3e0a09093c696e7075742069643d2262746e22207374796c653d227669736962696c6974793a68696464656e2220747970653d22627574746f6e222076616c75653d224f4b22202f3e0a09093c7363726970743e0a090909766172206c697374656e6572203d2066756e6374696f6e2865290a0909097b0a0909090976617220783d546974616e69756d2e4170702e50726f706572746965732e676574537472696e6728277827293b0a0909090976617220793d546974616e69756d2e4170702e50726f706572746965732e676574537472696e6728277927293b0a09090909766172206865696768743d546974616e69756d2e4170702e50726f706572746965732e676574537472696e67282768656967687427293b0a090909097661722077696474683d546974616e69756d2e4170702e50726f706572746965732e676574537472696e672827776964746827293b0a0909090a090909097661722062203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0909090a09090909622e7365744d65737361676528274865696768742027202b20686569676874202b20272057696474682027202b207769647468202b202720582027202b2078202b202720592027202b79293b0a09090909622e7365745469746c65282750686f746f2044657461696c7327293b0a09090909622e736574427574746f6e4e616d6573285b274f4b275d293b0a09090909622e73686f7728293b0a0909097d3b0a0909090a0909092f2f206c6f616420696d6167652066726f6d2070726f706572746965730a090909646f63756d656e742e676574456c656d656e74427949642827696d61676527292e737263203d20546974616e69756d2e4170702e50726f706572746965732e676574537472696e67282770686f746f27293b0a0909090a09090969662028546974616e69756d2e506c6174666f726d2e6e616d652e696e6465784f6628276950686f6e6527292020213d202d3129207b0a090909092f2f206372656174652062757474746f6e0a0909090976617220627574746f6e203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090909097469746c653a2744657461696c73272c0a09090909097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e424f5244455245440a090909097d293b0a0909090a090909092f2f2073657420627574746f6e206f6e207269676874206e61760a09090909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e28627574746f6e293b0a0909090a090909092f2f20616464206576656e74206c6973746e6565720a09090909627574746f6e2e6164644576656e744c697374656e65722827636c69636b272c206c697374656e6572293b0a0909097d20656c7365207b0a0909090976617220627574746f6e203d20646f63756d656e742e676574456c656d656e7442794964282762746e27293b0a09090909627574746f6e2e7374796c652e7669736962696c697479203d202776697369626c65273b0a09090909627574746f6e2e6f6e636c69636b203d206c697374656e65723b0a0909097d0a09093c2f7363726970743e0a0a093c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -332,8 +573,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/index.js
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/index.js
+=======
+	#pragma mark app://com.nolanwright.kitchensink/index.js
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/index.js
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) scriptNamedIndex;
 	{
 		NSData *d = dataWithHexString(@&quot;77696e646f772e6f6e6c6f61643d66756e6374696f6e28290a7b76617220646174613d5b7b7469746c653a2747726f757065642056696577272c6861734368696c643a747275657d2c7b7469746c653a27416c657274277d2c7b7469746c653a27506c6179204d6f766965277d2c7b7469746c653a2743616d657261277d2c7b7469746c653a2756696272617465277d2c7b7469746c653a274f7269656e746174696f6e277d2c7b7469746c653a2750686f746f2047616c6c657279277d2c7b7469746c653a274f7074696f6e73204469616c6f67277d2c7b7469746c653a27416a61782052657175657374277d2c7b7469746c653a2747656f204c6f636174696f6e277d2c7b7469746c653a27436f6d706f736974652056696577272c6861734368696c643a747275657d5d3b766172207461626c65566965773d546974616e69756d2e55492e6372656174655461626c6556696577287b646174613a646174612c7469746c653a27506167652031272c69735072696d6172793a747275652c6261636b67726f756e64436f6c6f723a2723333336363939277d2c66756e6374696f6e286576656e744f626a656374290a7b766172206964783d6576656e744f626a6563742e696e6465783b73776974636828696478290a7b6361736520303a7b68616e646c6547726f757065645669657728293b627265616b3b7d0a6361736520313a7b68616e646c65416c65727428293b627265616b3b7d0a6361736520323a7b706c61794d6f76696528293b627265616b3b7d0a6361736520333a7b73686f7743616d65726128293b627265616b3b7d0a6361736520343a7b546974616e69756d2e4d656469612e7669627261746528293b627265616b3b7d0a6361736520353a7b7661722077696e3d546974616e69756d2e55492e63726561746557696e646f77287b75726c3a276f7269656e746174696f6e2e68746d6c272c7469746c653a274f7269656e746174696f6e204368616e6765272c626172436f6c6f723a2723333336363939277d293b77696e2e6f7269656e746174696f6e3d27656974686572273b77696e2e6f70656e287b616e696d617465643a747275657d293b627265616b3b7d0a6361736520363a7b6f70656e50686f746f47616c6c65727928293b627265616b3b7d0a6361736520373a7b73686f774f7074696f6e734469616c6f6728293b627265616b3b7d0a6361736520383a7b7661722077696e3d546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277868722e68746d6c272c7469746c653a27416a61782052657175657374272c626172436f6c6f723a2723333336363939277d293b77696e2e6f70656e287b616e696d617465643a747275657d293b627265616b3b7d0a6361736520393a7b7661722077696e3d546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2767656f2e68746d6c272c7469746c653a2747656f6c6f636174696f6e272c626172436f6c6f723a2723333336363939277d293b77696e2e6f70656e287b616e696d617465643a747275657d293b627265616b3b7d0a636173652031303a7b68616e646c65436f6d706f736974655669657728293b627265616b3b7d0a636173652031313a7b7661722077696e3d546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277368616b652e68746d6c272c7469746c653a275368616b65272c626172436f6c6f723a2723333336363939277d293b77696e2e6f70656e287b616e696d617465643a747275657d293b627265616b3b7d7d7d293b7461626c65566965772e6f70656e287b616e696d617465643a66616c73657d293b66756e6374696f6e2073686f774f7074696f6e734469616c6f6728290a7b766172206469616c6f673d546974616e69756d2e55492e6372656174654f7074696f6e4469616c6f6728293b6469616c6f672e7365744f7074696f6e73285b225069636b2041222c225069636b2042222c2263616e63656c225d293b6469616c6f672e73657444657374727563746976652831293b6469616c6f672e73657443616e63656c2832293b6469616c6f672e7365745469746c6528274d79205469746c6527293b6469616c6f672e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e286576656e74290a7b7d293b6469616c6f672e73686f7728293b7d3b66756e6374696f6e206f70656e50686f746f47616c6c65727928290a7b546974616e69756d2e4d656469612e6f70656e50686f746f47616c6c657279287b737563636573733a66756e6374696f6e28696d6167652c64657461696c73290a7b7661722077696e3d546974616e69756d2e55492e63726561746557696e646f7728293b77696e2e73657455524c2827696d6167652e68746d6c27293b546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282770686f746f272c696d6167652e75726c293b69662864657461696c73297b546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282778272c64657461696c732e63726f70526563742e78293b546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282779272c64657461696c732e63726f70526563742e79293b546974616e69756d2e4170702e50726f706572746965732e736574537472696e672827686569676874272c64657461696c732e63726f70526563742e686569676874293b546974616e69756d2e4170702e50726f706572746965732e736574537472696e6728277769647468272c64657461696c732e63726f70526563742e7769647468293b7d656c73657b546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282778272c30293b546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282779272c30293b546974616e69756d2e4170702e50726f706572746965732e736574537472696e672827686569676874272c696d6167652e686569676874293b546974616e69756d2e4170702e50726f706572746965732e736574537472696e6728277769647468272c696d6167652e7769647468293b7d0a77696e2e6f70656e287b616e696d617465643a747275657d293b7d2c6572726f723a66756e6374696f6e286572726f72290a7b546974616e69756d2e55492e637265617465416c6572744469616c6f67287b7469746c653a224572726f722066726f6d2047616c6c657279222c6d6573736167653a6572726f722e6d6573736167652c627574746f6e4e616d65733a4f4b7d292e73686f7728293b7d2c63616e63656c3a66756e6374696f6e28290a7b7d2c616c6c6f77496d61676545646974696e673a747275657d293b7d3b66756e6374696f6e20706c61794d6f76696528290a7b766172206163746976654d6f7669653d546974616e69756d2e4d656469612e637265617465566964656f506c61796572287b636f6e74656e7455524c3a276d6f7669652e6d7034272c6261636b67726f756e64436f6c6f723a2723313131272c6d6f766965436f6e74726f6c4d6f64653a546974616e69756d2e4d656469612e564944454f5f434f4e54524f4c5f44454641554c542c7363616c696e674d6f64653a546974616e69756d2e4d656469612e564944454f5f5343414c494e475f4d4f44455f46494c4c7d293b6163746976654d6f7669652e706c617928293b7d3b66756e6374696f6e2073686f7743616d65726128290a7b546974616e69756d2e4d656469612e73686f7743616d657261287b737563636573733a66756e6374696f6e28696d6167652c64657461696c73290a7b7661722077696e3d546974616e69756d2e55492e63726561746557696e646f7728293b77696e2e73657455524c2827696d6167652e68746d6c27293b546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282770686f746f272c696d6167652e75726c293b69662864657461696c73297b546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282778272c64657461696c732e63726f70526563742e78293b546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282779272c64657461696c732e63726f70526563742e79293b546974616e69756d2e4170702e50726f706572746965732e736574537472696e672827686569676874272c64657461696c732e63726f70526563742e686569676874293b546974616e69756d2e4170702e50726f706572746965732e736574537472696e6728277769647468272c64657461696c732e63726f70526563742e7769647468293b7d0a77696e2e6f70656e287b616e696d617465643a747275657d293b7d2c63616e63656c3a66756e6374696f6e28290a7b7d2c6572726f723a66756e6374696f6e286572726f72290a7b76617220613d546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b612e7365745469746c65282743616d657261204572726f7227293b6966286572726f722e636f64653d546974616e69756d2e4d656469612e4e4f5f43414d455241290a7b612e7365744d657373616765282744657669636520646f6573206e6f7420686176652063616d65726127293b7d0a656c73650a7b612e7365744d6573736167652827556e6578706563746564206572726f723a20272b6572726f722e636f6465293b7d0a612e736574427574746f6e4e616d6573285b274f4b275d293b612e73686f7728293b7d2c616c6c6f77496d61676545646974696e673a747275657d293b627265616b3b7d3b66756e6374696f6e2068616e646c6547726f757065645669657728290a7b76617220613d546974616e69756d2e55492e637265617465416c6572744469616c6f67287b7469746c653a2747726f7570656420566965772054657374272c627574746f6e4e616d65733a5b274f4b275d7d293b76617220627574746f6e446174613d5b7b7469746c653a27427574746f6e2031277d2c7b7469746c653a27427574746f6e2032277d5d3b766172206261723d546974616e69756d2e55492e637265617465427574746f6e426172287b6c6162656c733a5b27427574746f6e2031272c27427574746f6e2032275d2c636f6c6f723a2723333336363939277d293b546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e28626172293b76617220627574746f6e53656374696f6e3d546974616e69756d2e55492e6950686f6e652e63726561746547726f7570656453656374696f6e287b666f6f7465723a27427574746f6e2047726f757020466f6f746572272c6865616465723a27427574746f6e2047726f7570272c747970653a27627574746f6e272c646174613a627574746f6e446174617d293b627574746f6e53656374696f6e2e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a7b612e7365744d6573736167652827596f7520636c69636b656420696e64657820272b652e696e6465782b272073656374696f6e20726f7720272b652e726f772b272073656374696f6e20272b652e73656374696f6e293b612e73686f7728293b7d293b766172206f7074696f6e446174613d5b7b7469746c653a274f7074696f6e2031277d2c7b7469746c653a274f7074696f6e2032272c73656c65637465643a747275657d2c7b7469746c653a274f7074696f6e2033277d5d3b766172206f7074696f6e53656374696f6e3d546974616e69756d2e55492e6950686f6e652e63726561746547726f7570656453656374696f6e287b6865616465723a274f7074696f6e2047726f7570272c747970653a276f7074696f6e272c646174613a6f7074696f6e446174617d293b6f7074696f6e53656374696f6e2e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a7b612e7365744d6573736167652827596f7520636c69636b656420696e64657820272b652e696e6465782b272073656374696f6e20726f7720272b652e726f772b272073656374696f6e20272b652e73656374696f6e293b612e73686f7728293b7d293b76617220737769746368496e7374616e63653d546974616e69756d2e55492e637265617465537769746368287b76616c75653a747275657d293b737769746368496e7374616e63652e6164644576656e744c697374656e657228276368616e6765272c66756e6374696f6e2865290a7b612e7365744d65737361676528652e76616c7565290a612e73686f7728293b7d290a76617220736c69646572496e7374616e63653d546974616e69756d2e55492e637265617465536c69646572287b6d696e3a302c6d61783a31302c76616c75653a352c77696474683a3135307d293b736c69646572496e7374616e63652e6164644576656e744c697374656e657228276368616e6765272c66756e6374696f6e2865290a7b612e7365744d65737361676528652e76616c7565290a612e73686f7728293b7d290a7661722074657874496e7374616e63653d546974616e69756d2e55492e637265617465546578744669656c64287b76616c75653a274e6f6c616e272c77696474683a35307d293b74657874496e7374616e63652e6164644576656e744c697374656e657228276368616e6765272c66756e6374696f6e2865290a7b612e7365744d65737361676528652e76616c7565290a612e73686f7728293b7d290a76617220696e707574446174613d5b7b7469746c653a27496e7075742031272c696e7075743a737769746368496e7374616e63657d2c7b7469746c653a27536f756e64272c696e7075743a736c69646572496e7374616e63657d2c7b7469746c653a274e616d65272c696e7075743a74657874496e7374616e63657d2c7b7469746c653a27496e7075742032272c76616c75653a27666f6f272c6861734368696c643a747275657d2c7b7469746c653a27496e7075742033277d5d3b76617220696e70757453656374696f6e3d546974616e69756d2e55492e6950686f6e652e63726561746547726f7570656453656374696f6e287b6865616465723a27496e7075742047726f7570272c747970653a27696e707574272c646174613a696e707574446174617d293b696e70757453656374696f6e2e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a7b612e7365744d6573736167652827596f7520636c69636b656420696e64657820272b652e696e6465782b272073656374696f6e20726f7720272b652e726f772b272073656374696f6e20272b652e73656374696f6e293b612e73686f7728293b7d293b7661722067726f75706564566965773d546974616e69756d2e55492e6950686f6e652e63726561746547726f757065645669657728293b67726f75706564566965772e61646453656374696f6e286f7074696f6e53656374696f6e293b67726f75706564566965772e61646453656374696f6e28627574746f6e53656374696f6e293b67726f75706564566965772e61646453656374696f6e28696e70757453656374696f6e293b67726f75706564566965772e6f70656e287b616e696d617465643a747275657d293b7d3b66756e6374696f6e2068616e646c65416c65727428290a7b76617220613d546974616e69756d2e55492e637265617465416c6572744469616c6f67287b6d6573736167653a2748656c6c6f20576f726c64272c7469746c653a27416c65727421272c627574746f6e4e616d65733a5b274f4b272c2743616e63656c275d7d293b612e73686f7728293b612e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a7b622e7365744d6573736167652827596f7520636c69636b656420272b652e696e646578293b622e73686f7728293b7d290a76617220623d546974616e69756d2e55492e637265617465416c6572744469616c6f67287b627574746f6e4e616d65733a5b274f4b272c2743616e63656c275d7d293b7d3b66756e6374696f6e2068616e646c65436f6d706f736974655669657728290a7b7661722077696e3d546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27636f6d706f736974652e68746d6c277d293b77696e2e6f70656e287b616e696d617465643a747275657d297d3b7d3b&quot;);
@@ -341,8 +587,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/iphone_ui.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/iphone_ui.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/iphone_ui.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/iphone_ui.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedIphone_ui;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a093c7469746c653e6950686f6e652055493c2f7469746c653e0a093c7363726970743e0a092f2f206461746120666f72207461626c65766965770a097661722064617461203d205b0a09097b7469746c653a275848522052657175657374272c206861734368696c643a747275657d2c0a09097b7469746c653a274c6f6767696e67277d2c0a09097b7469746c653a274170706c69636174696f6e2044617461272c6861734368696c643a747275657d2c0a09097b7469746c653a2750726f70657274696573272c6861734368696c643a747275657d2c0a09097b7469746c653a274461746162617365272c206861734368696c643a747275657d2c0a09097b7469746c653a27506c6174666f726d2044617461272c206861734368696c643a747275657d2c0a09097b7469746c653a2746696c6573797374656d272c206861734368696c643a747275657d0a09090a095d3b0a090a092f2f207461626c6576696577206f626a6563740a09766172207461626c6556696577203d20546974616e69756d2e55492e6372656174655461626c6556696577287b646174613a646174612c7469746c653a276950686f6e65205549272c69735072696d6172793a747275657d2c2066756e6374696f6e286576656e744f626a65637429200a097b0a09092f2f2068616e646c65207461626c657669657720636c69636b206576656e74730a090976617220696478203d206576656e744f626a6563742e696e6465783b0a090973776974636828696478290a09097b0a09097d0a097d293b0a097461626c65566965772e6f70656e287b616e696d617465643a66616c73657d293b0a093c2f7363726970743e0a3c2f686561643e0a3c626f64793e0a090a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -350,8 +601,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/navbar_color.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/navbar_color.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/navbar_color.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/navbar_color.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedNavbar_color;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22426c756520426172222069643d22627574746f6e22207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2252656420426172222069643d22627574746f6e5f3122207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224f72616e676520426172222069643d22627574746f6e5f3222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2244656661756c74205374796c65222069643d22627574746f6e5f3322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a090a093c7363726970743e0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e27292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574426172436f6c6f7228272333333636393927293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574426172436f6c6f7228272346463030303027293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574426172436f6c6f7228272346463939303027293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574426172436f6c6f72286e756c6c293b0a097d3b0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -359,26 +615,41 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/navbar_hide.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/navbar_hide.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/navbar_hide.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/navbar_hide.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedNavbar_hide;
 	{
-		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d73697a653a31327078223e0a090a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2273686f77206e6176626172222069643d22627574746f6e22207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2268696465206e6176626172222069643d22627574746f6e5f3222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a090a090a093c7363726970743e0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e27292e6f6e636c69636b203d2066756e6374696f6e2865290a097b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e73686f774e617642617228293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3227292e6f6e636c69636b203d2066756e6374696f6e2865290a097b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e686964654e617642617228293b0a097d3b0a090a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
+		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d73697a653a31327078223e0a090a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2273686f77206e6176626172222069643d22627574746f6e22207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2268696465206e6176626172222069643d22627574746f6e5f3222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22636c6f73652077696e646f77222069643d22627574746f6e5f3322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a090a090a093c7363726970743e0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e27292e6f6e636c69636b203d2066756e6374696f6e2865290a097b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e73686f774e617642617228293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3227292e6f6e636c69636b203d2066756e6374696f6e2865290a097b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e686964654e617642617228293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3327292e6f6e636c69636b203d2066756e6374696f6e2865290a097b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e636c6f736528293b0a097d3b0a090a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
 	   	if ([d length] == 0) return nil;
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/navbar_left.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/navbar_left.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/navbar_left.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/navbar_left.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedNavbar_left;
 	{
-		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22636c6f73652077696e646f77222069643d22636c6f736522207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e222069643d22627574746f6e22207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e2028444f4e4520626f7264657229222069643d22627574746f6e5f3222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22414354494f4e2073797374656d20627574746f6e222069643d22627574746f6e5f3322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2243414d4552412073797374656d20627574746f6e222069643d22627574746f6e5f3422207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22434f4d504f53452073797374656d20627574746f6e222069643d22627574746f6e5f3522207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22424f4f4b4d41524b532073797374656d20627574746f6e222069643d22627574746f6e5f3622207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d225345415243482073797374656d20627574746f6e222069643d22627574746f6e5f3722207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224144442073797374656d20627574746f6e222069643d22627574746f6e5f3822207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224f5247414e495a452073797374656d20627574746f6e222069643d22627574746f6e5f3922207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d225245504c592073797374656d20627574746f6e222069643d22627574746f6e5f313022207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2253544f502073797374656d20627574746f6e222069643d22627574746f6e5f313122207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22524546524553482073797374656d20627574746f6e222069643d22627574746f6e5f313222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22504c41592073797374656d20627574746f6e222069643d22627574746f6e5f313322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224641535420464f52574152442073797374656d20627574746f6e222069643d22627574746f6e5f313422207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2250415553452073797374656d20627574746f6e222069643d22627574746f6e5f313522207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22524557494e442073797374656d20627574746f6e222069643d22627574746f6e5f313622207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22454449542073797374656d20627574746f6e222069643d22627574746f6e5f313722207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2243414e43454c2073797374656d20627574746f6e222069643d22627574746f6e5f313822207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22534156452073797374656d20627574746f6e222069643d22627574746f6e5f313922207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22444f4e452073797374656d20627574746f6e222069643d22627574746f6e5f323022207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22494e464f5f4441524b2073797374656d20627574746f6e222069643d22627574746f6e5f323122207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22494e464f5f4c494748542073797374656d20627574746f6e222069643d22627574746f6e5f323222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a090a093c7363726970743e0a0976617220613d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a09612e7365745469746c6528274e6176626172205269676874205465737427293b0a0a09646f63756d656e742e676574456c656d656e74427949642827636c6f736527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e636c6f736528293b0a097d3b0a090a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e27292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909097469746c653a2754657874270a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909097469746c653a2754657874272c0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e444f4e450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e414354494f4e0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520414354494f4e20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3427292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e43414d4552410a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652043414d45524120627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e434f4d504f53450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520434f4d504f534520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3627292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e424f4f4b4d41524b530a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520424f4f4b4d41524b5320627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3727292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e5345415243480a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652053454152434820627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3827292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e4144440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652041444420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3927292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e4f5247414e495a450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865204f5247414e495a4520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313027292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e5245504c590a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205245504c5920627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e53544f500a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652053544f5020627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e524546524553480a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205245465245534820627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e504c41590a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520504c415920627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313427292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464153545f464f52574152440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520464153545f464f525741524420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e50415553450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520504155534520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313627292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e524557494e440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520524557494e4420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a090a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313727292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e454449540a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865204544495420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313827292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e43414e43454c0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652043414e43454c20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313927292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e534156450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205341564520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323027292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e444f4e450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520444f4e4520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e494e464f5f4441524b0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520494e464f204441524b20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e494e464f5f4c494748540a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520494e464f204c4947485420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
+		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22636c6f73652077696e646f77222069643d22636c6f736522207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e222069643d22627574746f6e22207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e2028444f4e4520626f7264657229222069643d22627574746f6e5f3222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22414354494f4e2073797374656d20627574746f6e222069643d22627574746f6e5f3322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2243414d4552412073797374656d20627574746f6e222069643d22627574746f6e5f3422207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22434f4d504f53452073797374656d20627574746f6e222069643d22627574746f6e5f3522207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22424f4f4b4d41524b532073797374656d20627574746f6e222069643d22627574746f6e5f3622207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d225345415243482073797374656d20627574746f6e222069643d22627574746f6e5f3722207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224144442073797374656d20627574746f6e222069643d22627574746f6e5f3822207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224f5247414e495a452073797374656d20627574746f6e222069643d22627574746f6e5f3922207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d225245504c592073797374656d20627574746f6e222069643d22627574746f6e5f313022207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2253544f502073797374656d20627574746f6e222069643d22627574746f6e5f313122207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22524546524553482073797374656d20627574746f6e222069643d22627574746f6e5f313222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22504c41592073797374656d20627574746f6e222069643d22627574746f6e5f313322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224641535420464f52574152442073797374656d20627574746f6e222069643d22627574746f6e5f313422207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2250415553452073797374656d20627574746f6e222069643d22627574746f6e5f313522207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22524557494e442073797374656d20627574746f6e222069643d22627574746f6e5f313622207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22454449542073797374656d20627574746f6e222069643d22627574746f6e5f313722207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2243414e43454c2073797374656d20627574746f6e222069643d22627574746f6e5f313822207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22534156452073797374656d20627574746f6e222069643d22627574746f6e5f313922207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22444f4e452073797374656d20627574746f6e222069643d22627574746f6e5f323022207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22494e464f5f4441524b2073797374656d20627574746f6e222069643d22627574746f6e5f323122207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22494e464f5f4c494748542073797374656d20627574746f6e222069643d22627574746f6e5f323222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a090a093c7363726970743e0a0976617220613d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a09612e7365745469746c6528274e6176626172204c656674205465737427293b0a0a09646f63756d656e742e676574456c656d656e74427949642827636c6f736527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e636c6f736528293b0a097d3b0a090a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e27292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090909696d6167653a27636861742e706e67270a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909097469746c653a2754657874272c0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e444f4e450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e414354494f4e0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520414354494f4e20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3427292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e43414d4552410a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652043414d45524120627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e434f4d504f53450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520434f4d504f534520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3627292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e424f4f4b4d41524b530a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520424f4f4b4d41524b5320627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3727292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e5345415243480a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652053454152434820627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3827292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e4144440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652041444420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3927292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e4f5247414e495a450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865204f5247414e495a4520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313027292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e5245504c590a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205245504c5920627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e53544f500a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652053544f5020627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e524546524553480a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205245465245534820627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e504c41590a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520504c415920627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313427292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464153545f464f52574152440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520464153545f464f525741524420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e50415553450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520504155534520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313627292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e524557494e440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520524557494e4420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a090a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313727292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e454449540a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865204544495420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313827292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e43414e43454c0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652043414e43454c20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313927292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e534156450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205341564520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323027292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e444f4e450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520444f4e4520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e494e464f5f4441524b0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520494e464f204441524b20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e494e464f5f4c494748540a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520494e464f204c4947485420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365744c6566744e6176427574746f6e2862293b0a097d3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
 	   	if ([d length] == 0) return nil;
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/navbar_right.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/navbar_right.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/navbar_right.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/navbar_right.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedNavbar_right;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e222069643d22627574746f6e22207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e2028444f4e4520626f7264657229222069643d22627574746f6e5f3222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22414354494f4e2073797374656d20627574746f6e222069643d22627574746f6e5f3322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2243414d4552412073797374656d20627574746f6e222069643d22627574746f6e5f3422207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22434f4d504f53452073797374656d20627574746f6e222069643d22627574746f6e5f3522207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22424f4f4b4d41524b532073797374656d20627574746f6e222069643d22627574746f6e5f3622207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d225345415243482073797374656d20627574746f6e222069643d22627574746f6e5f3722207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224144442073797374656d20627574746f6e222069643d22627574746f6e5f3822207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224f5247414e495a452073797374656d20627574746f6e222069643d22627574746f6e5f3922207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d225245504c592073797374656d20627574746f6e222069643d22627574746f6e5f313022207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2253544f502073797374656d20627574746f6e222069643d22627574746f6e5f313122207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22524546524553482073797374656d20627574746f6e222069643d22627574746f6e5f313222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22504c41592073797374656d20627574746f6e222069643d22627574746f6e5f313322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224641535420464f52574152442073797374656d20627574746f6e222069643d22627574746f6e5f313422207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2250415553452073797374656d20627574746f6e222069643d22627574746f6e5f313522207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22524557494e442073797374656d20627574746f6e222069643d22627574746f6e5f313622207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22454449542073797374656d20627574746f6e222069643d22627574746f6e5f313722207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2243414e43454c2073797374656d20627574746f6e222069643d22627574746f6e5f313822207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22534156452073797374656d20627574746f6e222069643d22627574746f6e5f313922207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22444f4e452073797374656d20627574746f6e222069643d22627574746f6e5f323022207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22494e464f5f4441524b2073797374656d20627574746f6e222069643d22627574746f6e5f323122207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22494e464f5f4c494748542073797374656d20627574746f6e222069643d22627574746f6e5f323222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a090a093c7363726970743e0a0976617220613d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a09612e7365745469746c6528274e6176626172204c656674205465737427293b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e27292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909097469746c653a2754657874270a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909097469746c653a2754657874272c0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e444f4e450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e414354494f4e0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520414354494f4e20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3427292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e43414d4552410a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652043414d45524120627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e434f4d504f53450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520434f4d504f534520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3627292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e424f4f4b4d41524b530a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520424f4f4b4d41524b5320627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3727292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e5345415243480a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652053454152434820627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3827292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e4144440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652041444420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3927292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e4f5247414e495a450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865204f5247414e495a4520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313027292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e5245504c590a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205245504c5920627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e53544f500a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652053544f5020627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e524546524553480a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205245465245534820627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e504c41590a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520504c415920627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313427292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464153545f464f52574152440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520464153545f464f525741524420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e50415553450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520504155534520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313627292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e524557494e440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520524557494e4420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a090a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313727292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e454449540a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865204544495420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313827292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e43414e43454c0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652043414e43454c20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313927292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e534156450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205341564520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323027292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e444f4e450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520444f4e4520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e494e464f5f4441524b0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520494e464f204441524b20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e494e464f5f4c494748540a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520494e464f204c4947485420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e73657452696768744e6176427574746f6e2862293b0a097d3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -386,8 +657,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/navbar_title.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/navbar_title.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/navbar_title.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/navbar_title.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedNavbar_title;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b223e0a090a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22736574207469746c65222069643d22627574746f6e5f7469746c6522207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e090a09093c696e70757420747970653d22627574746f6e222076616c75653d22736574207469746c6520696d616765222069643d22627574746f6e5f696d61676522207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22736574207469746c6520636f6e74726f6c2028746578746669656c6429222069643d22627574746f6e5f636f6e74726f6c22207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22736574207469746c6520636f6e74726f6c2028736c6964657229222069643d22627574746f6e5f636f6e74726f6c5f3222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22736574207469746c6520636f6e74726f6c2028627574746f6e62617229222069643d22627574746f6e5f636f6e74726f6c5f3322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22736574207469746c6520636f6e74726f6c202874616262656462617229222069643d22627574746f6e5f636f6e74726f6c5f3422207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22736574207469746c6520636f6e74726f6c202873776974636829222069643d22627574746f6e5f636f6e74726f6c5f3522207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a090a093c7363726970743e0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f7469746c6527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365745469746c65496d616765286e756c6c293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365745469746c65436f6e74726f6c286e756c6c293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365745469746c6528275469746c65204368616e6765642127293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f696d61676527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365745469746c65436f6e74726f6c286e756c6c293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365745469746c65496d6167652827636861742e706e6727293b0a09090a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f636f6e74726f6c27292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a090976617220746631203d20546974616e69756d2e55492e637265617465546578744669656c64287b0a0909096b6579626f617264547970653a546974616e69756d2e55492e4b4559424f4152445f41534349492c0a09090968696e74546578743a27656e74657220736f6d652074657874272c0a09090977696474683a3230302c0a090909626f726465725374796c653a546974616e69756d2e55492e494e5055545f424f524445525354594c455f524f554e4445442c0a090909636c656172427574746f6e4d6f64653a546974616e69756d2e55492e494e5055545f425554544f4e4d4f44455f414c574159532c0a09097d293b0a09090a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365745469746c65436f6e74726f6c28746631293b0a09090a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f636f6e74726f6c5f3227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a090976617220696e7374203d20546974616e69756d2e55492e637265617465536c69646572287b77696474683a3130302c6d696e3a302c6d61783a31302c76616c75653a357d293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365745469746c65436f6e74726f6c28696e7374293b0a09090a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f636f6e74726f6c5f3327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a090976617220696e7374203d20546974616e69756d2e55492e637265617465427574746f6e426172287b6c6162656c733a5b27427574746f6e31272c2027427574746f6e32275d2c636f6c6f723a2723333336363939277d293b0a0909696e73742e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a09097b0a0909097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a090909612e7365745469746c6528274e6176626172205465737427293b0a090909612e7365744d6573736167652827596f7520636c69636b656420627574746f6e20696e646578203d2027202b20652e696e646578293b0a090909612e73686f7728293b0a09097d290a09090a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365745469746c65436f6e74726f6c28696e7374293b0a09090a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f636f6e74726f6c5f3427292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a090976617220696e7374203d20546974616e69756d2e55492e637265617465546162626564426172287b6c6162656c733a5b27427574746f6e31272c2027427574746f6e32275d2c696e6465783a307d293b0a0909696e73742e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a09097b0a0909097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a090909612e7365745469746c6528274e6176626172205465737427293b0a090909612e7365744d6573736167652827596f7520636c69636b656420627574746f6e20696e6465782027202b20652e696e646578293b0a090909612e73686f7728293b0a09097d290a09090a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365745469746c65436f6e74726f6c28696e7374293b0a09090a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f636f6e74726f6c5f3527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a090976617220696e7374203d20546974616e69756d2e55492e637265617465537769746368287b76616c75653a66616c73657d293b0a0909696e73742e6164644576656e744c697374656e657228276368616e6765272c66756e6374696f6e2865290a09097b0a0909097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a090909612e7365745469746c6528274e6176626172205465737427293b0a090909612e7365744d65737361676528276e65772076616c75652069732027202b20652e76616c7565293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365745469746c65436f6e74726f6c28696e7374293b0a09090a097d3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -395,8 +671,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/orientation.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/orientation.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/orientation.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/orientation.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedOrientation;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a3c7363726970743e0a546974616e69756d2e476573747572652e6164644576656e744c697374656e657228276f7269656e746174696f6e6368616e6765272c66756e6374696f6e2865290a7b0a09766172206f203d2027273b0a0969662028546974616e69756d2e476573747572652e69734c616e64736361706528652e746f29290a097b090a09096f203d20274920616d206c616e647363617065273b0a097d0a09656c73652069662028546974616e69756d2e476573747572652e6973506f72747261697428652e746f29290a097b0a09096f203d20274920616d20706f727472616974273b0a097d0a2009646f63756d656e742e676574456c656d656e744279496428276f7269656e746174696f6e27292e696e6e657248544d4c203d206f3b0a7d293b0a0a3c2f7363726970743e0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a093c6469762069643d226f7269656e746174696f6e223e4920616d20706f7274726169743c2f6469763e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -404,26 +685,44 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/phone.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/phone.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/phone.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/phone.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedPhone;
 	{
-		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a093c7469746c653e50686f6e65204150493c2f7469746c653e0a090a093c7363726970743e0a09546974616e69756d2e55492e6164644576656e744c697374656e657228277461626368616e6765272c66756e6374696f6e2865290a097b0a0909546974616e69756d2e4150492e696e666f28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e205441424348414e474520696e6465782027202b20652e696e64657820202b2027206e616d652027202b20652e6e616d65202b20272070726576496e6465782027202b20652e70726576496e646578202b202720707265764e616d652027202b20652e707265764e616d65293b0a097d293b0a090a092f2f206461746120666f72207461626c65766965770a097661722064617461203d205b0a09097b7469746c653a27506c6179204d6f766965277d2c0a09097b7469746c653a2743616d657261277d2c0a09097b7469746c653a2756696272617465277d2c0a09097b7469746c653a274f7269656e746174696f6e272c6861734368696c643a747275657d2c0a09097b7469746c653a2750686f746f2047616c6c657279277d2c0a09097b7469746c653a2747656f204c6f636174696f6e272c206861734368696c643a747275657d2c0a09097b7469746c653a27416363656c65726f6d65746572272c206861734368696c643a747275657d2c0a09097b7469746c653a27536f756e64272c6861734368696c643a747275657d2c0a09097b7469746c653a275368616b65272c6861734368696c643a747275657d2c0a09097b7469746c653a27456d61696c20436c69656e74272c6861734368696c643a747275657d2c0a09097b7469746c653a275361766520746f2047616c6c657279277d2c0a09090a095d3b0a090a092f2f207461626c6576696577206f626a6563740a09766172207461626c6556696577203d20546974616e69756d2e55492e6372656174655461626c6556696577287b0a0909646174613a646174612c0a09097469746c653a2750686f6e6520415049272c0a097d2c2066756e6374696f6e286576656e744f626a65637429200a097b0a09092f2f2068616e646c65207461626c657669657720636c69636b206576656e74730a090976617220696478203d206576656e744f626a6563742e696e6465783b0a090973776974636828696478290a09097b0a0909096361736520303a0a0909097b0a09090909706c61794d6f76696528293b0a09090909627265616b3b0a0909097d0a0909096361736520313a0a0909097b0a0909090973686f7743616d65726128293b0a09090909627265616b3b0a0909097d0a0909096361736520323a0a0909097b0a09090909546974616e69756d2e4d656469612e7669627261746528293b0a09090909627265616b3b0a0909097d0a0909096361736520333a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a276f7269656e746174696f6e2e68746d6c272c7469746c653a274f7269656e746174696f6e204368616e6765272c626172436f6c6f723a2723303030277d293b0a0909090977696e2e6f7269656e746174696f6e203d27656974686572273b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520343a0a0909097b0a090909096f70656e50686f746f47616c6c65727928293b0a09090909627265616b3b0a0909097d0a0909096361736520353a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2767656f2e68746d6c272c7469746c653a2747656f6c6f636174696f6e272c20626172436f6c6f723a2723333336363939277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520363a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27616363656c65726f6d657465722e68746d6c272c7469746c653a27416363656c65726f6d65746572272c20626172436f6c6f723a2723333336363939277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520373a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27736f756e642e68746d6c272c7469746c653a27536f756e64272c20626172436f6c6f723a2723333336363939277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520383a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277368616b652e68746d6c272c7469746c653a275368616b65272c20626172436f6c6f723a2723333336363939277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520393a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27656d61696c2e68746d6c272c7469746c653a27456d61696c272c20626172436f6c6f723a2723333336363939277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a090909636173652031303a0a0909097b0a090909097361766550686f746f28293b0a09090909627265616b3b0a0909097d0a0a09097d0a0a097d293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287461626c6556696577293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577293b0a0a092f2f2046554e4354494f4e530a090a092f2f0a092f2f20706c6179206d6f7669650a092f2f0a0966756e6374696f6e20706c61794d6f76696528290a097b0a0909766172206163746976654d6f766965203d20546974616e69756d2e4d656469612e637265617465566964656f506c61796572287b0a09090909636f6e74656e7455524c3a276d6f7669652e6d7034272c0a090909096261636b67726f756e64436f6c6f723a2723313131272c0a090909096d6f766965436f6e74726f6c4d6f64653a546974616e69756d2e4d656469612e564944454f5f434f4e54524f4c5f44454641554c542c0a090909097363616c696e674d6f64653a546974616e69756d2e4d656469612e564944454f5f5343414c494e475f4d4f44455f46494c4c0a0a09097d293b0a0a09096163746976654d6f7669652e6164644576656e744c697374656e65722827636f6d706c657465272c66756e6374696f6e28290a09097b0a0909097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a090909612e7365744d6573736167652827566964656f20436f6d706c6574656427293b0a090909612e73686f7728293b0a09097d293b0a09090a09092f2f20706c6179206d6f7669650a09096163746976654d6f7669652e706c617928293b090a09090a097d3b0a0a092f2f0a092f2f2073686f772063616d6572610a092f2f200a0966756e6374696f6e2073686f7743616d65726128290a097b0a0909546974616e69756d2e4d656469612e73686f7743616d657261287b0a0a090909737563636573733a66756e6374696f6e28696d6167652c64657461696c73290a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27696d6167652e68746d6c277d293b0a09090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282770686f746f272c696d6167652e75726c293b0a090909096966202864657461696c73290a090909097b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282778272c64657461696c732e63726f70526563742e78293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282779272c64657461696c732e63726f70526563742e79293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e672827686569676874272c64657461696c732e63726f70526563742e686569676874293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e6728277769647468272c64657461696c732e63726f70526563742e7769647468293b0a090909097d0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a0a0909097d2c0a09090963616e63656c3a66756e6374696f6e28290a0909097b0a0a0909097d2c0a0909096572726f723a66756e6374696f6e286572726f72290a0909097b0a090909092f2f2063726561746520616c6572740a090909097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0a090909092f2f20736574207469746c650a09090909612e7365745469746c65282743616d657261204572726f7227293b0a0a090909092f2f20736574206d6573736167650a09090909696620286572726f722e636f6465203d20546974616e69756d2e4d656469612e4e4f5f43414d455241290a090909097b0a0909090909612e7365744d657373616765282744657669636520646f6573206e6f7420686176652063616d65726127293b0a090909097d0a09090909656c73650a090909097b0a0909090909612e7365744d6573736167652827556e6578706563746564206572726f723a2027202b206572726f722e636f6465293b0a090909097d0a0a090909092f2f2073657420627574746f6e206e616d65730a09090909612e736574427574746f6e4e616d6573285b274f4b275d293b0a0a090909092f2f2073686f7720616c6572740a09090909612e73686f7728293b0a0909097d2c0a090909616c6c6f77496d61676545646974696e673a747275650a09097d293b0a097d3b0a090a090a092f2f0a092f2f206f70656e2070686f746f2067616c6c6572790a092f2f0a0966756e6374696f6e206f70656e50686f746f47616c6c65727928290a097b0a0909546974616e69756d2e4d656469612e6f70656e50686f746f47616c6c657279287b0a090909737563636573733a2066756e6374696f6e28696d6167652c64657461696c73290a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27696d6167652e68746d6c272c7469746c653a27496d616765277d293b0a09090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282770686f746f272c696d6167652e75726c293b0a090909096966202864657461696c7329200a090909097b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282778272c64657461696c732e63726f70526563742e78293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282779272c64657461696c732e63726f70526563742e79293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e672827686569676874272c64657461696c732e63726f70526563742e686569676874293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e6728277769647468272c64657461696c732e63726f70526563742e7769647468293b0a090909097d200a09090909656c7365200a090909097b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282778272c30293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282779272c30293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e672827686569676874272c696d6167652e686569676874293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e6728277769647468272c696d6167652e7769647468293b0a090909097d0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a0909097d2c0a0909096572726f723a2066756e6374696f6e286572726f72290a0909097b0a09090909546974616e69756d2e55492e637265617465416c6572744469616c6f6728207b0a09090909097469746c653a20224572726f722066726f6d2047616c6c657279222c0a09090909096d6573736167653a206572726f722e6d6573736167652c0a0909090909627574746f6e4e616d65733a204f4b0a090909097d20292e73686f7728293b0a0909097d2c0a09090963616e63656c3a2066756e6374696f6e28290a0909097b0a0a0909097d2c0a090909616c6c6f77496d61676545646974696e673a747275650a09097d293b0a09090a097d3b0a0a0a092f2f0a092f2f2073686f772063616d6572610a092f2f200a0966756e6374696f6e207361766550686f746f28290a097b0a0909546974616e69756d2e4d656469612e73686f7743616d657261287b0a0a090909737563636573733a66756e6374696f6e28696d6167652c64657461696c73290a0909097b0a09090909546974616e69756d2e4d656469612e73617665546f50686f746f47616c6c65727928696d616765293b0a0909097d2c0a09090963616e63656c3a66756e6374696f6e28290a0909097b0a0a0909097d2c0a0909096572726f723a66756e6374696f6e286572726f72290a0909097b0a090909092f2f2063726561746520616c6572740a090909097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0a090909092f2f20736574207469746c650a09090909612e7365745469746c65282743616d657261204572726f7227293b0a0a090909092f2f20736574206d6573736167650a09090909696620286572726f722e636f6465203d20546974616e69756d2e4d656469612e4e4f5f43414d455241290a090909097b0a0909090909612e7365744d657373616765282744657669636520646f6573206e6f7420686176652063616d65726127293b0a090909097d0a09090909656c73650a090909097b0a0909090909612e7365744d6573736167652827556e6578706563746564206572726f723a2027202b206572726f722e636f6465293b0a090909097d0a0a090909092f2f2073657420627574746f6e206e616d65730a09090909612e736574427574746f6e4e616d6573285b274f4b275d293b0a0a090909092f2f2073686f7720616c6572740a09090909612e73686f7728293b0a0909097d2c0a090909616c6c6f77496d61676545646974696e673a747275650a09097d293b0a097d3b0a090a093c2f7363726970743e0a3c2f686561643e0a3c626f64793e0a0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
+		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a093c7469746c653e50686f6e65204150493c2f7469746c653e0a090a093c7363726970743e0a09546974616e69756d2e55492e6164644576656e744c697374656e657228277461626368616e6765272c66756e6374696f6e2865290a097b0a0909546974616e69756d2e4150492e696e666f28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e205441424348414e474520696e6465782027202b20652e696e64657820202b2027206e616d652027202b20652e6e616d65202b20272070726576496e6465782027202b20652e70726576496e646578202b202720707265764e616d652027202b20652e707265764e616d65293b0a097d293b0a090a092f2f206461746120666f72207461626c65766965770a097661722064617461203d205b0a09097b7469746c653a27506c6179204d6f766965277d2c0a09097b7469746c653a2743616d657261277d2c0a09097b7469746c653a2756696272617465277d2c0a09097b7469746c653a274f7269656e746174696f6e272c6861734368696c643a747275657d2c0a09097b7469746c653a2750686f746f2047616c6c657279277d2c0a09097b7469746c653a2747656f204c6f636174696f6e272c206861734368696c643a747275657d2c0a09097b7469746c653a27416363656c65726f6d65746572272c206861734368696c643a747275657d2c0a09097b7469746c653a27536f756e64272c6861734368696c643a747275657d2c0a09097b7469746c653a275368616b65272c6861734368696c643a747275657d2c0a09097b7469746c653a27456d61696c20436c69656e74272c6861734368696c643a747275657d2c0a09097b7469746c653a275361766520746f2047616c6c657279277d2c0a09090a095d3b0a090a092f2f207461626c6576696577206f626a6563740a09766172207461626c6556696577203d20546974616e69756d2e55492e6372656174655461626c6556696577287b0a0909646174613a646174612c0a0909666f6e7453697a653a33302c0a09097469746c653a2750686f6e6520415049272c0a097d2c2066756e6374696f6e286576656e744f626a65637429200a097b0a09092f2f2068616e646c65207461626c657669657720636c69636b206576656e74730a090976617220696478203d206576656e744f626a6563742e696e6465783b0a090973776974636828696478290a09097b0a0909096361736520303a0a0909097b0a09090909706c61794d6f76696528293b0a09090909627265616b3b0a0909097d0a0909096361736520313a0a0909097b0a0909090973686f7743616d65726128293b0a09090909627265616b3b0a0909097d0a0909096361736520323a0a0909097b0a09090909546974616e69756d2e4d656469612e7669627261746528293b0a09090909627265616b3b0a0909097d0a0909096361736520333a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a276f7269656e746174696f6e2e68746d6c272c7469746c653a274f7269656e746174696f6e204368616e6765272c626172436f6c6f723a2723303030277d293b0a0909090977696e2e6f7269656e746174696f6e203d27656974686572273b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520343a0a0909097b0a090909096f70656e50686f746f47616c6c65727928293b0a09090909627265616b3b0a0909097d0a0909096361736520353a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2767656f2e68746d6c272c7469746c653a2747656f6c6f636174696f6e272c20626172436f6c6f723a2723333336363939277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520363a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27616363656c65726f6d657465722e68746d6c272c7469746c653a27416363656c65726f6d65746572272c20626172436f6c6f723a2723333336363939277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520373a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27736f756e642e68746d6c272c7469746c653a27536f756e64272c20626172436f6c6f723a2723333336363939277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520383a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277368616b652e68746d6c272c7469746c653a275368616b65272c20626172436f6c6f723a2723333336363939277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520393a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27656d61696c2e68746d6c272c7469746c653a27456d61696c272c20626172436f6c6f723a2723333336363939277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a090909636173652031303a0a0909097b0a090909097361766550686f746f28293b0a09090909627265616b3b0a0909097d0a0a09097d0a0a097d293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287461626c6556696577293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577293b0a0a092f2f2046554e4354494f4e530a090a092f2f0a092f2f20706c6179206d6f7669650a092f2f0a0966756e6374696f6e20706c61794d6f76696528290a097b0a0909766172206163746976654d6f766965203d20546974616e69756d2e4d656469612e637265617465566964656f506c61796572287b0a09090909636f6e74656e7455524c3a276d6f7669652e6d7034272c0a090909096261636b67726f756e64436f6c6f723a2723313131272c0a090909096d6f766965436f6e74726f6c4d6f64653a546974616e69756d2e4d656469612e564944454f5f434f4e54524f4c5f44454641554c542c0a090909097363616c696e674d6f64653a546974616e69756d2e4d656469612e564944454f5f5343414c494e475f4d4f44455f46494c4c0a0a09097d293b0a0a09096163746976654d6f7669652e6164644576656e744c697374656e65722827636f6d706c657465272c66756e6374696f6e28290a09097b0a0909097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a090909612e7365744d6573736167652827566964656f20436f6d706c6574656427293b0a090909612e73686f7728293b0a09097d293b0a09090a09092f2f20706c6179206d6f7669650a09096163746976654d6f7669652e706c617928293b090a09090a097d3b0a0a092f2f0a092f2f2073686f772063616d6572610a092f2f200a0966756e6374696f6e2073686f7743616d65726128290a097b0a0909546974616e69756d2e4d656469612e73686f7743616d657261287b0a0a090909737563636573733a66756e6374696f6e28696d6167652c64657461696c73290a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27696d6167652e68746d6c277d293b0a09090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282770686f746f272c696d6167652e75726c293b0a090909096966202864657461696c73290a090909097b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282778272c64657461696c732e63726f70526563742e78293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282779272c64657461696c732e63726f70526563742e79293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e672827686569676874272c64657461696c732e63726f70526563742e686569676874293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e6728277769647468272c64657461696c732e63726f70526563742e7769647468293b0a090909097d0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a0a0909097d2c0a09090963616e63656c3a66756e6374696f6e28290a0909097b0a0a0909097d2c0a0909096572726f723a66756e6374696f6e286572726f72290a0909097b0a090909092f2f2063726561746520616c6572740a090909097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0a090909092f2f20736574207469746c650a09090909612e7365745469746c65282743616d657261204572726f7227293b0a0a090909092f2f20736574206d6573736167650a09090909696620286572726f722e636f6465203d20546974616e69756d2e4d656469612e4e4f5f43414d455241290a090909097b0a0909090909612e7365744d657373616765282744657669636520646f6573206e6f7420686176652063616d65726127293b0a090909097d0a09090909656c73650a090909097b0a0909090909612e7365744d6573736167652827556e6578706563746564206572726f723a2027202b206572726f722e636f6465293b0a090909097d0a0a090909092f2f2073657420627574746f6e206e616d65730a09090909612e736574427574746f6e4e616d6573285b274f4b275d293b0a0a090909092f2f2073686f7720616c6572740a09090909612e73686f7728293b0a0909097d2c0a090909616c6c6f77496d61676545646974696e673a747275650a09097d293b0a097d3b0a090a090a092f2f0a092f2f206f70656e2070686f746f2067616c6c6572790a092f2f0a0966756e6374696f6e206f70656e50686f746f47616c6c65727928290a097b0a0909546974616e69756d2e4d656469612e6f70656e50686f746f47616c6c657279287b0a090909737563636573733a2066756e6374696f6e28696d6167652c64657461696c73290a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27696d6167652e68746d6c272c7469746c653a27496d616765277d293b0a09090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282770686f746f272c696d6167652e75726c293b0a090909096966202864657461696c7329200a090909097b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282778272c64657461696c732e63726f70526563742e78293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282779272c64657461696c732e63726f70526563742e79293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e672827686569676874272c64657461696c732e63726f70526563742e686569676874293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e6728277769647468272c64657461696c732e63726f70526563742e7769647468293b0a090909097d200a09090909656c7365200a090909097b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282778272c30293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e67282779272c30293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e672827686569676874272c696d6167652e686569676874293b0a0909090909546974616e69756d2e4170702e50726f706572746965732e736574537472696e6728277769647468272c696d6167652e7769647468293b0a090909097d0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a0909097d2c0a0909096572726f723a2066756e6374696f6e286572726f72290a0909097b0a09090909546974616e69756d2e55492e637265617465416c6572744469616c6f6728207b0a09090909097469746c653a20224572726f722066726f6d2047616c6c657279222c0a09090909096d6573736167653a206572726f722e6d6573736167652c0a0909090909627574746f6e4e616d65733a204f4b0a090909097d20292e73686f7728293b0a0909097d2c0a09090963616e63656c3a2066756e6374696f6e28290a0909097b0a0a0909097d2c0a090909616c6c6f77496d61676545646974696e673a747275650a09097d293b0a09090a097d3b0a0a0a092f2f0a092f2f2073686f772063616d6572610a092f2f200a0966756e6374696f6e207361766550686f746f28290a097b0a0909546974616e69756d2e4d656469612e73686f7743616d657261287b0a0a090909737563636573733a66756e6374696f6e28696d6167652c64657461696c73290a0909097b0a09090909546974616e69756d2e4d656469612e73617665546f50686f746f47616c6c65727928696d616765293b0a0909097d2c0a09090963616e63656c3a66756e6374696f6e28290a0909097b0a0a0909097d2c0a0909096572726f723a66756e6374696f6e286572726f72290a0909097b0a090909092f2f2063726561746520616c6572740a090909097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0a090909092f2f20736574207469746c650a09090909612e7365745469746c65282743616d657261204572726f7227293b0a0a090909092f2f20736574206d6573736167650a09090909696620286572726f722e636f6465203d20546974616e69756d2e4d656469612e4e4f5f43414d455241290a090909097b0a0909090909612e7365744d657373616765282744657669636520646f6573206e6f7420686176652063616d65726127293b0a090909097d0a09090909656c73650a090909097b0a0909090909612e7365744d6573736167652827556e6578706563746564206572726f723a2027202b206572726f722e636f6465293b0a090909097d0a0a090909092f2f2073657420627574746f6e206e616d65730a09090909612e736574427574746f6e4e616d6573285b274f4b275d293b0a0a090909092f2f2073686f7720616c6572740a09090909612e73686f7728293b0a0909097d2c0a090909616c6c6f77496d61676545646974696e673a747275650a09097d293b0a097d3b0a090a093c2f7363726970743e0a3c2f686561643e0a3c626f64793e0a0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
 	   	if ([d length] == 0) return nil;
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/platform.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/platform.html
 	- (NSData*) pageNamedPlatform;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a093c7469746c653e506c6174666f726d204150493c2f7469746c653e0a090a093c7363726970743e0a09546974616e69756d2e55492e6164644576656e744c697374656e657228277461626368616e6765272c66756e6374696f6e2865290a097b0a0909546974616e69756d2e4150492e696e666f28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e205441424348414e474520696e6465782027202b20652e696e64657820202b2027206e616d652027202b20652e6e616d65202b20272070726576496e6465782027202b20652e70726576496e646578202b202720707265764e616d652027202b20652e707265764e616d65293b0a097d293b0a090a092f2f206461746120666f72207461626c65766965770a097661722064617461203d205b0a09097b7469746c653a275848522052657175657374272c206861734368696c643a747275657d2c0a09097b7469746c653a274c6f6767696e67277d2c0a09097b7469746c653a274170706c69636174696f6e2044617461272c6861734368696c643a747275657d2c0a09097b7469746c653a2750726f70657274696573272c6861734368696c643a747275657d2c0a09097b7469746c653a274461746162617365272c206861734368696c643a747275657d2c0a09097b7469746c653a27506c6174666f726d2044617461272c206861734368696c643a747275657d2c0a09097b7469746c653a2746696c6573797374656d272c206861734368696c643a747275657d2c0a09097b7469746c653a274f70656e2055524c20286874747029277d2c0a09097b7469746c653a274f70656e2055524c202874656c29277d2c0a09097b7469746c653a274f70656e2055524c2028736d7329277d0a09090a095d3b0a090a092f2f207461626c6576696577206f626a6563740a09766172207461626c6556696577203d20546974616e69756d2e55492e6372656174655461626c6556696577287b646174613a646174612c7469746c653a27506c6174666f726d20415049272c69735072696d6172793a747275657d2c2066756e6374696f6e286576656e744f626a65637429200a097b0a09092f2f2068616e646c65207461626c657669657720636c69636b206576656e74730a090976617220696478203d206576656e744f626a6563742e696e6465783b0a090973776974636828696478290a09097b0a0909096361736520303a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277868722e68746d6c272c7469746c653a275848522052657175657374277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520313a0a0909097b0a09090909546974616e69756d2e4150492e6c6f6728274552524f52272c273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e204552524f52204d45535341474527293b0a09090909546974616e69756d2e4150492e646562756728273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4445425547204d45535341474527293b0a09090909546974616e69756d2e4150492e6572726f7228273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4552524f52204d45535341474527293b0a09090909546974616e69756d2e4150492e7761726e28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e5741524e204d45535341474527293b0a09090909546974616e69756d2e4150492e696e666f28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e494e464f204d45535341474527293b0a09090909546974616e69756d2e4150492e747261636528273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e5452414345204d45535341474527293b0a09090909546974616e69756d2e4150492e6e6f7469636528273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4e4f54494345204d45535341474527293b0a09090909546974616e69756d2e4150492e637269746963616c28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e435249544943414c204d45535341474527293b0a09090909546974616e69756d2e4150492e666174616c28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e464154414c204d45535341474527293b0a09090909616c65727428273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e414c455254204c4f4727293b0a0a0909090966756e6374696f6e4c6f6767696e6728293b0a09090909627265616b3b0a0909097d0a0909096361736520323a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a276170706c69636174696f6e5f646174612e68746d6c272c7469746c653a274170706c69636174696f6e2044617461277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520333a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2770726f706572746965732e68746d6c272c7469746c653a2750726f70657274696573277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520343a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2764617461626173652e68746d6c272c7469746c653a2750726f70657274696573277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520353a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27706c6174666f726d5f646174612e68746d6c272c7469746c653a27506c6174666f726d2044617461277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520363a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2766696c6573797374656d2e68746d6c272c7469746c653a2746696c6573797374656d277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520373a0a0909097b0a09090909546974616e69756d2e506c6174666f726d2e6f70656e55524c2827687474703a2f2f6d6170732e676f6f676c652e636f6d2f6d6170733f713d637570657274696e6f27293b0a09090909627265616b3b0a0909097d0a0909096361736520383a0a0909097b0a09090909546974616e69756d2e506c6174666f726d2e6f70656e55524c282774656c3a3430343333333232323227293b0a09090909627265616b3b0a0909097d0a0909096361736520393a0a0909097b0a09090909546974616e69756d2e506c6174666f726d2e6f70656e55524c2827736d733a343034333333343434342f666f6f27293b0a09090909627265616b3b0a0909097d0a09090a09097d0a090a097d293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287461626c6556696577293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577293b0a090a0966756e6374696f6e2066756e6374696f6e4c6f6767696e6728290a097b0a0909546974616e69756d2e4150492e6c6f6728274552524f52272c273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e204552524f52204d4553534147452046524f4d2046554e4354494f4e27293b0a0909546974616e69756d2e4150492e646562756728273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4445425547204d4553534147452046524f4d2046554e4354494f4e27293b0a0909546974616e69756d2e4150492e6572726f7228273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4552524f52204d4553534147452046524f4d2046554e4354494f4e27293b0a0909546974616e69756d2e4150492e7761726e28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e5741524e204d4553534147452046524f4d2046554e4354494f4e27293b0a0909546974616e69756d2e4150492e696e666f28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e494e464f204d4553534147452046524f4d2046554e4354494f4e27293b0a0909546974616e69756d2e4150492e747261636528273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e5452414345204d4553534147452046524f4d2046554e4354494f4e27293b0a092f2f09546974616e69756d2e4150492e6e6f7469636528273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4e4f54494345204d4553534147452046524f4d2046554e4354494f4e27293b0a0909546974616e69756d2e4150492e637269746963616c28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e435249544943414c204d4553534147452046524f4d2046554e4354494f4e27293b0a0909546974616e69756d2e4150492e666174616c28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e464154414c204d4553534147452046524f4d2046554e4354494f4e27293b0a0909616c65727428273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e414c455254204c4f472046524f4d2046554e4354494f4e27293b0a097d0a093c2f7363726970743e0a3c2f686561643e0a3c626f64793e0a090a3c2f626f64793e0a3c2f68746d6c3e&quot;);
+=======
+	#pragma mark app://com.nolanwright.kitchensink/platform.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/platform.html
+	- (NSData*) pageNamedPlatform;
+	{
+		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a093c7469746c653e506c6174666f726d204150493c2f7469746c653e0a090a093c7363726970743e0a090a09546974616e69756d2e55492e6164644576656e744c697374656e657228277461626368616e6765272c66756e6374696f6e2865290a097b0a0909546974616e69756d2e4150492e696e666f28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e205441424348414e474520696e6465782027202b20652e696e64657820202b2027206e616d652027202b20652e6e616d65202b20272070726576496e6465782027202b20652e70726576496e646578202b202720707265764e616d652027202b20652e707265764e616d65293b0a097d293b0a090a092f2f206461746120666f72207461626c65766965770a097661722064617461203d205b0a09097b7469746c653a275848522052657175657374272c206861734368696c643a747275657d2c0a09097b7469746c653a274c6f6767696e67277d2c0a09097b7469746c653a274170706c69636174696f6e2044617461272c6861734368696c643a747275657d2c0a09097b7469746c653a2750726f70657274696573272c6861734368696c643a747275657d2c0a09097b7469746c653a274461746162617365272c206861734368696c643a747275657d2c0a09097b7469746c653a27506c6174666f726d2044617461272c206861734368696c643a747275657d2c0a09097b7469746c653a2746696c6573797374656d272c206861734368696c643a747275657d2c0a09097b7469746c653a274f70656e2055524c20286874747029277d2c0a09097b7469746c653a274f70656e2055524c202874656c29277d2c0a09097b7469746c653a274f70656e2055524c2028736d7329277d0a09090a095d3b0a090a092f2f207461626c6576696577206f626a6563740a09766172207461626c6556696577203d20546974616e69756d2e55492e6372656174655461626c6556696577287b646174613a646174612c7469746c653a27506c6174666f726d20415049272c69735072696d6172793a747275657d2c2066756e6374696f6e286576656e744f626a65637429200a097b0a09092f2f2068616e646c65207461626c657669657720636c69636b206576656e74730a090976617220696478203d206576656e744f626a6563742e696e6465783b0a090973776974636828696478290a09097b0a0909096361736520303a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277868722e68746d6c272c7469746c653a275848522052657175657374277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520313a0a0909097b0a09090909546974616e69756d2e4150492e6c6f6728274552524f52272c273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e204552524f52204d45535341474527293b0a09090909546974616e69756d2e4150492e646562756728273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4445425547204d45535341474527293b0a09090909546974616e69756d2e4150492e6572726f7228273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4552524f52204d45535341474527293b0a09090909546974616e69756d2e4150492e7761726e28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e5741524e204d45535341474527293b0a09090909546974616e69756d2e4150492e696e666f28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e494e464f204d45535341474527293b0a09090909546974616e69756d2e4150492e747261636528273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e5452414345204d45535341474527293b0a09090909546974616e69756d2e4150492e6e6f7469636528273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4e4f54494345204d45535341474527293b0a09090909546974616e69756d2e4150492e637269746963616c28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e435249544943414c204d45535341474527293b0a09090909546974616e69756d2e4150492e666174616c28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e464154414c204d45535341474527293b0a09090909616c65727428273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e414c455254204c4f4727293b0a0a0909090966756e6374696f6e4c6f6767696e6728293b0a09090909627265616b3b0a0909097d0a0909096361736520323a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a276170706c69636174696f6e5f646174612e68746d6c272c7469746c653a274170706c69636174696f6e2044617461277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520333a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2770726f706572746965732e68746d6c272c7469746c653a2750726f70657274696573277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520343a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2764617461626173652e68746d6c272c7469746c653a2750726f70657274696573277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520353a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27706c6174666f726d5f646174612e68746d6c272c7469746c653a27506c6174666f726d2044617461277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520363a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2766696c6573797374656d2e68746d6c272c7469746c653a2746696c6573797374656d277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520373a0a0909097b0a09090909546974616e69756d2e506c6174666f726d2e6f70656e55524c2827687474703a2f2f6d6170732e676f6f676c652e636f6d2f27293b0a09090909627265616b3b0a0909097d0a0909096361736520383a0a0909097b0a09090909546974616e69756d2e506c6174666f726d2e6f70656e55524c282774656c3a3430343333333232323227293b0a09090909627265616b3b0a0909097d0a0909096361736520393a0a0909097b0a09090909546974616e69756d2e506c6174666f726d2e6f70656e55524c2827736d733a343034333333343434342f666f6f27293b0a09090909627265616b3b0a0909097d0a09090a09097d0a090a097d293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287461626c6556696577293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577293b0a090a0966756e6374696f6e2066756e6374696f6e4c6f6767696e6728290a097b0a0909546974616e69756d2e4150492e6c6f6728274552524f52272c273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e204552524f52204d4553534147452046524f4d2046554e4354494f4e27293b0a0909546974616e69756d2e4150492e646562756728273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4445425547204d4553534147452046524f4d2046554e4354494f4e27293b0a0909546974616e69756d2e4150492e6572726f7228273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4552524f52204d4553534147452046524f4d2046554e4354494f4e27293b0a0909546974616e69756d2e4150492e7761726e28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e5741524e204d4553534147452046524f4d2046554e4354494f4e27293b0a0909546974616e69756d2e4150492e696e666f28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e494e464f204d4553534147452046524f4d2046554e4354494f4e27293b0a0909546974616e69756d2e4150492e747261636528273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e5452414345204d4553534147452046524f4d2046554e4354494f4e27293b0a092f2f09546974616e69756d2e4150492e6e6f7469636528273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4e4f54494345204d4553534147452046524f4d2046554e4354494f4e27293b0a0909546974616e69756d2e4150492e637269746963616c28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e435249544943414c204d4553534147452046524f4d2046554e4354494f4e27293b0a0909546974616e69756d2e4150492e666174616c28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e464154414c204d4553534147452046524f4d2046554e4354494f4e27293b0a0909616c65727428273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e414c455254204c4f472046524f4d2046554e4354494f4e27293b0a097d0a093c2f7363726970743e0a3c2f686561643e0a3c626f64793e0a090a3c2f626f64793e0a3c2f68746d6c3e&quot;);
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	   	if ([d length] == 0) return nil;
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/platform_data.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/platform_data.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/platform_data.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/platform_data.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedPlatform_data;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a093c6469762069643d226d657373616765223e3c2f6469763e0a090a093c7363726970743e0a097661722074797065203d2028546974616e69756d2e4e6574776f726b2e6e6574776f726b547970653d3d30293f274e6f6e65273a28546974616e69756d2e4e6574776f726b2e6e6574776f726b547970653d3d31293f2757694669273a0a090928546974616e69756d2e4e6574776f726b2e6e6574776f726b547970653d3d32293f274d6f62696c65273a28546974616e69756d2e4e6574776f726b2e6e6574776f726b547970653d3d33293f274e6574776f726b204c414e273a27556e6b6e6f776e273b0a090a097661722068746d6c20203d2027273b0a0968746d6c2b3d20274e616d653a2027202b20546974616e69756d2e506c6174666f726d2e6e616d65202b20273c62722f3e273b0a0968746d6c2b3d20274d6f64656c3a2027202b20546974616e69756d2e506c6174666f726d2e6d6f64656c202b20273c62722f3e273b0a0968746d6c2b3d202756657273696f6e3a2027202b20546974616e69756d2e506c6174666f726d2e76657273696f6e202b20273c62722f3e273b0a0968746d6c2b3d2027417661696c61626c65204d656d6f72793a2027202b20546974616e69756d2e506c6174666f726d2e617661696c61626c654d656d6f7279202b20273c62722f3e273b0a0968746d6c2b3d202750686f6e65204e756d6265723a2027202b20546974616e69756d2e506c6174666f726d2e70686f6e654e756d626572202b20273c62722f3e273b0a0968746d6c2b3d20274f5320547970653a2027202b20546974616e69756d2e506c6174666f726d2e6f7374797065202b20273c62722f3e273b0a0968746d6c2b3d20274172636869746563747572653a2027202b20546974616e69756d2e506c6174666f726d2e617263686974656374757265202b20273c62722f3e273b0a0968746d6c2b3d2027416464726573733a2027202b20546974616e69756d2e506c6174666f726d2e61646472657373202b20273c62722f3e273b0a0968746d6c2b3d202749443a2027202b20546974616e69756d2e506c6174666f726d2e6964202b20273c62722f3e273b0a0968746d6c2b3d20274d616320416464726573733a2027202b20546974616e69756d2e506c6174666f726d2e6d616361646472657373202b20273c62722f3e273b0a0968746d6c2b3d202750726f636573736f7220636f756e743a2027202b20546974616e69756d2e506c6174666f726d2e70726f636573736f72436f756e74202b20273c62722f3e273b0a0968746d6c2b3d2027557365726e616d653a2027202b20546974616e69756d2e506c6174666f726d2e757365726e616d65202b20273c62722f3e273b0a0968746d6c2b3d202743726561746520555549443a2027202b20546974616e69756d2e506c6174666f726d2e637265617465555549442829202b20273c62722f3e273b0a0968746d6c2b3d2027546974616e69756d2e4e6574776f726b2e6f6e6c696e653a2027202b20546974616e69756d2e4e6574776f726b2e6f6e6c696e6520202b20273c62722f3e273b0a0968746d6c2b3d2027546974616e69756d2e4e6574776f726b2e6e6574776f726b547970653a2027202b207479706520202b20273c62722f3e273b0a0a09646f63756d656e742e676574456c656d656e744279496428276d65737361676527292e696e6e657248544d4c203d2068746d6c3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -431,8 +730,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/progress_bars.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/progress_bars.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/progress_bars.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/progress_bars.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedProgress_bars;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a3c7374796c653e0a2e627574746f6e0a7b0a09666f6e742d73697a653a313870783b77696474683a32383070783b746578742d616c69676e3a63656e7465720a7d0a3c2f7374796c653e0a3c2f686561643e0a3c626f6479207374796c653d226261636b67726f756e642d636f6c6f723a236666663b666f6e742d73697a653a323070783b666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d7765696768743a626f6c64223e0a0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d2231222076616c75653d22546f6f6c62617220286950686f6e65292220636c6173733d22627574746f6e222f3e3c2f6469763e0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d2232222076616c75653d22546f6f6c62617220772f6d65737361676520286950686f6e65292220636c6173733d22627574746f6e222f3e3c2f6469763e0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d2233222076616c75653d224e617642617220286950686f6e65292220636c6173733d22627574746f6e222f3e3c2f6469763e0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d2234222076616c75653d224e617642617220772f6d65737361676520286950686f6e65292220636c6173733d22627574746f6e222f3e3c2f6469763e0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d2235222076616c75653d22436f6e74656e7420772f6d65737361676520286950686f6e65292220636c6173733d22627574746f6e222f3e3c2f6469763e0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d2236222076616c75653d22416e64726f69642220636c6173733d22627574746f6e222f3e3c2f6469763e0a093c6469762069643d22636f6e74656e745f696e64696361746f7222207374796c653d2277696474683a31353070783b6d617267696e3a6175746f3b666f6e742d73697a653a313870783b6865696768743a35307078223e3c2f6469763e0a090a093c7363726970743e0a092f2f2077686174206172652074686520617661696c61626c652070726f677265737320626172207374796c65730a09092f2f20546974616e69756d2e55492e6950686f6e652e50726f67726573734261725374796c652e504c41494e207c204241520a0a092f2f2054484553452053484f554c4420424520464958454420494e204e45585420505553480a092f2f20776520757365207469746c6520696e2074686520636f6e7374727563746f7220627574206d6573736167652061732061202273657422202d206e65656420746f20757365206d6573736167650a092f2f207765207573652076616c756520696e2074686520636f6e74727563746f72206275742022706f73222061732061202273657422202d206e65656420746f207573652076616c7565206f7220706f7320666f7220626f74680a092f2f2074657874206973206e6f742068696464656e207768656e2070726f677265736261722069732068696464656e0a090a09646f63756d656e742e676574456c656d656e744279496428273127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a090976617220666c65785370616365203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464c455849424c455f53504143450a09097d293b0a09090a09097661722076616c7565203d20303b0a090976617220696e643d546974616e69756d2e55492e63726561746550726f6772657373426172287b0a09090977696474683a3135302c0a0909096d696e3a302c0a0909096d61783a31302c0a09090976616c75653a302c0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e50726f67726573734261725374796c652e4241520a0909090a09097d293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c696e642c666c657853706163655d293b0a0909696e642e73686f7728293b0a2020202020200976617220696e74657276616c203d20736574496e74657276616c2866756e6374696f6e28290a202020202020097b0a09090976616c7565202b3d20323b0a202020202020202020202020696e642e73657456616c75652876616c7565293b0a0909096966202876616c7565203d3d203130290a0909097b0a09090909636c656172496e74657276616c28696e74657276616c293b0a09090909696e642e6869646528293b0a0909097d0a202020202020097d2c31303030293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e744279496428273227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a090976617220666c65785370616365203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464c455849424c455f53504143450a09097d293b0a09090a09097661722076616c7565203d20303b0a09090a090976617220696e643d546974616e69756d2e55492e63726561746550726f6772657373426172287b0a09090977696474683a3135302c0a0909096d696e3a302c0a0909096d61783a31302c0a09090976616c75653a302c0a0909096d6573736167653a27446f776e6c6f6164696e672030206f66203130272c0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e50726f67726573734261725374796c652e504c41494e0a0909090a09097d293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c696e642c666c657853706163655d293b0a0909696e642e73686f7728293b0a2020202020200976617220696e74657276616c203d20736574496e74657276616c2866756e6374696f6e28290a202020202020097b0a09090976616c7565202b3d20323b0a202020202020202020202020696e642e73657456616c75652876616c7565293b0a090909696e642e7365744d6573736167652827446f776e6c6f6164696e672027202b2076616c7565202b2027206f6620313027293b0a0909096966202876616c7565203d3d203130290a0909097b0a09090909636c656172496e74657276616c28696e74657276616c293b0a09090909696e642e6869646528293b0a0909097d0a202020202020097d2c31303030293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e744279496428273327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722076616c7565203d20303b0a090976617220696e643d546974616e69756d2e55492e63726561746550726f6772657373426172287b0a09090977696474683a3135302c0a0909096d696e3a302c0a0909096d61783a31302c0a09090976616c75653a300a09097d293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365745469746c65436f6e74726f6c28696e64293b0a0909696e642e73686f7728293b0a2020202020200976617220696e74657276616c203d20736574496e74657276616c2866756e6374696f6e28290a202020202020097b0a09090976616c7565202b3d20323b0a202020202020202020202020696e642e73657456616c75652876616c7565293b0a0909096966202876616c7565203d3d203130290a0909097b0a09090909636c656172496e74657276616c28696e74657276616c293b0a09090909696e642e6869646528293b0a0909097d0a202020202020097d2c31303030293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e744279496428273427292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722076616c7565203d20303b0a09090a090976617220696e643d546974616e69756d2e55492e63726561746550726f6772657373426172287b0a09090977696474683a3135302c0a0909096d696e3a302c0a0909096d61783a31302c0a09090976616c75653a302c0a0909096d6573736167653a27446f776e6c6f6164696e672030206f66203130270a09097d293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e7365745469746c65436f6e74726f6c28696e64293b0a0909696e642e73686f7728293b0a2020202020200976617220696e74657276616c203d20736574496e74657276616c2866756e6374696f6e28290a202020202020097b0a09090976616c7565202b3d20323b0a202020202020202020202020696e642e73657456616c75652876616c7565293b0a090909696e642e7365744d6573736167652827446f776e6c6f6164696e672027202b2076616c7565202b2027206f6620313027293b0a0909096966202876616c7565203d3d203130290a0909097b0a09090909636c656172496e74657276616c28696e74657276616c293b0a09090909696e642e6869646528293b0a0909097d0a202020202020097d2c31303030293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e744279496428273527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722076616c7565203d20303b0a09090a090976617220696e643d546974616e69756d2e55492e63726561746550726f6772657373426172287b0a09090969643a27636f6e74656e745f696e64696361746f72272c0a09090977696474683a3135302c0a0909096d696e3a302c0a0909096d61783a31302c0a09090976616c75653a302c0a0909096d6573736167653a27446f776e6c6f6164696e672030206f66203130272c0a090909636f6c6f723a2723303030303030272c0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e50726f67726573734261725374796c652e504c41494e0a0909090a09097d293b0a0909696e642e73686f7728293b0a2020202020200976617220696e74657276616c203d20736574496e74657276616c2866756e6374696f6e28290a202020202020097b0a09090976616c7565202b3d20323b0a202020202020202020202020696e642e73657456616c75652876616c7565293b0a090909696e642e7365744d6573736167652827446f776e6c6f6164696e672027202b2076616c7565202b2027206f6620313027293b0a0909096966202876616c7565203d3d203130290a0909097b0a09090909636c656172496e74657276616c28696e74657276616c293b0a0909097d0a202020202020097d2c31303030293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e744279496428273627292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722076616c7565203d20303b0a0a09092f2f2063726561746520696e64696361746f720a2020202020200976617220696e64203d20546974616e69756d2e55492e6372656174654163746976697479496e64696361746f72287b0a0909096c6f636174696f6e3a546974616e69756d2e55492e4163746976697479496e64696361746f722e4449414c4f472c0a090909747970653a546974616e69756d2e55492e4163746976697479496e64696361746f722e44455445524d494e414e542c0a0909096d6573736167653a27446f776e6c6f6164696e672030206f66203130272c0a0909096d696e3a302c0a0909096d61783a31302c0a09090976616c75653a300a09097d293b0a20202020202009696e642e73686f7728293b0a0a202020090a20202020200976617220696e74657276616c203d20736574496e74657276616c2866756e6374696f6e28290a202020202020097b0a09090976616c7565202b3d20323b0a202020202020202020202020696e642e73657456616c75652876616c7565293b0a090909696e642e7365744d6573736167652827446f776e6c6f6164696e672027202b2076616c7565202b2027206f6620313027293b0a0909096966202876616c7565203d3d203130290a0909097b0a09090909636c656172496e74657276616c28696e74657276616c293b0a09090909696e642e6869646528293b0a0909097d0a202020202020097d2c31303030293b0a097d3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -440,17 +744,27 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/properties.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/properties.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/properties.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/properties.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedProperties;
 	{
-		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a093c6469762069643d226d657373616765223e3c2f6469763e0a090a093c7363726970743e0a09546974616e69756d2e4170702e50726f706572746965732e736574537472696e672827537472696e67272c274920616d206120537472696e672056616c756527293b0a09546974616e69756d2e4170702e50726f706572746965732e736574496e742827496e74272c3130293b0a09546974616e69756d2e4170702e50726f706572746965732e736574426f6f6c2827426f6f6c272c74727565293b0a09546974616e69756d2e4170702e50726f706572746965732e736574446f75626c652827446f75626c65272c31302e36293b0a0a097661722068746d6c20203d2027273b0a0968746d6c2b3d2027537472696e673a2027202b20546974616e69756d2e4170702e50726f706572746965732e676574537472696e672827537472696e672729202b20273c62722f3e273b0a0968746d6c2b3d2027496e743a2027202b20546974616e69756d2e4170702e50726f706572746965732e676574496e742827496e742729202b20273c62722f3e273b0a0968746d6c2b3d2027426f6f6c3a2027202b20546974616e69756d2e4170702e50726f706572746965732e676574426f6f6c2827426f6f6c2729202b20273c62722f3e273b0a0968746d6c2b3d2027446f75626c653a2027202b20546974616e69756d2e4170702e50726f706572746965732e676574446f75626c652827446f75626c652729202b20273c62722f3e273b0a0a09646f63756d656e742e676574456c656d656e744279496428276d65737361676527292e696e6e657248544d4c203d2068746d6c3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
+		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a093c6469762069643d226d657373616765223e3c2f6469763e0a090a093c7363726970743e0a09546974616e69756d2e4170702e50726f706572746965732e736574537472696e672827537472696e67272c274920616d206120537472696e672056616c7565203132333435363738396162636465666768696a6b6c6d6e6f707172737475767778797a31323327293b0a09546974616e69756d2e4170702e50726f706572746965732e736574496e742827496e74272c3130293b0a09546974616e69756d2e4170702e50726f706572746965732e736574426f6f6c2827426f6f6c272c74727565293b0a09546974616e69756d2e4170702e50726f706572746965732e736574446f75626c652827446f75626c65272c31302e36293b0a0a097661722068746d6c20203d2027273b0a0968746d6c2b3d2027537472696e673a2027202b20546974616e69756d2e4170702e50726f706572746965732e676574537472696e672827537472696e672729202b20273c62722f3e273b0a0968746d6c2b3d2027496e743a2027202b20546974616e69756d2e4170702e50726f706572746965732e676574496e742827496e742729202b20273c62722f3e273b0a0968746d6c2b3d2027426f6f6c3a2027202b20546974616e69756d2e4170702e50726f706572746965732e676574426f6f6c2827426f6f6c2729202b20273c62722f3e273b0a0968746d6c2b3d2027446f75626c653a2027202b20546974616e69756d2e4170702e50726f706572746965732e676574446f75626c652827446f75626c652729202b20273c62722f3e273b0a0a09646f63756d656e742e676574456c656d656e744279496428276d65737361676527292e696e6e657248544d4c203d2068746d6c3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
 	   	if ([d length] == 0) return nil;
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/shake.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/shake.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/shake.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/shake.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedShake;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a095368616b65207468652070686f6e652e2020596f752073686f756c642073656520616e20616c6572740a093c7363726970743e0a09546974616e69756d2e476573747572652e6164644576656e744c697374656e657228277368616b65272c66756e6374696f6e2865290a097b0a09097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0909612e7365744d6573736167652827697420776f726b7327293b0a0909612e7365745469746c6528275368616b65205465737427293b0a0909612e73686f7728293b0a097d293b0a0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -458,8 +772,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/slider.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/slider.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/slider.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/slider.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedSlider;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d73697a653a31317078223e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e536c696465722031202877696474682032303070782c206d696e2035302c206d6178203130302c207374617274203930293c2f6469763e0a093c6469762069643d22736c696465723122207374796c653d226865696768743a33307078223e3c2f6469763e0a093c6469762069643d22736c69646572315f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a323070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e536c69646572203220286d696e20302c206d6178203130293c2f6469763e0a093c6469762069643d22736c696465723222207374796c653d226865696768743a33307078223e3c2f6469763e0a093c6469762069643d22736c69646572325f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a313070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e536c69646572203320286d696e202d352c206d61782035293c2f6469763e0a093c6469762069643d22736c696465723322207374796c653d226865696768743a33307078223e3c2f6469763e0a093c6469762069643d22736c69646572335f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a313070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a0a0a093c7363726970743e0a0976617220736c6964657231203d20546974616e69756d2e55492e637265617465536c69646572287b0a090969643a27736c6964657231272c0a09096d696e3a35302c0a09096d61783a3130302c0a090976616c75653a39302c0a090977696474683a3230300a097d293b0a0a09736c69646572312e6164644576656e744c697374656e657228276368616e6765272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e74427949642827736c69646572315f76616c756527292e696e6e657248544d4c203d2027534c4944455220312056414c5545203d2027202b20652e76616c75653b0a097d293b0a0a0976617220736c6964657232203d20546974616e69756d2e55492e637265617465536c69646572287b0a090969643a27736c6964657232272c0a09096d696e3a302c0a09096d61783a31302c0a097d293b0a0a09736c69646572322e6164644576656e744c697374656e657228276368616e6765272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e74427949642827736c69646572325f76616c756527292e696e6e657248544d4c203d2027534c4944455220322056414c5545203d2027202b652e76616c75653b0a097d293b0a0a0976617220736c6964657233203d20546974616e69756d2e55492e637265617465536c69646572287b0a090969643a27736c6964657233272c0a09096d696e3a2d352c0a09096d61783a352c0a097d293b0a0a09736c69646572332e6164644576656e744c697374656e657228276368616e6765272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e74427949642827736c69646572335f76616c756527292e696e6e657248544d4c203d2027534c4944455220332056414c5545203d2027202b652e76616c75653b0a097d293b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -467,8 +786,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/sound.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/sound.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/sound.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/sound.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedSound;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f6479207374796c653d226261636b67726f756e642d636f6c6f723a236666663b666f6e742d73697a653a323070783b666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d7765696768743a626f6c64223e0a0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d22706c6179222076616c75653d22706c617922207374796c653d22666f6e742d73697a653a313870783b77696474683a31353070783b746578742d616c69676e3a63656e746572222f3e3c2f6469763e0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d227061757365222076616c75653d22706175736522207374796c653d22666f6e742d73697a653a313870783b77696474683a31353070783b746578742d616c69676e3a63656e746572222f3e3c2f6469763e0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d227265736574222076616c75653d22726573657422207374796c653d22666f6e742d73697a653a313870783b77696474683a31353070783b746578742d616c69676e3a63656e746572222f3e3c2f6469763e0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d2273746172746c6f6f70222076616c75653d227374617274206c6f6f7022207374796c653d22666f6e742d73697a653a313870783b77696474683a31353070783b746578742d616c69676e3a63656e746572222f3e3c2f6469763e0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d22656e646c6f6f70222076616c75653d22656e64206c6f6f7022207374796c653d22666f6e742d73697a653a313870783b77696474683a31353070783b746578742d616c69676e3a63656e746572222f3e3c2f6469763e0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d22766f6c756d655f7570222076616c75653d22766f6c756d65202b22207374796c653d22666f6e742d73697a653a313870783b77696474683a31353070783b746578742d616c69676e3a63656e746572222f3e3c2f6469763e0a093c6469763e3c696e70757420747970653d22627574746f6e222069643d22766f6c756d655f646f776e222076616c75653d22766f6c756d65202d22207374796c653d22666f6e742d73697a653a313870783b77696474683a31353070783b746578742d616c69676e3a63656e746572222f3e3c2f6469763e0a093c6469762069643d226973506c6179696e67223e3c2f6469763e0a093c6469762069643d226973506175736564223e3c2f6469763e0a093c6469762069643d2269734c6f6f70696e67223e3c2f6469763e0a093c6469762069643d22766f6c756d65223e3c2f6469763e0a09090a0a090a093c7363726970743e0a09766172206973506c6179696e67203d20646f63756d656e742e676574456c656d656e744279496428276973506c6179696e6727293b0a09766172206973506175736564203d20646f63756d656e742e676574456c656d656e74427949642827697350617573656427293b0a097661722069734c6f6f70696e67203d20646f63756d656e742e676574456c656d656e7442794964282769734c6f6f70696e6727293b0a0976617220766f6c756d65203d20646f63756d656e742e676574456c656d656e74427949642827766f6c756d6527293b0a090a092f2f20637265617465206120736f756e64206f626a6563740a097661722073203d20546974616e69756d2e4d656469612e637265617465536f756e642827637269636b65742e77617627293b0a0a09546974616e69756d2e55492e63757272656e7457696e646f772e6164644576656e744c697374656e65722827756e666f6375736564272c66756e6374696f6e28290a097b0a0909646f63756d656e742e676574456c656d656e74427949642827617564696f5f636f6e74726f6c7327292e7374796c652e646973706c6179203d20276e6f6e65273b0a0909732e73746f7028293b0a0909732e72656c6561736528293b0a097d293b0a090a09646f63756d656e742e676574456c656d656e74427949642827706c617927292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909732e706c617928293b0a09096973506c6179696e672e696e6e657248544d4c203d20276973506c6179696e67203d2027202b20732e6973506c6179696e6728293b0a090969735061757365642e696e6e657248544d4c203d20276973506175736564203d2027202b20732e697350617573656428293b0a090969734c6f6f70696e672e696e6e657248544d4c203d202769734c6f6f70696e67203d2027202b20732e69734c6f6f70696e6728293b0a0909766f6c756d652e696e6e657248544d4c203d2027766f6c756d65203d2027202b20732e676574566f6c756d6528293b0a09090a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827706175736527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909732e706175736528293b0a09096973506c6179696e672e696e6e657248544d4c203d20276973506c6179696e67203d2027202b20732e6973506c6179696e6728293b0a090969735061757365642e696e6e657248544d4c203d20276973506175736564203d2027202b20732e697350617573656428293b0a090969734c6f6f70696e672e696e6e657248544d4c203d202769734c6f6f70696e67203d2027202b20732e69734c6f6f70696e6728293b0a0909766f6c756d652e696e6e657248544d4c203d2027766f6c756d65203d2027202b20732e676574566f6c756d6528293b0a0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827726573657427292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909732e726573657428293b0a09096973506c6179696e672e696e6e657248544d4c203d20276973506c6179696e67203d2027202b20732e6973506c6179696e6728293b0a090969735061757365642e696e6e657248544d4c203d20276973506175736564203d2027202b20732e697350617573656428293b0a090969734c6f6f70696e672e696e6e657248544d4c203d202769734c6f6f70696e67203d2027202b20732e69734c6f6f70696e6728293b0a0909766f6c756d652e696e6e657248544d4c203d2027766f6c756d65203d2027202b20732e676574566f6c756d6528293b0a097d3b0a09646f63756d656e742e676574456c656d656e7442794964282773746172746c6f6f7027292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909732e7365744c6f6f70696e672874727565290a09096973506c6179696e672e696e6e657248544d4c203d20276973506c6179696e67203d2027202b20732e6973506c6179696e6728293b0a090969735061757365642e696e6e657248544d4c203d20276973506175736564203d2027202b20732e697350617573656428293b0a090969734c6f6f70696e672e696e6e657248544d4c203d202769734c6f6f70696e67203d2027202b20732e69734c6f6f70696e6728293b0a0909766f6c756d652e696e6e657248544d4c203d2027766f6c756d65203d2027202b20732e676574566f6c756d6528293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827656e646c6f6f7027292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909732e7365744c6f6f70696e672866616c7365293b0a09096973506c6179696e672e696e6e657248544d4c203d20276973506c6179696e67203d2027202b20732e6973506c6179696e6728293b0a090969735061757365642e696e6e657248544d4c203d20276973506175736564203d2027202b20732e697350617573656428293b0a090969734c6f6f70696e672e696e6e657248544d4c203d202769734c6f6f70696e67203d2027202b20732e69734c6f6f70696e6728293b0a0909766f6c756d652e696e6e657248544d4c203d2027766f6c756d65203d2027202b20732e676574566f6c756d6528293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827766f6c756d655f757027292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722076203d20732e676574566f6c756d6528293b0a09096966202876203c20312e30290a09097b0a090909732e736574566f6c756d6528762b302e31293b0a09097d0a09096973506c6179696e672e696e6e657248544d4c203d20276973506c6179696e67203d2027202b20732e6973506c6179696e6728293b0a090969735061757365642e696e6e657248544d4c203d20276973506175736564203d2027202b20732e697350617573656428293b0a090969734c6f6f70696e672e696e6e657248544d4c203d202769734c6f6f70696e67203d2027202b20732e69734c6f6f70696e6728293b0a0909766f6c756d652e696e6e657248544d4c203d2027766f6c756d65203d2027202b20732e676574566f6c756d6528293b0a09090a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827766f6c756d655f646f776e27292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722076203d20732e676574566f6c756d6528293b0a09096966202876203e2030290a09097b0a090909732e736574566f6c756d6528762d302e31293b0a09097d0a09096973506c6179696e672e696e6e657248544d4c203d20276973506c6179696e67203d2027202b20732e6973506c6179696e6728293b0a090969735061757365642e696e6e657248544d4c203d20276973506175736564203d2027202b20732e697350617573656428293b0a090969734c6f6f70696e672e696e6e657248544d4c203d202769734c6f6f70696e67203d2027202b20732e69734c6f6f70696e6728293b0a0909766f6c756d652e696e6e657248544d4c203d2027766f6c756d65203d2027202b20732e676574566f6c756d6528293b0a097d3b0a0a0a092f2f20616464206576656e74206c697374656e6572206f6e20736f756e640a09732e6164644576656e744c697374656e65722827636f6d706c657465272c66756e6374696f6e28290a097b0a09097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0909612e7365745469746c652827536f756e64205465737427293b0a0909612e736574427574746f6e4e616d6573285b274f4b275d293b0a09090a0909612e7365744d6573736167652827736f756e6420636f6d706c6574656427293b0a0909612e73686f7728293b0a09096973506c6179696e672e696e6e657248544d4c203d20276973506c6179696e67203d2027202b20732e6973506c6179696e6728293b0a090969735061757365642e696e6e657248544d4c203d20276973506175736564203d2027202b20732e697350617573656428293b0a090969734c6f6f70696e672e696e6e657248544d4c203d202769734c6f6f70696e67203d2027202b20732e69734c6f6f70696e6728293b0a0909766f6c756d652e696e6e657248544d4c203d2027766f6c756d65203d2027202b20732e676574566f6c756d6528293b0a0a09090a097d293b0a0a0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -476,8 +800,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/statusbar.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/statusbar.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/statusbar.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/statusbar.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedStatusbar;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a203c686561643e0a0a203c2f686561643e0a3c626f6479207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a09537461747573204261722073686f756c6420626520626c61636b0a093c7363726970743e0a092f2f73657420737461747573206261720a09546974616e69756d2e55492e6950686f6e652e7365745374617475734261725374796c6528546974616e69756d2e55492e6950686f6e652e5374617475734261722e5452414e534c5543454e545f424c41434b293b0a0a092f2f20736574206974206261636b0a09546974616e69756d2e55492e63757272656e7457696e646f772e6164644576656e744c697374656e65722827756e666f6375736564272c66756e6374696f6e28290a097b0a0909546974616e69756d2e55492e6950686f6e652e7365745374617475734261725374796c6528546974616e69756d2e55492e6950686f6e652e5374617475734261722e44454641554c54293b0a097d293b0a090a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -485,8 +814,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/switch.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/switch.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/switch.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/switch.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedSwitch;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d73697a653a31317078223e0a090a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e537769746368202864656661756c742074727565293c2f6469763e0a093c6469762069643d22733122207374796c653d226865696768743a33307078223e3c2f6469763e0a093c6469762069643d2273315f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a323070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e537769746368202864656661756c742066616c7365293c2f6469763e0a093c6469762069643d22733222207374796c653d226865696768743a33307078223e3c2f6469763e0a093c6469762069643d2273325f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a313070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a090a090a093c7363726970743e0a09766172207331203d20546974616e69756d2e55492e637265617465537769746368287b0a090969643a277331272c0a090976616c75653a747275650a097d293b0a090a0973312e6164644576656e744c697374656e657228276368616e6765272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e7442794964282773315f76616c756527292e696e6e657248544d4c203d202753574954434820312056414c5545203d2027202b20652e76616c75653b0a097d293b0a0a09766172207332203d20546974616e69756d2e55492e637265617465537769746368287b0a090969643a277332272c0a090976616c75653a66616c73650a097d293b0a090a0973322e6164644576656e744c697374656e657228276368616e6765272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e7442794964282773325f76616c756527292e696e6e657248544d4c203d202753574954434820322056414c5545203d2027202b652e76616c75653b0a097d293b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -494,8 +828,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/tabbar.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/tabbar.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/tabbar.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/tabbar.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedTabbar;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d73697a653a31327078223e0a090a093c646976207374796c653d226d617267696e2d626f74746f6d3a31307078223e0a09596f752063616e2075736520746162206261727320696e2074686520636f6e74656e7420617265612c20746865206e61762062617220616e6420696e2074686520746f6f6c6261722e0a093c2f6469763e0a093c6469762069643d2274616262617222207374796c653d2277696474683a32303070783b6865696768743a343070783b6d617267696e3a6175746f3b6d617267696e2d746f703a313070783b223e3c2f6469763e0a093c6469762069643d227461626261723222207374796c653d2277696474683a32303070783b6865696768743a333070783b6d617267696e3a6175746f3b6d617267696e2d746f703a313070783b223e3c2f6469763e0a090a090a093c7363726970743e0a0976617220746162626172203d20546974616e69756d2e55492e637265617465546162626564426172287b69643a27746162626172272c20696e6465783a312c6c6162656c733a5b2754616233272c202754616234275d7d293b0a097661722074616262617232203d20546974616e69756d2e55492e637265617465546162626564426172287b0a090969643a2774616262617232272c200a0909696e6465783a312c0a09096c6162656c733a5b2754616233272c202754616234272c275461623461275d2c0a09096261636b67726f756e64436f6c6f723a2723433131423137272c0a09097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e4241520a097d293b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -503,8 +842,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/tabbar_hide.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/tabbar_hide.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/tabbar_hide.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/tabbar_hide.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedTabbar_hide;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d73697a653a313270783b6261636b67726f756e642d636f6c6f723a233333363639393b636f6c6f723a7768697465223e0a09546162204261722073686f756c642062652068696464656e0a093c646976207374796c653d226865696768743a343770783b6d617267696e2d746f703a32307078222069643d22627574746f6e32223e3c2f6469763e0a093c7363726970743e0a0976617220627574746f6e32203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090969643a27627574746f6e32272c0a09096261636b67726f756e64496d6167653a27626c75652e706e67272c0a09096261636b67726f756e6453656c6563746564496d6167653a27626c75655f707265737365642e706e67272c0a09097469746c653a27436c6f73652057696e646f77272c0a0909636f6c6f723a2723666666666666272c0a09096865696768743a34372c0a097d293b0a09627574746f6e322e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a097b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e636c6f736528293b0a097d290a090a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -512,8 +856,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/tabchange.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/tabchange.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/tabchange.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/tabchange.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedTabchange;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b6261636b67726f756e642d636f6c6f723a23393939223e0a093c6469762069643d22627574746f6e3122207374796c653d226865696768743a35307078223e3c2f6469763e0a093c646976207374796c653d226d617267696e2d746f703a31307078223e3c2f6469763e0a093c6469762069643d22627574746f6e3222207374796c653d226865696768743a35307078223e3c2f6469763e0a090a093c7363726970743e0a0a0976617220627574746f6e31203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090969643a27627574746f6e31272c0a09096261636b67726f756e64496d6167653a27626c75652e706e67272c0a09096261636b67726f756e6453656c6563746564496d6167653a27626c75655f707265737365642e706e67272c0a09097469746c653a27476f20746f205461622031272c0a0909636f6c6f723a2723666666666666272c0a09096865696768743a34372c0a097d293b0a09627574746f6e312e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a097b0a09097661722074616273203d20546974616e69756d2e55492e6765745461627328293b0a0909546974616e69756d2e55492e73657441637469766554616228746162735b305d293b0a09090a097d290a0a0976617220627574746f6e32203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090969643a27627574746f6e32272c0a09096261636b67726f756e64496d6167653a27626c75652e706e67272c0a09096261636b67726f756e6453656c6563746564496d6167653a27626c75655f707265737365642e706e67272c0a09097469746c653a27476f20746f205461622033272c0a0909636f6c6f723a2723666666666666272c0a09096865696768743a34372c0a097d293b0a09627574746f6e322e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a097b0a090976617220746162203d20546974616e69756d2e55492e67657454616242794e616d652827566965777327293b0a0909546974616e69756d2e55492e73657441637469766554616228746162293b0a097d290a0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -521,8 +870,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/tableview_add.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/tableview_add.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/tableview_add.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/tableview_add.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedTableview_add;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d73697a653a31327078223e0a090a090a093c7363726970743e0a092f2f20637265617465207461626c65207669657720646174610a097661722064617461203d205b0a09097b7469746c653a27496e7365727420526f772041626f7665202d2031272c206865616465723a2753656374696f6e2030277d2c0a09097b7469746c653a27526f7732277d2c0a09097b7469746c653a27496e7365727420526f772042656c6f77202d2031272c206e616d653a2733277d2c0a09097b7469746c653a27526f7734277d2c0a09097b7469746c653a27526f7735277d2c0a09097b7469746c653a27526f7736277d2c0a09097b7469746c653a27496e7365727420526f772042656c6f77202d2032272c206e616d653a2737277d2c0a09097b7469746c653a27526f7738272c6865616465723a2753656374696f6e2031277d2c0a09097b7469746c653a27526f7739277d2c0a09097b7469746c653a27526f773130277d2c0a09097b7469746c653a27526f773131277d2c0a09097b7469746c653a27526f773132277d2c0a09097b7469746c653a27526f773133277d2c0a09097b7469746c653a27526f773134277d2c0a09097b7469746c653a27526f773135277d2c0a09090a095d3b0a090a092f2f0a092f2f20437265617465207461626c6520766965770a092f2f0a09766172207461626c6556696577203d20546974616e69756d2e55492e6372656174655461626c6556696577287b646174613a646174617d2c66756e6374696f6e2865290a097b0a090973776974636828652e726f77446174612e7469746c65290a09097b0a090909636173652027496e7365727420526f772041626f7665202d2031273a0a0909097b0a090909097661722064617461203d207b7469746c653a274e657720466972737420526f77277d3b0a090909097461626c65566965772e696e73657274526f774265666f726528302c646174612c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e4c4546547d293b090909090a09090909627265616b3b0a0909097d0a090909636173652027496e7365727420526f772042656c6f77202d2031273a0a0909097b0a0909090976617220726f77203d207461626c65566965772e676574496e64657842794e616d6528273327293b0a0909090964617461203d207b7469746c653a274e657720526f7720416674657220526f7733272c206865616465723a274e657720486561646572277d3b0a090909097461626c65566965772e696e73657274526f77416674657228726f772c646174612c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e444f574e7d293b0a0a09090909627265616b3b0a0909097d0a090909636173652027496e7365727420526f772042656c6f77202d2032273a0a0909097b0a0909090976617220726f77203d207461626c65566965772e676574496e64657842794e616d6528273727293b0a0909090964617461203d207b7469746c653a274e657720526f7720416674657220526f7737277d3b0a090909097461626c65566965772e696e73657274526f77416674657228726f772c646174612c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e444f574e7d293b0a0a09090909627265616b3b0a0909097d0a0909090a09097d0a09090a097d293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287461626c6556696577293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577293b0a090a090a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -530,8 +884,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/tableview_delete.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/tableview_delete.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/tableview_delete.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/tableview_delete.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedTableview_delete;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d73697a653a31327078223e0a090a090a093c7363726970743e0a092f2f20637265617465207461626c65207669657720646174610a097661722064617461203d205b0a09097b7469746c653a2744656c657465204d65272c206865616465723a2753656374696f6e2030277d2c0a09097b7469746c653a2744656c65746520746872656520726f7773272c206e616d653a2732277d2c0a09097b7469746c653a27526f7733272c6e616d653a2733277d2c0a09097b7469746c653a27526f7734272c206e616d653a2734277d2c0a09097b7469746c653a2744656c657465207468652072657374272c206e616d653a2735277d2c0a09097b7469746c653a27526f7736272c206e616d653a2736277d2c0a09097b7469746c653a27526f7737272c206e616d653a2737277d2c0a09097b7469746c653a27526f7738272c6865616465723a2753656374696f6e2031277d2c0a09097b7469746c653a27436c65617220746865207461626c65277d2c0a09097b7469746c653a27526f773130277d2c0a09097b7469746c653a27526f773131277d2c0a09097b7469746c653a27526f773132277d2c0a09097b7469746c653a27526f773133277d2c0a09097b7469746c653a27526f773134277d2c0a09097b7469746c653a27526f773135277d2c0a09090a095d3b0a090a092f2f0a092f2f20437265617465207461626c6520766965770a092f2f0a09766172207461626c6556696577203d20546974616e69756d2e55492e6372656174655461626c6556696577287b646174613a646174617d2c66756e6374696f6e2865290a097b0a090973776974636828652e726f77446174612e7469746c65290a09097b0a09090963617365202744656c657465204d65273a0a0909097b0a090909092f2f2064656c65746520696e697469616c20726f770a090909097461626c65566965772e64656c657465526f7728302c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e4c4546547d293b0a090909090a09090909627265616b3b0a0909097d0a09090963617365202744656c65746520746872656520726f7773273a0a0909097b0a090909092f2f2067657420696e6465782c207468656e2064656c6574650a0909090976617220726f7732203d207461626c65566965772e676574496e64657842794e616d6528273227293b0a090909097461626c65566965772e64656c657465526f7728726f77322c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e52494748547d293b0a0a090909092f2f2067657420696e6465782c207468656e2064656c6574650a0909090976617220726f7733203d207461626c65566965772e676574496e64657842794e616d6528273327293b0a090909097461626c65566965772e64656c657465526f7728726f77332c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e52494748547d293b0a0a090909092f2f2067657420696e6465782c207468656e2064656c6574650a0909090976617220726f7734203d207461626c65566965772e676574496e64657842794e616d6528273427293b0a090909097461626c65566965772e64656c657465526f7728726f77342c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e52494748547d293b0a0a09090909627265616b3b0a0909097d0a09090963617365202744656c657465207468652072657374273a0a0909097b0a090909092f2f2067657420696e6465782c207468656e2064656c6574650a0909090976617220726f7735203d207461626c65566965772e676574496e64657842794e616d6528273527293b0a090909097461626c65566965772e64656c657465526f7728726f77352c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e55507d293b0a0a090909092f2f2067657420696e6465782c207468656e2064656c6574650a0909090976617220726f7736203d207461626c65566965772e676574496e64657842794e616d6528273627293b0a090909097461626c65566965772e64656c657465526f7728726f77362c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e55507d293b0a0a090909092f2f2067657420696e6465782c207468656e2064656c6574650a0909090976617220726f7737203d207461626c65566965772e676574496e64657842794e616d6528273727293b0a090909097461626c65566965772e64656c657465526f7728726f77372c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e55507d293b0a0a09090909627265616b3b0a0909097d0a090909636173652027436c65617220746865207461626c65273a0a0909097b0a090909092f2f20636c656172207468652077686f6c65207461626c650a09090909656d70747944617461203d205b5d3b0a090909097461626c65566965772e7365744461746128656d707479446174612c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e55507d293b0a09090909627265616b3b0a0909097d0a0909090a09097d0a09090a097d293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287461626c6556696577293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577293b0a090a090a090a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -539,8 +898,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/tableview_set.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/tableview_set.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/tableview_set.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/tableview_set.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedTableview_set;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d73697a653a31327078223e0a090a090a093c7363726970743e0a092f2f20637265617465207461626c65207669657720646174610a097661722064617461203d205b0a09097b7469746c653a27536574205461626c65566965772031272c206865616465723a2753656374696f6e2030277d2c0a09097b7469746c653a27536574205461626c65566965772032277d2c0a09097b7469746c653a27536574205461626c65566965772033277d2c0a09097b7469746c653a27526f7734277d2c0a09097b7469746c653a27526f7735277d2c0a09097b7469746c653a27526f7736277d2c0a09097b7469746c653a27526f7737277d2c0a09097b7469746c653a27526f7738272c6865616465723a2753656374696f6e2031277d2c0a09097b7469746c653a27526f7739277d2c0a09097b7469746c653a27526f773130277d2c0a09097b7469746c653a27526f773131277d2c0a09097b7469746c653a27526f773132277d2c0a09097b7469746c653a27526f773133277d2c0a09097b7469746c653a27526f773134277d2c0a09097b7469746c653a27526f773135277d2c0a09090a095d3b0a090a092f2f0a092f2f20437265617465207461626c6520766965770a092f2f0a09766172207461626c6556696577203d20546974616e69756d2e55492e6372656174655461626c6556696577287b646174613a646174617d2c66756e6374696f6e2865290a097b0a090973776974636828652e696e646578290a09097b0a0909096361736520303a0a0909097b0a090909097661722064617461203d205b0a09090909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e536574205461626c655669657720313c2f6469763e272c2068617344657461696c3a747275652c206865616465723a2753656374696f6e2030277d2c0a0a09090909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e536574205461626c655669657720323c2f6469763e20272c206861734368696c643a747275657d2c0a0a09090909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e536574205461626c655669657720333c2f6469763e20277d2c0a0a09090909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e526f7720343c2f6469763e20277d2c0a0a09090909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e526f7720353c2f6469763e20277d2c0a0a09090909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e526f7720363c2f6469763e20272c2068617344657461696c3a747275652c206865616465723a2753656374696f6e2031277d2c0a0a09090909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e526f7720373c2f6469763e20272c206861734368696c643a747275657d2c0a0a09090909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e526f7720383c2f6469763e20277d2c0a0a09090909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e526f7720393c2f6469763e20277d2c0a0a09090909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e526f772031303c2f6469763e20277d0a0a0a090909095d3b0a090909090a090909097461626c65566965772e7365744461746128646174612c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e55507d293b090909090a09090909627265616b3b0a0909097d0a0909096361736520313a0a0909097b0a090909097661722064617461203d205b0a09090909097b7469746c653a27536574205461626c65566965772031272c68617344657461696c3a747275652c20696d6167653a2750686f6e652e706e67277d2c0a09090909097b7469746c653a27536574205461626c65566965772032272c206861734368696c643a747275652c20696d6167653a275361666172692e706e67277d2c0a09090909097b7469746c653a27536574205461626c65566965772033272c20696d6167653a276954756e65732e706e67277d2c0a09090909097b7469746c653a27526f772034272c20696d6167653a274d61696c2e706e67277d2c0a09090909097b7469746c653a27526f772035272c20696d6167653a274d61696c2e706e67277d2c0a09090909097b7469746c653a27526f772037272c20696d6167653a274d61696c2e706e67277d0a0a090909095d3b0a090909097461626c65566965772e7365744461746128646174612c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e444f574e7d293b0a0a09090909627265616b3b0a0909097d0a0909096361736520323a0a0909097b0a090909097661722064617461203d205b0a09090909097b7469746c653a27536574205461626c65566965772031277d2c0a09090909097b7469746c653a27536574205461626c65566965772032277d2c0a09090909097b7469746c653a27536574205461626c65566965772033277d2c0a09090909097b7469746c653a27526f772034277d2c0a09090909097b7469746c653a27526f772035277d2c0a09090909097b7469746c653a27526f772036277d2c0a09090909097b7469746c653a27526f772037277d2c0a09090909097b7469746c653a27526f772038277d2c0a09090909097b7469746c653a27526f772039277d0a0a090909095d3b0a090909097461626c65566965772e7365744461746128646174612c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e55507d293b0a0a09090909627265616b3b0a0909097d0a0909090a09097d0a0909090a097d293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287461626c6556696577293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577293b0a090a090a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -548,8 +912,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/tableview_update.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/tableview_update.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/tableview_update.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/tableview_update.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedTableview_update;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d73697a653a31327078223e0a090a090a093c7363726970743e0a092f2f20637265617465207461626c65207669657720646174610a097661722064617461203d205b0a09097b7469746c653a274368616e6765204d65272c206865616465723a2753656374696f6e2030277d2c0a09097b7469746c653a274368616e6765204d65272c206e616d653a27726f7732277d2c0a09097b7469746c653a274368616e6765204d65277d2c0a09097b7469746c653a274368616e6765204d65277d2c0a09097b7469746c653a27526f7735277d2c0a09097b7469746c653a27526f7736277d2c0a09097b7469746c653a27526f7737277d2c0a09097b7469746c653a27526f7738272c6865616465723a2753656374696f6e2031277d2c0a09097b7469746c653a27526f7739277d2c0a09097b7469746c653a27526f773130277d2c0a09097b7469746c653a27526f773131277d2c0a09097b7469746c653a27526f773132277d2c0a09097b7469746c653a27526f773133277d2c0a09097b7469746c653a27526f773134277d2c0a09097b7469746c653a27526f773135277d2c0a09090a095d3b0a090a092f2f0a092f2f20437265617465207461626c6520766965770a092f2f0a09766172207461626c6556696577203d20546974616e69756d2e55492e6372656174655461626c6556696577287b646174613a646174617d2c66756e6374696f6e2865290a097b0a090973776974636828652e696e646578290a09097b0a0909096361736520303a0a0909097b0a090909097661722064617461203d207b7469746c653a274e657720526f772031205469746c65272c206865616465723a274e65772053656374696f6e20486561646572277d3b0a090909097461626c65566965772e757064617465526f7728302c646174612c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e55507d293b090909090a09090909627265616b3b0a0909097d0a0909096361736520313a0a0909097b0a0909090976617220726f77203d207461626c65566965772e676574496e64657842794e616d652827726f773227293b0a0909090964617461203d207b7469746c653a274e657720526f7732277d3b0a090909097461626c65566965772e757064617465526f7728726f772c646174612c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e52494748547d293b0a0a09090909627265616b3b0a0909097d0a0909096361736520323a0a0909097b0a0909090964617461203d207b7469746c653a274e657720526f7733277d3b0a090909097461626c65566965772e757064617465526f7728322c646174612c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e4c4546547d293b0a0a09090909627265616b3b0a0909097d0a0909096361736520333a0a0909097b0a0909090964617461203d207b7469746c653a274e657720526f7734277d3b0a090909097461626c65566965772e757064617465526f7728332c646174612c7b616e696d6174696f6e5374796c653a546974616e69756d2e55492e6950686f6e652e526f77416e696d6174696f6e5374796c652e444f574e7d293b0a0a09090909627265616b3b0a0909097d0a0909090a09097d0a09090a097d293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287461626c6556696577293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577293b0a090a090a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -557,8 +926,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/textfield_events.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/textfield_events.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/textfield_events.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/textfield_events.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedTextfield_events;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d73697a653a31317078223e0a090a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e496e707574204669656c643a3c2f6469763e090a093c6469762069643d22746578746669656c643122207374796c653d226865696768743a33307078223e3c2f6469763e0a093c6469762069643d22746578746669656c64315f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a323070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a0a093c6469762069643d22666f637573223e466f6375736564204e6f742052656365697665643c2f6469763e0a093c6469762069643d22626c7572223e426c7572204e6f742052656365697665643c2f6469763e0a093c6469762069643d226368616e6765223e4368616e6765204e6f742052656365697665643c2f6469763e0a0a093c627574746f6e2069643d22666f6375735f627574746f6e22207374796c653d22666f6e742d73697a653a31387078223e5472696767657220466f6375733c2f627574746f6e3e0a093c627574746f6e2069643d22626c75725f627574746f6e22207374796c653d22666f6e742d73697a653a31387078223e5472696767657220426c75723c2f627574746f6e3e0a090a090a093c7363726970743e0a0976617220686569676874203d2028546974616e69756d2e506c6174666f726d2e6e616d652e696e6465784f6628276950686f6e65272920213d202d3129203f2033303a2034303b0a090a092f2f2074657874206669656c640a0976617220746631203d20546974616e69756d2e55492e637265617465546578744669656c64287b0a090969643a27746578746669656c6431272c0a090976616c75653a2768656c6c6f272c0a0909636f6c6f723a2723333336363939272c0a09096261636b67726f756e64436f6c6f723a2723656565656565272c0a090972657475726e4b6579547970653a546974616e69756d2e55492e52455455524e4b45595f474f4f474c452c0a0909656e61626c6552657475726e4b65793a747275652c0a09096b6579626f617264547970653a546974616e69756d2e55492e4b4559424f4152445f41534349492c0a09096175746f636f72726563743a66616c73652c0a090968696e74546578743a276669656c646f6e652068696e742074657874272c0a090974657874416c69676e3a2763656e746572272c0a0909636c6561724f6e456469743a747275652c0a09096865696768743a6865696768742c0a0909626f726465725374796c653a546974616e69756d2e55492e494e5055545f424f524445525354594c455f524f554e4445442c0a0909636c656172427574746f6e4d6f64653a546974616e69756d2e55492e494e5055545f425554544f4e4d4f44455f4f4e464f4355532c0a097d293b0a0a0a092f2f20627574746f6e2068616e646c65727320666f722074726967676572696e6720666f6375732f626c7572206576656e74730a09646f63756d656e742e676574456c656d656e74427949642827666f6375735f627574746f6e27292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097466312e666f63757328293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827626c75725f627574746f6e27292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097466312e626c757228293b0a097d3b0a090a092f2f2072657475726e206576656e74206c697374656e65720a097466312e6164644576656e744c697374656e6572282772657475726e272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e74427949642827746578746669656c64315f76616c756527292e696e6e657248544d4c203d202720596f7520686974207468652072657475726e206b65792c2063757272656e742076616c75652069732027202b20652e76616c75653b0a097d293b0a0a092f2f20666f637573206576656e74206c697374656e65720a097466312e6164644576656e744c697374656e65722827666f637573272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e74427949642827666f63757327292e696e6e657248544d4c203d2027466f637573206576656e74206669726564273b0a097d293b0a0a092f2f20626c7572206576656e74206c697374656e65720a097466312e6164644576656e744c697374656e65722827626c7572272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e74427949642827626c757227292e696e6e657248544d4c203d2027426c7572206576656e74206669726564273b0a097d293b0a090a092f2f206368616e6765206576656e74206c697374656e65720a097466312e6164644576656e744c697374656e657228276368616e6765272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e744279496428276368616e676527292e696e6e657248544d4c203d20274368616e6765206576656e74206669726564273b0a097d293b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -566,17 +940,27 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/textfields.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/textfields.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/textfields.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/textfields.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedTextfields;
 	{
-		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d73697a653a31317078223e0a090a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e4153434949204b6579626f617264202f20474f4f474c452052657475726e204b6579202f2050617373776f7264204d61736b3c2f6469763e090a093c6469762069643d22746578746669656c643122207374796c653d226865696768743a33307078223e3c2f6469763e0a093c6469762069643d22746578746669656c64315f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a323070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e4e756d6265727320616e642050756e63204b6579626f617264202f20474f2052657475726e204b65793c2f6469763e090a093c6469762069643d22746578746669656c643222207374796c653d226865696768743a33307078223e3c2f6469763e0a093c6469762069643d22746578746669656c64325f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a323070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e55524c204b6579626f617264202f204a4f494e2052657475726e204b65793c2f6469763e090a093c6469762069643d22746578746669656c643322207374796c653d226865696768743a33307078223e3c2f6469763e0a093c6469762069643d22746578746669656c64335f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a323070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e4e756d626572706164204b6579626f6172643c2f6469763e090a093c6469762069643d22746578746669656c643422207374796c653d226865696768743a33307078223e3c2f6469763e0a093c6469762069643d22746578746669656c64345f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a323070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e50686f6e65204b6579626f617264202f204e6f20426f726465723c2f6469763e090a093c6469762069643d22746578746669656c643522207374796c653d226865696768743a33307078223e3c2f6469763e0a093c6469762069643d22746578746669656c64355f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a323070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e456d61696c204b6579626f617264202f20454d455247454e43592043414c4c2052657475726e204b65793c2f6469763e090a093c6469762069643d22746578746669656c643622207374796c653d226865696768743a33307078223e3c2f6469763e0a093c6469762069643d22746578746669656c64365f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a323070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e54657874204172656120313c2f6469763e0a093c6469762069643d2274657874617265613122207374796c653d226865696768743a3230307078223e3c2f6469763e0a093c6469762069643d227465787461726561315f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a323070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a090a090a093c7363726970743e0a090a092f2f200a092f2f2052657475726e4b657954797065203a206f7074696f6e616c2e2076616c69642076616c756573206172653a200a092f2f20546974616e69756d2e55492e52455455524e4b45595f474f200a092f2f20546974616e69756d2e55492e52455455524e4b45595f474f4f474c45200a092f2f20546974616e69756d2e55492e52455455524e4b45595f4a4f494e200a092f2f20546974616e69756d2e55492e52455455524e4b45595f4e455854200a092f2f20546974616e69756d2e55492e52455455524e4b45595f524f555445200a092f2f20546974616e69756d2e55492e52455455524e4b45595f534541524348200a092f2f20546974616e69756d2e55492e52455455524e4b45595f5941484f4f200a092f2f20546974616e69756d2e55492e52455455524e4b45595f444f4e45200a092f2f20546974616e69756d2e55492e52455455524e4b45595f454d455247454e43595f43414c4c0a0a097661722072656672657368203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909696d6167653a27636861742e706e67272c0a09097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e504c41494e0a09090a097d293b0a090a0976617220746631203d20546974616e69756d2e55492e637265617465546578744669656c64287b0a090969643a27746578746669656c6431272c0a090976616c75653a2768656c6c6f272c0a0909636f6c6f723a2723333336363939272c0a09096261636b67726f756e64436f6c6f723a2723656565656565272c0a090972657475726e4b6579547970653a546974616e69756d2e55492e52455455524e4b45595f474f4f474c452c0a0909656e61626c6552657475726e4b65793a747275652c0a09096b6579626f617264547970653a546974616e69756d2e55492e4b4559424f4152445f41534349492c0a09096175746f636f72726563743a66616c73652c0a090968696e74546578743a276669656c646f6e652068696e742074657874272c0a090974657874416c69676e3a2763656e746572272c0a090970617373776f72644d61736b3a747275652c0a0909636c6561724f6e456469743a747275652c0a0909626f726465725374796c653a546974616e69756d2e55492e494e5055545f424f524445525354594c455f524f554e4445442c0a0909636c656172427574746f6e4d6f64653a546974616e69756d2e55492e494e5055545f425554544f4e4d4f44455f4f4e464f4355532c0a09096c656674427574746f6e3a726566726573682c0a09096c656674427574746f6e4d6f64653a546974616e69756d2e55492e494e5055545f425554544f4e4d4f44455f414c574159530a097d293b0a097466312e76616c75653d27666f6f273b0a0a097466312e6164644576656e744c697374656e6572282772657475726e272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e74427949642827746578746669656c64315f76616c756527292e696e6e657248544d4c203d202720596f7520686974207468652072657475726e206b65792c2063757272656e742076616c75652069732027202b20652e76616c75653b0a097d293b0a0a0976617220746632203d20546974616e69756d2e55492e637265617465546578744669656c64287b0a090969643a27746578746669656c6432272c0a090976616c75653a2768656c6c6f272c0a0909636f6c6f723a2723333336363939272c0a09096261636b67726f756e64436f6c6f723a2723656565656565272c0a090972657475726e4b6579547970653a546974616e69756d2e55492e52455455524e4b45595f474f2c0a0909656e61626c6552657475726e4b65793a66616c73652c0a09096b6579626f617264547970653a546974616e69756d2e55492e4b4559424f4152445f4e554d424552535f50554e4354554154494f4e2c0a09096175746f636f72726563743a66616c73652c0a090968696e74546578743a276669656c646f6e652068696e742074657874272c0a090974657874416c69676e3a276c656674272c0a0909636c6561724f6e456469743a66616c73652c0a0909626f726465725374796c653a546974616e69756d2e55492e494e5055545f424f524445525354594c455f42455a454c2c0a0909636c656172427574746f6e4d6f64653a546974616e69756d2e55492e494e5055545f425554544f4e4d4f44455f4e455645522c0a097d293b0a097466322e6164644576656e744c697374656e6572282772657475726e272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e74427949642827746578746669656c64325f76616c756527292e696e6e657248544d4c203d202720596f7520686974207468652072657475726e206b65792c2063757272656e742076616c75652069732027202b20652e76616c75653b0a097d293b0a0a0976617220746633203d20546974616e69756d2e55492e637265617465546578744669656c64287b0a090969643a27746578746669656c6433272c0a090976616c75653a2768656c6c6f272c0a0909636f6c6f723a2723333336363939272c0a09096261636b67726f756e64436f6c6f723a2723656565656565272c0a090972657475726e4b6579547970653a546974616e69756d2e55492e52455455524e4b45595f4a4f494e2c0a0909656e61626c6552657475726e4b65793a66616c73652c0a09096b6579626f617264547970653a546974616e69756d2e55492e4b4559424f4152445f55524c2c0a09096175746f636f72726563743a66616c73652c0a090968696e74546578743a276669656c646f6e652068696e742074657874272c0a090974657874416c69676e3a277269676874272c0a0909636c6561724f6e456469743a66616c73652c0a0909626f726465725374796c653a546974616e69756d2e55492e494e5055545f424f524445525354594c455f4c494e452c0a0909636c656172427574746f6e4d6f64653a546974616e69756d2e55492e494e5055545f425554544f4e4d4f44455f4e455645522c0a097d293b0a097466332e6164644576656e744c697374656e6572282772657475726e272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e74427949642827746578746669656c64335f76616c756527292e696e6e657248544d4c203d202720596f7520686974207468652072657475726e206b65792c2063757272656e742076616c75652069732027202b20652e76616c75653b0a097d293b0a0a0976617220746634203d20546974616e69756d2e55492e637265617465546578744669656c64287b0a090969643a27746578746669656c6434272c0a090976616c75653a2768656c6c6f272c0a0909636f6c6f723a2723333336363939272c0a09096261636b67726f756e64436f6c6f723a2723656565656565272c0a0909656e61626c6552657475726e4b65793a66616c73652c0a09096b6579626f617264547970653a546974616e69756d2e55492e4b4559424f4152445f4e554d4245525f5041442c0a09096175746f636f72726563743a66616c73652c0a090968696e74546578743a276669656c646f6e652068696e742074657874272c0a090974657874416c69676e3a276c656674272c0a0909636c6561724f6e456469743a66616c73652c0a0909626f726465725374796c653a546974616e69756d2e55492e494e5055545f424f524445525354594c455f4c494e452c0a0909636c656172427574746f6e4d6f64653a546974616e69756d2e55492e494e5055545f425554544f4e4d4f44455f4e455645522c0a097d293b0a097466342e6164644576656e744c697374656e6572282772657475726e272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e74427949642827746578746669656c64345f76616c756527292e696e6e657248544d4c203d202720596f7520686974207468652072657475726e206b65792c2063757272656e742076616c75652069732027202b20652e76616c75653b0a097d293b0a0a0976617220746635203d20546974616e69756d2e55492e637265617465546578744669656c64287b0a090969643a27746578746669656c6435272c0a090976616c75653a2768656c6c6f272c0a0909636f6c6f723a2723333336363939272c0a09096261636b67726f756e64436f6c6f723a2723656565656565272c0a0909656e61626c6552657475726e4b65793a66616c73652c0a09096b6579626f617264547970653a546974616e69756d2e55492e4b4559424f4152445f50484f4e455f5041442c0a09096175746f636f72726563743a66616c73652c0a090968696e74546578743a276669656c646f6e652068696e742074657874272c0a090974657874416c69676e3a276c656674272c0a0909636c6561724f6e456469743a66616c73652c0a0909626f726465725374796c653a546974616e69756d2e55492e494e5055545f424f524445525354594c455f4e4f4e452c0a0909636c656172427574746f6e4d6f64653a546974616e69756d2e55492e494e5055545f425554544f4e4d4f44455f4e455645522c0a097d293b0a097466352e6164644576656e744c697374656e6572282772657475726e272c66756e6374696f6e2865290a097b0a09090a0909646f63756d656e742e676574456c656d656e74427949642827746578746669656c64355f76616c756527292e696e6e657248544d4c203d202720596f7520686974207468652072657475726e206b65792c2063757272656e742076616c75652069732027202b20652e76616c75653b0a097d293b0a0a0976617220746636203d20546974616e69756d2e55492e637265617465546578744669656c64287b0a090969643a27746578746669656c6436272c0a090976616c75653a2768656c6c6f272c0a0909636f6c6f723a2723333336363939272c0a09096261636b67726f756e64436f6c6f723a2723656565656565272c0a0909656e61626c6552657475726e4b65793a66616c73652c0a09096b6579626f617264547970653a546974616e69756d2e55492e4b4559424f4152445f454d41494c5f414444524553532c0a090972657475726e4b6579547970653a546974616e69756d2e55492e52455455524e4b45595f454d455247454e43595f43414c4c2c0a09096175746f636f72726563743a66616c73652c0a090968696e74546578743a276669656c646f6e652068696e742074657874272c0a090974657874416c69676e3a276c656674272c0a0909636c6561724f6e456469743a66616c73652c0a0909626f726465725374796c653a546974616e69756d2e55492e494e5055545f424f524445525354594c455f524f554e4445442c0a0909636c656172427574746f6e4d6f64653a546974616e69756d2e55492e494e5055545f425554544f4e4d4f44455f4e455645522c0a097d293b0a097466362e6164644576656e744c697374656e6572282772657475726e272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e74427949642827746578746669656c64365f76616c756527292e696e6e657248544d4c203d202720596f7520686974207468652072657475726e206b65792c2063757272656e742076616c75652069732027202b20652e76616c75653b0a097d293b0a0a0a0976617220746131203d20546974616e69756d2e55492e6372656174655465787441726561287b0a090969643a27746578746172656131272c200a090976616c75653a274920616d2061207465787461726561272c0a09096865696768743a3230302c0a090977696474683a3330302c0a0909626f726465725374796c653a546974616e69756d2e55492e494e5055545f424f524445525354594c455f42455a454c0a09090a097d293b0a097461312e6164644576656e744c697374656e6572282772657475726e272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e744279496428277465787461726561315f76616c756527292e696e6e657248544d4c203d202720596f7520686974207468652072657475726e206b65792c2063757272656e742076616c75652069732027202b20652e76616c75653b0a097d290a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
+		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b666f6e742d73697a653a31317078223e0a090a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e4153434949204b6579626f617264202f20474f4f474c452052657475726e204b6579202f2050617373776f7264204d61736b3c2f6469763e090a093c6469762069643d22746578746669656c643122207374796c653d226865696768743a32357078223e3c2f6469763e0a093c6469762069643d22746578746669656c64315f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a323070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e4e756d6265727320616e642050756e63204b6579626f617264202f20474f2052657475726e204b65793c2f6469763e090a093c6469762069643d22746578746669656c643222207374796c653d226865696768743a33307078223e3c2f6469763e0a093c6469762069643d22746578746669656c64325f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a323070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e55524c204b6579626f617264202f204a4f494e2052657475726e204b65793c2f6469763e090a093c6469762069643d22746578746669656c643322207374796c653d226865696768743a33307078223e3c2f6469763e0a093c6469762069643d22746578746669656c64335f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a323070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e4e756d626572706164204b6579626f6172643c2f6469763e090a093c6469762069643d22746578746669656c643422207374796c653d226865696768743a33307078223e3c2f6469763e0a093c6469762069643d22746578746669656c64345f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a323070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e50686f6e65204b6579626f617264202f204e6f20426f726465723c2f6469763e090a093c6469762069643d22746578746669656c643522207374796c653d226865696768743a33307078223e3c2f6469763e0a093c6469762069643d22746578746669656c64355f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a323070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e456d61696c204b6579626f617264202f20454d455247454e43592043414c4c2052657475726e204b65793c2f6469763e090a093c6469762069643d22746578746669656c643622207374796c653d226865696768743a33307078223e3c2f6469763e0a093c6469762069643d22746578746669656c64365f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a323070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a3570783b6865696768743a31307078223e54657874204172656120313c2f6469763e0a093c6469762069643d2274657874617265613122207374796c653d226865696768743a3230307078223e3c2f6469763e0a093c6469762069643d227465787461726561315f76616c756522207374796c653d226d617267696e2d746f703a3570783b6d617267696e2d626f74746f6d3a323070783b636f6c6f723a233939393b6865696768743a31307078223e3c2f6469763e0a090a090a093c7363726970743e0a090a092f2f200a092f2f2052657475726e4b657954797065203a206f7074696f6e616c2e2076616c69642076616c756573206172653a200a092f2f20546974616e69756d2e55492e52455455524e4b45595f474f200a092f2f20546974616e69756d2e55492e52455455524e4b45595f474f4f474c45200a092f2f20546974616e69756d2e55492e52455455524e4b45595f4a4f494e200a092f2f20546974616e69756d2e55492e52455455524e4b45595f4e455854200a092f2f20546974616e69756d2e55492e52455455524e4b45595f524f555445200a092f2f20546974616e69756d2e55492e52455455524e4b45595f534541524348200a092f2f20546974616e69756d2e55492e52455455524e4b45595f5941484f4f200a092f2f20546974616e69756d2e55492e52455455524e4b45595f444f4e45200a092f2f20546974616e69756d2e55492e52455455524e4b45595f454d455247454e43595f43414c4c0a0a097661722072656672657368203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09097469746c653a27546f3a272c0a09097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e504c41494e0a09090a097d293b0a090a0976617220746631203d20546974616e69756d2e55492e637265617465546578744669656c64287b0a090969643a27746578746669656c6431272c0a090976616c75653a2768656c6c6f272c0a0909636f6c6f723a2723333336363939272c0a09096261636b67726f756e64436f6c6f723a2723666666272c0a090972657475726e4b6579547970653a546974616e69756d2e55492e52455455524e4b45595f474f4f474c452c0a0909656e61626c6552657475726e4b65793a747275652c0a09096b6579626f617264547970653a546974616e69756d2e55492e4b4559424f4152445f41534349492c0a09096175746f636f72726563743a66616c73652c0a090968696e74546578743a276669656c646f6e652068696e742074657874272c0a090974657874416c69676e3a276c656674272c0a090970617373776f72644d61736b3a747275652c0a0909636c6561724f6e456469743a747275652c0a0909626f726465725374796c653a546974616e69756d2e55492e494e5055545f424f524445525354594c455f4e4f4e452c0a0909636c656172427574746f6e4d6f64653a546974616e69756d2e55492e494e5055545f425554544f4e4d4f44455f4f4e464f4355532c0a09096c656674427574746f6e3a726566726573682c0a09096c656674427574746f6e4d6f64653a546974616e69756d2e55492e494e5055545f425554544f4e4d4f44455f414c574159530a097d293b0a0a097466312e6164644576656e744c697374656e6572282772657475726e272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e74427949642827746578746669656c64315f76616c756527292e696e6e657248544d4c203d202720596f7520686974207468652072657475726e206b65792c2063757272656e742076616c75652069732027202b20652e76616c75653b0a097d293b0a0a0976617220746632203d20546974616e69756d2e55492e637265617465546578744669656c64287b0a090969643a27746578746669656c6432272c0a090976616c75653a2768656c6c6f272c0a0909636f6c6f723a2723333336363939272c0a09096261636b67726f756e64436f6c6f723a2723656565656565272c0a090972657475726e4b6579547970653a546974616e69756d2e55492e52455455524e4b45595f474f2c0a0909656e61626c6552657475726e4b65793a66616c73652c0a09096b6579626f617264547970653a546974616e69756d2e55492e4b4559424f4152445f4e554d424552535f50554e4354554154494f4e2c0a09096175746f636f72726563743a66616c73652c0a090968696e74546578743a276669656c646f6e652068696e742074657874272c0a090974657874416c69676e3a276c656674272c0a0909636c6561724f6e456469743a66616c73652c0a0909626f726465725374796c653a546974616e69756d2e55492e494e5055545f424f524445525354594c455f42455a454c2c0a0909636c656172427574746f6e4d6f64653a546974616e69756d2e55492e494e5055545f425554544f4e4d4f44455f4e455645522c0a097d293b0a097466322e6164644576656e744c697374656e6572282772657475726e272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e74427949642827746578746669656c64325f76616c756527292e696e6e657248544d4c203d202720596f7520686974207468652072657475726e206b65792c2063757272656e742076616c75652069732027202b20652e76616c75653b0a097d293b0a0a0976617220746633203d20546974616e69756d2e55492e637265617465546578744669656c64287b0a090969643a27746578746669656c6433272c0a090976616c75653a2768656c6c6f272c0a0909636f6c6f723a2723333336363939272c0a09096261636b67726f756e64436f6c6f723a2723656565656565272c0a090972657475726e4b6579547970653a546974616e69756d2e55492e52455455524e4b45595f4a4f494e2c0a0909656e61626c6552657475726e4b65793a66616c73652c0a09096b6579626f617264547970653a546974616e69756d2e55492e4b4559424f4152445f55524c2c0a09096175746f636f72726563743a66616c73652c0a090968696e74546578743a276669656c646f6e652068696e742074657874272c0a090974657874416c69676e3a277269676874272c0a0909636c6561724f6e456469743a66616c73652c0a0909626f726465725374796c653a546974616e69756d2e55492e494e5055545f424f524445525354594c455f4c494e452c0a0909636c656172427574746f6e4d6f64653a546974616e69756d2e55492e494e5055545f425554544f4e4d4f44455f4e455645522c0a097d293b0a097466332e6164644576656e744c697374656e6572282772657475726e272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e74427949642827746578746669656c64335f76616c756527292e696e6e657248544d4c203d202720596f7520686974207468652072657475726e206b65792c2063757272656e742076616c75652069732027202b20652e76616c75653b0a097d293b0a0a0976617220746634203d20546974616e69756d2e55492e637265617465546578744669656c64287b0a090969643a27746578746669656c6434272c0a090976616c75653a2768656c6c6f272c0a0909636f6c6f723a2723333336363939272c0a09096261636b67726f756e64436f6c6f723a2723656565656565272c0a0909656e61626c6552657475726e4b65793a66616c73652c0a09096b6579626f617264547970653a546974616e69756d2e55492e4b4559424f4152445f4e554d4245525f5041442c0a09096175746f636f72726563743a66616c73652c0a090968696e74546578743a276669656c646f6e652068696e742074657874272c0a090974657874416c69676e3a276c656674272c0a0909636c6561724f6e456469743a66616c73652c0a0909626f726465725374796c653a546974616e69756d2e55492e494e5055545f424f524445525354594c455f4c494e452c0a0909636c656172427574746f6e4d6f64653a546974616e69756d2e55492e494e5055545f425554544f4e4d4f44455f4e455645522c0a097d293b0a097466342e6164644576656e744c697374656e6572282772657475726e272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e74427949642827746578746669656c64345f76616c756527292e696e6e657248544d4c203d202720596f7520686974207468652072657475726e206b65792c2063757272656e742076616c75652069732027202b20652e76616c75653b0a097d293b0a0a0976617220746635203d20546974616e69756d2e55492e637265617465546578744669656c64287b0a090969643a27746578746669656c6435272c0a090976616c75653a2768656c6c6f272c0a0909636f6c6f723a2723333336363939272c0a09096261636b67726f756e64436f6c6f723a2723656565656565272c0a0909656e61626c6552657475726e4b65793a66616c73652c0a09096b6579626f617264547970653a546974616e69756d2e55492e4b4559424f4152445f50484f4e455f5041442c0a09096175746f636f72726563743a66616c73652c0a090968696e74546578743a276669656c646f6e652068696e742074657874272c0a090974657874416c69676e3a276c656674272c0a0909636c6561724f6e456469743a66616c73652c0a0909626f726465725374796c653a546974616e69756d2e55492e494e5055545f424f524445525354594c455f4e4f4e452c0a0909636c656172427574746f6e4d6f64653a546974616e69756d2e55492e494e5055545f425554544f4e4d4f44455f4e455645522c0a097d293b0a097466352e6164644576656e744c697374656e6572282772657475726e272c66756e6374696f6e2865290a097b0a09090a0909646f63756d656e742e676574456c656d656e74427949642827746578746669656c64355f76616c756527292e696e6e657248544d4c203d202720596f7520686974207468652072657475726e206b65792c2063757272656e742076616c75652069732027202b20652e76616c75653b0a097d293b0a0a0976617220746636203d20546974616e69756d2e55492e637265617465546578744669656c64287b0a090969643a27746578746669656c6436272c0a090976616c75653a2768656c6c6f272c0a0909636f6c6f723a2723333336363939272c0a09096261636b67726f756e64436f6c6f723a2723656565656565272c0a0909656e61626c6552657475726e4b65793a66616c73652c0a09096b6579626f617264547970653a546974616e69756d2e4b4559424f4152445f4e554d424552535f50554e4354554154494f4e2c0a090972657475726e4b6579547970653a546974616e69756d2e55492e52455455524e4b45595f454d455247454e43595f43414c4c2c0a09096175746f636f72726563743a66616c73652c0a090968696e74546578743a276669656c646f6e652068696e742074657874272c0a090974657874416c69676e3a276c656674272c0a0909636c6561724f6e456469743a66616c73652c0a0909626f726465725374796c653a546974616e69756d2e55492e494e5055545f424f524445525354594c455f524f554e4445442c0a0909636c656172427574746f6e4d6f64653a546974616e69756d2e55492e494e5055545f425554544f4e4d4f44455f4e455645522c0a097d293b0a097466362e6164644576656e744c697374656e6572282772657475726e272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e74427949642827746578746669656c64365f76616c756527292e696e6e657248544d4c203d202720596f7520686974207468652072657475726e206b65792c2063757272656e742076616c75652069732027202b20652e76616c75653b0a097d293b0a0a0a0976617220746131203d20546974616e69756d2e55492e6372656174655465787441726561287b0a090969643a27746578746172656131272c200a090976616c75653a274920616d2061207465787461726561272c0a09096865696768743a3230302c0a090977696474683a3330302c0a0909626f726465725374796c653a546974616e69756d2e55492e494e5055545f424f524445525354594c455f42455a454c0a09090a097d293b0a097461312e6164644576656e744c697374656e6572282772657475726e272c66756e6374696f6e2865290a097b0a0909646f63756d656e742e676574456c656d656e744279496428277465787461726561315f76616c756527292e696e6e657248544d4c203d202720596f7520686974207468652072657475726e206b65792c2063757272656e742076616c75652069732027202b20652e76616c75653b0a097d290a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
 	   	if ([d length] == 0) return nil;
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/toolbar_fixedspace.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/toolbar_fixedspace.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/toolbar_fixedspace.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/toolbar_fixedspace.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedToolbar_fixedspace;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a0a095573696e67207468652066697865642073706163656420627574746f6e20746f20646f20637573746f6d2073706163696e672e0a090a093c7363726970743e0a0976617220627574746f6e31203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e534156450a097d293b0a0976617220627574746f6e32203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e43414e43454c0a097d293b0a097661722066697865645370616365203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e46495845445f53504143452c0a090977696474683a32300a097d293b0a0976617220666c65785370616365203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464c455849424c455f53504143452c0a090977696474683a32300a097d293b0a0a09546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c627574746f6e312c666978656453706163652c627574746f6e322c666c657853706163655d293b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -584,8 +968,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/toolbar_hideshow.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/toolbar_hideshow.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/toolbar_hideshow.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/toolbar_hideshow.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedToolbar_hideshow;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a094869646520616e642053686f772074686520746f6f6c6261720a090a093c62722f3e3c627574746f6e2069643d226869646522207374796c653d22666f6e742d73697a653a31387078223e486964653c2f627574746f6e3e3c2f62723e0a093c627574746f6e2069643d2273686f7722207374796c653d22666f6e742d73697a653a31387078223e53686f773c2f627574746f6e3e0a0a093c7363726970743e0a0976617220666c65785370616365203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464c455849424c455f53504143450a097d293b0a0a097661722061203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e414354494f4e0a097d293b0a097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e43414d4552410a097d293b0a097661722063203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e434f4d504f53450a097d293b0a097661722064203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e424f4f4b4d41524b530a097d293b0a097661722065203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e524546524553480a097d293b0a090a09646f63756d656e742e676574456c656d656e744279496428276869646527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172286e756c6c293b0a097d3b0a09646f63756d656e742e676574456c656d656e7442794964282773686f7727292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b612c666c657853706163652c622c666c657853706163652c632c666c657853706163652c642c666c657853706163652c655d293b0a097d3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -593,8 +982,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/toolbar_left.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/toolbar_left.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/toolbar_left.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/toolbar_left.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedToolbar_left;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e222069643d22627574746f6e22207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e2028504c41494e20626f7264657229222069643d22627574746f6e5f326122207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e2028424f52444552454420626f7264657229222069643d22627574746f6e5f326222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e2028444f4e4520626f7264657229222069643d22627574746f6e5f326322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22414354494f4e2073797374656d20627574746f6e222069643d22627574746f6e5f3322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2243414d4552412073797374656d20627574746f6e222069643d22627574746f6e5f3422207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22434f4d504f53452073797374656d20627574746f6e222069643d22627574746f6e5f3522207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22424f4f4b4d41524b532073797374656d20627574746f6e222069643d22627574746f6e5f3622207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d225345415243482073797374656d20627574746f6e222069643d22627574746f6e5f3722207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224144442073797374656d20627574746f6e222069643d22627574746f6e5f3822207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224f5247414e495a452073797374656d20627574746f6e222069643d22627574746f6e5f3922207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d225245504c592073797374656d20627574746f6e222069643d22627574746f6e5f313022207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2253544f502073797374656d20627574746f6e222069643d22627574746f6e5f313122207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22524546524553482073797374656d20627574746f6e222069643d22627574746f6e5f313222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22504c41592073797374656d20627574746f6e222069643d22627574746f6e5f313322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224641535420464f52574152442073797374656d20627574746f6e222069643d22627574746f6e5f313422207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2250415553452073797374656d20627574746f6e222069643d22627574746f6e5f313522207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22524557494e442073797374656d20627574746f6e222069643d22627574746f6e5f313622207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22454449542073797374656d20627574746f6e222069643d22627574746f6e5f313722207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2243414e43454c2073797374656d20627574746f6e222069643d22627574746f6e5f313822207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22534156452073797374656d20627574746f6e222069643d22627574746f6e5f313922207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22444f4e452073797374656d20627574746f6e222069643d22627574746f6e5f323022207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22494e464f5f4441524b2073797374656d20627574746f6e222069643d22627574746f6e5f323122207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22494e464f5f4c494748542073797374656d20627574746f6e222069643d22627574746f6e5f323222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a090a093c7363726970743e0a0976617220613d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a09612e7365745469746c652827546f6f6c626172204c656674205465737427293b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e27292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909097469746c653a2754657874270a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f326127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909097469746c653a2754657874272c0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e504c41494e0a0909090a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f326227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909097469746c653a2754657874272c0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e424f5244455245440a0909090a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f326327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909097469746c653a2754657874272c0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e444f4e450a0909090a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e414354494f4e0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520414354494f4e20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3427292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e43414d4552410a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652043414d45524120627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e434f4d504f53450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520434f4d504f534520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3627292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e424f4f4b4d41524b530a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520424f4f4b4d41524b5320627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3727292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e5345415243480a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652053454152434820627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3827292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e4144440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652041444420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3927292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e4f5247414e495a450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865204f5247414e495a4520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313027292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e5245504c590a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205245504c5920627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e53544f500a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652053544f5020627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e524546524553480a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205245465245534820627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e504c41590a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520504c415920627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313427292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464153545f464f52574152440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520464153545f464f525741524420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e50415553450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520504155534520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313627292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e524557494e440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520524557494e4420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a090a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313727292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e454449540a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865204544495420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313827292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e43414e43454c0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652043414e43454c20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313927292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e534156450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205341564520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323027292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e444f4e450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520444f4e4520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e494e464f5f4441524b0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520494e464f204441524b20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e494e464f5f4c494748540a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520494e464f204c4947485420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b625d293b0a097d3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -602,8 +996,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/toolbar_lots.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/toolbar_lots.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/toolbar_lots.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/toolbar_lots.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedToolbar_lots;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a09546f6f6c6261722073686f756c6420686176652035206576656e6c792073706163656420627574746f6e730a0a093c7363726970743e0a0976617220666c65785370616365203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464c455849424c455f53504143450a097d293b0a0a097661722061203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e414354494f4e0a097d293b0a097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e43414d4552410a097d293b0a097661722063203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e434f4d504f53450a097d293b0a097661722064203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e424f4f4b4d41524b530a097d293b0a097661722065203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e524546524553480a097d293b0a0a09546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b612c666c657853706163652c622c666c657853706163652c632c666c657853706163652c642c666c657853706163652c655d293b0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -611,8 +1010,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/toolbar_middle.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/toolbar_middle.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/toolbar_middle.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/toolbar_middle.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedToolbar_middle;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e222069643d22627574746f6e22207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e2028504c41494e20626f7264657229222069643d22627574746f6e5f326122207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e2028424f52444552454420626f7264657229222069643d22627574746f6e5f326222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e2028444f4e4520626f7264657229222069643d22627574746f6e5f326322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22414354494f4e2073797374656d20627574746f6e222069643d22627574746f6e5f3322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2243414d4552412073797374656d20627574746f6e222069643d22627574746f6e5f3422207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22434f4d504f53452073797374656d20627574746f6e222069643d22627574746f6e5f3522207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22424f4f4b4d41524b532073797374656d20627574746f6e222069643d22627574746f6e5f3622207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d225345415243482073797374656d20627574746f6e222069643d22627574746f6e5f3722207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224144442073797374656d20627574746f6e222069643d22627574746f6e5f3822207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224f5247414e495a452073797374656d20627574746f6e222069643d22627574746f6e5f3922207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d225245504c592073797374656d20627574746f6e222069643d22627574746f6e5f313022207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2253544f502073797374656d20627574746f6e222069643d22627574746f6e5f313122207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22524546524553482073797374656d20627574746f6e222069643d22627574746f6e5f313222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22504c41592073797374656d20627574746f6e222069643d22627574746f6e5f313322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224641535420464f52574152442073797374656d20627574746f6e222069643d22627574746f6e5f313422207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2250415553452073797374656d20627574746f6e222069643d22627574746f6e5f313522207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22524557494e442073797374656d20627574746f6e222069643d22627574746f6e5f313622207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22454449542073797374656d20627574746f6e222069643d22627574746f6e5f313722207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2243414e43454c2073797374656d20627574746f6e222069643d22627574746f6e5f313822207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22534156452073797374656d20627574746f6e222069643d22627574746f6e5f313922207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22444f4e452073797374656d20627574746f6e222069643d22627574746f6e5f323022207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22494e464f5f4441524b2073797374656d20627574746f6e222069643d22627574746f6e5f323122207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22494e464f5f4c494748542073797374656d20627574746f6e222069643d22627574746f6e5f323222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a090a093c7363726970743e0a0976617220613d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a09612e7365745469746c652827546f6f6c626172204d6964646c65205465737427293b0a0976617220666c65785370616365203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464c455849424c455f53504143450a097d293b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e27292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909097469746c653a2754657874270a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f326127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909097469746c653a2754657874272c0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e504c41494e0a0909090a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f326227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909097469746c653a2754657874272c0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e424f5244455245440a0909090a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f326327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909097469746c653a2754657874272c0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e444f4e450a0909090a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e414354494f4e0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520414354494f4e20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3427292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e43414d4552410a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652043414d45524120627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e434f4d504f53450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520434f4d504f534520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3627292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e424f4f4b4d41524b530a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520424f4f4b4d41524b5320627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3727292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e5345415243480a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652053454152434820627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3827292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e4144440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652041444420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3927292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e4f5247414e495a450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865204f5247414e495a4520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313027292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e5245504c590a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205245504c5920627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e53544f500a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652053544f5020627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e524546524553480a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205245465245534820627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e504c41590a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520504c415920627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313427292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464153545f464f52574152440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520464153545f464f525741524420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e50415553450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520504155534520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313627292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e524557494e440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520524557494e4420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a090a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313727292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e454449540a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865204544495420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313827292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e43414e43454c0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652043414e43454c20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313927292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e534156450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205341564520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323027292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e444f4e450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520444f4e4520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e494e464f5f4441524b0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520494e464f204441524b20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e494e464f5f4c494748540a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520494e464f204c4947485420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c622c666c657853706163655d293b0a097d3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -620,8 +1024,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/toolbar_right.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/toolbar_right.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/toolbar_right.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/toolbar_right.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedToolbar_right;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e222069643d22627574746f6e22207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e2028504c41494e20626f7264657229222069643d22627574746f6e5f326122207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e2028424f52444552454420626f7264657229222069643d22627574746f6e5f326222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d227465787420627574746f6e2028444f4e4520626f7264657229222069643d22627574746f6e5f326322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22414354494f4e2073797374656d20627574746f6e222069643d22627574746f6e5f3322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2243414d4552412073797374656d20627574746f6e222069643d22627574746f6e5f3422207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22434f4d504f53452073797374656d20627574746f6e222069643d22627574746f6e5f3522207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22424f4f4b4d41524b532073797374656d20627574746f6e222069643d22627574746f6e5f3622207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d225345415243482073797374656d20627574746f6e222069643d22627574746f6e5f3722207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224144442073797374656d20627574746f6e222069643d22627574746f6e5f3822207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224f5247414e495a452073797374656d20627574746f6e222069643d22627574746f6e5f3922207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d225245504c592073797374656d20627574746f6e222069643d22627574746f6e5f313022207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2253544f502073797374656d20627574746f6e222069643d22627574746f6e5f313122207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22524546524553482073797374656d20627574746f6e222069643d22627574746f6e5f313222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22504c41592073797374656d20627574746f6e222069643d22627574746f6e5f313322207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d224641535420464f52574152442073797374656d20627574746f6e222069643d22627574746f6e5f313422207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2250415553452073797374656d20627574746f6e222069643d22627574746f6e5f313522207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22524557494e442073797374656d20627574746f6e222069643d22627574746f6e5f313622207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22454449542073797374656d20627574746f6e222069643d22627574746f6e5f313722207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d2243414e43454c2073797374656d20627574746f6e222069643d22627574746f6e5f313822207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22534156452073797374656d20627574746f6e222069643d22627574746f6e5f313922207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22444f4e452073797374656d20627574746f6e222069643d22627574746f6e5f323022207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22494e464f5f4441524b2073797374656d20627574746f6e222069643d22627574746f6e5f323122207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a093c646976207374796c653d226d617267696e2d626f74746f6d3a357078223e0a09093c696e70757420747970653d22627574746f6e222076616c75653d22494e464f5f4c494748542073797374656d20627574746f6e222069643d22627574746f6e5f323222207374796c653d22666f6e742d73697a653a31387078222f3e0a093c2f6469763e0a090a093c7363726970743e0a0976617220613d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a09612e7365745469746c652827546f6f6c626172204d6964646c65205465737427293b0a0976617220666c65785370616365203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464c455849424c455f53504143450a097d293b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e27292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909097469746c653a2754657874270a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f326127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909097469746c653a2754657874272c0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e504c41494e0a0909090a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f326227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909097469746c653a2754657874272c0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e424f5244455245440a0909090a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f326327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a0909097469746c653a2754657874272c0a0909097374796c653a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e5374796c652e444f4e450a0909090a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2022746578742220627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e414354494f4e0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520414354494f4e20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3427292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e43414d4552410a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652043414d45524120627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e434f4d504f53450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520434f4d504f534520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3627292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e424f4f4b4d41524b530a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520424f4f4b4d41524b5320627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3727292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e5345415243480a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652053454152434820627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3827292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e4144440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652041444420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f3927292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e4f5247414e495a450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865204f5247414e495a4520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313027292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e5245504c590a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205245504c5920627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e53544f500a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652053544f5020627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e524546524553480a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205245465245534820627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313327292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e504c41590a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520504c415920627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313427292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464153545f464f52574152440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520464153545f464f525741524420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e50415553450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520504155534520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313627292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e524557494e440a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520524557494e4420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a090a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313727292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e454449540a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865204544495420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313827292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e43414e43454c0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b207468652043414e43454c20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f313927292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e534156450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b20746865205341564520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323027292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e444f4e450a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520444f4e4520627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323127292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e494e464f5f4441524b0a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520494e464f204441524b20627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827627574746f6e5f323227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a09097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a09090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e494e464f5f4c494748540a09097d293b0a0909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e28290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b2074686520494e464f204c4947485420627574746f6e27293b0a090909612e73686f7728293b0a0909090a09097d290a0909546974616e69756d2e55492e63757272656e7457696e646f772e736574546f6f6c626172285b666c657853706163652c625d293b0a097d3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -629,26 +1038,47 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/ui.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/ui.html
 	- (NSData*) pageNamedUi;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a093c7469746c653e5549204150493c2f7469746c653e0a0a093c7363726970743e0a09546974616e69756d2e55492e6164644576656e744c697374656e657228277461626368616e6765272c66756e6374696f6e2865290a097b0a0909546974616e69756d2e4150492e696e666f28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e205441424348414e474520696e6465782027202b20652e696e64657820202b2027206e616d652027202b20652e6e616d65202b20272070726576496e6465782027202b20652e70726576496e646578202b202720707265764e616d652027202b20652e707265764e616d65293b0a097d293b0a090a092f2f206461746120666f72207461626c65766965770a097661722064617461203d205b0a09097b7469746c653a27416c657274277d2c0a09097b7469746c653a274f7074696f6e73204469616c6f67277d2c0a09097b7469746c653a2757696e646f7720466f637573204576656e7473272c6861734368696c643a747275657d2c0a09097b7469746c653a27536c69646572272c6861734368696c643a747275657d2c0a09097b7469746c653a2754657874204669656c6473272c6861734368696c643a747275657d2c0a09097b7469746c653a2754657874204669656c64204576656e7473272c6861734368696c643a747275657d2c0a09097b7469746c653a27436f6e74656e7420427574746f6e73272c6861734368696c643a747275657d2c0a09097b7469746c653a27537769746368272c6861734368696c643a747275657d2c0a09097b7469746c653a2750726f677265737320426172272c6861734368696c643a747275657d2c0a09097b7469746c653a27416374697669747920496e64696361746f72272c6861734368696c643a747275657d2c0a09097b7469746c653a27436f6d706f73697465205669657720272c6861734368696c643a747275657d2c0a09097b7469746c653a275461626c6556696577202d2044656c657465272c6861734368696c643a747275657d2c0a09097b7469746c653a275461626c6556696577202d20416464272c6861734368696c643a747275657d2c0a09097b7469746c653a275461626c6556696577202d20557064617465272c6861734368696c643a747275657d2c0a09097b7469746c653a275461626c6556696577202d20536574272c6861734368696c643a747275657d2c0a09097b7469746c653a2746756c6c73637265656e272c6861734368696c643a747275657d2c0a09097b7469746c653a275374617475732042617220286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a275365742042616467652049636f6e20286950686f6e6529277d2c0a09097b7469746c653a27427574746f6e2042617220286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a275461626265642042617220286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a274e6176626172202d205469746c6520286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a274e6176626172202d20526967687420286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a274e6176626172202d204c65667420286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a274e6176626172202d204869646520286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a2742617220436f6c6f7220286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a27546f6f6c626172202d204c65667420416c69676e20286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a27546f6f6c626172202d204d6964646c6520416c69676e20286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a27546f6f6c626172202d20526967687420416c69676e20286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a27546f6f6c626172202d204d616e7920427574746f6e7320286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a27546f6f6c626172202d20466978656420537061636520286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a27546f6f6c626172202d20486964652f53686f7720286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a27546162626172202d204869646520286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a274f70656e2028616e696d617465642066616c73652920286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a274e6f74696669636174696f6e732028416e64726f696429277d2c0a09097b7469746c653a274d656e752028416e64726f696429277d2c0a09097b7469746c653a2744796e616d696320436f6e74656e74272c206861734368696c643a747275657d2c0a09097b7469746c653a27546162204368616e6765272c206861734368696c643a747275657d0a09090a095d3b0a090a092f2f207461626c6576696577206f626a6563740a09766172207461626c6556696577203d20546974616e69756d2e55492e6372656174655461626c6556696577287b646174613a646174612c7469746c653a27554920415049272c69735072696d6172793a747275657d2c2066756e6374696f6e286576656e744f626a65637429200a097b0a09092f2f2068616e646c65207461626c657669657720636c69636b206576656e74730a090976617220696478203d206576656e744f626a6563742e696e6465783b0a090973776974636828696478290a09097b0a0909096361736520303a0a0909097b0a0909090973686f77416c65727428293b0a09090909627265616b3b0a0909097d0a0909096361736520313a0a0909097b0a0909090973686f774f7074696f6e734469616c6f6728293b0a09090909627265616b3b0a0909097d0a0909096361736520323a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2777696e646f775f756e666f6375732e68746d6c272c7469746c653a27466f637573204576656e7473272c20626172436f6c6f723a2723333336363939277d293b090909090a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520333a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27736c696465722e68746d6c272c7469746c653a27536c69646572277d293b0a090909090a0909090969662028546974616e69756d2e506c6174666f726d2e6e616d6520213d2027616e64726f696427290a090909097b0a090909090976617220736c69646572203d20546974616e69756d2e55492e637265617465536c69646572287b77696474683a3130302c6d696e3a302c6d61783a31302c76616c75653a307d293b0a090909090977696e2e7365745469746c65436f6e74726f6c28736c69646572293b0a090909097d0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0909096361736520343a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27746578746669656c64732e68746d6c272c7469746c653a2754657874204669656c6473277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0909096361736520353a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27746578746669656c645f6576656e74732e68746d6c272c7469746c653a2754657874204669656c64204576656e7473277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0a0909096361736520363a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27627574746f6e732e68746d6c272c7469746c653a27436f6e74656e7420427574746f6e73277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0909096361736520373a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277377697463682e68746d6c272c7469746c653a27537769746368277d293b0a0909090969662028546974616e69756d2e506c6174666f726d2e6e616d6520213d2027616e64726f696427290a090909097b0a090909090976617220696e7374203d20546974616e69756d2e55492e637265617465537769746368287b76616c75653a747275652c77696474683a39357d293b0a090909090977696e2e7365745469746c65436f6e74726f6c28696e7374290a090909097d0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0909096361736520383a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2770726f67726573735f626172732e68746d6c272c7469746c653a2750726f677265737320426172277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0a0909096361736520393a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2761637469766974795f696e64696361746f72732e68746d6c272c7469746c653a27496e64696361746f7273277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0a0a090909636173652031303a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27636f6d706f736974652e68746d6c272c7469746c653a27436f6d706f73697465277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0a090909636173652031313a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277461626c65766965775f64656c6574652e68746d6c272c7469746c653a275461626c65566965772044656c657465277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652031323a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277461626c65766965775f6164642e68746d6c272c7469746c653a275461626c655669657720416464277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652031333a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277461626c65766965775f7570646174652e68746d6c272c7469746c653a275461626c655669657720557064617465277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652031343a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277461626c65766965775f7365742e68746d6c272c7469746c653a275461626c655669657720536574277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0909090a090909636173652031353a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2766756c6c73637265656e2e68746d6c272c66756c6c73637265656e3a747275652c7469746c653a2746756c6c73637265656e277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a090909636173652031363a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277374617475736261722e68746d6c272c7469746c653a2753746174757320426172277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652031373a0a0909097b0a090909097661722074616273203d20546974616e69756d2e55492e6765745461627328293b0a09090909746162735b305d2e73657442616467652831293b0a09090909746162735b315d2e73657442616467652832293b0a09090909746162735b325d2e73657442616467652833293b0a09090909746162735b335d2e73657442616467652834293b0a090909090a09090909627265616b3b0a0909097d0a090909636173652031383a0a0909097b0a0909090976617220627574746f6e426172203d20546974616e69756d2e55492e637265617465427574746f6e426172287b6c6162656c733a5b27427574746f6e31272c2027427574746f6e32275d2c636f6c6f723a2723333336363939277d293b0a09090909627574746f6e4261722e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a090909097b0a09090909097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0909090909612e7365745469746c652827427574746f6e626172205465737427293b0a0909090909612e7365744d6573736167652827596f7520636c69636b20627574746f6e20696e646578203d2027202b20652e696e646578293b0a0909090909612e73686f7728293b0a090909097d293b0a0909090976617220627574746f6e42617232203d20546974616e69756d2e55492e637265617465427574746f6e426172287b0a09090909096c6162656c733a5b27427574746f6e35272c2027427574746f6e36272c27427574746f6e37272c2027427574746f6e38272c27427574746f6e39275d2c0a0909090909636f6c6f723a2723333336363939270a090909097d293b0a09090909627574746f6e426172322e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a090909097b0a09090909097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0909090909612e7365745469746c652827427574746f6e626172205465737427293b0a0909090909612e7365744d6573736167652827596f7520636c69636b20627574746f6e20696e646578203d2027202b20652e696e646578293b0a0909090909612e73686f7728293b0a090909097d293b0a090909090a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27627574746f6e6261722e68746d6c272c7469746c653a27427574746f6e20426172277d293b0a0909090977696e2e7365745469746c65436f6e74726f6c28627574746f6e426172293b0a0909090977696e2e736574546f6f6c626172285b627574746f6e426172325d290a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a0a09090909627265616b3b0a0909097d0a090909636173652031393a0a0909097b0a0909090976617220746162626172203d20546974616e69756d2e55492e637265617465546162626564426172287b6c6162656c733a5b2754616231272c202754616232275d2c696e6465783a317d293b0a0909090976617220666c65785370616365203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090909090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464c455849424c455f53504143450a090909097d293b0a090909097661722074616262617232203d20546974616e69756d2e55492e637265617465546162626564426172287b0a09090909096c6162656c733a5b2754616235272c202754616236272c2754616237272c202754616238272c2754616239275d2c0a09090909096261636b67726f756e64436f6c6f723a2723333336363939272c0a0909090909696e6465783a320a090909097d293b0a090909090a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277461626261722e68746d6c272c7469746c653a2754616220426172277d293b0a0909090977696e2e736574546f6f6c626172285b666c657853706163652c746162626172322c666c657853706163655d293b0a0909090977696e2e73657452696768744e6176427574746f6e28746162626172293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0a090909636173652032303a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a276e61766261725f7469746c652e68746d6c272c7469746c653a274e6176626172205469746c65277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652032313a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a276e61766261725f72696768742e68746d6c272c7469746c653a274e6176626172205269676874277d293b0a090909097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090909090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e54524153480a090909097d293b0a09090909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a090909097b0a090909090976617220613d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0909090909612e7365745469746c6528274e6176626172205269676874205465737427293b0a0909090909612e7365744d6573736167652827796f7520636c69636b65642074686520747261736820627574746f6e27293b0a0909090909612e73686f7728293b0a090909097d293b0a0909090977696e2e73657452696768744e6176427574746f6e2862293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a0a09090909627265616b3b0a0909097d0a090909636173652032323a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a276e61766261725f6c6566742e68746d6c272c7469746c653a274e6176626172204c656674277d293b0a090909097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090909090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e54524153480a090909097d293b0a09090909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a090909097b0a090909090976617220613d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0909090909612e7365745469746c6528274e6176626172204c656674205465737427293b0a0909090909612e7365744d6573736167652827796f7520636c69636b65642074686520747261736820627574746f6e27293b0a0909090909612e73686f7728293b0a090909097d293b0a0909090977696e2e7365744c6566744e6176427574746f6e2862293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652032333a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a276e61766261725f686964652e68746d6c272c7469746c653a274e61766261722048696465272c686964654e61764261723a747275657d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652032343a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a276e61766261725f636f6c6f722e68746d6c272c7469746c653a2742617220436f6c6f72277d293b0a0909090977696e2e736574426172436f6c6f7228272331313131313127290a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652032353a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27746f6f6c6261725f6c6566742e68746d6c272c7469746c653a27546f6f6c626172204c656674277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652032363a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27746f6f6c6261725f6d6964646c652e68746d6c272c7469746c653a27546f6f6c626172204d6964646c65277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652032373a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27746f6f6c6261725f72696768742e68746d6c272c7469746c653a27546f6f6c626172205269676874277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652032383a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27746f6f6c6261725f6c6f74732e68746d6c272c0a09090909097469746c653a27546f6f6c626172204d616e7920427574746f6e73272c686964655461624261723a747275652c626172436f6c6f723a2723303030303030277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652032393a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27746f6f6c6261725f666978656473706163652e68746d6c272c0a09090909097469746c653a27546f6f6c626172204669786564205370616365272c686964655461624261723a747275657d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652033303a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27746f6f6c6261725f6869646573686f772e68746d6c272c0a09090909097469746c653a27546f6f6c62617220486964652f53686f77277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0a090909636173652033313a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b0a090909090975726c3a277461626261725f686964652e68746d6c272c0a09090909097469746c653a275461626261722048696465272c0a0909090909686964655461624261723a747275652c0a0909090909686964654e61764261723a747275650a090909097d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652033323a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27616e696d617465645f66616c73652e68746d6c272c7469746c653a27416e696d617465642046616c7365277d293b0a0909090977696e2e6f70656e287b616e696d617465643a66616c73657d293b09090a09090909627265616b3b0a0909097d0a0a090909636173652033333a0a0909097b0a0909090969662028546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427290a090909097b0a0909090909766172206e6f74696669636174696f6e203d20546974616e69756d2e55492e6372656174654e6f74696669636174696f6e28290a09090909096e6f74696669636174696f6e2e7365744d657373616765282748656c6c6f20576f726c6427293b0a09090909096e6f74696669636174696f6e2e73686f7728293b0a090909097d0a09090909627265616b3b0a0909097d0a0909090a090909636173652033343a0a0909097b0a0909090969662028546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427290a090909097b0a090909090a0909090909766172206d656e75203d20546974616e69756d2e55492e6372656174654d656e7528293b0a0a09090909096d656e752e6164644974656d2822476f6f676c65222c2066756e6374696f6e2829207b0a090909090909546974616e69756d2e506c6174666f726d2e6f70656e55524c2827687474703a2f2f676f6f676c652e636f6d27293b0a0909090909097d202c20546974616e69756d2e55492e416e64726f69642e53797374656d49636f6e2e414444293b0a09090909096d656e752e6164644974656d28225961686f6f222c2066756e6374696f6e2829207b0a090909090909546974616e69756d2e506c6174666f726d2e6f70656e55524c2827687474703a2f2f7961686f6f2e636f6d27293b0a0909090909097d2c20546974616e69756d2e55492e416e64726f69642e53797374656d49636f6e2e414444293b0a0a0909090909546974616e69756d2e55492e7365744d656e75286d656e75293b0a090909097d0a09090909627265616b3b0a090909090a0909097d0a0909090a090909636173652033353a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2764796e616d69635f636f6e74656e742e68746d6c272c7469746c653a2744796e616d696320436f6e74656e74277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0a090909636173652033363a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277461626368616e67652e68746d6c272c7469746c653a27546162204368616e6765277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0a09097d0a097d293b0a0a09546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287461626c6556696577293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577293b0a090a092f2f2046554e4354494f4e530a090a092f2f0a092f2f2020616c65727420746573740a092f2f0a0966756e6374696f6e2073686f77416c65727428290a097b0a09097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f67287b7469746c653a27416c6572742054657374272c6d6573736167653a27697420776f726b6564272c627574746f6e4e616d65733a5b274f4b272c2743616e63656c275d7d293b0a0909612e73686f7728293b0a09097661722062203d20546974616e69756d2e55492e637265617465416c6572744469616c6f67287b627574746f6e4e616d65733a5b274f4b275d7d293b0a0909622e7365745469746c652827436c69636b204576656e7427293b0a0909612e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a09097b0a09090969662028652e696e646578203d3d2030290a0909097b0a09090909622e7365744d6573736167652827596f7520636c69636b6564204f4b27293b0a0909097d0a090909656c73650a0909097b0a09090909622e7365744d6573736167652827596f7520636c69636b65642043616e63656c27293b0a0909097d0a090909622e73686f7728293b0a09097d293b0a09090a097d3b0a0a092f2f0a092f2f2073686f77206f7074696f6e73206469616c6f670a092f2f0a0966756e6374696f6e2073686f774f7074696f6e734469616c6f6728290a097b0a09097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0909612e7365745469746c6528274469616c6f67205465737427293b0a0909612e736574427574746f6e4e616d6573285b274f4b275d293b0a09090a09092f2f20637265617465206469616c6f670a0909766172206469616c6f67203d20546974616e69756d2e55492e6372656174654f7074696f6e4469616c6f6728293b0a0a09092f2f2073657420627574746f6e207469746c65730a09096469616c6f672e7365744f7074696f6e73285b225069636b2041222c225069636b2042222c2263616e63656c225d293b0a0a09092f2f2073657420696e64657820666f7220646573747275637469766520627574746f6e20284950484f4e45204f4e4c5929202d206d616b657320627574746f6e205245440a09096469616c6f672e73657444657374727563746976652831293b0a0a09092f2f2073657420696e64657820666f722063616e63656c20284950484f4e45204f4e4c59290a09096469616c6f672e73657443616e63656c2832293b0a0a09092f2f20736574207469746c650a09096469616c6f672e7365745469746c6528274d79205469746c6527293b0a0a09092f2f20616464206576656e74206c697374656e65720a09096469616c6f672e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b656420627574746f6e20696e6465782027202b20652e696e646578293b0a090909612e73686f7728293b0a09097d293b0a0a09092f2f2073686f77206469616c6f670a09096469616c6f672e73686f7728293b0a09090a097d3b0a090a0a093c2f7363726970743e0a3c2f686561643e0a3c626f64793e0a090a3c2f626f64793e0a3c2f68746d6c3e&quot;);
+=======
+	#pragma mark app://com.nolanwright.kitchensink/ui.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/ui.html
+	- (NSData*) pageNamedUi;
+	{
+		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a093c7469746c653e5549204150493c2f7469746c653e0a0a093c7363726970743e0a090a09546974616e69756d2e55492e6164644576656e744c697374656e657228277461626368616e6765272c66756e6374696f6e2865290a097b0a0909546974616e69756d2e4150492e696e666f28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e205441424348414e474520696e6465782027202b20652e696e64657820202b2027206e616d652027202b20652e6e616d65202b20272070726576496e6465782027202b20652e70726576496e646578202b202720707265764e616d652027202b20652e707265764e616d65293b0a097d293b0a090a092f2f206461746120666f72207461626c65766965770a097661722064617461203d205b0a09097b7469746c653a27416c657274277d2c0a09097b7469746c653a274f7074696f6e73204469616c6f67277d2c0a09097b7469746c653a2757696e646f7720466f637573204576656e7473272c6861734368696c643a747275657d2c0a09097b7469746c653a27536c69646572272c6861734368696c643a747275657d2c0a09097b7469746c653a2754657874204669656c6473272c6861734368696c643a747275657d2c0a09097b7469746c653a2754657874204669656c64204576656e7473272c6861734368696c643a747275657d2c0a09097b7469746c653a27436f6e74656e7420427574746f6e73272c6861734368696c643a747275657d2c0a09097b7469746c653a27537769746368272c6861734368696c643a747275657d2c0a09097b7469746c653a2750726f677265737320426172272c6861734368696c643a747275657d2c0a09097b7469746c653a27416374697669747920496e64696361746f72272c6861734368696c643a747275657d2c0a09097b7469746c653a27436f6d706f73697465205669657720272c6861734368696c643a747275657d2c0a09097b7469746c653a275461626c6556696577202d2044656c657465272c6861734368696c643a747275657d2c0a09097b7469746c653a275461626c6556696577202d20416464272c6861734368696c643a747275657d2c0a09097b7469746c653a275461626c6556696577202d20557064617465272c6861734368696c643a747275657d2c0a09097b7469746c653a275461626c6556696577202d20536574272c6861734368696c643a747275657d2c0a09097b7469746c653a2746756c6c73637265656e272c6861734368696c643a747275657d2c0a09097b7469746c653a275374617475732042617220286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a275365742042616467652049636f6e20286950686f6e6529277d2c0a09097b7469746c653a27427574746f6e2042617220286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a275461626265642042617220286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a274e6176626172202d205469746c6520286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a274e6176626172202d20526967687420286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a274e6176626172202d204c65667420286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a274e6176626172202d204869646520286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a2742617220436f6c6f7220286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a27546f6f6c626172202d204c65667420416c69676e20286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a27546f6f6c626172202d204d6964646c6520416c69676e20286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a27546f6f6c626172202d20526967687420416c69676e20286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a27546f6f6c626172202d204d616e7920427574746f6e7320286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a27546f6f6c626172202d20466978656420537061636520286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a27546f6f6c626172202d20486964652f53686f7720286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a27546162626172202d204869646520286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a274f70656e2028616e696d617465642066616c73652920286950686f6e6529272c6861734368696c643a747275657d2c0a09097b7469746c653a274e6f74696669636174696f6e732028416e64726f696429277d2c0a09097b7469746c653a274d656e752028416e64726f696429277d2c0a09097b7469746c653a2744796e616d696320436f6e74656e74272c206861734368696c643a747275657d2c0a09097b7469746c653a27546162204368616e6765272c206861734368696c643a747275657d0a09090a095d3b0a090a092f2f207461626c6576696577206f626a6563740a09766172207461626c6556696577203d20546974616e69756d2e55492e6372656174655461626c6556696577287b646174613a646174612c7469746c653a27554920415049272c69735072696d6172793a747275657d2c2066756e6374696f6e286576656e744f626a65637429200a097b0a09092f2f2068616e646c65207461626c657669657720636c69636b206576656e74730a090976617220696478203d206576656e744f626a6563742e696e6465783b0a090973776974636828696478290a09097b0a0909096361736520303a0a0909097b0a0909090973686f77416c65727428293b0a09090909627265616b3b0a0909097d0a0909096361736520313a0a0909097b0a0909090973686f774f7074696f6e734469616c6f6728293b0a09090909627265616b3b0a0909097d0a0909096361736520323a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2777696e646f775f756e666f6375732e68746d6c272c7469746c653a27466f637573204576656e7473272c20626172436f6c6f723a2723333336363939277d293b090909090a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a0909096361736520333a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27736c696465722e68746d6c272c7469746c653a27536c69646572277d293b0a090909090a0909090969662028546974616e69756d2e506c6174666f726d2e6e616d6520213d2027616e64726f696427290a090909097b0a090909090976617220736c69646572203d20546974616e69756d2e55492e637265617465536c69646572287b77696474683a3130302c6d696e3a302c6d61783a31302c76616c75653a307d293b0a090909090977696e2e7365745469746c65436f6e74726f6c28736c69646572293b0a090909097d0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0909096361736520343a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27746578746669656c64732e68746d6c272c7469746c653a2754657874204669656c6473277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0909096361736520353a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27746578746669656c645f6576656e74732e68746d6c272c7469746c653a2754657874204669656c64204576656e7473277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0a0909096361736520363a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27627574746f6e732e68746d6c272c7469746c653a27436f6e74656e7420427574746f6e73277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0909096361736520373a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277377697463682e68746d6c272c7469746c653a27537769746368277d293b0a0909090969662028546974616e69756d2e506c6174666f726d2e6e616d6520213d2027616e64726f696427290a090909097b0a090909090976617220696e7374203d20546974616e69756d2e55492e637265617465537769746368287b76616c75653a747275652c77696474683a39357d293b0a090909090977696e2e7365745469746c65436f6e74726f6c28696e7374290a090909097d0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0909096361736520383a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2770726f67726573735f626172732e68746d6c272c7469746c653a2750726f677265737320426172277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0a0909096361736520393a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2761637469766974795f696e64696361746f72732e68746d6c272c7469746c653a27496e64696361746f7273277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0a0a090909636173652031303a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27636f6d706f736974652e68746d6c272c7469746c653a27436f6d706f73697465277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0a090909636173652031313a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277461626c65766965775f64656c6574652e68746d6c272c7469746c653a275461626c65566965772044656c657465277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652031323a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277461626c65766965775f6164642e68746d6c272c7469746c653a275461626c655669657720416464277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652031333a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277461626c65766965775f7570646174652e68746d6c272c7469746c653a275461626c655669657720557064617465277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652031343a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277461626c65766965775f7365742e68746d6c272c7469746c653a275461626c655669657720536574277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0909090a090909636173652031353a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2766756c6c73637265656e2e68746d6c272c66756c6c73637265656e3a747275652c7469746c653a2746756c6c73637265656e277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b0a09090909627265616b3b0a0909097d0a090909636173652031363a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277374617475736261722e68746d6c272c7469746c653a2753746174757320426172277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652031373a0a0909097b0a090909097661722074616273203d20546974616e69756d2e55492e6765745461627328293b0a09090909746162735b305d2e73657442616467652831293b0a09090909746162735b315d2e73657442616467652832293b0a09090909746162735b325d2e73657442616467652833293b0a09090909746162735b335d2e73657442616467652834293b0a090909090a09090909627265616b3b0a0909097d0a090909636173652031383a0a0909097b0a0909090976617220627574746f6e426172203d20546974616e69756d2e55492e637265617465427574746f6e426172287b6c6162656c733a5b27427574746f6e31272c2027427574746f6e32275d2c636f6c6f723a2723333336363939277d293b0a09090909627574746f6e4261722e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a090909097b0a09090909097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0909090909612e7365745469746c652827427574746f6e626172205465737427293b0a0909090909612e7365744d6573736167652827596f7520636c69636b20627574746f6e20696e646578203d2027202b20652e696e646578293b0a0909090909612e73686f7728293b0a090909097d293b0a0909090976617220627574746f6e42617232203d20546974616e69756d2e55492e637265617465427574746f6e426172287b0a09090909096c6162656c733a5b27427574746f6e35272c2027427574746f6e36272c27427574746f6e37272c2027427574746f6e38272c27427574746f6e39275d2c0a0909090909636f6c6f723a2723333336363939270a090909097d293b0a09090909627574746f6e426172322e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a090909097b0a09090909097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0909090909612e7365745469746c652827427574746f6e626172205465737427293b0a0909090909612e7365744d6573736167652827596f7520636c69636b20627574746f6e20696e646578203d2027202b20652e696e646578293b0a0909090909612e73686f7728293b0a090909097d293b0a090909090a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27627574746f6e6261722e68746d6c272c7469746c653a27427574746f6e20426172277d293b0a0909090977696e2e7365745469746c65436f6e74726f6c28627574746f6e426172293b0a0909090977696e2e736574546f6f6c626172285b627574746f6e426172325d290a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a0a09090909627265616b3b0a0909097d0a090909636173652031393a0a0909097b0a0909090976617220746162626172203d20546974616e69756d2e55492e637265617465546162626564426172287b6c6162656c733a5b2754616231272c202754616232275d2c696e6465783a317d293b0a0909090976617220666c65785370616365203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090909090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e464c455849424c455f53504143450a090909097d293b0a090909097661722074616262617232203d20546974616e69756d2e55492e637265617465546162626564426172287b0a09090909096c6162656c733a5b2754616235272c202754616236272c2754616237272c202754616238272c2754616239275d2c0a09090909096261636b67726f756e64436f6c6f723a2723333336363939272c0a0909090909696e6465783a320a090909097d293b0a090909090a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277461626261722e68746d6c272c7469746c653a2754616220426172277d293b0a0909090977696e2e736574546f6f6c626172285b666c657853706163652c746162626172322c666c657853706163655d293b0a0909090977696e2e73657452696768744e6176427574746f6e28746162626172293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0a090909636173652032303a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a276e61766261725f7469746c652e68746d6c272c7469746c653a274e6176626172205469746c65277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652032313a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a276e61766261725f72696768742e68746d6c272c7469746c653a274e6176626172205269676874277d293b0a090909097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090909090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e54524153480a090909097d293b0a09090909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a090909097b0a090909090976617220613d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0909090909612e7365745469746c6528274e6176626172205269676874205465737427293b0a0909090909612e7365744d6573736167652827796f7520636c69636b65642074686520747261736820627574746f6e27293b0a0909090909612e73686f7728293b0a090909097d293b0a0909090977696e2e73657452696768744e6176427574746f6e2862293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a0a09090909627265616b3b0a0909097d0a090909636173652032323a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a276e61766261725f6c6566742e68746d6c272c7469746c653a274e6176626172204c656674277d293b0a090909097661722062203d20546974616e69756d2e55492e637265617465427574746f6e287b0a090909090973797374656d427574746f6e3a546974616e69756d2e55492e6950686f6e652e53797374656d427574746f6e2e54524153480a090909097d293b0a09090909622e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a090909097b0a090909090976617220613d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0909090909612e7365745469746c6528274e6176626172204c656674205465737427293b0a0909090909612e7365744d6573736167652827796f7520636c69636b65642074686520747261736820627574746f6e27293b0a0909090909612e73686f7728293b0a090909097d293b0a0909090977696e2e7365744c6566744e6176427574746f6e2862293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652032333a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a276e61766261725f686964652e68746d6c272c7469746c653a274e61766261722048696465272c686964654e61764261723a747275657d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652032343a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a276e61766261725f636f6c6f722e68746d6c272c7469746c653a2742617220436f6c6f72277d293b0a0909090977696e2e736574426172436f6c6f7228272331313131313127290a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652032353a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27746f6f6c6261725f6c6566742e68746d6c272c7469746c653a27546f6f6c626172204c656674277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652032363a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27746f6f6c6261725f6d6964646c652e68746d6c272c7469746c653a27546f6f6c626172204d6964646c65277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652032373a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27746f6f6c6261725f72696768742e68746d6c272c7469746c653a27546f6f6c626172205269676874277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652032383a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27746f6f6c6261725f6c6f74732e68746d6c272c0a09090909097469746c653a27546f6f6c626172204d616e7920427574746f6e73272c686964655461624261723a747275652c626172436f6c6f723a2723303030303030277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652032393a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27746f6f6c6261725f666978656473706163652e68746d6c272c0a09090909097469746c653a27546f6f6c626172204669786564205370616365272c686964655461624261723a747275657d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652033303a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27746f6f6c6261725f6869646573686f772e68746d6c272c0a09090909097469746c653a27546f6f6c62617220486964652f53686f77277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0a090909636173652033313a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b0a090909090975726c3a277461626261725f686964652e68746d6c272c0a09090909097469746c653a275461626261722048696465272c0a0909090909686964655461624261723a747275652c0a0909090909686964654e61764261723a747275650a090909097d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a090909636173652033323a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a27616e696d617465645f66616c73652e68746d6c272c7469746c653a27416e696d617465642046616c7365277d293b0a0909090977696e2e6f70656e287b616e696d617465643a66616c73657d293b09090a09090909627265616b3b0a0909097d0a0a090909636173652033333a0a0909097b0a0909090969662028546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427290a090909097b0a0909090909766172206e6f74696669636174696f6e203d20546974616e69756d2e55492e6372656174654e6f74696669636174696f6e28290a09090909096e6f74696669636174696f6e2e7365744d657373616765282748656c6c6f20576f726c6427293b0a09090909096e6f74696669636174696f6e2e73686f7728293b0a090909097d0a09090909627265616b3b0a0909097d0a0909090a090909636173652033343a0a0909097b0a0909090969662028546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427290a090909097b0a090909090a0909090909766172206d656e75203d20546974616e69756d2e55492e6372656174654d656e7528293b0a0a09090909096d656e752e6164644974656d2822476f6f676c65222c2066756e6374696f6e2829207b0a090909090909546974616e69756d2e506c6174666f726d2e6f70656e55524c2827687474703a2f2f676f6f676c652e636f6d27293b0a0909090909097d202c20546974616e69756d2e55492e416e64726f69642e53797374656d49636f6e2e414444293b0a09090909096d656e752e6164644974656d28225961686f6f222c2066756e6374696f6e2829207b0a090909090909546974616e69756d2e506c6174666f726d2e6f70656e55524c2827687474703a2f2f7961686f6f2e636f6d27293b0a0909090909097d2c20546974616e69756d2e55492e416e64726f69642e53797374656d49636f6e2e414444293b0a0a0909090909546974616e69756d2e55492e7365744d656e75286d656e75293b0a090909097d0a09090909627265616b3b0a090909090a0909097d0a0909090a090909636173652033353a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a2764796e616d69635f636f6e74656e742e68746d6c272c7469746c653a2744796e616d696320436f6e74656e74277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0a090909636173652033363a0a0909097b0a090909097661722077696e203d20546974616e69756d2e55492e63726561746557696e646f77287b75726c3a277461626368616e67652e68746d6c272c7469746c653a27546162204368616e6765277d293b0a0909090977696e2e6f70656e287b616e696d617465643a747275657d293b09090a09090909627265616b3b0a0909097d0a0a09097d0a097d293b0a0a09546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287461626c6556696577293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577293b0a090a092f2f2046554e4354494f4e530a090a092f2f0a092f2f2020616c65727420746573740a092f2f0a0966756e6374696f6e2073686f77416c65727428290a097b0a09097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f67287b7469746c653a27416c6572742054657374272c6d6573736167653a27697420776f726b6564272c627574746f6e4e616d65733a5b274f4b272c2743616e63656c275d7d293b0a0909612e73686f7728293b0a09097661722062203d20546974616e69756d2e55492e637265617465416c6572744469616c6f67287b627574746f6e4e616d65733a5b274f4b275d7d293b0a0909622e7365745469746c652827436c69636b204576656e7427293b0a0909612e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a09097b0a09090969662028652e696e646578203d3d2030290a0909097b0a09090909622e7365744d6573736167652827596f7520636c69636b6564204f4b27293b0a0909097d0a090909656c73650a0909097b0a09090909622e7365744d6573736167652827596f7520636c69636b65642043616e63656c27293b0a0909097d0a090909622e73686f7728293b0a09097d293b0a09090a097d3b0a0a092f2f0a092f2f2073686f77206f7074696f6e73206469616c6f670a092f2f0a0966756e6374696f6e2073686f774f7074696f6e734469616c6f6728290a097b0a09097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f6728293b0a0909612e7365745469746c6528274469616c6f67205465737427293b0a0909612e736574427574746f6e4e616d6573285b274f4b275d293b0a09090a09092f2f20637265617465206469616c6f670a0909766172206469616c6f67203d20546974616e69756d2e55492e6372656174654f7074696f6e4469616c6f6728293b0a0a09092f2f2073657420627574746f6e207469746c65730a09096469616c6f672e7365744f7074696f6e73285b225069636b2041222c225069636b2042222c2263616e63656c225d293b0a0a09092f2f2073657420696e64657820666f7220646573747275637469766520627574746f6e20284950484f4e45204f4e4c5929202d206d616b657320627574746f6e205245440a09096469616c6f672e73657444657374727563746976652831293b0a0a09092f2f2073657420696e64657820666f722063616e63656c20284950484f4e45204f4e4c59290a09096469616c6f672e73657443616e63656c2832293b0a0a09092f2f20736574207469746c650a09096469616c6f672e7365745469746c6528274d79205469746c6527293b0a0a09092f2f20616464206576656e74206c697374656e65720a09096469616c6f672e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a09097b0a090909612e7365744d6573736167652827796f7520636c69636b656420627574746f6e20696e6465782027202b20652e696e646578293b0a090909612e73686f7728293b0a09097d293b0a0a09092f2f2073686f77206469616c6f670a09096469616c6f672e73686f7728293b0a09090a097d3b0a090a0a093c2f7363726970743e0a3c2f686561643e0a3c626f64793e0a090a3c2f626f64793e0a3c2f68746d6c3e&quot;);
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	   	if ([d length] == 0) return nil;
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/views.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/views.html
 	- (NSData*) pageNamedViews;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a093c7363726970743e0a09546974616e69756d2e55492e6164644576656e744c697374656e657228277461626368616e6765272c66756e6374696f6e2865290a097b0a0909546974616e69756d2e4150492e696e666f28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e205441424348414e474520696e6465782027202b20652e696e64657820202b2027206e616d652027202b20652e6e616d65202b20272070726576496e6465782027202b20652e70726576496e646578202b202720707265764e616d652027202b20652e707265764e616d65293b0a097d293b0a09090a09092f2f206372656174652077656220766965772076696577730a0909766172207765625669657731203d20546974616e69756d2e55492e63726561746557656256696577287b75726c3a277669657773312e68746d6c272c206e616d653a276e756d62657231277d293b0a0909766172207765625669657732203d20546974616e69756d2e55492e63726561746557656256696577287b75726c3a277669657773322e68746d6c277d293b0a0909766172207765625669657733203d20546974616e69756d2e55492e63726561746557656256696577287b75726c3a277669657773332e68746d6c277d293b0a0a09092f2f0a09092f2f2067726f7570656420766965770a09092f2f0a09097661722067726f7570656456696577203d206e756c6c3b0a090969662028546974616e69756d2e506c6174666f726d2e6e616d6520213d2027616e64726f696427290a09097b0a0909092f2f206372656174652067726f7570656420766965770a0909097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f67287b7469746c653a2747726f7570656420566965772054657374272c20627574746f6e4e616d65733a5b274f4b275d7d293b0a0a09090976617220627574746f6e44617461203d205b0a090909097b7469746c653a2753686f7720566965772031277d2c0a090909097b7469746c653a2753686f7720566965772032277d2c0a090909097b7469746c653a2753686f7720566965772033277d2c0a090909097b7469746c653a2753686f7720566965772034277d2c0a090909097b7469746c653a2753686f7720566965772035277d2c0a090909097b7469746c653a2753686f7720566965772036277d2c0a0a0909095d3b0a0a09090976617220627574746f6e53656374696f6e203d20546974616e69756d2e55492e6950686f6e652e63726561746547726f7570656453656374696f6e287b0a09090909666f6f7465723a27427574746f6e2047726f757020466f6f746572272c0a090909096865616465723a27427574746f6e2047726f7570272c0a09090909747970653a27627574746f6e272c0a09090909646174613a627574746f6e446174610a0909097d293b0a090909627574746f6e53656374696f6e2e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a0909097b0a090909097377697463682028652e726f77290a090909097b0a09090909096361736520303a0a09090909097b0a090909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577312c7b0a09090909090909616e696d617465643a747275652c0a09090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a09090909090909616e696d6174696f6e4475726174696f6e3a313030300a0909090909097d293b0a090909090909627265616b3b0a09090909097d0a09090909096361736520313a0a09090909097b0a090909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577322c7b0a09090909090909616e696d617465643a747275652c0a09090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a09090909090909616e696d6174696f6e4475726174696f6e3a313030300a0909090909097d293b0a090909090909627265616b3b0a0a09090909097d0a09090909096361736520323a0a09090909097b0a090909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577332c7b0a09090909090909616e696d617465643a747275652c0a09090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a09090909090909616e696d6174696f6e4475726174696f6e3a313030300a0909090909097d293b0a090909090909627265616b3b0a0a09090909097d0a09090909096361736520333a0a09090909097b0a090909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c65566965772c7b0a09090909090909616e696d617465643a747275652c0a09090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a09090909090909616e696d6174696f6e4475726174696f6e3a313030300a0909090909097d293b0a090909090909627265616b3b0a0a09090909097d0a09090909096361736520343a0a09090909097b0a090909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577322c7b0a09090909090909616e696d617465643a747275652c0a09090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a09090909090909616e696d6174696f6e4475726174696f6e3a313030300a0909090909097d293b0a090909090909627265616b3b0a0a09090909097d0a09090909096361736520353a0a09090909097b0a090909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577332c7b0a09090909090909616e696d617465643a747275652c0a09090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a09090909090909616e696d6174696f6e4475726174696f6e3a313030300a0909090909097d293b0a090909090909627265616b3b0a0a09090909097d0a0a090909097d0a0909097d293b0a0a090909766172206f7074696f6e44617461203d205b0a090909097b7469746c653a274f7074696f6e2031277d2c0a090909097b7469746c653a274f7074696f6e203227202c2073656c65637465643a747275657d2c0a090909097b7469746c653a274f7074696f6e2033277d0a0909095d3b0a0a090909766172206f7074696f6e53656374696f6e203d20546974616e69756d2e55492e6950686f6e652e63726561746547726f7570656453656374696f6e287b0a090909096865616465723a274f7074696f6e2047726f7570272c0a09090909747970653a276f7074696f6e272c0a09090909646174613a6f7074696f6e446174610a0909097d293b0a0909096f7074696f6e53656374696f6e2e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a0909097b0a09090909612e7365744d6573736167652827596f7520636c69636b656420696e6465782027202b20652e696e646578202b20272073656374696f6e20726f772027202b20652e726f77202b20272073656374696f6e2027202b20652e73656374696f6e293b0a09090909612e73686f7728293b0a0909097d293b0a0a09090976617220737769746368496e7374616e6365203d20546974616e69756d2e55492e637265617465537769746368287b76616c75653a747275652c77696474683a39357d293b0a090909737769746368496e7374616e63652e6164644576656e744c697374656e657228276368616e6765272c66756e6374696f6e2865290a0909097b0a09090909612e7365744d65737361676528652e76616c7565290a09090909612e73686f7728293b0a0909097d290a0a09090976617220736c69646572496e7374616e6365203d20546974616e69756d2e55492e637265617465536c69646572287b6d696e3a302c6d61783a31302c76616c75653a352c2077696474683a3135307d293b0a090909736c69646572496e7374616e63652e6164644576656e744c697374656e657228276368616e6765272c66756e6374696f6e2865290a0909097b0a09090909612e7365744d65737361676528652e76616c7565290a09090909612e73686f7728293b0a0909097d290a0909097661722074657874496e7374616e6365203d20546974616e69756d2e55492e637265617465546578744669656c64287b76616c75653a274e6f6c616e272c77696474683a35307d293b0a09090974657874496e7374616e63652e6164644576656e744c697374656e657228276368616e6765272c66756e6374696f6e2865290a0909097b0a09090909612e7365744d65737361676528652e76616c7565290a09090909612e73686f7728293b0a0909097d290a09090974657874496e7374616e63652e6164644576656e744c697374656e6572282772657475726e272c66756e6374696f6e2865290a0909097b0a0909090974657874496e7374616e63652e626c757228293b0a0909097d290a0a09090976617220696e70757444617461203d205b0a090909097b7469746c653a27496e7075742031272c20696e7075743a737769746368496e7374616e63652c20696d6167653a276954756e65732e706e67272c20666f6f3a27626172277d2c0a090909097b7469746c653a27536f756e64272c20696e7075743a736c69646572496e7374616e63652c20696d6167653a274d61696c2e706e67277d2c0a090909097b7469746c653a274e616d65272c20696e7075743a74657874496e7374616e63657d2c0a090909097b7469746c653a27496e7075742032272c2076616c75653a27666f6f272c206861734368696c643a747275657d2c0a090909097b7469746c653a27496e7075742033277d0a0909095d3b0a0a09090976617220696e70757453656374696f6e203d20546974616e69756d2e55492e6950686f6e652e63726561746547726f7570656453656374696f6e287b0a090909096865616465723a27496e7075742047726f7570272c0a09090909747970653a27696e707574272c0a09090909646174613a696e707574446174610a0909097d293b0a090909696e70757453656374696f6e2e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a0909097b0a09090909612e7365744d6573736167652827596f7520636c69636b656420696e6465782027202b20652e696e646578202b20272073656374696f6e20726f772027202b20652e726f77202b20272073656374696f6e2027202b20652e73656374696f6e200a09090909092b202720726f77446174612027202b20652e726f7744617461293b0a09090909612e73686f7728293b0a0909097d293b0a0a0909092f2f206372656174652067726f7570656420766965770a09090967726f7570656456696577203d20546974616e69756d2e55492e6950686f6e652e63726561746547726f757065645669657728293b0a09090967726f75706564566965772e61646453656374696f6e286f7074696f6e53656374696f6e293b0a09090967726f75706564566965772e61646453656374696f6e28627574746f6e53656374696f6e293b0a09090967726f75706564566965772e61646453656374696f6e28696e70757453656374696f6e293b0a0a09097d0a0a09092f2f0a09092f2f205461626c65205669657720310a09092f2f0a0a09092f2f206461746120666f72207461626c65766965770a09097661722064617461203d205b0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e53686f77205669657720313c2f6469763e20272c2068617344657461696c3a747275652c206865616465723a2753656374696f6e2030277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e53686f77205669657720323c2f6469763e20272c206861734368696c643a747275657d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e53686f77205669657720333c2f6469763e20277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e53686f77205669657720353c2f6469763e20277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e53686f77205669657720363c2f6469763e20277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e53686f77205669657720373c2f6469763e20272c2068617344657461696c3a747275652c206865616465723a2753656374696f6e2031277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e3c696d67207372633d2250686f6e652e706e67222f3e20526f7720373c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f7720372064657461696c3c2f6469763e3c2f6469763e20272c206861734368696c643a747275657d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e526f7720383c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f7720382064657461696c3c2f6469763e3c2f6469763e20277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e526f7720393c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f7720392064657461696c3c2f6469763e3c2f6469763e20277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e526f772031303c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f772031302064657461696c3c2f6469763e3c2f6469763e20277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e526f772031313c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f772031312064657461696c3c2f6469763e3c2f6469763e20272c2068617344657461696c3a747275652c206865616465723a2753656374696f6e2032277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e526f772031323c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f772031322064657461696c3c2f6469763e3c2f6469763e20272c206861734368696c643a747275657d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e526f772031333c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f772031332064657461696c3c2f6469763e3c2f6469763e20277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e526f772031343c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f772031342064657461696c3c2f6469763e3c2f6469763e20277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e526f772031353c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f772031352064657461696c3c2f6469763e3c2f6469763e20277d0a0a09095d3b0a0a09092f2f207461626c6576696577206f626a6563740a0909766172207461626c6556696577203d20546974616e69756d2e55492e6372656174655461626c6556696577287b0a090909646174613a646174612c0a0909097469746c653a274865696768742f4865616465722f48544d4c2054657374272c0a090909726f774865696768743a38300a09097d2c66756e6374696f6e286576656e744f626a656374290a09097b0a09090973776974636820286576656e744f626a6563742e726f77290a0909097b0a090909096361736520303a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577312c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a090909097d0a090909096361736520313a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577322c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520323a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577332c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520333a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577322c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520343a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577332c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520353a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772867726f75706564566965772c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a0a0909097d0a0a0a09097d293b0a0a09092f2f0a09092f2f205461626c65205669657720320a09092f2f0a0a09092f2f206461746120666f72207461626c65766965770a0909766172206461746132203d205b0a0909097b7469746c653a2753686f7720566965772031272c6865616465723a2753656374696f6e2030277d2c0a0909097b7469746c653a2753686f7720566965772032277d2c0a0909097b7469746c653a2753686f7720566965772033277d2c0a0909097b7469746c653a2753686f7720566965772034277d2c0a0909097b7469746c653a2753686f7720566965772036277d2c0a0909097b7469746c653a2753686f7720566965772037277d2c0a0909097b7469746c653a27526f772037277d2c0a0909097b7469746c653a27526f772038277d2c0a0909097b7469746c653a27526f772039272c6865616465723a2753656374696f6e2031277d2c0a0909097b7469746c653a27526f77203130277d2c0a0909097b7469746c653a27526f77203131277d2c0a0909097b7469746c653a27526f77203132277d2c0a0909097b7469746c653a27526f77203133277d2c0a0909097b7469746c653a27526f77203134277d2c0a0909097b7469746c653a27526f77203135277d2c0a0909097b7469746c653a27526f77203136277d2c0a0909097b7469746c653a27526f77203137272c6865616465723a2753656374696f6e2032277d2c0a0909097b7469746c653a27526f77203138277d2c0a0909097b7469746c653a27526f77203139277d2c0a0909097b7469746c653a27526f77203230277d2c0a0909097b7469746c653a27526f77203231277d2c0a0909097b7469746c653a27526f77203232277d2c0a0909097b7469746c653a27526f77203233277d2c0a0909097b7469746c653a27526f77203234277d2c0a0909097b7469746c653a27526f77203235272c6865616465723a2753656374696f6e2033277d2c0a0909097b7469746c653a27526f77203236277d2c0a0909097b7469746c653a27526f77203237277d2c0a0909097b7469746c653a27526f77203238277d2c0a0909097b7469746c653a27526f77203239277d2c0a0909097b7469746c653a27526f77203330277d2c0a0909097b7469746c653a27526f77203331277d2c0a0909097b7469746c653a27526f77203332277d0a0a09095d3b0a0a09092f2f207461626c6576696577206f626a6563740a0909766172207461626c655669657732203d20546974616e69756d2e55492e6372656174655461626c6556696577287b646174613a64617461322c7469746c653a27486561646572204f6e6c792054657374277d2c2066756e6374696f6e286576656e744f626a656374290a09097b0a09090973776974636820286576656e744f626a6563742e726f77290a0909097b0a090909096361736520303a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577312c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a090909097d0a090909096361736520313a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577322c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520323a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577332c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520333a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c65566965772c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520343a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577332c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520353a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772867726f75706564566965772c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a0a0909097d0a0a09097d293b0a0a09092f2f0a09092f2f205461626c65205669657720330a09092f2f0a0a09092f2f206461746120666f72207461626c65766965770a0909766172206461746133203d205b0a0909097b7469746c653a2753686f7720566965772031272c68617344657461696c3a747275652c20696d6167653a2750686f6e652e706e67277d2c0a0909097b7469746c653a2753686f7720566965772032272c206861734368696c643a747275652c20696d6167653a275361666172692e706e67277d2c0a0909097b7469746c653a2753686f7720566965772033272c20696d6167653a276954756e65732e706e67277d2c0a0909097b7469746c653a2753686f7720566965772034272c20696d6167653a274d61696c2e706e67277d2c0a0909097b7469746c653a2753686f7720566965772035272c20696d6167653a274d61696c2e706e67277d2c0a0909097b7469746c653a2753686f7720566965772037272c20696d6167653a274d61696c2e706e67277d0a0a09095d3b0a0a09092f2f207461626c6576696577206f626a6563740a0909766172207461626c655669657733203d20546974616e69756d2e55492e6372656174655461626c6556696577287b646174613a64617461332c7469746c653a27496d6167652054657374277d2c2066756e6374696f6e286576656e744f626a656374290a09097b0a09090973776974636820286576656e744f626a6563742e726f77290a0909097b0a090909096361736520303a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577312c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a090909097d0a090909096361736520313a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577322c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520323a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577332c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520333a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c65566965772c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520343a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577322c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520353a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772867726f75706564566965772c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a0a0909097d0a0a09097d293b0a0a0909546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287765625669657731293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287765625669657732293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287765625669657733293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287461626c6556696577293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287461626c655669657732293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287461626c655669657733293b0a0a090969662028546974616e69756d2e506c6174666f726d2e6e616d6520213d2027616e64726f696427290a09097b0a090909546974616e69756d2e55492e63757272656e7457696e646f772e616464566965772867726f7570656456696577293b0a09097d0a0a0909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287765625669657731293b0a0a0a093c2f7363726970743e0a0a3c2f686561643e0a3c626f64793e0a0a0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
+=======
+	#pragma mark app://com.nolanwright.kitchensink/views.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/views.html
+	- (NSData*) pageNamedViews;
+	{
+		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a093c7363726970743e0a09546974616e69756d2e55492e6164644576656e744c697374656e657228277461626368616e6765272c66756e6374696f6e2865290a097b0a0909546974616e69756d2e4150492e696e666f28273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e205441424348414e474520696e6465782027202b20652e696e64657820202b2027206e616d652027202b20652e6e616d65202b20272070726576496e6465782027202b20652e70726576496e646578202b202720707265764e616d652027202b20652e707265764e616d65293b0a097d293b0a09090a09092f2f206372656174652077656220766965772076696577730a0909766172207765625669657731203d20546974616e69756d2e55492e63726561746557656256696577287b75726c3a277669657773312e68746d6c272c206e616d653a276e756d62657231277d293b0a0909766172207765625669657732203d20546974616e69756d2e55492e63726561746557656256696577287b75726c3a277669657773322e68746d6c277d293b0a0909766172207765625669657733203d20546974616e69756d2e55492e63726561746557656256696577287b75726c3a277669657773332e68746d6c277d293b0a0a09092f2f0a09092f2f2067726f7570656420766965770a09092f2f0a09097661722067726f7570656456696577203d206e756c6c3b0a090969662028546974616e69756d2e506c6174666f726d2e6e616d6520213d2027616e64726f696427290a09097b0a0909092f2f206372656174652067726f7570656420766965770a0909097661722061203d20546974616e69756d2e55492e637265617465416c6572744469616c6f67287b7469746c653a2747726f7570656420566965772054657374272c20627574746f6e4e616d65733a5b274f4b275d7d293b0a0a09090976617220627574746f6e44617461203d205b0a090909097b7469746c653a2753686f7720566965772031277d2c0a090909097b7469746c653a2753686f7720566965772032277d2c0a090909097b7469746c653a2753686f7720566965772033277d2c0a090909097b7469746c653a2753686f7720566965772034277d2c0a090909097b7469746c653a2753686f7720566965772035277d2c0a090909097b7469746c653a2753686f7720566965772036277d2c0a0a0909095d3b0a0a09090976617220627574746f6e53656374696f6e203d20546974616e69756d2e55492e6950686f6e652e63726561746547726f7570656453656374696f6e287b0a09090909666f6f7465723a27427574746f6e2047726f757020466f6f746572272c0a090909096865616465723a27427574746f6e2047726f7570272c0a09090909747970653a27627574746f6e272c0a09090909646174613a627574746f6e446174610a0909097d293b0a090909627574746f6e53656374696f6e2e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a0909097b0a090909097377697463682028652e726f77290a090909097b0a09090909096361736520303a0a09090909097b0a090909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577312c7b0a09090909090909616e696d617465643a747275652c0a09090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a09090909090909616e696d6174696f6e4475726174696f6e3a313030300a0909090909097d293b0a090909090909627265616b3b0a09090909097d0a09090909096361736520313a0a09090909097b0a090909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577322c7b0a09090909090909616e696d617465643a747275652c0a09090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a09090909090909616e696d6174696f6e4475726174696f6e3a313030300a0909090909097d293b0a090909090909627265616b3b0a0a09090909097d0a09090909096361736520323a0a09090909097b0a090909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577332c7b0a09090909090909616e696d617465643a747275652c0a09090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a09090909090909616e696d6174696f6e4475726174696f6e3a313030300a0909090909097d293b0a090909090909627265616b3b0a0a09090909097d0a09090909096361736520333a0a09090909097b0a090909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c65566965772c7b0a09090909090909616e696d617465643a747275652c0a09090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a09090909090909616e696d6174696f6e4475726174696f6e3a313030300a0909090909097d293b0a090909090909627265616b3b0a0a09090909097d0a09090909096361736520343a0a09090909097b0a090909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577322c7b0a09090909090909616e696d617465643a747275652c0a09090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a09090909090909616e696d6174696f6e4475726174696f6e3a313030300a0909090909097d293b0a090909090909627265616b3b0a0a09090909097d0a09090909096361736520353a0a09090909097b0a090909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577332c7b0a09090909090909616e696d617465643a747275652c0a09090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a09090909090909616e696d6174696f6e4475726174696f6e3a313030300a0909090909097d293b0a090909090909627265616b3b0a0a09090909097d0a0a090909097d0a0909097d293b0a0a090909766172206f7074696f6e44617461203d205b0a090909097b7469746c653a274f7074696f6e2031277d2c0a090909097b7469746c653a274f7074696f6e203227202c2073656c65637465643a747275657d2c0a090909097b7469746c653a274f7074696f6e2033277d0a0909095d3b0a0a090909766172206f7074696f6e53656374696f6e203d20546974616e69756d2e55492e6950686f6e652e63726561746547726f7570656453656374696f6e287b0a090909096865616465723a274f7074696f6e2047726f7570272c0a09090909747970653a276f7074696f6e272c0a09090909646174613a6f7074696f6e446174610a0909097d293b0a0909096f7074696f6e53656374696f6e2e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a0909097b0a09090909612e7365744d6573736167652827596f7520636c69636b656420696e6465782027202b20652e696e646578202b20272073656374696f6e20726f772027202b20652e726f77202b20272073656374696f6e2027202b20652e73656374696f6e293b0a09090909612e73686f7728293b0a0909097d293b0a0a09090976617220737769746368496e7374616e6365203d20546974616e69756d2e55492e637265617465537769746368287b76616c75653a747275652c77696474683a39357d293b0a090909737769746368496e7374616e63652e6164644576656e744c697374656e657228276368616e6765272c66756e6374696f6e2865290a0909097b0a09090909612e7365744d65737361676528652e76616c7565290a09090909612e73686f7728293b0a0909097d290a0a09090976617220736c69646572496e7374616e6365203d20546974616e69756d2e55492e637265617465536c69646572287b6d696e3a302c6d61783a31302c76616c75653a352c2077696474683a3135307d293b0a090909736c69646572496e7374616e63652e6164644576656e744c697374656e657228276368616e6765272c66756e6374696f6e2865290a0909097b0a09090909612e7365744d65737361676528652e76616c7565290a09090909612e73686f7728293b0a0909097d290a0909097661722074657874496e7374616e6365203d20546974616e69756d2e55492e637265617465546578744669656c64287b76616c75653a274e6f6c616e272c77696474683a35307d293b0a09090974657874496e7374616e63652e6164644576656e744c697374656e657228276368616e6765272c66756e6374696f6e2865290a0909097b0a09090909612e7365744d65737361676528652e76616c7565290a09090909612e73686f7728293b0a0909097d290a09090974657874496e7374616e63652e6164644576656e744c697374656e6572282772657475726e272c66756e6374696f6e2865290a0909097b0a0909090974657874496e7374616e63652e626c757228293b0a0909097d290a0a09090976617220696e70757444617461203d205b0a090909097b7469746c653a27496e7075742031272c20696e7075743a737769746368496e7374616e63652c20696d6167653a276954756e65732e706e67272c20666f6f3a27626172277d2c0a090909097b7469746c653a27536f756e64272c20696e7075743a736c69646572496e7374616e63652c20696d6167653a274d61696c2e706e67277d2c0a090909097b7469746c653a274e616d65272c20696e7075743a74657874496e7374616e63657d2c0a090909097b7469746c653a27496e7075742032272c2076616c75653a27666f6f272c206861734368696c643a747275657d2c0a090909097b68746d6c3a273c6469763e3c696d67207372633d2250686f6e652e706e67222f3e20496e70757420333c2f6469763e272c206861734368696c643a747275657d0a0909095d3b0a0a09090976617220696e70757453656374696f6e203d20546974616e69756d2e55492e6950686f6e652e63726561746547726f7570656453656374696f6e287b0a090909096865616465723a27496e7075742047726f7570272c0a09090909747970653a27696e707574272c0a09090909646174613a696e707574446174612c0a09090909726f774865696768743a3132300a0909097d293b0a0909090a090909696e70757453656374696f6e2e6164644576656e744c697374656e65722827636c69636b272c66756e6374696f6e2865290a0909097b0a09090909612e7365744d6573736167652827596f7520636c69636b656420696e6465782027202b20652e696e646578202b20272073656374696f6e20726f772027202b20652e726f77202b20272073656374696f6e2027202b20652e73656374696f6e200a09090909092b202720726f77446174612027202b20652e726f7744617461293b0a09090909612e73686f7728293b0a0909097d293b0a0a0909092f2f206372656174652067726f7570656420766965770a09090967726f7570656456696577203d20546974616e69756d2e55492e6950686f6e652e63726561746547726f757065645669657728293b0a09090967726f75706564566965772e61646453656374696f6e286f7074696f6e53656374696f6e293b0a09090967726f75706564566965772e61646453656374696f6e28627574746f6e53656374696f6e293b0a09090967726f75706564566965772e61646453656374696f6e28696e70757453656374696f6e293b0a0a09097d0a0a09092f2f0a09092f2f205461626c65205669657720310a09092f2f0a0a09092f2f206461746120666f72207461626c65766965770a09097661722064617461203d205b0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e6575653b6261636b67726f756e642d636f6c6f723a23333336363939223e53686f77205669657720313c2f6469763e20272c2068617344657461696c3a747275652c206865616465723a2753656374696f6e2030277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e53686f77205669657720323c2f6469763e20272c206861734368696c643a747275657d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e53686f77205669657720333c2f6469763e20277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e53686f77205669657720353c2f6469763e20277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e53686f77205669657720363c2f6469763e20277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e53686f77205669657720373c2f6469763e20272c2068617344657461696c3a747275652c206865616465723a2753656374696f6e2031277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e3c696d67207372633d2250686f6e652e706e67222f3e20526f7720373c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f7720372064657461696c3c2f6469763e3c2f6469763e20272c206861734368696c643a747275657d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e526f7720383c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f7720382064657461696c3c2f6469763e3c2f6469763e20277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e526f7720393c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f7720392064657461696c3c2f6469763e3c2f6469763e20277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e526f772031303c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f772031302064657461696c3c2f6469763e3c2f6469763e20277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e526f772031313c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f772031312064657461696c3c2f6469763e3c2f6469763e20272c2068617344657461696c3a747275652c206865616465723a2753656374696f6e2032277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e526f772031323c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f772031322064657461696c3c2f6469763e3c2f6469763e20272c206861734368696c643a747275657d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e526f772031333c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f772031332064657461696c3c2f6469763e3c2f6469763e20277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e526f772031343c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f772031342064657461696c3c2f6469763e3c2f6469763e20277d2c0a0a0909097b68746d6c3a273c646976207374796c653d22666f6e742d66616d696c793a48656c766574696361204e657565223e3c646976207374796c653d22666f6e742d73697a653a313870783b666f6e742d7765696768743a626f6c643b223e526f772031353c2f6469763e3c646976207374796c653d22666f6e742d73697a653a313270783b636f6c6f723a23393939223e4920616d20726f772031352064657461696c3c2f6469763e3c2f6469763e20277d0a0a09095d3b0a0a09092f2f207461626c6576696577206f626a6563740a0909766172207461626c6556696577203d20546974616e69756d2e55492e6372656174655461626c6556696577287b0a090909646174613a646174612c0a0909097469746c653a274865696768742f4865616465722f48544d4c2054657374272c0a090909726f774865696768743a38300a09097d2c66756e6374696f6e286576656e744f626a656374290a09097b0a09090973776974636820286576656e744f626a6563742e726f77290a0909097b0a090909096361736520303a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577312c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a090909097d0a090909096361736520313a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577322c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520323a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577332c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520333a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577322c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520343a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577332c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520353a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772867726f75706564566965772c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a0a0909097d0a0a0a09097d293b0a0a09092f2f0a09092f2f205461626c65205669657720320a09092f2f0a0a09092f2f206461746120666f72207461626c65766965770a0909766172206461746132203d205b0a0909097b7469746c653a2753686f7720566965772031272c6865616465723a2753656374696f6e2030277d2c0a0909097b7469746c653a2753686f7720566965772032277d2c0a0909097b7469746c653a2753686f7720566965772033277d2c0a0909097b7469746c653a2753686f7720566965772034277d2c0a0909097b7469746c653a2753686f7720566965772036277d2c0a0909097b7469746c653a2753686f7720566965772037277d2c0a0909097b7469746c653a27526f772037277d2c0a0909097b7469746c653a27526f772038277d2c0a0909097b7469746c653a27526f772039272c6865616465723a2753656374696f6e2031277d2c0a0909097b7469746c653a27526f77203130277d2c0a0909097b7469746c653a27526f77203131277d2c0a0909097b7469746c653a27526f77203132277d2c0a0909097b7469746c653a27526f77203133277d2c0a0909097b7469746c653a27526f77203134277d2c0a0909097b7469746c653a27526f77203135277d2c0a0909097b7469746c653a27526f77203136277d2c0a0909097b7469746c653a27526f77203137272c6865616465723a2753656374696f6e2032277d2c0a0909097b7469746c653a27526f77203138277d2c0a0909097b7469746c653a27526f77203139277d2c0a0909097b7469746c653a27526f77203230277d2c0a0909097b7469746c653a27526f77203231277d2c0a0909097b7469746c653a27526f77203232277d2c0a0909097b7469746c653a27526f77203233277d2c0a0909097b7469746c653a27526f77203234277d2c0a0909097b7469746c653a27526f77203235272c6865616465723a2753656374696f6e2033277d2c0a0909097b7469746c653a27526f77203236277d2c0a0909097b7469746c653a27526f77203237277d2c0a0909097b7469746c653a27526f77203238277d2c0a0909097b7469746c653a27526f77203239277d2c0a0909097b7469746c653a27526f77203330277d2c0a0909097b7469746c653a27526f77203331277d2c0a0909097b7469746c653a27526f77203332277d0a0a09095d3b0a0a09092f2f207461626c6576696577206f626a6563740a0909766172207461626c655669657732203d20546974616e69756d2e55492e6372656174655461626c6556696577287b646174613a64617461322c7469746c653a27486561646572204f6e6c792054657374277d2c2066756e6374696f6e286576656e744f626a656374290a09097b0a09090973776974636820286576656e744f626a6563742e726f77290a0909097b0a090909096361736520303a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577312c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a090909097d0a090909096361736520313a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577322c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520323a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577332c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520333a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c65566965772c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520343a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577332c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520353a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772867726f75706564566965772c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a0a0909097d0a0a09097d293b0a0a09092f2f0a09092f2f205461626c65205669657720330a09092f2f0a0a09092f2f206461746120666f72207461626c65766965770a0909766172206461746133203d205b0a0909097b7469746c653a2753686f7720566965772031272c68617344657461696c3a747275652c20696d6167653a2750686f6e652e706e67277d2c0a0909097b7469746c653a2753686f7720566965772032272c206861734368696c643a747275652c20696d6167653a275361666172692e706e67277d2c0a0909097b7469746c653a2753686f7720566965772033272c20696d6167653a276954756e65732e706e67277d2c0a0909097b7469746c653a2753686f7720566965772034272c20696d6167653a274d61696c2e706e67277d2c0a0909097b7469746c653a2753686f7720566965772035272c20696d6167653a274d61696c2e706e67277d2c0a0909097b7469746c653a2753686f7720566965772037272c20696d6167653a274d61696c2e706e67277d0a0a09095d3b0a0a09092f2f207461626c6576696577206f626a6563740a0909766172207461626c655669657733203d20546974616e69756d2e55492e6372656174655461626c6556696577287b646174613a64617461332c7469746c653a27496d6167652054657374277d2c2066756e6374696f6e286576656e744f626a656374290a09097b0a09090973776974636820286576656e744f626a6563742e726f77290a0909097b0a090909096361736520303a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577312c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a090909097d0a090909096361736520313a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577322c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520323a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772877656256696577332c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520333a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c65566965772c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520343a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287461626c6556696577322c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a090909096361736520353a0a090909097b0a0909090909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772867726f75706564566965772c7b0a090909090909616e696d617465643a747275652c0a090909090909616e696d6174696f6e5374796c653a28546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427293f546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546543a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546542c0a090909090909616e696d6174696f6e4475726174696f6e3a313030300a09090909097d293b0a0909090909627265616b3b0a0a090909097d0a0a0909097d0a0a09097d293b0a0a0909546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287765625669657731293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287765625669657732293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287765625669657733293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287461626c6556696577293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287461626c655669657732293b0a0909546974616e69756d2e55492e63757272656e7457696e646f772e61646456696577287461626c655669657733293b0a0a090969662028546974616e69756d2e506c6174666f726d2e6e616d6520213d2027616e64726f696427290a09097b0a090909546974616e69756d2e55492e63757272656e7457696e646f772e616464566965772867726f7570656456696577293b0a09097d0a0a0909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577287765625669657731293b0a0a0a093c2f7363726970743e0a0a3c2f686561643e0a3c626f64793e0a0a0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	   	if ([d length] == 0) return nil;
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/views1.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/views1.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/views1.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/views1.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedViews1;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b6261636b67726f756e642d636f6c6f723a23666639393030223e0a095669657720313c2f62723e0a093c627574746f6e2069643d2274776f22207374796c653d22666f6e742d73697a653a31347078223e73686f7720766965772032203c2f627574746f6e3e3c2f62723e0a093c627574746f6e2069643d22746872656522207374796c653d22666f6e742d73697a653a31347078223e73686f7720766965772033203c2f627574746f6e3e3c2f62723e0a093c627574746f6e2069643d22666f757222207374796c653d22666f6e742d73697a653a31347078223e73686f7720766965772034203c2f627574746f6e3e3c2f62723e0a093c627574746f6e2069643d226669766522207374796c653d22666f6e742d73697a653a31347078223e73686f77207669657720353c2f627574746f6e3e3c2f62723e0a093c627574746f6e2069643d2273697822207374796c653d22666f6e742d73697a653a31347078223e73686f77207669657720363c2f627574746f6e3e3c2f62723e0a093c627574746f6e2069643d22736576656e22207374796c653d22666f6e742d73697a653a31347078223e73686f7720766965772037203c2f627574746f6e3e3c2f62723e0a0a093c6469762069643d22666f6375736564223e3c2f6469763e0a093c6469762069643d22756e666f6375736564223e3c2f6469763e0a0a093c7363726970743e0a0a09546974616e69756d2e55492e63757272656e74566965772e6164644576656e744c697374656e65722827756e666f6375736564272c66756e6374696f6e2865290a097b0a0909546974616e69756d2e4170702e50726f706572746965732e736574537472696e672827756e666f6375736564272c27556e666f6375736564206576656e742072656365697665642061742027202b206e657720446174652829293b09090a0909646f63756d656e742e676574456c656d656e74427949642827756e666f637573656427292e696e6e657248544d4c203d20546974616e69756d2e4170702e50726f706572746965732e676574537472696e672827756e666f637573656427290a097d293b0a0a09546974616e69756d2e55492e63757272656e74566965772e6164644576656e744c697374656e65722827666f6375736564272c66756e6374696f6e2865290a097b0a0909546974616e69756d2e4170702e50726f706572746965732e736574537472696e672827666f6375736564272c27466f6375736564206576656e742072656365697665642061742027202b206e657720446174652829293b0a0909646f63756d656e742e676574456c656d656e74427949642827666f637573656427292e696e6e657248544d4c203d20546974616e69756d2e4170702e50726f706572746965732e676574537472696e672827666f637573656427293b0a097d293b0a0a09646f63756d656e742e676574456c656d656e7442794964282774776f27292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909766172207669657773203d20546974616e69756d2e55492e63757272656e7457696e646f772e676574566965777328293b0a0a0909766172207374796c65203d2028546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427290a090909093f20546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e464144450a090909093a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546543b0a0a0909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772876696577735b325d2c7b0a090909616e696d617465643a747275652c0a090909616e696d6174696f6e5374796c653a7374796c652c0a090909616e696d6174696f6e4475726174696f6e3a313030300a09097d293b0a097d3b0a09646f63756d656e742e676574456c656d656e74427949642827746872656527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909766172207669657773203d20546974616e69756d2e55492e63757272656e7457696e646f772e676574566965777328293b0a0a0909766172207374796c65203d2028546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427290a090909093f20546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f4c4546540a090909093a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f52494748543b0a0a0909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772876696577735b335d2c7b0a090909616e696d617465643a747275652c0a090909616e696d6174696f6e5374796c653a7374796c652c0a090909616e696d6174696f6e4475726174696f6e3a313030300a09097d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827666f757227292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909766172207669657773203d20546974616e69756d2e55492e63757272656e7457696e646f772e676574566965777328293b0a0a0909766172207374796c65203d2028546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427290a090909093f20546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f544f500a090909093a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e4355524c5f55503b0a0a0909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772876696577735b345d2c7b0a090909616e696d617465643a747275652c0a090909616e696d6174696f6e5374796c653a7374796c652c0a090909616e696d6174696f6e4475726174696f6e3a313030300a09097d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e744279496428276669766527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909766172207669657773203d20546974616e69756d2e55492e63757272656e7457696e646f772e676574566965777328293b0a0a0909766172207374796c65203d2028546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427290a090909093f20546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f424f54544f4d0a090909093a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e4355524c5f444f574e3b0a0a0909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772876696577735b355d2c7b0a090909616e696d617465643a747275652c0a090909616e696d6174696f6e5374796c653a7374796c652c0a090909616e696d6174696f6e4475726174696f6e3a313030300a09097d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e7442794964282773697827292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909766172207669657773203d20546974616e69756d2e55492e63757272656e7457696e646f772e676574566965777328293b0a09090a0909766172207374796c65203d2028546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427290a090909093f20546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e534c4944455f46524f4d5f52494748540a090909093a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f4c4546543b0a09090a0909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772876696577735b365d2c7b0a090909616e696d617465643a747275652c0a090909616e696d6174696f6e5374796c653a7374796c652c0a090909616e696d6174696f6e4475726174696f6e3a313030300a09097d293b0a097d3b0a0a09646f63756d656e742e676574456c656d656e74427949642827736576656e27292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909766172207669657773203d20546974616e69756d2e55492e63757272656e7457696e646f772e676574566965777328293b0a0a0909766172207374796c65203d2028546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427290a090909093f20546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e5343414c450a090909093a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e464c49505f46524f4d5f52494748543b0a0a0909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772876696577735b375d2c7b0a090909616e696d617465643a747275652c0a090909616e696d6174696f6e5374796c653a7374796c652c0a090909616e696d6174696f6e4475726174696f6e3a313030300a09097d293b0a097d3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -656,8 +1086,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/views2.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/views2.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/views2.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/views2.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedViews2;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b6261636b67726f756e642d636f6c6f723a23393939223e0a095669657720323c2f62723e0a093c627574746f6e2069643d226f6e6522207374796c653d22666f6e742d73697a653a31347078223e73686f7720766965772031202d20676574206279206e616d65203c2f627574746f6e3e3c2f62723e0a0a093c7363726970743e0a0a09646f63756d656e742e676574456c656d656e744279496428276f6e6527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909766172206f6e65203d20546974616e69756d2e55492e63757272656e7457696e646f772e6765745669657742794e616d6528276e756d6265723127293b0a09090a0909766172207374796c65203d2028546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427290a090909093f20546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e57494e4b0a090909093a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e4355524c5f55503b0a09090a0909546974616e69756d2e55492e63757272656e7457696e646f772e73686f7756696577286f6e652c7b0a090909616e696d617465643a747275652c0a090909616e696d6174696f6e5374796c653a7374796c652c0a090909616e696d6174696f6e4475726174696f6e3a313030300a09097d293b0a097d3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -665,8 +1100,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/views3.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/views3.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/views3.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/views3.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedViews3;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e657565273b6261636b67726f756e642d636f6c6f723a677265656e223e0a095669657720333c2f62723e0a093c627574746f6e2069643d226f6e6522207374796c653d22666f6e742d73697a653a31347078223e73686f7720766965772031203c2f627574746f6e3e3c62722f3e0a0a093c7363726970743e0a09646f63756d656e742e676574456c656d656e744279496428276f6e6527292e6f6e636c69636b203d2066756e6374696f6e28290a097b0a0909766172207669657773203d20546974616e69756d2e55492e63757272656e7457696e646f772e676574566965777328293b0a0a0909766172207374796c65203d2028546974616e69756d2e506c6174666f726d2e6e616d65203d3d2027616e64726f696427290a090909093f20546974616e69756d2e55492e416e64726f69642e416e696d6174696f6e5374796c652e484541444c494e45530a090909093a546974616e69756d2e55492e6950686f6e652e416e696d6174696f6e5374796c652e4355524c5f444f574e3b0a0a0a0909546974616e69756d2e55492e63757272656e7457696e646f772e73686f77566965772876696577735b315d2c7b0a090909616e696d617465643a747275652c0a090909616e696d6174696f6e5374796c653a7374796c652c0a090909616e696d6174696f6e4475726174696f6e3a313030300a09097d293b0a097d3b0a0a093c2f7363726970743e0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -674,8 +1114,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/window_unfocus.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/window_unfocus.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/window_unfocus.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/window_unfocus.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedWindow_unfocus;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a3c686561643e0a0a0a3c2f686561643e0a3c626f647920207374796c653d22666f6e742d66616d696c793a2748656c766574696361204e65756527223e0a0a093c6469762069643d22666f637573656422207374796c653d226d617267696e2d746f703a32307078223e466f6375736564206576656e74206e6f742072656365697665643c2f6469763e0a093c6469762069643d22756e666f637573656422207374796c653d226d617267696e2d746f703a32307078223e556e666f6375736564206576656e74206e6f742072656365697665643c2f6469763e0a090a093c7363726970743e0a09546974616e69756d2e55492e63757272656e7457696e646f772e6164644576656e744c697374656e65722827756e666f6375736564272c66756e6374696f6e28290a097b0a0909546974616e69756d2e4170702e50726f706572746965732e736574537472696e672827756e666f6375736564272c27556e666f6375736564206576656e742072656365697665642061742027202b206e657720446174652829293b0a0909646f63756d656e742e676574456c656d656e74427949642827756e666f637573656427292e696e6e657248544d4c203d20546974616e69756d2e4170702e50726f706572746965732e676574537472696e672827756e666f637573656427290a0a097d293b0a09546974616e69756d2e55492e63757272656e7457696e646f772e6164644576656e744c697374656e65722827666f6375736564272c66756e6374696f6e28290a097b0a0909546974616e69756d2e4170702e50726f706572746965732e736574537472696e672827666f6375736564272c27466f6375736564206576656e742072656365697665642061742027202b206e657720446174652829293b0a0909646f63756d656e742e676574456c656d656e74427949642827666f637573656427292e696e6e657248544d4c203d20546974616e69756d2e4170702e50726f706572746965732e676574537472696e672827666f637573656427290a0a097d293b0a0a0909646f63756d656e742e676574456c656d656e74427949642827756e666f637573656427292e696e6e657248544d4c203d20546974616e69756d2e4170702e50726f706572746965732e676574537472696e672827756e666f637573656427290a093c2f7363726970743e0a0a3c2f626f64793e0a3c2f68746d6c3e&quot;);
@@ -683,8 +1128,13 @@ extern NSData * AES128DecryptWithKey(NSData * data, NSString * key);
 		return d;
 	}
 			
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	#pragma mark app://com.appcelerator.KitchenSink/xhr.html
 	// /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/tmp/xhr.html
+=======
+	#pragma mark app://com.nolanwright.kitchensink/xhr.html
+	// /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/tmp/xhr.html
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m
 	- (NSData*) pageNamedXhr;
 	{
 		NSData *d = dataWithHexString(@&quot;3c68746d6c3e0a203c686561643e0a203c2f686561643e0a3c626f6479207374796c653d226261636b67726f756e642d636f6c6f723a7768697465223e0a093c6469762069643d2268746d6c223e3c2f6469763e0a0a093c7363726970743e0a097661722063203d20546974616e69756d2e4e6574776f726b2e63726561746548545450436c69656e7428293b0a090a092f2f20736574206f6e207265616479207374617465206368616e67652066756e6374696f6e0a09632e6f6e726561647973746174656368616e6765203d2066756e6374696f6e28290a097b0a0909546974616e69756d2e4150492e646562756728273e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e2072656164795374617465203d2027202b20746869732e72656164795374617465290a090969662028746869732e72656164795374617465203d3d2034290a09097b0a090909646f63756d656e742e676574456c656d656e7442794964282768746d6c27292e696e6e657248544d4c203d20746869732e726573706f6e7365546578743b0a09097d0a097d3b0a092f2f206f70656e2074686520636c69656e740a09632e6f70656e2827474554272c27687474703a2f2f7777772e676f6f676c652e636f6d27293b0a090a092f2f2073656e642074686520646174610a09632e73656e6428293b0a090a093c2f7363726970743e0a0a3c2f626f64793e0a3c2f68746d6c3e&quot;);</diff>
      <filename>demos/KitchenSink/build/iphone/Classes/ApplicationRouting.m</filename>
    </modified>
    <modified>
      <diff>@@ -11,7 +11,11 @@
 	&lt;key&gt;CFBundleIconFile&lt;/key&gt;
 	&lt;string&gt;appicon.png&lt;/string&gt;
 	&lt;key&gt;CFBundleIdentifier&lt;/key&gt;
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/Info.plist
 	&lt;string&gt;com.appcelerator.KitchenSink&lt;/string&gt;
+=======
+	&lt;string&gt;com.nolanwright.kitchensink&lt;/string&gt;
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/Info.plist
 	&lt;key&gt;CFBundleInfoDictionaryVersion&lt;/key&gt;
 	&lt;string&gt;6.0&lt;/string&gt;
 	&lt;key&gt;CFBundleName&lt;/key&gt;</diff>
      <filename>demos/KitchenSink/build/iphone/Info.plist</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,4 @@
+&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:demos/KitchenSink/build/iphone/build/KitchenSink.build/Debug-iphonesimulator/KitchenSink.build/KitchenSink.dep
 00000000000000000000000000000000 b483daee3f190f8f8ebe3f43811d7031 ffffffffffffffffffffffffffffffff 102 /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app.dSYM
 d7762f8baa46350b8e13234caa3e6b90 17c1e7879fed35b816683908c75a04fd ffffffffffffffffffffffffffffffff 748 /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app
 000000004a5383fb00000000000000e1 79d116cecc2c9d8891b2bd5011b5c3b1 ffffffffffffffffffffffffffffffff 62 /Users/jhaynie/work/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app/Entitlements.plist
@@ -25,16 +26,35 @@ bc875e66e7194e11a584f6a82815f487 2a8d127ed9013b74dfdc7bdef4bec266 ffffffffffffff
 000000004a549665000000000000148d 26a014573da96c69e72efc4ff31b7ae8 ffffffffffffffffffffffffffffffff 12961168 /var/folders/y3/y3ldoK+dFS0RS9MwrjHhfU+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-bkpyszkxqvqofabvfgnducgkbeqi/KitchenSink_Prefix.pch.gch
 00000000000000000000000000000000 d8b98e5931b12994dba8663a7ae9ec10 ffffffffffffffffffffffffffffffff 102 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app.dSYM
 8c00c20e9f7fb2d168b87382d66f80c0 d73e73ff2c5d05c461a956d540a63f0a ffffffffffffffffffffffffffffffff 782 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app
+=======
+0000000044da8ff00000000000009c29 28200a78d6547b171f2d0199b6c9475e ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-bntvlmvvgqbvjzhkwxgkkokekype/KitchenSink_Prefix.pch.gch
+28200a789fad416c1f2d0199b6c94e6a b52f84e919f8fa6f5ab34fac2434e46c ffffffffffffffffffffffffffffffff 10256 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/KitchenSink.build/Debug-iphonesimulator/KitchenSink.build/Objects-normal/i386/main.o
+89d9b7f0a4a4137efc7b0b42bd6b5d4e b132379cf1fa678e4bfbda303c4b35a1 ffffffffffffffffffffffffffffffff 891648 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app/KitchenSink
+&gt;&gt;&gt;&gt;&gt;&gt;&gt; b14fb694cdd4e6a2a19b9937805915e5c510a4a6:demos/KitchenSink/build/iphone/build/KitchenSink.build/Debug-iphonesimulator/KitchenSink.build/KitchenSink.dep
 000000004a6611fe00000000000000e1 8490ac1fe0b2e16e25f0ec69c5214e5d ffffffffffffffffffffffffffffffff 62 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app/Entitlements.plist
-000000004a8ef5790000000000000302 873b47d4af77c945960fe4a41c334c69 ffffffffffffffffffffffffffffffff 770 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app/tiapp.plist
+000000004aa407630000000000000325 873b47d4af77c945960fe4a41c334c69 ffffffffffffffffffffffffffffffff 805 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app/tiapp.plist
 00000000000000000000000000000000 047313b5a230a557050bc313bb440f86 ffffffffffffffffffffffffffffffff 16529 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app/Default.png
-000000004a8ef5790000000000002aa9 6ff88bd28519e1f47793c80c3f094831 ffffffffffffffffffffffffffffffff 1802 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app/TitaniumView.nib
-000000004a8ef5790000000000002ae4 76aee0b23e698c833a48650b26eba19d ffffffffffffffffffffffffffffffff 2021 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app/MainWindow.nib
+000000004aa407630000000000002aa9 6ff88bd28519e1f47793c80c3f094831 ffffffffffffffffffffffffffffffff 1802 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app/TitaniumView.nib
+000000004aa407630000000000002ae4 76aee0b23e698c833a48650b26eba19d ffffffffffffffffffffffffffffffff 2021 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app/MainWindow.nib
 00000000000000000000000000000000 fb06ec3c02547ab3616e135c99c35ba9 ffffffffffffffffffffffffffffffff 8 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app/PkgInfo
 00000000000000000000000000000000 fb06ec3c02547ab3616e135c99c35ba9 ffffffffffffffffffffffffffffffff 589 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app/Info.plist
-23bc668c38e8d1d3d86ccf6b919052d1 b132379cf1fa678e4bfbda303c4b35a1 ffffffffffffffffffffffffffffffff 869472 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app/KitchenSink
-7c65be72044a00fef27c9bfc24895ca0 dfa3a5a863f0206c50cc7a6cd49979a1 ffffffffffffffffffffffffffffffff 394852 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/KitchenSink.build/Debug-iphonesimulator/KitchenSink.build/Objects-normal/i386/ApplicationRouting.o
-7c65be720969b575f27c9bfc248cb5a9 fc1fc32411d1005f88a0b507441e820f ffffffffffffffffffffffffffffffff 10256 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/KitchenSink.build/Debug-iphonesimulator/KitchenSink.build/Objects-normal/i386/main.o
+26651372031982664cafb7abfa948f78 d73e73ff2c5d05c461a956d540a63f0a ffffffffffffffffffffffffffffffff 782 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app
+00000000000000000000000000000000 d8b98e5931b12994dba8663a7ae9ec10 ffffffffffffffffffffffffffffffff 102 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/Debug-iphonesimulator/KitchenSink.app.dSYM
+28200a78928ef4e71f2d0199b6ccabf9 3cf63319f7bfeaeba6c844ee984bb977 ffffffffffffffffffffffffffffffff 395716 /Users/nwright/Appcelerator/TIDEV/titanium_mobile/demos/KitchenSink/build/iphone/build/KitchenSink.build/Debug-iphonesimulator/KitchenSink.build/Objects-normal/i386/ApplicationRouting.o
+0000000044da8ff00000000000009c29 ce78ce6b5a7a173809d21386afb0d9de ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-bwkzajixkpmavhafkwejdhrbjxgh/KitchenSink_Prefix.pch.gch
+0000000044da8ff00000000000009c29 1720fd7fd2562db4b00b6e0e73443703 ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-hbgkjufisoeydhgtvfvpjvcjfejz/KitchenSink_Prefix.pch.gch
+0000000044da8ff00000000000009c29 5a06f72aff63e9b2ae4dbe000a7c2d42 ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-fmwjipnyhsfbogenqiymatfgajmu/KitchenSink_Prefix.pch.gch
+0000000044da8ff00000000000009c29 343a0546fb4c3faed6e2154fba58acaf ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-eitdjxmrlkvjvfgumiopetyftxzx/KitchenSink_Prefix.pch.gch
+0000000044da8ff00000000000009c29 482b62b603eb024b577f40f522dec096 ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-aikugifwbutdkzbmzepkierknppv/KitchenSink_Prefix.pch.gch
+0000000044da8ff00000000000009c29 7d32e5d9d690503f67c8fa4a77b4543c ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-bmxdymmmeesqucfblmcelrpnbkou/KitchenSink_Prefix.pch.gch
+0000000044da8ff00000000000009c29 e22f23951e48ef84be51ee40ca37271a ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-cknvqdhvnllydsbemtfuvhosujzu/KitchenSink_Prefix.pch.gch
+0000000044da8ff00000000000009c29 3753104a13603bbaede154f2b91e4574 ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-bzrodtrbfltoidfqjmvyurxsenjh/KitchenSink_Prefix.pch.gch
+0000000044da8ff00000000000009c29 b91345131cc286d3458736e3d90c4532 ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-djfstygvhsvmgwewhluiwqoijcii/KitchenSink_Prefix.pch.gch
+0000000044da8ff00000000000009c29 2732acdb89b830de1d7d0e59b704d5d3 ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-dzymanjegqqcaradvmrmaxfcdzfq/KitchenSink_Prefix.pch.gch
+0000000044da8ff00000000000009c29 685ad77db8963487d867787335b0ea2a ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-bmkembrnfylzxtagwkkhgzndkaav/KitchenSink_Prefix.pch.gch
+0000000044da8ff00000000000009c29 81b3db3faa3a679b56e916f9b04fd9c4 ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-bnrqtjvixgtitfavvgtmheirdynh/KitchenSink_Prefix.pch.gch
+0000000044da8ff00000000000009c29 9e4d3ee1d3c46dfd2a1c6d10e953e324 ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-herqdupgqfrrqrhjuxwpthxrpdle/KitchenSink_Prefix.pch.gch
+0000000044da8ff00000000000009c29 ee18c84b9182ac3895692351b301e264 ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-djczdenhhdcxjidnpbmvfvfobpup/KitchenSink_Prefix.pch.gch
 0000000044da8ff00000000000009c29 7c65be7240908f0ef27c9bfc248cbc9d ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-faidawyyyarscpbuzvmatbymoich/KitchenSink_Prefix.pch.gch
 0000000044da8ff00000000000009c29 a99ed54288392c0051a1c9e91cec10e1 ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-fuadwbflpziyaucqfpsimytbgqnz/KitchenSink_Prefix.pch.gch
 0000000044da8ff00000000000009c29 c988b300dcd03fc6b74a5b2ef8bc6a13 ffffffffffffffffffffffffffffffff 8568876 /var/folders/M8/M8CBhDG5HOCz2ZP6HhwJRk+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/KitchenSink_Prefix-dvehixlbrbehsadrmxtrqzcqwuou/KitchenSink_Prefix.pch.gch</diff>
      <filename>demos/KitchenSink/build/iphone/build/KitchenSink.build/Debug-iphonesimulator/KitchenSink.build/KitchenSink.dep</filename>
    </modified>
    <modified>
      <diff>@@ -20,9 +20,11 @@ extern double firstTimestamp;
 
 #ifdef USE_VERBOSE_DEBUG
 #define VERBOSE_LOG(...)	NSLog(__VA_ARGS__)
+#define VERBOSE_LOG_IF_TRUE(val,...)	{if(val) NSLog(__VA_ARGS__);}
 
 //#else ifdef DEBUG
 //
 #else
 #define VERBOSE_LOG(...)
+#define VERBOSE_LOG_IF_TRUE(val,...)
 #endif
\ No newline at end of file</diff>
      <filename>iphone/Classes/Logging.h</filename>
    </modified>
    <modified>
      <diff>@@ -123,6 +123,7 @@ int nextContentViewToken = 0;
 - (void)dealloc {
 	[titaniumWindowToken release];
 	[primaryToken release];
+	[nameString release];
     [super dealloc];
 }
 </diff>
      <filename>iphone/Classes/TitaniumContentViewController.m</filename>
    </modified>
    <modified>
      <diff>@@ -26,8 +26,8 @@ NSString * const titaniumJavascriptInjection =
 			&quot;return 'new Date(' + object.getTime() + ')';&quot;
 		&quot;}&quot;
 		&quot;if(object.constructor.toString().indexOf('Array') != -1) {&quot;
-			&quot;var res='[';var pre='';&quot;
-			&quot;for(var i=0;i&lt;object.length;i++){&quot;
+			&quot;var res='[';var pre='';var len=object.length;&quot;
+			&quot;for(var i=0;i&lt;len;i++){&quot;
 				&quot;var value = object[i];&quot;
 				&quot;if(value !== undefined)value=this._JSON(value);&quot;
 				&quot;if(value !== undefined){res+=pre+value;pre=', ';}&quot;
@@ -49,7 +49,8 @@ NSString * const titaniumJavascriptInjection =
 		&quot;var thisURL=null;&quot;
 		&quot;var argString='';&quot;
 		&quot;var seperatorString='';&quot;
-		&quot;for(var i=0;i&lt;argList.length;i++){&quot;
+		&quot;var len=argList.length;&quot;
+		&quot;for(var i=0;i&lt;len;i++){&quot;
 			&quot;var value=argList[i];&quot;
 			&quot;if (value !== undefined){value = Ti._JSON(value);}&quot;
 			&quot;if (value == undefined){value = 'null';}&quot;
@@ -95,6 +96,8 @@ NSString * const titaniumJavascriptInjection =
 		&quot;for(i=0;i&lt;listenerCount;i++)&quot;
 			&quot;{listeners[i](event);}&quot;
 	&quot;},&quot;
+	&quot;_DOTOUCH:false,&quot;
+	&quot;_TOUCHLOAD:function(ev){Ti._DOTOUCH=false;ev._NODEF=ev.preventDefault;ev.preventDefault=function(){Ti._DOTOUCH=true;this._NODEF();};},&quot;
 	&quot;_INVOC:function(ivc,args){return Ti._TICMD(ivc,'_RUN',args);},&quot;
 	&quot;toString:function(){return '[Titanium object]';},&quot;
 	&quot;platform:'iphone',&quot;
@@ -107,6 +110,10 @@ NSString * const titaniumJavascriptInjection =
 	&quot;if (Ti.Platform &amp;&amp; targ.target == 'ti:systembrowser') { Ti.Platform.openURL(targ.href); return false; }&quot;
 &quot;},true);&quot;
 &quot;(function(){function _rm(a,b,c){a[b]=function(){c.apply(this,arguments)}}_rm(console,'debug',function(a){Ti.API.debug(a)});_rm(console,'log',function(a){Ti.API.log(a)});_rm(console,'info',function(a){Ti.API.info(a)});_rm(console,'warn',function(a){Ti.API.warn(a)});_rm(console,'error',function(a){Ti.API.error(a)})})();&quot;
+&quot;document.addEventListener('touchstart',Ti._TOUCHLOAD,true);&quot;
+//&quot;document.addEventListener('touchmove',Ti._TOUCHLOAD,true);&quot;
+//&quot;document.addEventListener('touchend',Ti._TOUCHLOAD,true);&quot;
+//&quot;document.addEventListener('touchcancel',Ti._TOUCHLOAD,true);&quot;
 &quot;%@&quot;
 &quot;&lt;/script&gt;&quot;;
 </diff>
      <filename>iphone/Classes/TitaniumJSConstants.m</filename>
    </modified>
    <modified>
      <diff>@@ -66,6 +66,7 @@ typedef enum {
 @interface TitaniumTableViewController : TitaniumContentViewController&lt;UITableViewDelegate,UITableViewDataSource,UIWebViewDelegate&gt; {
 	UITableViewStyle tableStyle;
 	CGFloat tableRowHeight;
+//	BOOL	useRowHeightCallback;
 	
 	NSLock * sectionLock;
 	NSMutableArray * sectionArray;</diff>
      <filename>iphone/Classes/TitaniumTableViewController.h</filename>
    </modified>
    <modified>
      <diff>@@ -5,19 +5,19 @@
  * Please see the LICENSE included with this distribution for details.
  */
 #import &quot;TitaniumTableViewController.h&quot;
-#import &quot;TitaniumBlobWrapper.h&quot;
-#import &quot;UiModule.h&quot;
-#import &quot;NativeControlProxy.h&quot;
+#import &quot;TitaniumCellWrapper.h&quot;
+
+#import &quot;TitaniumWebViewController.h&quot;
+#import &quot;TitaniumHost.h&quot;
 
-#import &quot;SBJSON.h&quot;
 #import &quot;WebTableViewCell.h&quot;
 #import &quot;ValueTableViewCell.h&quot;
-#import &quot;Webcolor.h&quot;
-#import &quot;WebFont.h&quot;
 
-#import &quot;TitaniumWebViewController.h&quot;
+#import &quot;NativeControlProxy.h&quot;
+
 #import &quot;Logging.h&quot;
 
+
 @implementation TitaniumTableActionWrapper
 @synthesize kind,row,section,index,animation;
 @synthesize rowData, sectionData, replacedData;
@@ -53,199 +53,6 @@
 
 UIColor * checkmarkColor = nil;
 
-@interface TableRowWrapper : NSObject
-{
-	NSString * title;
-	TitaniumFontDescription fontDesc;
-	NSString * html;
-	NSString * name;
-	NSString * value;
-	NSURL * imageURL;
-	TitaniumBlobWrapper * imageWrapper;
-	UITableViewCellAccessoryType accessoryType;
-	NativeControlProxy * inputProxy;
-
-	BOOL isButton;
-
-}
-@property(nonatomic,readwrite,copy)	NSString * title;
-@property(nonatomic,readwrite,copy)	NSString * html;
-@property(nonatomic,readwrite,copy)	NSString * name;
-@property(nonatomic,readwrite,copy)	NSString * value;
-@property(nonatomic,readwrite,copy)	NSURL * imageURL;
-@property(nonatomic,readonly,copy)	UIImage * image;
-@property(nonatomic,readwrite,retain)	TitaniumBlobWrapper * imageWrapper;
-@property(nonatomic,readwrite,assign)	UITableViewCellAccessoryType accessoryType;
-@property(nonatomic,readwrite,retain)	NativeControlProxy * inputProxy;
-@property(nonatomic,readwrite,assign)	BOOL isButton;
-
-
-- (void) useProperties: (NSDictionary *) propDict withUrl: (NSURL *) baseUrl;
-- (NSString *) stringValue;
-
-@end
-
-@implementation TableRowWrapper
-@synthesize title,html,imageURL,imageWrapper,accessoryType,inputProxy,isButton, value, name;
-
-- (id) init
-{
-	self = [super init];
-	if (self != nil) {
-		fontDesc.isBold=YES;
-		fontDesc.size=15;
-	}
-	return self;
-}
-
-
-- (UIImage *) image;
-{
-	if (imageWrapper != nil){
-		return [imageWrapper imageBlob];
-	}
-	if (imageURL == nil) return nil;
-	return [[TitaniumHost sharedHost] imageForResource:imageURL];
-}
-
-- (UIFont *) font;
-{
-	return FontFromDescription(&amp;fontDesc);
-}
-
-- (void) dealloc
-{
-	[title release]; [html release]; [imageURL release];
-	[imageWrapper release]; [inputProxy release];
-	[super dealloc];
-}
-
-- (NSString *) stringValue;
-{
-	NSString * accessoryString;
-	switch (accessoryType) {
-		case UITableViewCellAccessoryDetailDisclosureButton:
-			accessoryString = @&quot;hasDetail:true,hasChild:false,selected:false&quot;;
-			break;
-		case UITableViewCellAccessoryDisclosureIndicator:
-			accessoryString = @&quot;hasDetail:false,hasChild:true,selected:false&quot;;
-			break;
-		case UITableViewCellAccessoryCheckmark:
-			accessoryString = @&quot;hasDetail:false,hasChild:false,selected:true&quot;;
-			break;
-		default:
-			accessoryString = @&quot;hasDetail:false,hasChild:false,selected:false&quot;;
-			break;
-	}
-
-	SBJSON * packer = [[SBJSON alloc] init];
-	NSString * titleString;
-	if (title != nil){
-		titleString = [packer stringWithFragment:title error:nil];
-	} else { titleString = @&quot;null&quot;; }
-
-	NSString * valueString;
-	if (value != nil){
-		valueString = [packer stringWithFragment:value error:nil];
-	} else { valueString = @&quot;null&quot;; }
-	
-	NSString * htmlString;
-	if (html != nil){
-		htmlString = [packer stringWithFragment:html error:nil];
-	} else { htmlString = @&quot;null&quot;; }
-
-	NSString * imageURLString;
-	if (imageURL != nil){
-		imageURLString = [packer stringWithFragment:[imageURL absoluteString] error:nil];
-	} else { imageURLString = @&quot;null&quot;; }
-
-	NSString * inputProxyString;
-	if (inputProxy != nil){
-		inputProxyString = [@&quot;Ti.UI._BTN.&quot; stringByAppendingString:[inputProxy token]];
-	} else { inputProxyString = @&quot;null&quot;; }
-
-	NSString * nameString;
-	if (name != nil){
-		nameString = [packer stringWithFragment:name error:nil];
-	} else { nameString = @&quot;null&quot;; }
-	
-	NSString * result = [NSString stringWithFormat:@&quot;{%@,title:%@,html:%@,image:%@,input:%@,value:%@,name:%@}&quot;,
-			accessoryString,titleString,htmlString,imageURLString,inputProxyString,valueString,nameString];
-	[packer release];
-	return result;
-}
-
-- (void) useProperties: (NSDictionary *) propDict withUrl: (NSURL *) baseUrl;
-{
-	SEL boolSel = @selector(boolValue);
-	SEL stringSel = @selector(stringValue);
-	Class stringClass = [NSString class];
-	
-	NSNumber * hasDetail = [propDict objectForKey:@&quot;hasDetail&quot;];
-	if ([hasDetail respondsToSelector:boolSel] &amp;&amp; [hasDetail boolValue]){
-		accessoryType = UITableViewCellAccessoryDetailDisclosureButton;
-	} else {
-		NSNumber * hasChild = [propDict objectForKey:@&quot;hasChild&quot;];
-		if ([hasChild respondsToSelector:boolSel] &amp;&amp; [hasChild boolValue]){
-			[self setAccessoryType:UITableViewCellAccessoryDisclosureIndicator];
-		} else {
-			NSNumber * isSelected = [propDict objectForKey:@&quot;selected&quot;];
-			if ([isSelected respondsToSelector:boolSel] &amp;&amp; [isSelected boolValue]){
-				[self setAccessoryType:UITableViewCellAccessoryCheckmark];
-			} else {
-				[self setAccessoryType:UITableViewCellAccessoryNone];
-			}
-		}
-	}
-
-	NSString * rowType = [propDict objectForKey:@&quot;type&quot;];
-	if ([rowType isKindOfClass:stringClass]){
-		isButton = [rowType isEqualToString:@&quot;button&quot;];
-	} else isButton = NO;
-
-
-	id titleString = [propDict objectForKey:@&quot;title&quot;];
-	if ([titleString respondsToSelector:stringSel]) titleString = [titleString stringValue];
-	if ([titleString isKindOfClass:stringClass] &amp;&amp; ([titleString length] != 0)){
-		[self setTitle:titleString];
-	}
-
-	id nameString = [propDict objectForKey:@&quot;name&quot;];
-	if ([nameString respondsToSelector:stringSel]) nameString = [nameString stringValue];
-	if ([nameString isKindOfClass:stringClass] &amp;&amp; ([nameString length] != 0)){
-		[self setName:nameString];
-	}
-	
-	id htmlString = [propDict objectForKey:@&quot;html&quot;];
-	if ([htmlString respondsToSelector:stringSel]) htmlString = [htmlString stringValue];
-	if ([htmlString isKindOfClass:stringClass] &amp;&amp; ([htmlString length] != 0)){
-		[self setHtml:htmlString];
-	} else [self setHtml:nil];
-
-	id valueString = [propDict objectForKey:@&quot;value&quot;];
-	if ([valueString respondsToSelector:stringSel]) valueString = [valueString stringValue];
-	if ([valueString isKindOfClass:stringClass] &amp;&amp; ([valueString length] != 0)){
-		[self setValue:valueString];
-	} else [self setValue:nil];
-	
-	id imageString = [propDict objectForKey:@&quot;image&quot;];
-	if ([imageString isKindOfClass:stringClass]){
-		[self setImageURL:[NSURL URLWithString:imageString relativeToURL:baseUrl]];
-	} else [self setImageURL:nil];
-
-	NSDictionary * inputProxyDict = [propDict objectForKey:@&quot;input&quot;];
-	if ([inputProxyDict isKindOfClass:[NSDictionary class]]){
-		UiModule * theUiModule = (UiModule *)[[TitaniumHost sharedHost] moduleNamed:@&quot;UiModule&quot;];
-		NativeControlProxy * thisInputProxy = [theUiModule proxyForObject:inputProxyDict scan:YES recurse:YES];
-		if (thisInputProxy != nil) [self setInputProxy:thisInputProxy];
-	} else [self setInputProxy:nil];
-	
-	UpdateFontDescriptionFromDict(propDict, &amp;fontDesc);
-}
-
-
-@end
-
 @interface TableSectionWrapper : NSObject
 {
 	NSString * name;
@@ -253,12 +60,13 @@ UIColor * checkmarkColor = nil;
 	NSString * header;
 	NSString * footer;
 	NSMutableArray * rowArray;
+	float rowHeight;
 	BOOL isOptionList;
 	BOOL nullHeader;
 }
 - (id) initWithHeader: (NSString *) headerString footer: (NSString *) footerString;
-- (void) addRow: (TableRowWrapper *) newRow;
-- (TableRowWrapper *) rowForIndex: (NSUInteger) rowIndex;
+- (void) addRow: (TitaniumCellWrapper *) newRow;
+- (TitaniumCellWrapper *) rowForIndex: (NSUInteger) rowIndex;
 - (BOOL) accceptsHeader: (id) newHeader footer: (id) newFooter;
 
 @property(nonatomic,readwrite,copy)		NSString * header;
@@ -268,6 +76,7 @@ UIColor * checkmarkColor = nil;
 @property(nonatomic,readwrite,copy)		NSString * groupType;
 @property(nonatomic,readwrite,assign)	BOOL isOptionList;
 @property(nonatomic,readwrite,assign)	BOOL nullHeader;
+@property(nonatomic,readwrite,assign)	float rowHeight;
 
 
 @property(nonatomic,readwrite,retain)		NSMutableArray * rowArray;
@@ -275,7 +84,7 @@ UIColor * checkmarkColor = nil;
 @end
 
 @implementation TableSectionWrapper
-@synthesize header,footer,groupType,isOptionList,nullHeader,rowArray,name;
+@synthesize header,footer,groupType,isOptionList,nullHeader,rowArray,name,rowHeight;
 
 - (void) forceHeader: (NSString *) headerString footer: (NSString *)footerString;
 {
@@ -307,6 +116,9 @@ UIColor * checkmarkColor = nil;
 	
 	if([nameString isKindOfClass:[NSString class]])[result setName:nameString];
 
+	id rowHeightObj = [newData objectForKey:@&quot;rowHeight&quot;];
+	if([rowHeightObj respondsToSelector:@selector(floatValue)])rowHeight = [rowHeightObj floatValue];
+
 	BOOL isButtonGroup = NO;
 	NSString * rowType = [newData objectForKey:@&quot;type&quot;];
 	if ([rowType isKindOfClass:[NSString class]]){
@@ -325,7 +137,7 @@ UIColor * checkmarkColor = nil;
 		for(NSDictionary * thisEntry in thisDataArray){
 			if (![thisEntry isKindOfClass:dictClass]) continue;
 			
-			TableRowWrapper * thisRow = [[TableRowWrapper alloc] init];
+			TitaniumCellWrapper * thisRow = [[TitaniumCellWrapper alloc] init];
 			if (isButtonGroup) [thisRow setIsButton:YES];
 			
 			[thisRow useProperties:thisEntry withUrl:baseURL];
@@ -351,7 +163,7 @@ UIColor * checkmarkColor = nil;
 	return [rowArray count];
 }
 
-- (void) addRow: (TableRowWrapper *) newRow;
+- (void) addRow: (TitaniumCellWrapper *) newRow;
 {
 	if (rowArray == nil){
 		rowArray = [[NSMutableArray alloc] initWithObjects:newRow,nil];
@@ -360,7 +172,7 @@ UIColor * checkmarkColor = nil;
 	}
 }
 
-- (void) insertRow: (TableRowWrapper *) newRow atIndex: (int) index;
+- (void) insertRow: (TitaniumCellWrapper *) newRow atIndex: (int) index;
 {
 	if (rowArray == nil){
 		rowArray = [[NSMutableArray alloc] initWithObjects:newRow,nil];
@@ -415,10 +227,10 @@ UIColor * checkmarkColor = nil;
 	[rowArray removeObjectAtIndex:rowIndex];
 }
 
-- (TableRowWrapper *) rowForIndex: (NSUInteger) rowIndex;
+- (TitaniumCellWrapper *) rowForIndex: (NSUInteger) rowIndex;
 {
 	if (rowIndex &gt;= [rowArray count]) return nil;
-	TableRowWrapper * result = [rowArray objectAtIndex:rowIndex];
+	TitaniumCellWrapper * result = [rowArray objectAtIndex:rowIndex];
 	return result;
 }
 
@@ -510,7 +322,7 @@ UIColor * checkmarkColor = nil;
 	for(NSDictionary * thisEntry in dataArray){
 		if (![thisEntry isKindOfClass:dictClass]) continue;
 		
-		TableRowWrapper * thisRow = [[[TableRowWrapper alloc] init] autorelease];		
+		TitaniumCellWrapper * thisRow = [[[TitaniumCellWrapper alloc] init] autorelease];		
 		[thisRow useProperties:thisEntry withUrl:baseUrl];
 		
 		id headerString = [thisEntry objectForKey:@&quot;header&quot;];
@@ -753,7 +565,7 @@ UIColor * checkmarkColor = nil;
 {
 	[sectionLock lock];
 	TableSectionWrapper * sectionWrapper = [self sectionForIndex:[indexPath section]];
-	TableRowWrapper * rowWrapper = [sectionWrapper rowForIndex:[indexPath row]];
+	TitaniumCellWrapper * rowWrapper = [sectionWrapper rowForIndex:[indexPath row]];
 	NSString * htmlString = [rowWrapper html];
 	UITableViewCellAccessoryType ourType = [rowWrapper accessoryType];
 	UITableViewCell * result = nil;
@@ -824,6 +636,14 @@ UIColor * checkmarkColor = nil;
 
 
 #pragma mark Delegate methods
+- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;
+{
+	TableSectionWrapper * ourTableSection = [self sectionForIndex:[indexPath section]];
+	float result = [ourTableSection rowHeight];
+	if(result &gt; 1.0) return result;
+	return tableRowHeight;
+}
+
 - (void)triggerActionForIndexPath: (NSIndexPath *)indexPath wasAccessory: (BOOL) accessoryTapped;
 {
 	if ((callbackProxyPath == nil) || (callbackWindowToken == nil)) return;
@@ -876,7 +696,7 @@ UIColor * checkmarkColor = nil;
 
 	if ([sectionWrapper isOptionList] &amp;&amp; ![[sectionWrapper rowForIndex:blessedRow] isButton]){
 		for (int row=0;row&lt;[sectionWrapper rowCount];row++) {
-			TableRowWrapper * rowWrapper = [sectionWrapper rowForIndex:row];
+			TitaniumCellWrapper * rowWrapper = [sectionWrapper rowForIndex:row];
 			UITableViewCellAccessoryType rowType = [rowWrapper accessoryType];
 			BOOL isBlessed = (row == blessedRow);
 			BOOL isUpdated = NO;
@@ -1057,7 +877,12 @@ UIColor * checkmarkColor = nil;
 						return;
 					} else if(headerChange){
 						[thisSection forceHeader:header footer:footer];
-						[tableView reloadSections:[NSIndexSet indexSetWithIndex:thisSectionIndex] withRowAnimation:animation];
+						if([tableView respondsToSelector:@selector(reloadSections:withRowAnimation:)]){
+							[tableView reloadSections:[NSIndexSet indexSetWithIndex:thisSectionIndex] withRowAnimation:animation];
+						} else {
+							[tableView deleteSections:[NSIndexSet indexSetWithIndex:thisSectionIndex] withRowAnimation:animation];
+							[tableView insertSections:[NSIndexSet indexSetWithIndex:thisSectionIndex] withRowAnimation:animation];
+						}
 						return;
 					}
 					//Flows out to the meek little update.
@@ -1080,11 +905,17 @@ UIColor * checkmarkColor = nil;
 					[ourDeletedRowArray release];
 					return;
 				}
-				[tableView reloadRowsAtIndexPaths:[NSArray arrayWithObject:[NSIndexPath indexPathForRow:index inSection:thisSectionIndex]] withRowAnimation:animation];
+				NSArray * ourIndexPathArray = [NSArray arrayWithObject:[NSIndexPath indexPathForRow:index inSection:thisSectionIndex]];
+				if([tableView respondsToSelector:@selector(reloadRowsAtIndexPaths:withRowAnimation:)]){
+					[tableView reloadRowsAtIndexPaths:ourIndexPathArray withRowAnimation:animation];
+				} else {
+					[tableView deleteRowsAtIndexPaths:ourIndexPathArray withRowAnimation:animation];
+					[tableView insertRowsAtIndexPaths:ourIndexPathArray withRowAnimation:animation];
+				}
 				return;
 			}
 			//Okay, now it's an insert before or after.
-			TableRowWrapper * insertedRow = [[[TableRowWrapper alloc] init] autorelease];
+			TitaniumCellWrapper * insertedRow = [[[TitaniumCellWrapper alloc] init] autorelease];
 			[insertedRow useProperties:rowData withUrl:baseUrl];
 			if(isInsertAfter){
 				index++;
@@ -1203,7 +1034,7 @@ UIColor * checkmarkColor = nil;
 		int section = -1;
 		NSArray * ourIndexPathArray = nil;
 		NSIndexSet * ourSectionSet = nil;
-		TableRowWrapper * thisRow=nil;
+		TitaniumCellWrapper * thisRow=nil;
 		if(kind &amp; TitaniumTableActionSectionRow){
 			section = [thisAction section];
 			row	 = [thisAction row];
@@ -1231,7 +1062,7 @@ UIColor * checkmarkColor = nil;
 				break;
 			case TitaniumGroupActionInsertBeforeRow:
 				if(row &gt; [thisSectionWrapper rowCount]) break;
-				thisRow = [[TableRowWrapper alloc] init];
+				thisRow = [[TitaniumCellWrapper alloc] init];
 				[thisRow useProperties:[thisAction rowData] withUrl:[thisAction baseUrl]];
 				[thisSectionWrapper insertRow:thisRow atIndex:row];
 				[tableView insertRowsAtIndexPaths:ourIndexPathArray withRowAnimation:animation];
@@ -1246,7 +1077,12 @@ UIColor * checkmarkColor = nil;
 				if(row &gt;= [thisSectionWrapper rowCount]) break;
 				thisRow = [thisSectionWrapper rowForIndex:row];
 				[thisRow useProperties:[thisAction rowData] withUrl:[thisAction baseUrl]];
-				[tableView reloadRowsAtIndexPaths:ourIndexPathArray withRowAnimation:animation];
+				if([tableView respondsToSelector:@selector(reloadRowsAtIndexPaths:withRowAnimation:)]){
+					[tableView reloadRowsAtIndexPaths:ourIndexPathArray withRowAnimation:animation];
+				} else {
+					[tableView deleteRowsAtIndexPaths:ourIndexPathArray withRowAnimation:animation];
+					[tableView insertRowsAtIndexPaths:ourIndexPathArray withRowAnimation:animation];
+				}
 				break;
 			case TitaniumGroupActionInsertBeforeGroup:
 				if(section &gt; [sectionArray count])break;
@@ -1257,7 +1093,12 @@ UIColor * checkmarkColor = nil;
 				if(section &gt;= [sectionArray count])break;
 				//Todo: Possibly not replace, but just update?
 				[sectionArray replaceObjectAtIndex:section withObject:[TableSectionWrapper tableSectionWithData:[thisAction sectionData] withUrl:[thisAction baseUrl]]];
-				[tableView reloadSections:ourSectionSet withRowAnimation:animation];
+				if([tableView respondsToSelector:@selector(reloadSections:withRowAnimation:)]){
+					[tableView reloadSections:ourSectionSet withRowAnimation:animation];
+				} else {
+					[tableView deleteSections:ourSectionSet withRowAnimation:animation];
+					[tableView insertSections:ourSectionSet withRowAnimation:animation];
+				}
 				break;
 			case TitaniumGroupActionDeleteGroup:
 				if(section &gt;= [sectionArray count])break;</diff>
      <filename>iphone/Classes/TitaniumTableViewController.m</filename>
    </modified>
    <modified>
      <diff>@@ -49,10 +49,6 @@ typedef enum {
 	NSLock	* contentViewLock;
 	NSMutableArray * contentViewControllers;
 
-	UIScrollView * pagedView;
-	UIPageControl * pageControl;
-	NSMutableArray * pagedViewControllers;	//Should be a subset of contentViewControllers
-
 	int selectedContentIndex;
 	TitaniumContentViewController * focusedContentController;
 </diff>
      <filename>iphone/Classes/TitaniumViewController.h</filename>
    </modified>
    <modified>
      <diff>@@ -710,98 +710,6 @@ int nextWindowToken = 0;
 	[self setAnimationOptionsDict:nil];
 }
 
-#pragma mark Scrolling view ahoy
-
-- (void) setPagedViewControllerProxies: (NSArray *) newPagedViewControllerProxies;
-{
-	int controllerCount = [newPagedViewControllerProxies count];
-	if(controllerCount==0){
-		[pagedView release];
-		pagedView = nil;
-		[pageControl release];
-		pageControl = nil;
-		[pagedViewControllers release];
-		pagedViewControllers = nil;
-		[self needsUpdate:TitaniumViewControllerNeedsRefresh];
-		return;
-	}
-
-	if(pageControl == nil){
-		pageControl = [[UIPageControl alloc] initWithFrame:CGRectZero];
-			[pageControl addTarget:self action:@selector(changePage:) forControlEvents:UIControlEventValueChanged];
-		
-	}
-	[pageControl setNumberOfPages:controllerCount];
-	
-	if(pagedView == nil){
-		pagedView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)];
-		[pagedView setDelegate:self];
-		[pagedView setPagingEnabled:YES];
-		[pagedView setDelaysContentTouches:NO];
-	}
-	
-	[self needsUpdate:TitaniumViewControllerNeedsRefresh];
-}
-
-- (void)prepareViewAtPage:(int) pageNum;
-{
-	if((pageNum &lt; 0) || (pageNum &gt;= [pagedViewControllers count]))return;
-
-	TitaniumContentViewController * thisPageViewController = [pagedViewControllers objectAtIndex:pageNum];
-	UIView * thisPageView = [thisPageViewController view];
-	if ([thisPageView superview] != pagedView){
-		
-		
-		
-		
-	}
-	
-	
-}
-
-
-- (void)scrollViewDidScroll:(UIScrollView *)sender {
-//    // We don't want a &quot;feedback loop&quot; between the UIPageControl and the scroll delegate in
-//    // which a scroll event generated from the user hitting the page control triggers updates from
-//    // the delegate method. We use a boolean to disable the delegate logic when the page control is used.
-//    if (pageControlUsed) {
-//        // do nothing - the scroll was initiated from the page control, not the user dragging
-//        return;
-//    }
-//    // Switch the indicator when more than 50% of the previous/next page is visible
-//    CGFloat pageWidth = scrollView.frame.size.width;
-//    int page = floor((scrollView.contentOffset.x - pageWidth / 2) / pageWidth) + 1;
-//    pageControl.currentPage = page;
-//	
-//    // load the visible page and the page on either side of it (to avoid flashes when the user starts scrolling)
-//    [self loadScrollViewWithPage:page - 1];
-//    [self loadScrollViewWithPage:page];
-//    [self loadScrollViewWithPage:page + 1];
-//	
-//    // A possible optimization would be to unload the views+controllers which are no longer visible
-}
-
-// At the end of scroll animation, reset the boolean used when scrolls originate from the UIPageControl
-- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView {
-//    pageControlUsed = NO;
-}
-
-- (IBAction)changePage:(id)sender {
-//    int page = pageControl.currentPage;
-//    // load the visible page and the page on either side of it (to avoid flashes when the user starts scrolling)
-//    [self loadScrollViewWithPage:page - 1];
-//    [self loadScrollViewWithPage:page];
-//    [self loadScrollViewWithPage:page + 1];
-//    // update the scroll view to the appropriate page
-//    CGRect frame = scrollView.frame;
-//    frame.origin.x = frame.size.width * page;
-//    frame.origin.y = 0;
-//    [scrollView scrollRectToVisible:frame animated:YES];
-//    // Set the boolean used when scrolls originate from the UIPageControl. See scrollViewDidScroll: above.
-//    pageControlUsed = YES;
-}
-
-
 #pragma mark Methods called by the UIModule
 - (void) setStatusBarStyleObject: (id) object;
 {</diff>
      <filename>iphone/Classes/TitaniumViewController.m</filename>
    </modified>
    <modified>
      <diff>@@ -18,6 +18,7 @@
 	TitaniumViewControllerOrientationsAllowed lastOrientation;
 
 	NSMutableSet * nativeOnscreenProxies;
+	BOOL isNonTitaniumPage;
 }
 
 //For WebView</diff>
      <filename>iphone/Classes/TitaniumWebViewController.h</filename>
    </modified>
    <modified>
      <diff>@@ -83,6 +83,7 @@ TitaniumWebViewController * mostRecentController = nil;
 	[webView release];
 	webView = nil;
 	[[NSNotificationCenter defaultCenter] removeObserver:self];
+	[nativeOnscreenProxies release];
 
 	[currentContentURL release];	//Used as a base url.
 
@@ -346,6 +347,7 @@ TitaniumWebViewController * mostRecentController = nil;
 {
 	CLOCKSTAMP(&quot;Finished load request for %@&quot;,self);
 	[UIView beginAnimations:@&quot;webView&quot; context:nil];
+	[UIView setAnimationDuration:0.1];
 	[self updateLayout:NO];
 	
 	NSString * newTitle = [webView stringByEvaluatingJavaScriptFromString:@&quot;document.title&quot;];
@@ -355,9 +357,12 @@ TitaniumWebViewController * mostRecentController = nil;
 	[scrollView setAlpha:1.0];
 	[[TitaniumAppDelegate sharedDelegate] hideLoadingView];
 	[UIView commitAnimations];
+
+	isNonTitaniumPage = ![[currentContentURL scheme] isEqualToString:@&quot;app&quot;];
+	[webView setScalesPageToFit:isNonTitaniumPage];
+	if(isNonTitaniumPage)return;
 	[self probeWebViewForTokenInContext:@&quot;window&quot;];
 	
-	if(![[currentContentURL scheme] isEqualToString:@&quot;app&quot;])return;
 	if([[webView stringByEvaluatingJavaScriptFromString:@&quot;typeof(Titanium)&quot;] isEqualToString:@&quot;undefined&quot;])[self investigateTitaniumCrashSite];
 	
 	[webView stringByEvaluatingJavaScriptFromString:@&quot;Ti.UI.currentView.doEvent({type:'load'});&quot;];
@@ -376,7 +381,12 @@ TitaniumWebViewController * mostRecentController = nil;
 	
 }
 
-
+- (BOOL)touchesShouldCancelInContentView:(UIView *)view;
+{
+	if(isNonTitaniumPage)return NO;
+	NSString * noCancel = [webView stringByEvaluatingJavaScriptFromString:@&quot;Ti._DOTOUCH&quot;];
+	return ![noCancel boolValue];
+}
 
 #pragma mark Updating things
 
@@ -384,6 +394,16 @@ TitaniumWebViewController * mostRecentController = nil;
 {
 	if ([scrollView superview]==nil) return;
 	CGRect webFrame;
+	if(isNonTitaniumPage){
+		NSLog(@&quot;Was not titanium page!&quot;);
+		CGRect webFrame;
+		webFrame.origin = CGPointZero;
+		webFrame.size = [scrollView frame].size;
+		[scrollView setContentSize:webFrame.size];
+		[webView setFrame:webFrame];
+		return;
+	}
+	
 	webFrame.origin = CGPointZero;
 	webFrame.size = [[self view] frame].size;
 	[webView stringByEvaluatingJavaScriptFromString:@&quot;Ti.UI._ISRESIZING=true;&quot;];</diff>
      <filename>iphone/Classes/TitaniumWebViewController.m</filename>
    </modified>
    <modified>
      <diff>@@ -27,16 +27,18 @@
 
 - (BOOL)touchesShouldBegin:(NSSet *)touches withEvent:(UIEvent *)event inContentView:(UIView *)view;
 {
-	BOOL result=[super touchesShouldBegin:touches withEvent:event inContentView:view];
-//	NSLog(@&quot;TouchesShouldBegin:%@ withEvent:%@ inContentView:%@ == %d&quot;,touches,event,view,result);
-
-	NSLog(@&quot;TouchesShouldBegin:%d withEvent:%@ inContentView:%@ == %d&quot;,[touches count],
-		  ([event type]==UIEventTypeTouches)?@&quot;touches&quot;:@&quot;motion&quot;,NSStringFromClass([view class]),result);
-
 	if([[view superview] isKindOfClass:[UIPickerView class]]){
-		NSLog(@&quot;Was picker view!&quot;);
 		return YES;
 	}
+
+	if([view isKindOfClass:[UIWebView class]]){
+		NSLog(@&quot;In web view!&quot;);
+	}
+	
+	BOOL result=[super touchesShouldBegin:touches withEvent:event inContentView:view];
+//	NSLog(@&quot;TouchesShouldBegin:%d withEvent:%@ inContentView:%@ == %d&quot;,[touches count],
+//		  ([event type]==UIEventTypeTouches)?@&quot;touches&quot;:@&quot;motion&quot;,NSStringFromClass([view class]),result);
+	
 //	if([view isKindOfClass:[UIScrollView class]]){
 //		[view touchesBegan:touches withEvent:event];
 //		return NO;
@@ -46,13 +48,21 @@
 
 - (BOOL)touchesShouldCancelInContentView:(UIView *)view;
 {
+	UIView * superview = [view superview];
+	if([superview isKindOfClass:[UIPickerView class]]){
+		return NO;
+	}
 	BOOL result=[super touchesShouldCancelInContentView:view];
-	NSLog(@&quot;TouchesShouldCancelInContentView:%@ == %d&quot;,NSStringFromClass([view class]),result);
 //	if([view isKindOfClass:[UIScrollView class]]) return NO;
-	if([[view superview] isKindOfClass:[UIPickerView class]]){
-		NSLog(@&quot;Was picker view!&quot;);
-		return NO;
+	UIView * superduperview = [superview superview];
+
+	if([superduperview isKindOfClass:[UIWebView class]]){
+		id superduperviewdelegate = [(UIWebView *)superduperview delegate];
+		if ([superduperviewdelegate respondsToSelector:@selector(touchesShouldCancelInContentView:)]){
+			result = [superduperviewdelegate touchesShouldCancelInContentView:superduperview];
+		}
 	}
+	NSLog(@&quot;TouchesShouldCancelInContentView:%@(%@) == %d&quot;,NSStringFromClass([view class]),NSStringFromClass([[[view superview] superview] class]),result);
 	return result;
 }
 </diff>
      <filename>iphone/Classes/TweakedScrollView.m</filename>
    </modified>
    <modified>
      <diff>@@ -74,6 +74,7 @@
 {
 	[self updateState:NO];
 	[UIView beginAnimations:@&quot;webView&quot; context:nil];
+	[UIView setAnimationDuration:0.1];
 	[inputWebView setAlpha:1.0];
 	[UIView commitAnimations];
 }	</diff>
      <filename>iphone/Classes/WebTableViewCell.m</filename>
    </modified>
    <modified>
      <diff>@@ -14,6 +14,7 @@
 	&lt;div&gt;&lt;input type=&quot;button&quot; id=&quot;2&quot; value=&quot;Try URL&quot; class=&quot;button&quot;/&gt;&lt;/div&gt;
 
 	&lt;script&gt;
+Titanium.API.debug(&quot;Bwa?&quot;);
 	document.getElementById('1').onclick = function()
 	{
 		Titanium.Media.openPhotoGallery({
@@ -58,7 +59,39 @@
 		xhr.send(null);
 	}
 
+function touchHandler(event)
+{
+    var touches = event.changedTouches,
+        first = touches[0];
+            
+    //initMouseEvent(type, canBubble, cancelable, view, clickCount, 
+    //           screenX, screenY, clientX, clientY, ctrlKey, 
+    //           altKey, shiftKey, metaKey, button, relatedTarget);
+    
+	Ti.API.debug('Type:' + event.type + ' first: (' + first.screenX + ',' + first.screenY + ')=(' + first.clientX +
+			',' + first.clientY + ')');
+};
+
+function touchy(event){
+	Ti.API.debug(&quot;we're in lorem ipsum!&quot;);
+	touchHandler(event);
+    event.preventDefault();
+}
 
+//function toucher(event){
+////	event.stopPropagation();
+//	Ti.API.debug(&quot;we're in document!&quot;);
+//	event._NODEF = event.preventDefault;
+//	Ti._NOCAN = false;
+//	event.preventDefault = function(){Ti._NOCAN=true;this._NODEF();}
+//	setTimeout(&quot;Ti.API.debug('Cancel was '+Ti._NOCAN)&quot;,0);
+//	touchHandler(event);
+//}
+//
+//    document.addEventListener(&quot;touchstart&quot;, toucher, true);
+//    document.addEventListener(&quot;touchmove&quot;, toucher, true);
+//    document.addEventListener(&quot;touchend&quot;, toucher, true);
+//    document.addEventListener(&quot;touchcancel&quot;, toucher, true);    
 	&lt;/script&gt;
 	
 	
@@ -75,9 +108,42 @@
 	button2.addEventListener('click',function(e)
 	{
 		Titanium.UI.currentWindow.close();
-	})
+	});
 	
 	&lt;/script&gt;
 	&lt;div id='pagey'&gt;&lt;/div&gt;
+&lt;div id='lipsum' style='background-color:blue;width:200px'&gt;
+Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam arcu sem, scelerisque sed tincidunt sodales, pharetra ut nulla. Praesent vel sem sit amet lacus varius lobortis. Etiam eu metus eu libero pulvinar tincidunt non in ante. Vestibulum rhoncus, tellus cursus consectetur blandit, lectus libero facilisis ipsum, nec commodo mi arcu eget metus. Quisque pellentesque, nulla tincidunt pharetra porttitor, lacus nulla gravida nunc, at porttitor nisl dolor porta lectus. Aliquam tempor, metus in egestas lacinia, diam justo luctus quam, ut ullamcorper mauris ipsum quis urna. Donec justo nulla, laoreet sit amet egestas eu, molestie id magna. Donec commodo hendrerit porta. Nullam consectetur ultricies imperdiet. Ut et nibh nisl. Pellentesque lorem tortor, porta et fringilla et, ultrices eget eros. Morbi aliquam turpis in ipsum placerat sed luctus felis laoreet. Ut luctus, magna nec porta hendrerit, neque dolor malesuada nulla, at euismod augue ante non sapien. Nunc eu tortor felis, semper condimentum elit. Etiam lectus odio, dignissim et tristique eu, posuere quis quam. Morbi auctor, risus a sollicitudin eleifend, erat nisl vestibulum nulla, sed posuere est dui eget lacus. Pellentesque viverra rhoncus semper. Nunc egestas leo a dui interdum vitae viverra ante adipiscing. Donec interdum interdum est, vel condimentum leo condimentum sed. Etiam cursus accumsan ligula in rutrum.
+
+Nulla interdum lacinia iaculis. Integer augue lorem, porttitor non dapibus eget, mollis ac nunc. Sed sed tincidunt felis. Suspendisse molestie condimentum malesuada. Cras a venenatis odio. Mauris lectus quam, consequat ut dictum nec, convallis ac purus. Duis vitae lacus neque, a luctus quam. Cras in quam et ipsum hendrerit elementum. Aenean justo magna, mattis in suscipit id, rhoncus nec orci. Vivamus pulvinar lacus at ipsum mattis consectetur. Fusce a dui nisi. Suspendisse in adipiscing massa. Fusce luctus dictum lacinia. Nullam et felis nulla. Fusce quis justo leo.
+
+Aliquam erat volutpat. Fusce nec bibendum felis. Morbi semper placerat dui sit amet congue. Fusce nec eros non sem imperdiet consectetur vel nec eros. Sed cursus est ac eros auctor nec lobortis dolor scelerisque. Etiam at bibendum ipsum. Pellentesque imperdiet vehicula auctor. Cras quis aliquet dui. Donec vehicula commodo mi, non ultrices nisl luctus imperdiet. Aliquam pretium nisl quis tellus aliquam mattis. Quisque tincidunt vehicula rutrum. Etiam ac orci nisl. Pellentesque elementum purus sodales orci dapibus feugiat. Sed eu mi vitae neque molestie volutpat. Fusce nec purus magna. In vel aliquet ante. Aliquam et ipsum quis mauris interdum tincidunt. Proin vel ipsum nulla, id tincidunt diam. Nulla sit amet dui libero, vitae mattis magna.
+
+Donec volutpat turpis est, ut laoreet odio. Vivamus non consequat libero. Proin sit amet mi erat, nec accumsan erat. In tristique, mi sed congue interdum, nisl enim varius nulla, id tincidunt augue dui ut purus. Phasellus bibendum volutpat mauris, eget volutpat lacus iaculis ut. Fusce nec blandit massa. Phasellus sagittis gravida orci, ultrices feugiat nibh cursus et. Vestibulum hendrerit purus at magna sagittis vitae bibendum leo ullamcorper. Integer tincidunt, felis et sodales sollicitudin, lorem orci molestie tortor, vitae venenatis erat erat quis odio. Mauris eget dignissim tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer congue facilisis lacus a aliquam. Praesent ullamcorper velit vel mauris tristique molestie. Praesent varius sem risus, at pulvinar orci. Duis pharetra feugiat risus, sit amet semper tellus tincidunt sed. Nam in accumsan elit. Donec purus nibh, molestie in dignissim at, rutrum a tortor. Maecenas non ipsum ornare eros hendrerit placerat.
+
+Nulla vel lectus tempus lectus interdum luctus in et ante. Cras mi quam, bibendum a porttitor at, dignissim vitae orci. Cras tempus congue facilisis. Sed eget erat leo. Vestibulum porttitor dignissim enim sit amet euismod. Ut eget imperdiet quam. Curabitur gravida nulla eget nisi gravida ac luctus justo elementum. Donec a diam in nisl rutrum pellentesque id quis eros. In hac habitasse platea dictumst. Fusce convallis elit a magna interdum faucibus. Vivamus id imperdiet lectus. Donec neque dui, posuere sit amet malesuada ac, feugiat pellentesque nulla. Cras vitae tellus et nunc auctor pellentesque. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Quisque vestibulum elit sed arcu venenatis tristique. Vestibulum pulvinar vestibulum elit, non dictum enim pellentesque sed. Nulla facilisi. Ut eget nulla vestibulum nunc ornare commodo eget eget urna. Etiam ut ante at est adipiscing fermentum quis id tortor.
+
+Vestibulum eget est sed felis rutrum pretium. Praesent aliquam nunc eget felis rutrum eget convallis elit tincidunt. Cras sodales, enim porta sodales vehicula, enim nunc hendrerit nibh, id fringilla diam tellus id urna. Duis malesuada quam urna, id blandit magna. Etiam id odio posuere lectus viverra fringilla accumsan ut ante. Quisque dapibus eleifend est, quis porta ipsum commodo nec. Fusce et augue eu mi pharetra eleifend eget nec lectus. Nunc sit amet erat eu ante consectetur vulputate vitae vitae est. Donec vitae nisi diam, eget suscipit diam. Nulla aliquet mauris eget justo pulvinar sit amet mollis felis facilisis. Quisque nunc enim, adipiscing vitae varius a, lacinia venenatis orci. Phasellus sed ante felis, quis gravida ipsum. Donec in vulputate elit. Suspendisse potenti. Etiam sit amet sagittis ipsum. Donec convallis erat ut turpis semper facilisis. Donec vel iaculis neque. Suspendisse porttitor odio sed tellus auctor condimentum. Sed facilisis pretium sollicitudin. Donec sit amet tortor mauris, vel pretium eros.
+
+Nam dolor dolor, lobortis vitae suscipit sit amet, porta ut odio. Phasellus ultricies dignissim neque, id rutrum turpis varius ac. Ut nec diam urna, egestas ultrices ligula. Fusce lacinia ultrices nulla at sollicitudin. Cras tellus elit, gravida tincidunt ultrices ut, placerat sit amet sem. Nullam id neque condimentum diam posuere tempus sed eget eros. Etiam dapibus, felis vitae tincidunt dictum, dolor lectus bibendum quam, non sollicitudin justo diam quis dui. Sed vel neque lectus, ac dignissim sem. Duis convallis libero non nisi venenatis viverra. Phasellus ut nulla non sapien dictum ornare consectetur commodo purus. Nam elementum cursus mi at tristique. Ut id tortor nunc. Curabitur lectus nibh, vehicula id consequat quis, auctor id mi. Aenean eu diam erat, ut imperdiet dui. Quisque vel turpis ac nisi mattis egestas.
+
+Aenean malesuada mollis consequat. Fusce venenatis vulputate metus a semper. Morbi placerat ipsum egestas dui pellentesque congue. Suspendisse ut ante lectus, vel dignissim velit. Sed ac accumsan justo. Vestibulum tincidunt volutpat venenatis. Nam fringilla pellentesque consectetur. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. In in tellus in nulla cursus vestibulum sit amet non nunc. Sed vitae nunc et neque faucibus luctus. Quisque a turpis nec leo placerat facilisis. Vivamus feugiat ligula at sem volutpat ut tempus nisi porttitor. Pellentesque aliquam vehicula elit sit amet blandit. Duis sodales eleifend dolor vitae accumsan. Nullam luctus, felis nec facilisis sagittis, urna leo ultrices diam, et blandit ipsum urna at metus. Donec tempus leo ut ipsum dictum fringilla. Sed risus elit, lacinia et accumsan sit amet, porttitor vel nisi. Etiam at ante est, nec posuere augue. Aliquam molestie elit posuere dui imperdiet fringilla non sit amet arcu. Sed bibendum tincidunt metus, sit amet facilisis metus pulvinar nec.
+
+In nec leo nisl. Suspendisse sit amet accumsan ante. Cras neque augue, volutpat in ultricies tempus, porttitor in ligula. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Nulla feugiat tempor sem, ac dapibus eros facilisis et. Sed commodo, tortor at varius lobortis, lacus nisi vehicula est, vitae auctor lacus justo eget nunc. Donec ligula elit, lacinia porttitor volutpat vitae, vestibulum at nibh. Proin malesuada accumsan quam et euismod. Praesent fringilla vestibulum orci a pulvinar. Quisque congue vestibulum tortor vulputate vestibulum. Donec gravida vehicula tortor, in posuere felis hendrerit vitae. Nullam ut nibh metus.
+
+Vestibulum a nunc justo. Praesent eu diam vitae elit viverra venenatis. Aenean sodales tincidunt rhoncus. Donec ut mi quis nisi dapibus lobortis. Praesent scelerisque tristique nulla eget volutpat. Nunc mattis elit vitae velit dictum sed condimentum arcu pulvinar. Aliquam aliquet convallis ipsum, vel tincidunt leo viverra ut. Pellentesque non mattis nibh. Pellentesque et odio sed sem consequat luctus. In placerat, nunc sed blandit iaculis, leo tortor volutpat diam, sed sagittis nibh magna mattis ligula. Aliquam erat volutpat. Vestibulum elit lorem, placerat eget hendrerit eu, venenatis aliquam justo.
+&lt;/div&gt;
+&lt;script&gt;
+document.getElementById('lipsum').addEventListener(&quot;touchstart&quot;, touchy, false);
+document.getElementById('lipsum').addEventListener(&quot;touchmove&quot;, touchy, false);
+document.getElementById('lipsum').addEventListener(&quot;touchend&quot;, touchy, false);
+document.getElementById('lipsum').addEventListener(&quot;touchcancel&quot;, touchy, false);    
+
+//document.getElementById('lipsum').ontouchstart=touchy;
+//document.getElementById('lipsum').ontouchmove=touchy;
+//document.getElementById('lipsum').ontouchend=touchy;
+//document.getElementById('lipsum').ontouchcancel=touchy;    
+
+&lt;/script&gt;
 &lt;/body&gt;
 &lt;/html&gt;
\ No newline at end of file</diff>
      <filename>iphone/Resources/buggy.html</filename>
    </modified>
    <modified>
      <diff>@@ -59,6 +59,14 @@
 			emailDialog.open();
 		}
 		
+		fileTest=function(){
+			var filething=Titanium.Filesystem.getFile('~');
+			var something=Titanium.Filesystem.getFile(filething.resolve());
+			Ti.API.debug('filething: ' + typeof(filething));
+			Ti.API.debug('Listing: ' + typeof(filething.getDirectoryListing));
+			Ti.API.debug('Listing: ' + filething.getDirectoryListing());
+		}
+		
 		var btn1=Ti.UI.createButton({title:'-'});
 		var btn2=Ti.UI.createButton({title:'+'});
 		var spinny=Ti.UI.createActivityIndicator({width:80,message:'Foo'});
@@ -72,14 +80,24 @@
 				barry.message = 'Completed ' + barry.value + ' of ' + barry.max;
 				barry.update({animated:true,animationDuration:1000});});
 		Ti.UI.currentWindow.setToolbar([btn1,btn2,spinny,barry]);
+
 var nowness = new Date();
 var forward = new Date(nowness.getTime());
 forward.setDate(forward.getDate()+1);
 var backward = new Date(nowness.getTime());
 backward.setDate(backward.getDate()-1);
 
-daty = Ti.UI.createDatePicker({x:0,id:'buttony',value:nowness,minDate:backward,maxDate:forward,minuteInterval:5});
-daty.addEventListener('change',function(e){Ti.API.debug('The time is now: ' + e.value);});
+var dataz=[
+{width:50,height:30,data:[{title:'foo', selected:true},{title:'bar'}]},
+{width:0,height:50,data:[{title:'foo', selected:true},{title:'bar',image:&quot;Safari.png&quot;}]},
+{width:0,height:60,data:[{html:'&lt;body style=&quot;background:transparent&quot;&gt;&lt;img src=&quot;foo.png&quot;/&gt; pick me&lt;/div&gt;',selected:true},{html:'&lt;body&gt;&lt;img src=&quot;bar.png&quot;/&gt; pick me too&lt;/div&gt;'}]}
+];
+try{
+picky = Ti.UI.createPicker({x:0,id:'buttony',data:dataz,selectionIndicator:true});
+}catch(E){
+Ti.API.debug('We got '+E);
+}
+picky.addEventListener('change',function(e){Ti.API.debug('The time is now: ' + e.value);});
 
 	};
 
@@ -115,6 +133,8 @@ Titanium.UI.addEventListener('tabchange',function(e)
 
 	&lt;button onclick=&quot;doEmailTest()&quot;&gt;Email&lt;/button&gt;
 
+	&lt;button onclick=&quot;testFun('fileTest()')&quot;&gt;File&lt;/button&gt;
+
 	&lt;button onclick=&quot;Titanium.UI.currentWindow.showView(buggyView,{animated:true,animationStyle:Ti.UI.iPhone.AnimationStyle.FLIP_FROM_LEFT,animationDuration:2000})&quot;&gt;Switch by view&lt;/button&gt;
 	&lt;button onclick=&quot;Titanium.UI.currentWindow.showView(Titanium.UI.currentWindow.getViewByName('bugger'),{animated:true,animationStyle:Ti.UI.iPhone.AnimationStyle.FLIP_FROM_LEFT,animationDuration:2000})&quot;&gt;Switch by name&lt;/button&gt;
 	&lt;button onclick=&quot;Titanium.UI.currentWindow.showView(Titanium.UI.currentWindow.getViewByName('number1'),{animated:true,animationStyle:Ti.UI.iPhone.AnimationStyle.FLIP_FROM_LEFT,animationDuration:2000})&quot;&gt;Switch by name &quot;number1&quot;&lt;/button&gt;
@@ -125,16 +145,6 @@ Titanium.UI.addEventListener('tabchange',function(e)
 	&lt;button onclick=&quot;daty.setValue(new Date(), {animated:true})&quot;&gt;Update Time&lt;/button&gt;
 
 	&lt;div id='buttony' style=&quot;width:300px;height:218px;&quot;&gt;What should be here?&lt;/div&gt;
-	Landscape: &lt;script&gt;document.write(Ti.Gesture.LANDSCAPE);&lt;/script&gt;&lt;br&gt;
-	isLandscape: &lt;script&gt;document.write(Ti.Gesture.isLandscape(Ti.Gesture.LANDSCAPE_LEFT));&lt;/script&gt;&lt;br&gt;
-	1&amp;1: &lt;script&gt;document.write(1 &amp; 1);&lt;/script&gt;&lt;br&gt;
-	Landscape: &lt;script&gt;document.write(Ti.Gesture.LANDSCAPE);&lt;/script&gt;&lt;br&gt;
-	Landscape: &lt;script&gt;document.write(Ti.Gesture.LANDSCAPE);&lt;/script&gt;&lt;br&gt;
-	Landscape: &lt;script&gt;document.write(Ti.UI.LANDSCAPE);&lt;/script&gt;&lt;br&gt;
-
-1234567
-	&lt;a href=&quot;tel:1234567&quot;&gt;Call me&lt;/a&gt;&lt;div id='buttony' style='position:absolute;top:350;right:120;width:200px;height:80px'&gt;Button goes here!&lt;/div&gt;
-	&lt;a href=&quot;tel:1234567&quot;&gt;Call me&lt;/a&gt;
 	
 	&lt;div id='sliderValue'&gt;Unchanged slider value!&lt;/div&gt;
 </diff>
      <filename>iphone/Resources/misc.html</filename>
    </modified>
    <modified>
      <diff>@@ -16,7 +16,7 @@ modules = [	'api',
 		'filesystem',
 		'network',
 		'platform',
-            	'analytics',
+        'analytics',
 		'gesture']
 
 try:</diff>
      <filename>iphone/SConstruct</filename>
    </modified>
    <modified>
      <diff>@@ -32,97 +32,120 @@
 		2444FC7F0FCA6F8000063972 /* NSData+Additions.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444FC7C0FCA6F8000063972 /* NSData+Additions.m */; };
 		2444FCD40FCA741E00063972 /* base64.c in Sources */ = {isa = PBXBuildFile; fileRef = 2444FCD10FCA741E00063972 /* base64.c */; };
 		24BBD83E0FCD245F00A261A4 /* GestureModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 24BBD83D0FCD245F00A261A4 /* GestureModule.m */; };
-		24EB7774105332AA00E21E02 /* AnalyticsModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 24F02E440FD482D2007894DA /* AnalyticsModule.h */; };
-		24EB7775105332AC00E21E02 /* AnalyticsModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 24F02E450FD482D2007894DA /* AnalyticsModule.m */; };
-		24EB77901053334F00E21E02 /* GestureModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 24BBD83C0FCD245F00A261A4 /* GestureModule.h */; };
-		24EB77911053335200E21E02 /* GestureModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 24BBD83D0FCD245F00A261A4 /* GestureModule.m */; };
-		24EB77991053337200E21E02 /* ApiModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8080FC9FCA400063972 /* ApiModule.h */; };
-		24EB779A1053337500E21E02 /* ApiModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F8090FC9FCA400063972 /* ApiModule.m */; };
-		24EB77A21053338800E21E02 /* AppModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F80B0FC9FCA400063972 /* AppModule.h */; };
-		24EB77A31053338B00E21E02 /* AppModule.m in Headers */ = {isa = PBXBuildFile; fileRef = 2444F80C0FC9FCA400063972 /* AppModule.m */; };
-		24EB77AB105333A200E21E02 /* DatabaseModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F80E0FC9FCA400063972 /* DatabaseModule.h */; };
-		24EB77AC105333B200E21E02 /* PlausibleDatabase.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8110FC9FCA400063972 /* PlausibleDatabase.h */; };
-		24EB77AD105333B200E21E02 /* PLDatabase.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8130FC9FCA400063972 /* PLDatabase.h */; };
-		24EB77AE105333B200E21E02 /* PLPreparedStatement.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8140FC9FCA400063972 /* PLPreparedStatement.h */; };
-		24EB77AF105333B200E21E02 /* PLResultSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8150FC9FCA400063972 /* PLResultSet.h */; };
-		24EB77B0105333B200E21E02 /* PLSqliteDatabase.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8160FC9FCA400063972 /* PLSqliteDatabase.h */; };
-		24EB77B1105333B200E21E02 /* PLSqlitePreparedStatement.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8180FC9FCA400063972 /* PLSqlitePreparedStatement.h */; };
-		24EB77B2105333B200E21E02 /* PLSqliteResultSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F81A0FC9FCA400063972 /* PLSqliteResultSet.h */; };
-		24EB77B3105333C700E21E02 /* DatabaseModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F80F0FC9FCA400063972 /* DatabaseModule.m */; };
-		24EB77B4105333C700E21E02 /* PlausibleDatabase.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F8120FC9FCA400063972 /* PlausibleDatabase.m */; };
-		24EB77B5105333C700E21E02 /* PLSqliteDatabase.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F8170FC9FCA400063972 /* PLSqliteDatabase.m */; };
-		24EB77B6105333C700E21E02 /* PLSqlitePreparedStatement.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F8190FC9FCA400063972 /* PLSqlitePreparedStatement.m */; };
-		24EB77B7105333C700E21E02 /* PLSqliteResultSet.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F81B0FC9FCA400063972 /* PLSqliteResultSet.m */; };
-		24EB77BF105333E100E21E02 /* FilesystemModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F81D0FC9FCA400063972 /* FilesystemModule.h */; };
-		24EB77C0105333E400E21E02 /* FilesystemModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F81E0FC9FCA400063972 /* FilesystemModule.m */; };
-		24EB77C81053340800E21E02 /* GeolocationModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8200FC9FCA400063972 /* GeolocationModule.h */; };
-		24EB77C91053340C00E21E02 /* GeolocationModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F8210FC9FCA400063972 /* GeolocationModule.m */; };
-		24EB77D11053342300E21E02 /* MediaModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8230FC9FCA400063972 /* MediaModule.h */; };
-		24EB77D21053342700E21E02 /* MediaModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F8240FC9FCA400063972 /* MediaModule.m */; };
-		24EB77DA1053344A00E21E02 /* AccelerometerModule.h in Headers */ = {isa = PBXBuildFile; fileRef = B4110C9B0FD4653A00BE17F8 /* AccelerometerModule.h */; };
-		24EB77DB1053344E00E21E02 /* AccelerometerModule.m in Sources */ = {isa = PBXBuildFile; fileRef = B4110C9C0FD4653A00BE17F8 /* AccelerometerModule.m */; };
-		24EB77E31053346C00E21E02 /* NetworkModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F82C0FC9FCA400063972 /* NetworkModule.h */; };
-		24EB77E41053346F00E21E02 /* NetworkModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F82D0FC9FCA400063972 /* NetworkModule.m */; };
-		24EB77EC1053348C00E21E02 /* PlatformModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F82F0FC9FCA400063972 /* PlatformModule.h */; };
-		24EB77ED1053348F00E21E02 /* PlatformModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F8300FC9FCA400063972 /* PlatformModule.m */; };
-		24EB77F5105334A500E21E02 /* UiModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8350FC9FCA400063972 /* UiModule.h */; };
-		24EB77F6105334A500E21E02 /* NativeControlProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = B4A6D3AF103C9EFD00131CD4 /* NativeControlProxy.h */; };
-		24EB77F7105334AB00E21E02 /* UiModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F8360FC9FCA400063972 /* UiModule.m */; };
-		24EB77F8105334AB00E21E02 /* NativeControlProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = B4A6D3B0103C9EFD00131CD4 /* NativeControlProxy.m */; };
-		24EB7823105335EE00E21E02 /* TitaniumAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D3623250D0F684500981E51 /* TitaniumAppDelegate.m */; };
-		24EB7824105335EE00E21E02 /* TitaniumAppProtocol.m in Sources */ = {isa = PBXBuildFile; fileRef = B413A67F0F7998C500B1C47D /* TitaniumAppProtocol.m */; };
-		24EB7825105335EE00E21E02 /* TitaniumUIViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B4864F5B0F7C48E700A851C5 /* TitaniumUIViewController.m */; };
-		24EB7826105335EE00E21E02 /* TitaniumHost.m in Sources */ = {isa = PBXBuildFile; fileRef = B45CA77E0F81565D00B80900 /* TitaniumHost.m */; };
-		24EB7827105335EE00E21E02 /* TitaniumCmdThread.m in Sources */ = {isa = PBXBuildFile; fileRef = B413A7520F79A58000B1C47D /* TitaniumCmdThread.m */; };
-		24EB7828105335EE00E21E02 /* TitaniumJSConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = B4E9BC080F85491F00DD709C /* TitaniumJSConstants.m */; };
-		24EB7829105335EE00E21E02 /* TitaniumActionSheetHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = B408AD470F97FA010051FD67 /* TitaniumActionSheetHelper.m */; };
-		24EB782A105335EE00E21E02 /* WebTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = B45C717E0FEDAF93002A8675 /* WebTableViewCell.m */; };
-		24EB782B105335EE00E21E02 /* ValueTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = B47B52D50FF1B2F400BD7229 /* ValueTableViewCell.m */; };
-		24EB782C105335EE00E21E02 /* TweakedNavController.m in Sources */ = {isa = PBXBuildFile; fileRef = B4290A74100D31FD00C4FF98 /* TweakedNavController.m */; };
-		24EB782D105335EE00E21E02 /* TweakedScrollView.m in Sources */ = {isa = PBXBuildFile; fileRef = B4D4AF5410472271006E42E0 /* TweakedScrollView.m */; };
-		24EB782E105335FD00E21E02 /* TitaniumAppDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 1D3623240D0F684500981E51 /* TitaniumAppDelegate.h */; };
-		24EB782F105335FD00E21E02 /* TitaniumAppProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = B413A67E0F7998C500B1C47D /* TitaniumAppProtocol.h */; };
-		24EB7830105335FD00E21E02 /* TitaniumCmdThread.h in Headers */ = {isa = PBXBuildFile; fileRef = B413A7510F79A58000B1C47D /* TitaniumCmdThread.h */; };
-		24EB7831105335FD00E21E02 /* TitaniumUIViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = B4864F5A0F7C48E700A851C5 /* TitaniumUIViewController.h */; };
-		24EB7832105335FD00E21E02 /* TitaniumHost.h in Headers */ = {isa = PBXBuildFile; fileRef = B45CA77D0F81565D00B80900 /* TitaniumHost.h */; };
-		24EB7833105335FD00E21E02 /* TitaniumJSConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = B4E9BC070F85491F00DD709C /* TitaniumJSConstants.h */; };
-		24EB7834105335FD00E21E02 /* TitaniumActionSheetHelper.h in Headers */ = {isa = PBXBuildFile; fileRef = B408AD460F97FA010051FD67 /* TitaniumActionSheetHelper.h */; };
-		24EB7835105335FD00E21E02 /* TitaniumModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 249075290FC9D55B00D38073 /* TitaniumModule.h */; };
-		24EB7836105335FD00E21E02 /* WebTableViewCell.h in Headers */ = {isa = PBXBuildFile; fileRef = B45C717D0FEDAF93002A8675 /* WebTableViewCell.h */; };
-		24EB7837105335FD00E21E02 /* ValueTableViewCell.h in Headers */ = {isa = PBXBuildFile; fileRef = B47B52D40FF1B2F400BD7229 /* ValueTableViewCell.h */; };
-		24EB7838105335FD00E21E02 /* TweakedNavController.h in Headers */ = {isa = PBXBuildFile; fileRef = B4290A73100D31FD00C4FF98 /* TweakedNavController.h */; };
-		24EB7839105335FD00E21E02 /* TweakedScrollView.h in Headers */ = {isa = PBXBuildFile; fileRef = B4D4AF5310472271006E42E0 /* TweakedScrollView.h */; };
-		24EB783A1053360E00E21E02 /* TitaniumInvocationGenerator.h in Headers */ = {isa = PBXBuildFile; fileRef = B4FC656D0F95078000B21EA1 /* TitaniumInvocationGenerator.h */; };
-		24EB783B1053360E00E21E02 /* TitaniumAccessorTuple.h in Headers */ = {isa = PBXBuildFile; fileRef = B4E9B9C20F82030700DD709C /* TitaniumAccessorTuple.h */; };
-		24EB783C1053360E00E21E02 /* TitaniumJSCode.h in Headers */ = {isa = PBXBuildFile; fileRef = B4FC66FA0F95590D00B21EA1 /* TitaniumJSCode.h */; };
-		24EB783D1053360E00E21E02 /* TitaniumBlobWrapper.h in Headers */ = {isa = PBXBuildFile; fileRef = B4A49BB80FCE08DA0049ED60 /* TitaniumBlobWrapper.h */; };
-		24EB783E1053362200E21E02 /* TitaniumInvocationGenerator.m in Sources */ = {isa = PBXBuildFile; fileRef = B4FC656E0F95078000B21EA1 /* TitaniumInvocationGenerator.m */; };
-		24EB783F1053362200E21E02 /* TitaniumAccessorTuple.m in Sources */ = {isa = PBXBuildFile; fileRef = B4E9B9C30F82030700DD709C /* TitaniumAccessorTuple.m */; };
-		24EB78401053362200E21E02 /* TitaniumJSCode.m in Sources */ = {isa = PBXBuildFile; fileRef = B4FC66FB0F95590D00B21EA1 /* TitaniumJSCode.m */; };
-		24EB78411053362200E21E02 /* TitaniumBlobWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = B4A49BB90FCE08DA0049ED60 /* TitaniumBlobWrapper.m */; };
-		24EB78421053363200E21E02 /* SBJSON.h in Headers */ = {isa = PBXBuildFile; fileRef = B4E9BB650F842C9400DD709C /* SBJSON.h */; };
-		24EB78431053363200E21E02 /* IPAddress.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444FA530FCA4E2E00063972 /* IPAddress.h */; };
-		24EB78441053363200E21E02 /* NSData+Additions.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444FC7B0FCA6F8000063972 /* NSData+Additions.h */; };
-		24EB78451053363200E21E02 /* base64.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444FCD00FCA741E00063972 /* base64.h */; };
-		24EB78461053363200E21E02 /* Webcolor.h in Headers */ = {isa = PBXBuildFile; fileRef = B4FECD110FAA4B3E0015B658 /* Webcolor.h */; };
-		24EB78471053363200E21E02 /* Logging.h in Headers */ = {isa = PBXBuildFile; fileRef = B4200E4F1035FAB1009598FC /* Logging.h */; };
-		24EB78481053363200E21E02 /* WebFont.h in Headers */ = {isa = PBXBuildFile; fileRef = B4D4B07310489FDC006E42E0 /* WebFont.h */; };
-		24EB78491053364000E21E02 /* SBJSON.m in Sources */ = {isa = PBXBuildFile; fileRef = B4E9BB640F842C9400DD709C /* SBJSON.m */; };
-		24EB784A1053364000E21E02 /* IPAddress.c in Sources */ = {isa = PBXBuildFile; fileRef = 2444FA540FCA4E2E00063972 /* IPAddress.c */; };
-		24EB784B1053364000E21E02 /* NSData+Additions.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444FC7C0FCA6F8000063972 /* NSData+Additions.m */; };
-		24EB784C1053364000E21E02 /* base64.c in Sources */ = {isa = PBXBuildFile; fileRef = 2444FCD10FCA741E00063972 /* base64.c */; };
-		24EB784D1053364000E21E02 /* Webcolor.m in Sources */ = {isa = PBXBuildFile; fileRef = B4FECD120FAA4B3E0015B658 /* Webcolor.m */; };
-		24EB784E1053364000E21E02 /* Logging.c in Sources */ = {isa = PBXBuildFile; fileRef = B4200E501035FAB1009598FC /* Logging.c */; };
-		24EB784F1053364000E21E02 /* WebFont.m in Sources */ = {isa = PBXBuildFile; fileRef = B4D4B07410489FDC006E42E0 /* WebFont.m */; };
-		24EB78501053364D00E21E02 /* TitaniumWebViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = B4C6D7020FE99F4E00D62384 /* TitaniumWebViewController.h */; };
-		24EB78511053364D00E21E02 /* TitaniumTableViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = B4C6D7310FE9AB0600D62384 /* TitaniumTableViewController.h */; };
-		24EB78521053364D00E21E02 /* TitaniumViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 28D7ACF60DDB3853001CB0EB /* TitaniumViewController.h */; };
-		24EB78531053364D00E21E02 /* TitaniumContentViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = B4B571FC10110324003546C7 /* TitaniumContentViewController.h */; };
-		24EB78541053365E00E21E02 /* TitaniumWebViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B4C6D7030FE99F4E00D62384 /* TitaniumWebViewController.m */; };
-		24EB78551053365E00E21E02 /* TitaniumTableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B4C6D7320FE9AB0600D62384 /* TitaniumTableViewController.m */; };
-		24EB78561053365E00E21E02 /* TitaniumViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 28D7ACF70DDB3853001CB0EB /* TitaniumViewController.m */; };
-		24EB78571053365E00E21E02 /* TitaniumContentViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B4B571FD10110324003546C7 /* TitaniumContentViewController.m */; };
-		24EB787C10533E7600E21E02 /* AppModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F80C0FC9FCA400063972 /* AppModule.m */; };
+		24C5AC5B1061FB630063594B /* NotificationModule.h in Headers */ = {isa = PBXBuildFile; fileRef = B4F37DDB1061913E00ED12AF /* NotificationModule.h */; };
+		24C5AC5C1061FB670063594B /* NotificationModule.m in Sources */ = {isa = PBXBuildFile; fileRef = B4F37DDC1061913E00ED12AF /* NotificationModule.m */; };
+		24C5AC731061FBA00063594B /* AnalyticsModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 24F02E440FD482D2007894DA /* AnalyticsModule.h */; };
+		24C5AC741061FBA30063594B /* AnalyticsModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 24F02E450FD482D2007894DA /* AnalyticsModule.m */; };
+		24C5AC751061FBAE0063594B /* GestureModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 24BBD83C0FCD245F00A261A4 /* GestureModule.h */; };
+		24C5AC761061FBB20063594B /* GestureModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 24BBD83D0FCD245F00A261A4 /* GestureModule.m */; };
+		24C5AC771061FBF50063594B /* TitaniumAppDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 1D3623240D0F684500981E51 /* TitaniumAppDelegate.h */; };
+		24C5AC781061FBF50063594B /* TitaniumAppProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = B413A67E0F7998C500B1C47D /* TitaniumAppProtocol.h */; };
+		24C5AC791061FBF50063594B /* TitaniumCmdThread.h in Headers */ = {isa = PBXBuildFile; fileRef = B413A7510F79A58000B1C47D /* TitaniumCmdThread.h */; };
+		24C5AC7A1061FBF50063594B /* TitaniumUIViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = B4864F5A0F7C48E700A851C5 /* TitaniumUIViewController.h */; };
+		24C5AC7B1061FBF50063594B /* TitaniumHost.h in Headers */ = {isa = PBXBuildFile; fileRef = B45CA77D0F81565D00B80900 /* TitaniumHost.h */; };
+		24C5AC7C1061FBF50063594B /* TitaniumJSConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = B4E9BC070F85491F00DD709C /* TitaniumJSConstants.h */; };
+		24C5AC7D1061FBF50063594B /* TitaniumActionSheetHelper.h in Headers */ = {isa = PBXBuildFile; fileRef = B408AD460F97FA010051FD67 /* TitaniumActionSheetHelper.h */; };
+		24C5AC7E1061FBF50063594B /* TitaniumModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 249075290FC9D55B00D38073 /* TitaniumModule.h */; };
+		24C5AC7F1061FBF50063594B /* WebTableViewCell.h in Headers */ = {isa = PBXBuildFile; fileRef = B45C717D0FEDAF93002A8675 /* WebTableViewCell.h */; };
+		24C5AC801061FBF50063594B /* ValueTableViewCell.h in Headers */ = {isa = PBXBuildFile; fileRef = B47B52D40FF1B2F400BD7229 /* ValueTableViewCell.h */; };
+		24C5AC811061FBF50063594B /* TweakedNavController.h in Headers */ = {isa = PBXBuildFile; fileRef = B4290A73100D31FD00C4FF98 /* TweakedNavController.h */; };
+		24C5AC821061FBF50063594B /* TweakedScrollView.h in Headers */ = {isa = PBXBuildFile; fileRef = B4D4AF5310472271006E42E0 /* TweakedScrollView.h */; };
+		24C5AC831061FBF50063594B /* TitaniumCellWrapper.h in Headers */ = {isa = PBXBuildFile; fileRef = B4B8E56910586D3500D08D44 /* TitaniumCellWrapper.h */; };
+		24C5AC841061FBF50063594B /* PickerImageTextCell.h in Headers */ = {isa = PBXBuildFile; fileRef = B451D42410599C1C0025A18B /* PickerImageTextCell.h */; };
+		24C5AC851061FC260063594B /* TitaniumInvocationGenerator.h in Headers */ = {isa = PBXBuildFile; fileRef = B4FC656D0F95078000B21EA1 /* TitaniumInvocationGenerator.h */; };
+		24C5AC861061FC260063594B /* TitaniumAccessorTuple.h in Headers */ = {isa = PBXBuildFile; fileRef = B4E9B9C20F82030700DD709C /* TitaniumAccessorTuple.h */; };
+		24C5AC871061FC260063594B /* TitaniumJSCode.h in Headers */ = {isa = PBXBuildFile; fileRef = B4FC66FA0F95590D00B21EA1 /* TitaniumJSCode.h */; };
+		24C5AC881061FC260063594B /* TitaniumBlobWrapper.h in Headers */ = {isa = PBXBuildFile; fileRef = B4A49BB80FCE08DA0049ED60 /* TitaniumBlobWrapper.h */; };
+		24C5AC891061FC260063594B /* SBJSON.h in Headers */ = {isa = PBXBuildFile; fileRef = B4E9BB650F842C9400DD709C /* SBJSON.h */; };
+		24C5AC8A1061FC260063594B /* IPAddress.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444FA530FCA4E2E00063972 /* IPAddress.h */; };
+		24C5AC8B1061FC260063594B /* NSData+Additions.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444FC7B0FCA6F8000063972 /* NSData+Additions.h */; };
+		24C5AC8C1061FC260063594B /* base64.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444FCD00FCA741E00063972 /* base64.h */; };
+		24C5AC8D1061FC260063594B /* Webcolor.h in Headers */ = {isa = PBXBuildFile; fileRef = B4FECD110FAA4B3E0015B658 /* Webcolor.h */; };
+		24C5AC8E1061FC260063594B /* Logging.h in Headers */ = {isa = PBXBuildFile; fileRef = B4200E4F1035FAB1009598FC /* Logging.h */; };
+		24C5AC8F1061FC260063594B /* WebFont.h in Headers */ = {isa = PBXBuildFile; fileRef = B4D4B07310489FDC006E42E0 /* WebFont.h */; };
+		24C5AC901061FC260063594B /* TitaniumWebViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = B4C6D7020FE99F4E00D62384 /* TitaniumWebViewController.h */; };
+		24C5AC911061FC260063594B /* TitaniumTableViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = B4C6D7310FE9AB0600D62384 /* TitaniumTableViewController.h */; };
+		24C5AC921061FC260063594B /* TitaniumViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 28D7ACF60DDB3853001CB0EB /* TitaniumViewController.h */; };
+		24C5AC931061FC260063594B /* TitaniumContentViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = B4B571FC10110324003546C7 /* TitaniumContentViewController.h */; };
+		24C5AC941061FC260063594B /* TitaniumScrollableViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = B40CDEE6105F21F6004CFED3 /* TitaniumScrollableViewController.h */; };
+		24C5AC951061FC260063594B /* TitaniumCompositeViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = B40CDF15105F248F004CFED3 /* TitaniumCompositeViewController.h */; };
+		24C5AC961061FC540063594B /* TitaniumInvocationGenerator.m in Sources */ = {isa = PBXBuildFile; fileRef = B4FC656E0F95078000B21EA1 /* TitaniumInvocationGenerator.m */; };
+		24C5AC971061FC540063594B /* TitaniumAccessorTuple.m in Sources */ = {isa = PBXBuildFile; fileRef = B4E9B9C30F82030700DD709C /* TitaniumAccessorTuple.m */; };
+		24C5AC981061FC540063594B /* TitaniumJSCode.m in Sources */ = {isa = PBXBuildFile; fileRef = B4FC66FB0F95590D00B21EA1 /* TitaniumJSCode.m */; };
+		24C5AC991061FC540063594B /* TitaniumBlobWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = B4A49BB90FCE08DA0049ED60 /* TitaniumBlobWrapper.m */; };
+		24C5AC9A1061FC540063594B /* SBJSON.m in Sources */ = {isa = PBXBuildFile; fileRef = B4E9BB640F842C9400DD709C /* SBJSON.m */; };
+		24C5AC9B1061FC540063594B /* IPAddress.c in Sources */ = {isa = PBXBuildFile; fileRef = 2444FA540FCA4E2E00063972 /* IPAddress.c */; };
+		24C5AC9C1061FC540063594B /* NSData+Additions.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444FC7C0FCA6F8000063972 /* NSData+Additions.m */; };
+		24C5AC9D1061FC540063594B /* base64.c in Sources */ = {isa = PBXBuildFile; fileRef = 2444FCD10FCA741E00063972 /* base64.c */; };
+		24C5AC9E1061FC540063594B /* Webcolor.m in Sources */ = {isa = PBXBuildFile; fileRef = B4FECD120FAA4B3E0015B658 /* Webcolor.m */; };
+		24C5AC9F1061FC540063594B /* Logging.c in Sources */ = {isa = PBXBuildFile; fileRef = B4200E501035FAB1009598FC /* Logging.c */; };
+		24C5ACA01061FC540063594B /* WebFont.m in Sources */ = {isa = PBXBuildFile; fileRef = B4D4B07410489FDC006E42E0 /* WebFont.m */; };
+		24C5ACA11061FC540063594B /* TitaniumWebViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B4C6D7030FE99F4E00D62384 /* TitaniumWebViewController.m */; };
+		24C5ACA21061FC540063594B /* TitaniumTableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B4C6D7320FE9AB0600D62384 /* TitaniumTableViewController.m */; };
+		24C5ACA31061FC540063594B /* TitaniumViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 28D7ACF70DDB3853001CB0EB /* TitaniumViewController.m */; };
+		24C5ACA41061FC540063594B /* TitaniumContentViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B4B571FD10110324003546C7 /* TitaniumContentViewController.m */; };
+		24C5ACA51061FC540063594B /* TitaniumScrollableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B40CDEE7105F21F6004CFED3 /* TitaniumScrollableViewController.m */; };
+		24C5ACA61061FC540063594B /* TitaniumCompositeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B40CDF16105F248F004CFED3 /* TitaniumCompositeViewController.m */; };
+		24C5ACA71061FC540063594B /* TitaniumAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D3623250D0F684500981E51 /* TitaniumAppDelegate.m */; };
+		24C5ACA81061FC540063594B /* TitaniumAppProtocol.m in Sources */ = {isa = PBXBuildFile; fileRef = B413A67F0F7998C500B1C47D /* TitaniumAppProtocol.m */; };
+		24C5ACA91061FC540063594B /* TitaniumUIViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B4864F5B0F7C48E700A851C5 /* TitaniumUIViewController.m */; };
+		24C5ACAA1061FC540063594B /* TitaniumHost.m in Sources */ = {isa = PBXBuildFile; fileRef = B45CA77E0F81565D00B80900 /* TitaniumHost.m */; };
+		24C5ACAB1061FC540063594B /* TitaniumCmdThread.m in Sources */ = {isa = PBXBuildFile; fileRef = B413A7520F79A58000B1C47D /* TitaniumCmdThread.m */; };
+		24C5ACAC1061FC540063594B /* TitaniumJSConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = B4E9BC080F85491F00DD709C /* TitaniumJSConstants.m */; };
+		24C5ACAD1061FC540063594B /* TitaniumActionSheetHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = B408AD470F97FA010051FD67 /* TitaniumActionSheetHelper.m */; };
+		24C5ACAE1061FC540063594B /* WebTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = B45C717E0FEDAF93002A8675 /* WebTableViewCell.m */; };
+		24C5ACAF1061FC540063594B /* ValueTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = B47B52D50FF1B2F400BD7229 /* ValueTableViewCell.m */; };
+		24C5ACB01061FC540063594B /* TweakedNavController.m in Sources */ = {isa = PBXBuildFile; fileRef = B4290A74100D31FD00C4FF98 /* TweakedNavController.m */; };
+		24C5ACB11061FC540063594B /* TweakedScrollView.m in Sources */ = {isa = PBXBuildFile; fileRef = B4D4AF5410472271006E42E0 /* TweakedScrollView.m */; };
+		24C5ACB21061FC540063594B /* TitaniumCellWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = B4B8E56A10586D3500D08D44 /* TitaniumCellWrapper.m */; };
+		24C5ACB31061FC540063594B /* PickerImageTextCell.m in Sources */ = {isa = PBXBuildFile; fileRef = B451D42510599C1C0025A18B /* PickerImageTextCell.m */; };
+		24C5ACC11061FCBB0063594B /* TitaniumModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 249075290FC9D55B00D38073 /* TitaniumModule.h */; };
+		24C5ACC41061FCC70063594B /* TitaniumModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 249075290FC9D55B00D38073 /* TitaniumModule.h */; };
+		24C5ACC71061FCD80063594B /* TitaniumModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 249075290FC9D55B00D38073 /* TitaniumModule.h */; };
+		24C5ACCA1061FCE30063594B /* TitaniumModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 249075290FC9D55B00D38073 /* TitaniumModule.h */; };
+		24C5ACCB1061FCE80063594B /* TitaniumModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 249075290FC9D55B00D38073 /* TitaniumModule.h */; };
+		24C5ACCC1061FCEF0063594B /* TitaniumModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 249075290FC9D55B00D38073 /* TitaniumModule.h */; };
+		24C5ACCD1061FCF40063594B /* TitaniumModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 249075290FC9D55B00D38073 /* TitaniumModule.h */; };
+		24C5ACCE1061FCFA0063594B /* TitaniumModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 249075290FC9D55B00D38073 /* TitaniumModule.h */; };
+		24C5ACCF1061FCFF0063594B /* TitaniumModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 249075290FC9D55B00D38073 /* TitaniumModule.h */; };
+		24C5ACD01061FD040063594B /* TitaniumModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 249075290FC9D55B00D38073 /* TitaniumModule.h */; };
+		24C5ACD11061FD090063594B /* TitaniumModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 249075290FC9D55B00D38073 /* TitaniumModule.h */; };
+		24C5ACD21061FD0E0063594B /* TitaniumModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 249075290FC9D55B00D38073 /* TitaniumModule.h */; };
+		24C5ACD31061FD140063594B /* TitaniumModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 249075290FC9D55B00D38073 /* TitaniumModule.h */; };
+		24C5ACD41061FD1F0063594B /* Titanium_Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = 32CA4F630368D1EE00C91783 /* Titanium_Prefix.pch */; };
+		24C5ACD51061FD360063594B /* ApiModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F8090FC9FCA400063972 /* ApiModule.m */; };
+		24C5ACD61061FD390063594B /* ApiModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8080FC9FCA400063972 /* ApiModule.h */; };
+		24C5ACD71061FD400063594B /* AppModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F80B0FC9FCA400063972 /* AppModule.h */; };
+		24C5ACD81061FD430063594B /* AppModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F80C0FC9FCA400063972 /* AppModule.m */; };
+		24C5ACD91061FD4F0063594B /* DatabaseModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F80E0FC9FCA400063972 /* DatabaseModule.h */; };
+		24C5ACDA1061FD600063594B /* PlausibleDatabase.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8110FC9FCA400063972 /* PlausibleDatabase.h */; };
+		24C5ACDB1061FD600063594B /* PLDatabase.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8130FC9FCA400063972 /* PLDatabase.h */; };
+		24C5ACDC1061FD600063594B /* PLPreparedStatement.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8140FC9FCA400063972 /* PLPreparedStatement.h */; };
+		24C5ACDD1061FD600063594B /* PLResultSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8150FC9FCA400063972 /* PLResultSet.h */; };
+		24C5ACDE1061FD600063594B /* PLSqliteDatabase.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8160FC9FCA400063972 /* PLSqliteDatabase.h */; };
+		24C5ACDF1061FD600063594B /* PLSqlitePreparedStatement.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8180FC9FCA400063972 /* PLSqlitePreparedStatement.h */; };
+		24C5ACE01061FD600063594B /* PLSqliteResultSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F81A0FC9FCA400063972 /* PLSqliteResultSet.h */; };
+		24C5ACE11061FD690063594B /* DatabaseModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F80F0FC9FCA400063972 /* DatabaseModule.m */; };
+		24C5ACE21061FD690063594B /* PlausibleDatabase.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F8120FC9FCA400063972 /* PlausibleDatabase.m */; };
+		24C5ACE31061FD690063594B /* PLSqliteDatabase.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F8170FC9FCA400063972 /* PLSqliteDatabase.m */; };
+		24C5ACE41061FD690063594B /* PLSqlitePreparedStatement.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F8190FC9FCA400063972 /* PLSqlitePreparedStatement.m */; };
+		24C5ACE51061FD690063594B /* PLSqliteResultSet.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F81B0FC9FCA400063972 /* PLSqliteResultSet.m */; };
+		24C5ACE61061FD760063594B /* FilesystemModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F81D0FC9FCA400063972 /* FilesystemModule.h */; };
+		24C5ACE71061FD7C0063594B /* FilesystemModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F81E0FC9FCA400063972 /* FilesystemModule.m */; };
+		24C5ACE81061FD850063594B /* GeolocationModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8200FC9FCA400063972 /* GeolocationModule.h */; };
+		24C5ACE91061FD880063594B /* GeolocationModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F8210FC9FCA400063972 /* GeolocationModule.m */; };
+		24C5ACEA1061FD910063594B /* MediaModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8230FC9FCA400063972 /* MediaModule.h */; };
+		24C5ACEB1061FD940063594B /* MediaModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F8240FC9FCA400063972 /* MediaModule.m */; };
+		24C5ACEC1061FDA70063594B /* AccelerometerModule.h in Headers */ = {isa = PBXBuildFile; fileRef = B4110C9B0FD4653A00BE17F8 /* AccelerometerModule.h */; };
+		24C5ACED1061FDAC0063594B /* AccelerometerModule.m in Sources */ = {isa = PBXBuildFile; fileRef = B4110C9C0FD4653A00BE17F8 /* AccelerometerModule.m */; };
+		24C5ACEE1061FDB70063594B /* NetworkModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F82C0FC9FCA400063972 /* NetworkModule.h */; };
+		24C5ACEF1061FDBB0063594B /* NetworkModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F82D0FC9FCA400063972 /* NetworkModule.m */; };
+		24C5ACF01061FDC20063594B /* PlatformModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F82F0FC9FCA400063972 /* PlatformModule.h */; };
+		24C5ACF11061FDC70063594B /* PlatformModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F8300FC9FCA400063972 /* PlatformModule.m */; };
+		24C5ACF21061FDD70063594B /* UiModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 2444F8350FC9FCA400063972 /* UiModule.h */; };
+		24C5ACF31061FDD70063594B /* NativeControlProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = B4A6D3AF103C9EFD00131CD4 /* NativeControlProxy.h */; };
+		24C5ACF41061FDDC0063594B /* UiModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 2444F8360FC9FCA400063972 /* UiModule.m */; };
+		24C5ACF51061FDDC0063594B /* NativeControlProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = B4A6D3B0103C9EFD00131CD4 /* NativeControlProxy.m */; };
 		24F02E460FD482D2007894DA /* AnalyticsModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 24F02E450FD482D2007894DA /* AnalyticsModule.m */; };
 		288765A50DF7441C002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765A40DF7441C002DB57D /* CoreGraphics.framework */; };
 		28AD733F0D9D9553002E5188 /* MainWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 28AD733E0D9D9553002E5188 /* MainWindow.xib */; };
@@ -131,6 +154,10 @@
 		B408AD480F97FA010051FD67 /* TitaniumActionSheetHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = B408AD470F97FA010051FD67 /* TitaniumActionSheetHelper.m */; };
 		B40A40A70FCF60BF00C5DD7C /* movie.m4v in Resources */ = {isa = PBXBuildFile; fileRef = B40A40A60FCF60BF00C5DD7C /* movie.m4v */; };
 		B40C00241031ECC4009DEFF9 /* docs.html in Resources */ = {isa = PBXBuildFile; fileRef = B40C00231031ECC4009DEFF9 /* docs.html */; };
+		B40CDEEA105F21F6004CFED3 /* TitaniumScrollableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B40CDEE7105F21F6004CFED3 /* TitaniumScrollableViewController.m */; };
+		B40CDEEB105F21F6004CFED3 /* TitaniumScrollableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B40CDEE7105F21F6004CFED3 /* TitaniumScrollableViewController.m */; };
+		B40CDF19105F248F004CFED3 /* TitaniumCompositeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B40CDF16105F248F004CFED3 /* TitaniumCompositeViewController.m */; };
+		B40CDF1A105F248F004CFED3 /* TitaniumCompositeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B40CDF16105F248F004CFED3 /* TitaniumCompositeViewController.m */; };
 		B41069C80FBB756B00310448 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B4676CBE0FB0E4AE009B81F4 /* SystemConfiguration.framework */; };
 		B41069C90FBB756B00310448 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B4B587000FB00B670047B651 /* AudioToolbox.framework */; };
 		B41069CB0FBB756B00310448 /* CoreLocation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B4C3F8B50FB3B11C0037F210 /* CoreLocation.framework */; };
@@ -147,6 +174,8 @@
 		B4468EFD10027417002BAC64 /* misc.html in Resources */ = {isa = PBXBuildFile; fileRef = B4468EFC10027417002BAC64 /* misc.html */; };
 		B44BCFD90FC5E03400733BDD /* libsqlite3.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = B44BCFD80FC5E03400733BDD /* libsqlite3.dylib */; };
 		B44BCFDA0FC5E03400733BDD /* libsqlite3.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = B44BCFD80FC5E03400733BDD /* libsqlite3.dylib */; };
+		B451D42610599C1C0025A18B /* PickerImageTextCell.m in Sources */ = {isa = PBXBuildFile; fileRef = B451D42510599C1C0025A18B /* PickerImageTextCell.m */; };
+		B451D42710599C1C0025A18B /* PickerImageTextCell.m in Sources */ = {isa = PBXBuildFile; fileRef = B451D42510599C1C0025A18B /* PickerImageTextCell.m */; };
 		B45C717F0FEDAF93002A8675 /* WebTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = B45C717E0FEDAF93002A8675 /* WebTableViewCell.m */; };
 		B45CA77F0F81565D00B80900 /* TitaniumHost.m in Sources */ = {isa = PBXBuildFile; fileRef = B45CA77E0F81565D00B80900 /* TitaniumHost.m */; };
 		B4676CB50FB0E492009B81F4 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B4676CB40FB0E492009B81F4 /* AVFoundation.framework */; };
@@ -206,8 +235,6 @@
 		B47A27851035F11F002146CD /* accounts.js in Resources */ = {isa = PBXBuildFile; fileRef = B47A27271035F11F002146CD /* accounts.js */; };
 		B47A27881035F11F002146CD /* DM.html in Resources */ = {isa = PBXBuildFile; fileRef = B47A272B1035F11F002146CD /* DM.html */; };
 		B47A27891035F11F002146CD /* DM.js in Resources */ = {isa = PBXBuildFile; fileRef = B47A272C1035F11F002146CD /* DM.js */; };
-		B47A278A1035F11F002146CD /* editaccounts.html in Resources */ = {isa = PBXBuildFile; fileRef = B47A272D1035F11F002146CD /* editaccounts.html */; };
-		B47A278B1035F11F002146CD /* editaccounts.js in Resources */ = {isa = PBXBuildFile; fileRef = B47A272E1035F11F002146CD /* editaccounts.js */; };
 		B47A278C1035F11F002146CD /* favorites.html in Resources */ = {isa = PBXBuildFile; fileRef = B47A272F1035F11F002146CD /* favorites.html */; };
 		B47A278D1035F11F002146CD /* favorites.js in Resources */ = {isa = PBXBuildFile; fileRef = B47A27301035F11F002146CD /* favorites.js */; };
 		B47A278E1035F11F002146CD /* humane.js in Resources */ = {isa = PBXBuildFile; fileRef = B47A27311035F11F002146CD /* humane.js */; };
@@ -252,17 +279,30 @@
 		B4A49BBC0FCE08DA0049ED60 /* TitaniumBlobWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = B4A49BB90FCE08DA0049ED60 /* TitaniumBlobWrapper.m */; };
 		B4A6D3B3103C9EFD00131CD4 /* NativeControlProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = B4A6D3B0103C9EFD00131CD4 /* NativeControlProxy.m */; };
 		B4A6D3B4103C9EFD00131CD4 /* NativeControlProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = B4A6D3B0103C9EFD00131CD4 /* NativeControlProxy.m */; };
+		B4AA86A2105ECEC700D29939 /* MessageUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B4250689100C0A4B00AD6A6B /* MessageUI.framework */; };
+		B4AA86FE105ED1DF00D29939 /* nointernet.html in Resources */ = {isa = PBXBuildFile; fileRef = B4AA86F3105ED1DF00D29939 /* nointernet.html */; };
+		B4AA86FF105ED1DF00D29939 /* timeline-all.js in Sources */ = {isa = PBXBuildFile; fileRef = B4AA86F4105ED1DF00D29939 /* timeline-all.js */; };
+		B4AA8700105ED1DF00D29939 /* timeline-all.html in Resources */ = {isa = PBXBuildFile; fileRef = B4AA86F5105ED1DF00D29939 /* timeline-all.html */; };
+		B4AA8701105ED1DF00D29939 /* timeline-replies.js in Sources */ = {isa = PBXBuildFile; fileRef = B4AA86F6105ED1DF00D29939 /* timeline-replies.js */; };
+		B4AA8702105ED1DF00D29939 /* timeline-replies.html in Resources */ = {isa = PBXBuildFile; fileRef = B4AA86F7105ED1DF00D29939 /* timeline-replies.html */; };
+		B4AA8703105ED1DF00D29939 /* link.js in Sources */ = {isa = PBXBuildFile; fileRef = B4AA86F8105ED1DF00D29939 /* link.js */; };
+		B4AA8704105ED1DF00D29939 /* link.html in Resources */ = {isa = PBXBuildFile; fileRef = B4AA86F9105ED1DF00D29939 /* link.html */; };
+		B4AA8705105ED1DF00D29939 /* timeline-public.js in Sources */ = {isa = PBXBuildFile; fileRef = B4AA86FA105ED1DF00D29939 /* timeline-public.js */; };
+		B4AA8706105ED1DF00D29939 /* timeline-public.html in Resources */ = {isa = PBXBuildFile; fileRef = B4AA86FB105ED1DF00D29939 /* timeline-public.html */; };
+		B4AA8707105ED1DF00D29939 /* timeline-dms.js in Sources */ = {isa = PBXBuildFile; fileRef = B4AA86FC105ED1DF00D29939 /* timeline-dms.js */; };
+		B4AA8708105ED1DF00D29939 /* timeline-dms.html in Resources */ = {isa = PBXBuildFile; fileRef = B4AA86FD105ED1DF00D29939 /* timeline-dms.html */; };
 		B4ABEDC4101903CA00639ED5 /* buggy.html in Resources */ = {isa = PBXBuildFile; fileRef = B4ABEDC3101903CA00639ED5 /* buggy.html */; };
 		B4ABEDC7101903F300639ED5 /* buggy.js in Sources */ = {isa = PBXBuildFile; fileRef = B4ABEDC6101903F300639ED5 /* buggy.js */; };
 		B4B571FE10110324003546C7 /* TitaniumContentViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B4B571FD10110324003546C7 /* TitaniumContentViewController.m */; };
 		B4B587010FB00B670047B651 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B4B587000FB00B670047B651 /* AudioToolbox.framework */; };
+		B4B8E56B10586D3500D08D44 /* TitaniumCellWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = B4B8E56A10586D3500D08D44 /* TitaniumCellWrapper.m */; };
+		B4B8E56E10586D3500D08D44 /* TitaniumCellWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = B4B8E56A10586D3500D08D44 /* TitaniumCellWrapper.m */; };
 		B4B9E4621003D3DE004B8831 /* logo-m.png in Resources */ = {isa = PBXBuildFile; fileRef = B4B9E4611003D3DE004B8831 /* logo-m.png */; };
 		B4B9E4641003D3E6004B8831 /* ext-core.js in Sources */ = {isa = PBXBuildFile; fileRef = B4B9E4631003D3E6004B8831 /* ext-core.js */; };
 		B4B9E4721003D52F004B8831 /* jquery.js in Sources */ = {isa = PBXBuildFile; fileRef = B4B9E4711003D52F004B8831 /* jquery.js */; };
 		B4C3F8B60FB3B11C0037F210 /* CoreLocation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B4C3F8B50FB3B11C0037F210 /* CoreLocation.framework */; };
 		B4C6D7040FE99F4E00D62384 /* TitaniumWebViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B4C6D7030FE99F4E00D62384 /* TitaniumWebViewController.m */; };
 		B4C6D7330FE9AB0600D62384 /* TitaniumTableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B4C6D7320FE9AB0600D62384 /* TitaniumTableViewController.m */; };
-		B4D262DD10437CC8007D123E /* MessageUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B4250689100C0A4B00AD6A6B /* MessageUI.framework */; };
 		B4D4AF5510472271006E42E0 /* TweakedScrollView.m in Sources */ = {isa = PBXBuildFile; fileRef = B4D4AF5410472271006E42E0 /* TweakedScrollView.m */; };
 		B4D4AF5610472271006E42E0 /* TweakedScrollView.m in Sources */ = {isa = PBXBuildFile; fileRef = B4D4AF5410472271006E42E0 /* TweakedScrollView.m */; };
 		B4D4B07510489FDC006E42E0 /* WebFont.m in Sources */ = {isa = PBXBuildFile; fileRef = B4D4B07410489FDC006E42E0 /* WebFont.m */; };
@@ -272,6 +312,12 @@
 		B4E9B9C40F82030700DD709C /* TitaniumAccessorTuple.m in Sources */ = {isa = PBXBuildFile; fileRef = B4E9B9C30F82030700DD709C /* TitaniumAccessorTuple.m */; };
 		B4E9BB660F842C9400DD709C /* SBJSON.m in Sources */ = {isa = PBXBuildFile; fileRef = B4E9BB640F842C9400DD709C /* SBJSON.m */; };
 		B4E9BC090F85491F00DD709C /* TitaniumJSConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = B4E9BC080F85491F00DD709C /* TitaniumJSConstants.m */; };
+		B4F37DDF1061913E00ED12AF /* NotificationModule.m in Sources */ = {isa = PBXBuildFile; fileRef = B4F37DDC1061913E00ED12AF /* NotificationModule.m */; };
+		B4F37DE01061913E00ED12AF /* NotificationModule.m in Sources */ = {isa = PBXBuildFile; fileRef = B4F37DDC1061913E00ED12AF /* NotificationModule.m */; };
+		B4F37E161061AB5D00ED12AF /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B4F37E151061AB5D00ED12AF /* QuartzCore.framework */; };
+		B4F37E171061AB5D00ED12AF /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B4F37E151061AB5D00ED12AF /* QuartzCore.framework */; };
+		B4F37E181061AB5D00ED12AF /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B4F37E151061AB5D00ED12AF /* QuartzCore.framework */; };
+		B4F37E2E1061B50E00ED12AF /* closebox.png in Resources */ = {isa = PBXBuildFile; fileRef = B4F37E2D1061B50E00ED12AF /* closebox.png */; };
 		B4FC30A70FEC89E800D31C75 /* Phone.png in Resources */ = {isa = PBXBuildFile; fileRef = B4FC30A30FEC89E800D31C75 /* Phone.png */; };
 		B4FC30A80FEC89E800D31C75 /* Safari.png in Resources */ = {isa = PBXBuildFile; fileRef = B4FC30A40FEC89E800D31C75 /* Safari.png */; };
 		B4FC30A90FEC89E800D31C75 /* iTunes.png in Resources */ = {isa = PBXBuildFile; fileRef = B4FC30A50FEC89E800D31C75 /* iTunes.png */; };
@@ -330,18 +376,19 @@
 		249075290FC9D55B00D38073 /* TitaniumModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TitaniumModule.h; sourceTree = &quot;&lt;group&gt;&quot;; };
 		24BBD83C0FCD245F00A261A4 /* GestureModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GestureModule.h; sourceTree = &quot;&lt;group&gt;&quot;; };
 		24BBD83D0FCD245F00A261A4 /* GestureModule.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GestureModule.m; sourceTree = &quot;&lt;group&gt;&quot;; };
-		24EB77701053326C00E21E02 /* libAnalytics.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libAnalytics.a; sourceTree = BUILT_PRODUCTS_DIR; };
-		24EB778D1053333300E21E02 /* libGesture.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libGesture.a; sourceTree = BUILT_PRODUCTS_DIR; };
-		24EB77961053336300E21E02 /* libApi.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libApi.a; sourceTree = BUILT_PRODUCTS_DIR; };
-		24EB779F1053337F00E21E02 /* libApp.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libApp.a; sourceTree = BUILT_PRODUCTS_DIR; };
-		24EB77A81053339A00E21E02 /* libDatabase.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libDatabase.a; sourceTree = BUILT_PRODUCTS_DIR; };
-		24EB77BC105333D900E21E02 /* libFilesystem.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libFilesystem.a; sourceTree = BUILT_PRODUCTS_DIR; };
-		24EB77C5105333FD00E21E02 /* libGeolocation.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libGeolocation.a; sourceTree = BUILT_PRODUCTS_DIR; };
-		24EB77CE1053341B00E21E02 /* libMedia.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libMedia.a; sourceTree = BUILT_PRODUCTS_DIR; };
-		24EB77D71053343E00E21E02 /* libAccelerometer.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libAccelerometer.a; sourceTree = BUILT_PRODUCTS_DIR; };
-		24EB77E01053346100E21E02 /* libNetwork.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libNetwork.a; sourceTree = BUILT_PRODUCTS_DIR; };
-		24EB77E91053348200E21E02 /* libPlatform.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPlatform.a; sourceTree = BUILT_PRODUCTS_DIR; };
-		24EB77F21053349800E21E02 /* libUi.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libUi.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		24C5ABF11061FA9D0063594B /* libNotification.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libNotification.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		24C5ABF91061FABE0063594B /* libAnalytics.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libAnalytics.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		24C5AC001061FAC80063594B /* libGesture.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libGesture.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		24C5AC071061FAD30063594B /* libApi.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libApi.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		24C5AC0E1061FADC0063594B /* libApp.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libApp.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		24C5AC151061FAE50063594B /* libDatabase.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libDatabase.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		24C5AC1C1061FAEF0063594B /* libFilesystem.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libFilesystem.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		24C5AC231061FB000063594B /* libGeolocation.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libGeolocation.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		24C5AC2A1061FB080063594B /* libMedia.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libMedia.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		24C5AC311061FB190063594B /* libAccelerometer.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libAccelerometer.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		24C5AC381061FB240063594B /* libNetwork.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libNetwork.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		24C5AC3F1061FB2E0063594B /* libPlatform.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPlatform.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		24C5AC581061FB4C0063594B /* libUI.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libUI.a; sourceTree = BUILT_PRODUCTS_DIR; };
 		24F02E440FD482D2007894DA /* AnalyticsModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AnalyticsModule.h; sourceTree = &quot;&lt;group&gt;&quot;; };
 		24F02E450FD482D2007894DA /* AnalyticsModule.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AnalyticsModule.m; sourceTree = &quot;&lt;group&gt;&quot;; };
 		288765A40DF7441C002DB57D /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
@@ -354,6 +401,10 @@
 		B408AD470F97FA010051FD67 /* TitaniumActionSheetHelper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TitaniumActionSheetHelper.m; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B40A40A60FCF60BF00C5DD7C /* movie.m4v */ = {isa = PBXFileReference; lastKnownFileType = file; path = movie.m4v; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B40C00231031ECC4009DEFF9 /* docs.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = docs.html; sourceTree = &quot;&lt;group&gt;&quot;; };
+		B40CDEE6105F21F6004CFED3 /* TitaniumScrollableViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TitaniumScrollableViewController.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+		B40CDEE7105F21F6004CFED3 /* TitaniumScrollableViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TitaniumScrollableViewController.m; sourceTree = &quot;&lt;group&gt;&quot;; };
+		B40CDF15105F248F004CFED3 /* TitaniumCompositeViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TitaniumCompositeViewController.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+		B40CDF16105F248F004CFED3 /* TitaniumCompositeViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TitaniumCompositeViewController.m; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B40F54520F746D11008E0A55 /* TitaniumView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = TitaniumView.xib; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B41068A20FBB730F00310448 /* libTitanium.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libTitanium.a; sourceTree = BUILT_PRODUCTS_DIR; };
 		B4110C9B0FD4653A00BE17F8 /* AccelerometerModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccelerometerModule.h; sourceTree = &quot;&lt;group&gt;&quot;; };
@@ -369,6 +420,8 @@
 		B4290A74100D31FD00C4FF98 /* TweakedNavController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TweakedNavController.m; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B4468EFC10027417002BAC64 /* misc.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = misc.html; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B44BCFD80FC5E03400733BDD /* libsqlite3.dylib */ = {isa = PBXFileReference; lastKnownFileType = &quot;compiled.mach-o.dylib&quot;; name = libsqlite3.dylib; path = usr/lib/libsqlite3.dylib; sourceTree = SDKROOT; };
+		B451D42410599C1C0025A18B /* PickerImageTextCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PickerImageTextCell.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+		B451D42510599C1C0025A18B /* PickerImageTextCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PickerImageTextCell.m; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B45C717D0FEDAF93002A8675 /* WebTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebTableViewCell.h; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B45C717E0FEDAF93002A8675 /* WebTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WebTableViewCell.m; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B45CA77D0F81565D00B80900 /* TitaniumHost.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TitaniumHost.h; sourceTree = &quot;&lt;group&gt;&quot;; };
@@ -380,8 +433,6 @@
 		B47A27271035F11F002146CD /* accounts.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = accounts.js; path = ../../spaz/Resources/accounts.js; sourceTree = SOURCE_ROOT; };
 		B47A272B1035F11F002146CD /* DM.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = DM.html; path = ../../spaz/Resources/DM.html; sourceTree = SOURCE_ROOT; };
 		B47A272C1035F11F002146CD /* DM.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = DM.js; path = ../../spaz/Resources/DM.js; sourceTree = SOURCE_ROOT; };
-		B47A272D1035F11F002146CD /* editaccounts.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = editaccounts.html; path = ../../spaz/Resources/editaccounts.html; sourceTree = SOURCE_ROOT; };
-		B47A272E1035F11F002146CD /* editaccounts.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = editaccounts.js; path = ../../spaz/Resources/editaccounts.js; sourceTree = SOURCE_ROOT; };
 		B47A272F1035F11F002146CD /* favorites.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = favorites.html; path = ../../spaz/Resources/favorites.html; sourceTree = SOURCE_ROOT; };
 		B47A27301035F11F002146CD /* favorites.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = favorites.js; path = ../../spaz/Resources/favorites.js; sourceTree = SOURCE_ROOT; };
 		B47A27311035F11F002146CD /* humane.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = humane.js; path = ../../spaz/Resources/humane.js; sourceTree = SOURCE_ROOT; };
@@ -428,11 +479,24 @@
 		B4A49BB90FCE08DA0049ED60 /* TitaniumBlobWrapper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TitaniumBlobWrapper.m; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B4A6D3AF103C9EFD00131CD4 /* NativeControlProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NativeControlProxy.h; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B4A6D3B0103C9EFD00131CD4 /* NativeControlProxy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NativeControlProxy.m; sourceTree = &quot;&lt;group&gt;&quot;; };
+		B4AA86F3105ED1DF00D29939 /* nointernet.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = nointernet.html; path = ../../spaz/Resources/nointernet.html; sourceTree = SOURCE_ROOT; };
+		B4AA86F4105ED1DF00D29939 /* timeline-all.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = &quot;timeline-all.js&quot;; path = &quot;../../spaz/Resources/timeline-all.js&quot;; sourceTree = SOURCE_ROOT; };
+		B4AA86F5105ED1DF00D29939 /* timeline-all.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = &quot;timeline-all.html&quot;; path = &quot;../../spaz/Resources/timeline-all.html&quot;; sourceTree = SOURCE_ROOT; };
+		B4AA86F6105ED1DF00D29939 /* timeline-replies.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = &quot;timeline-replies.js&quot;; path = &quot;../../spaz/Resources/timeline-replies.js&quot;; sourceTree = SOURCE_ROOT; };
+		B4AA86F7105ED1DF00D29939 /* timeline-replies.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = &quot;timeline-replies.html&quot;; path = &quot;../../spaz/Resources/timeline-replies.html&quot;; sourceTree = SOURCE_ROOT; };
+		B4AA86F8105ED1DF00D29939 /* link.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = link.js; path = ../../spaz/Resources/link.js; sourceTree = SOURCE_ROOT; };
+		B4AA86F9105ED1DF00D29939 /* link.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = link.html; path = ../../spaz/Resources/link.html; sourceTree = SOURCE_ROOT; };
+		B4AA86FA105ED1DF00D29939 /* timeline-public.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = &quot;timeline-public.js&quot;; path = &quot;../../spaz/Resources/timeline-public.js&quot;; sourceTree = SOURCE_ROOT; };
+		B4AA86FB105ED1DF00D29939 /* timeline-public.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = &quot;timeline-public.html&quot;; path = &quot;../../spaz/Resources/timeline-public.html&quot;; sourceTree = SOURCE_ROOT; };
+		B4AA86FC105ED1DF00D29939 /* timeline-dms.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = &quot;timeline-dms.js&quot;; path = &quot;../../spaz/Resources/timeline-dms.js&quot;; sourceTree = SOURCE_ROOT; };
+		B4AA86FD105ED1DF00D29939 /* timeline-dms.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = &quot;timeline-dms.html&quot;; path = &quot;../../spaz/Resources/timeline-dms.html&quot;; sourceTree = SOURCE_ROOT; };
 		B4ABEDC3101903CA00639ED5 /* buggy.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = buggy.html; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B4ABEDC6101903F300639ED5 /* buggy.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; path = buggy.js; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B4B571FC10110324003546C7 /* TitaniumContentViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TitaniumContentViewController.h; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B4B571FD10110324003546C7 /* TitaniumContentViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TitaniumContentViewController.m; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B4B587000FB00B670047B651 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; };
+		B4B8E56910586D3500D08D44 /* TitaniumCellWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TitaniumCellWrapper.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+		B4B8E56A10586D3500D08D44 /* TitaniumCellWrapper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TitaniumCellWrapper.m; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B4B9E4611003D3DE004B8831 /* logo-m.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = &quot;logo-m.png&quot;; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B4B9E4631003D3E6004B8831 /* ext-core.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; path = &quot;ext-core.js&quot;; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B4B9E4711003D52F004B8831 /* jquery.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; path = jquery.js; sourceTree = &quot;&lt;group&gt;&quot;; };
@@ -453,6 +517,10 @@
 		B4E9BB650F842C9400DD709C /* SBJSON.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SBJSON.h; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B4E9BC070F85491F00DD709C /* TitaniumJSConstants.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TitaniumJSConstants.h; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B4E9BC080F85491F00DD709C /* TitaniumJSConstants.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TitaniumJSConstants.m; sourceTree = &quot;&lt;group&gt;&quot;; };
+		B4F37DDB1061913E00ED12AF /* NotificationModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NotificationModule.h; sourceTree = &quot;&lt;group&gt;&quot;; };
+		B4F37DDC1061913E00ED12AF /* NotificationModule.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NotificationModule.m; sourceTree = &quot;&lt;group&gt;&quot;; };
+		B4F37E151061AB5D00ED12AF /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; };
+		B4F37E2D1061B50E00ED12AF /* closebox.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = closebox.png; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B4F51CB00F981F23004D9D2D /* Default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Default.png; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B4FC30A30FEC89E800D31C75 /* Phone.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Phone.png; sourceTree = &quot;&lt;group&gt;&quot;; };
 		B4FC30A40FEC89E800D31C75 /* Safari.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Safari.png; sourceTree = &quot;&lt;group&gt;&quot;; };
@@ -481,88 +549,96 @@
 				B4C3F8B60FB3B11C0037F210 /* CoreLocation.framework in Frameworks */,
 				B44BCFD90FC5E03400733BDD /* libsqlite3.dylib in Frameworks */,
 				B4A49BA20FCE01070049ED60 /* MediaPlayer.framework in Frameworks */,
-				B4D262DD10437CC8007D123E /* MessageUI.framework in Frameworks */,
+				B4AA86A2105ECEC700D29939 /* MessageUI.framework in Frameworks */,
+				B4F37E181061AB5D00ED12AF /* QuartzCore.framework in Frameworks */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB776E1053326C00E21E02 /* Frameworks */ = {
+		24C5ABEF1061FA9D0063594B /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB778B1053333300E21E02 /* Frameworks */ = {
+		24C5ABF71061FABE0063594B /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77941053336300E21E02 /* Frameworks */ = {
+		24C5ABFE1061FAC80063594B /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB779D1053337F00E21E02 /* Frameworks */ = {
+		24C5AC051061FAD30063594B /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77A61053339A00E21E02 /* Frameworks */ = {
+		24C5AC0C1061FADC0063594B /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77BA105333D900E21E02 /* Frameworks */ = {
+		24C5AC131061FAE50063594B /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77C3105333FD00E21E02 /* Frameworks */ = {
+		24C5AC1A1061FAEF0063594B /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77CC1053341B00E21E02 /* Frameworks */ = {
+		24C5AC211061FB000063594B /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77D51053343E00E21E02 /* Frameworks */ = {
+		24C5AC281061FB080063594B /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77DE1053346100E21E02 /* Frameworks */ = {
+		24C5AC2F1061FB190063594B /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77E71053348200E21E02 /* Frameworks */ = {
+		24C5AC361061FB240063594B /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77F01053349800E21E02 /* Frameworks */ = {
+		24C5AC3D1061FB2E0063594B /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		24C5AC561061FB4C0063594B /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
@@ -583,6 +659,7 @@
 				B44BCFDA0FC5E03400733BDD /* libsqlite3.dylib in Frameworks */,
 				B4A49BA30FCE01070049ED60 /* MediaPlayer.framework in Frameworks */,
 				B401107D102CA204009ADA57 /* MessageUI.framework in Frameworks */,
+				B4F37E161061AB5D00ED12AF /* QuartzCore.framework in Frameworks */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -600,6 +677,7 @@
 				B47A27181035F040002146CD /* libsqlite3.dylib in Frameworks */,
 				B47A27191035F040002146CD /* MediaPlayer.framework in Frameworks */,
 				B47A271A1035F040002146CD /* MessageUI.framework in Frameworks */,
+				B4F37E171061AB5D00ED12AF /* QuartzCore.framework in Frameworks */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -635,6 +713,10 @@
 				B4290A74100D31FD00C4FF98 /* TweakedNavController.m */,
 				B4D4AF5310472271006E42E0 /* TweakedScrollView.h */,
 				B4D4AF5410472271006E42E0 /* TweakedScrollView.m */,
+				B4B8E56910586D3500D08D44 /* TitaniumCellWrapper.h */,
+				B4B8E56A10586D3500D08D44 /* TitaniumCellWrapper.m */,
+				B451D42410599C1C0025A18B /* PickerImageTextCell.h */,
+				B451D42510599C1C0025A18B /* PickerImageTextCell.m */,
 			);
 			path = Classes;
 			sourceTree = &quot;&lt;group&gt;&quot;;
@@ -645,18 +727,19 @@
 				1D6058910D05DD3D006BFB54 /* Titanium.app */,
 				B41068A20FBB730F00310448 /* libTitanium.a */,
 				B47A271E1035F040002146CD /* TestSpaz.app */,
-				24EB77701053326C00E21E02 /* libAnalytics.a */,
-				24EB778D1053333300E21E02 /* libGesture.a */,
-				24EB77961053336300E21E02 /* libApi.a */,
-				24EB779F1053337F00E21E02 /* libApp.a */,
-				24EB77A81053339A00E21E02 /* libDatabase.a */,
-				24EB77BC105333D900E21E02 /* libFilesystem.a */,
-				24EB77C5105333FD00E21E02 /* libGeolocation.a */,
-				24EB77CE1053341B00E21E02 /* libMedia.a */,
-				24EB77D71053343E00E21E02 /* libAccelerometer.a */,
-				24EB77E01053346100E21E02 /* libNetwork.a */,
-				24EB77E91053348200E21E02 /* libPlatform.a */,
-				24EB77F21053349800E21E02 /* libUi.a */,
+				24C5ABF11061FA9D0063594B /* libNotification.a */,
+				24C5ABF91061FABE0063594B /* libAnalytics.a */,
+				24C5AC001061FAC80063594B /* libGesture.a */,
+				24C5AC071061FAD30063594B /* libApi.a */,
+				24C5AC0E1061FADC0063594B /* libApp.a */,
+				24C5AC151061FAE50063594B /* libDatabase.a */,
+				24C5AC1C1061FAEF0063594B /* libFilesystem.a */,
+				24C5AC231061FB000063594B /* libGeolocation.a */,
+				24C5AC2A1061FB080063594B /* libMedia.a */,
+				24C5AC311061FB190063594B /* libAccelerometer.a */,
+				24C5AC381061FB240063594B /* libNetwork.a */,
+				24C5AC3F1061FB2E0063594B /* libPlatform.a */,
+				24C5AC581061FB4C0063594B /* libUI.a */,
 			);
 			name = Products;
 			sourceTree = &quot;&lt;group&gt;&quot;;
@@ -664,6 +747,7 @@
 		2444F8060FC9FCA400063972 /* modules */ = {
 			isa = PBXGroup;
 			children = (
+				B4F37DDA1061911100ED12AF /* NotificationModule */,
 				24F02E430FD482D2007894DA /* AnalyticsModule */,
 				24BBD83B0FCD245F00A261A4 /* GestureModule */,
 				2444F8070FC9FCA400063972 /* ApiModule */,
@@ -774,8 +858,8 @@
 		2444F8340FC9FCA400063972 /* UiModule */ = {
 			isa = PBXGroup;
 			children = (
-				2444F8350FC9FCA400063972 /* UiModule.h */,
 				2444F8360FC9FCA400063972 /* UiModule.m */,
+				2444F8350FC9FCA400063972 /* UiModule.h */,
 				B4A6D3AF103C9EFD00131CD4 /* NativeControlProxy.h */,
 				B4A6D3B0103C9EFD00131CD4 /* NativeControlProxy.m */,
 			);
@@ -823,6 +907,7 @@
 				B4DDBE2A0FD0AE31004DD79E /* ui.html */,
 				B481D3360FD4C45A00F0A961 /* song.mp3 */,
 				B4FC30A30FEC89E800D31C75 /* Phone.png */,
+				B4F37E2D1061B50E00ED12AF /* closebox.png */,
 				B4ABEDC6101903F300639ED5 /* buggy.js */,
 				B4FC30A40FEC89E800D31C75 /* Safari.png */,
 				B4FC30A50FEC89E800D31C75 /* iTunes.png */,
@@ -852,6 +937,7 @@
 		29B97323FDCFA39411CA2CEA /* Frameworks */ = {
 			isa = PBXGroup;
 			children = (
+				B4F37E151061AB5D00ED12AF /* QuartzCore.framework */,
 				B4250689100C0A4B00AD6A6B /* MessageUI.framework */,
 				B44BCFD80FC5E03400733BDD /* libsqlite3.dylib */,
 				B4A49BA10FCE01070049ED60 /* MediaPlayer.framework */,
@@ -885,10 +971,19 @@
 				B47A27E21035F15C002146CD /* tiapp.plist */,
 				B47A27261035F11F002146CD /* accounts.html */,
 				B47A27271035F11F002146CD /* accounts.js */,
+				B4AA86F3105ED1DF00D29939 /* nointernet.html */,
+				B4AA86F4105ED1DF00D29939 /* timeline-all.js */,
+				B4AA86F5105ED1DF00D29939 /* timeline-all.html */,
+				B4AA86F6105ED1DF00D29939 /* timeline-replies.js */,
+				B4AA86F7105ED1DF00D29939 /* timeline-replies.html */,
+				B4AA86F8105ED1DF00D29939 /* link.js */,
+				B4AA86F9105ED1DF00D29939 /* link.html */,
+				B4AA86FA105ED1DF00D29939 /* timeline-public.js */,
+				B4AA86FB105ED1DF00D29939 /* timeline-public.html */,
+				B4AA86FC105ED1DF00D29939 /* timeline-dms.js */,
+				B4AA86FD105ED1DF00D29939 /* timeline-dms.html */,
 				B47A272B1035F11F002146CD /* DM.html */,
 				B47A272C1035F11F002146CD /* DM.js */,
-				B47A272D1035F11F002146CD /* editaccounts.html */,
-				B47A272E1035F11F002146CD /* editaccounts.js */,
 				B47A272F1035F11F002146CD /* favorites.html */,
 				B47A27301035F11F002146CD /* favorites.js */,
 				B47A27311035F11F002146CD /* humane.js */,
@@ -931,6 +1026,10 @@
 				28D7ACF70DDB3853001CB0EB /* TitaniumViewController.m */,
 				B4B571FC10110324003546C7 /* TitaniumContentViewController.h */,
 				B4B571FD10110324003546C7 /* TitaniumContentViewController.m */,
+				B40CDEE6105F21F6004CFED3 /* TitaniumScrollableViewController.h */,
+				B40CDEE7105F21F6004CFED3 /* TitaniumScrollableViewController.m */,
+				B40CDF15105F248F004CFED3 /* TitaniumCompositeViewController.h */,
+				B40CDF16105F248F004CFED3 /* TitaniumCompositeViewController.m */,
 			);
 			name = TitaniumViewControllers;
 			sourceTree = &quot;&lt;group&gt;&quot;;
@@ -961,121 +1060,150 @@
 			children = (
 				B4FC656D0F95078000B21EA1 /* TitaniumInvocationGenerator.h */,
 				B4FC656E0F95078000B21EA1 /* TitaniumInvocationGenerator.m */,
-				B4E9B9C30F82030700DD709C /* TitaniumAccessorTuple.m */,
-				B4FC66FB0F95590D00B21EA1 /* TitaniumJSCode.m */,
-				B4A49BB90FCE08DA0049ED60 /* TitaniumBlobWrapper.m */,
 				B4E9B9C20F82030700DD709C /* TitaniumAccessorTuple.h */,
+				B4E9B9C30F82030700DD709C /* TitaniumAccessorTuple.m */,
 				B4FC66FA0F95590D00B21EA1 /* TitaniumJSCode.h */,
+				B4FC66FB0F95590D00B21EA1 /* TitaniumJSCode.m */,
 				B4A49BB80FCE08DA0049ED60 /* TitaniumBlobWrapper.h */,
+				B4A49BB90FCE08DA0049ED60 /* TitaniumBlobWrapper.m */,
 			);
 			name = &quot;Data wrappers&quot;;
 			sourceTree = &quot;&lt;group&gt;&quot;;
 		};
+		B4F37DDA1061911100ED12AF /* NotificationModule */ = {
+			isa = PBXGroup;
+			children = (
+				B4F37DDB1061913E00ED12AF /* NotificationModule.h */,
+				B4F37DDC1061913E00ED12AF /* NotificationModule.m */,
+			);
+			path = NotificationModule;
+			sourceTree = &quot;&lt;group&gt;&quot;;
+		};
 /* End PBXGroup section */
 
 /* Begin PBXHeadersBuildPhase section */
-		24EB776C1053326C00E21E02 /* Headers */ = {
+		24C5ABED1061FA9D0063594B /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB7774105332AA00E21E02 /* AnalyticsModule.h in Headers */,
+				24C5ACC11061FCBB0063594B /* TitaniumModule.h in Headers */,
+				24C5AC5B1061FB630063594B /* NotificationModule.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77891053333300E21E02 /* Headers */ = {
+		24C5ABF51061FABE0063594B /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77901053334F00E21E02 /* GestureModule.h in Headers */,
+				24C5ACC41061FCC70063594B /* TitaniumModule.h in Headers */,
+				24C5AC731061FBA00063594B /* AnalyticsModule.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77921053336300E21E02 /* Headers */ = {
+		24C5ABFC1061FAC80063594B /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77991053337200E21E02 /* ApiModule.h in Headers */,
+				24C5ACC71061FCD80063594B /* TitaniumModule.h in Headers */,
+				24C5AC751061FBAE0063594B /* GestureModule.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB779B1053337F00E21E02 /* Headers */ = {
+		24C5AC031061FAD30063594B /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77A21053338800E21E02 /* AppModule.h in Headers */,
-				24EB77A31053338B00E21E02 /* AppModule.m in Headers */,
+				24C5ACD61061FD390063594B /* ApiModule.h in Headers */,
+				24C5ACCA1061FCE30063594B /* TitaniumModule.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77A41053339A00E21E02 /* Headers */ = {
+		24C5AC0A1061FADC0063594B /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77AC105333B200E21E02 /* PlausibleDatabase.h in Headers */,
-				24EB77AD105333B200E21E02 /* PLDatabase.h in Headers */,
-				24EB77AE105333B200E21E02 /* PLPreparedStatement.h in Headers */,
-				24EB77AF105333B200E21E02 /* PLResultSet.h in Headers */,
-				24EB77B0105333B200E21E02 /* PLSqliteDatabase.h in Headers */,
-				24EB77B1105333B200E21E02 /* PLSqlitePreparedStatement.h in Headers */,
-				24EB77B2105333B200E21E02 /* PLSqliteResultSet.h in Headers */,
-				24EB77AB105333A200E21E02 /* DatabaseModule.h in Headers */,
+				24C5ACD71061FD400063594B /* AppModule.h in Headers */,
+				24C5ACCB1061FCE80063594B /* TitaniumModule.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77B8105333D900E21E02 /* Headers */ = {
+		24C5AC111061FAE50063594B /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77BF105333E100E21E02 /* FilesystemModule.h in Headers */,
+				24C5ACDA1061FD600063594B /* PlausibleDatabase.h in Headers */,
+				24C5ACDB1061FD600063594B /* PLDatabase.h in Headers */,
+				24C5ACDC1061FD600063594B /* PLPreparedStatement.h in Headers */,
+				24C5ACDD1061FD600063594B /* PLResultSet.h in Headers */,
+				24C5ACDE1061FD600063594B /* PLSqliteDatabase.h in Headers */,
+				24C5ACDF1061FD600063594B /* PLSqlitePreparedStatement.h in Headers */,
+				24C5ACE01061FD600063594B /* PLSqliteResultSet.h in Headers */,
+				24C5ACD91061FD4F0063594B /* DatabaseModule.h in Headers */,
+				24C5ACCC1061FCEF0063594B /* TitaniumModule.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77C1105333FD00E21E02 /* Headers */ = {
+		24C5AC181061FAEF0063594B /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77C81053340800E21E02 /* GeolocationModule.h in Headers */,
+				24C5ACE61061FD760063594B /* FilesystemModule.h in Headers */,
+				24C5ACCD1061FCF40063594B /* TitaniumModule.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77CA1053341B00E21E02 /* Headers */ = {
+		24C5AC1F1061FB000063594B /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77D11053342300E21E02 /* MediaModule.h in Headers */,
+				24C5ACE81061FD850063594B /* GeolocationModule.h in Headers */,
+				24C5ACCE1061FCFA0063594B /* TitaniumModule.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77D31053343E00E21E02 /* Headers */ = {
+		24C5AC261061FB080063594B /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77DA1053344A00E21E02 /* AccelerometerModule.h in Headers */,
+				24C5ACEA1061FD910063594B /* MediaModule.h in Headers */,
+				24C5ACCF1061FCFF0063594B /* TitaniumModule.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77DC1053346100E21E02 /* Headers */ = {
+		24C5AC2D1061FB190063594B /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77E31053346C00E21E02 /* NetworkModule.h in Headers */,
+				24C5ACEC1061FDA70063594B /* AccelerometerModule.h in Headers */,
+				24C5ACD01061FD040063594B /* TitaniumModule.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77E51053348200E21E02 /* Headers */ = {
+		24C5AC341061FB240063594B /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77EC1053348C00E21E02 /* PlatformModule.h in Headers */,
+				24C5ACEE1061FDB70063594B /* NetworkModule.h in Headers */,
+				24C5ACD11061FD090063594B /* TitaniumModule.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77EE1053349800E21E02 /* Headers */ = {
+		24C5AC3B1061FB2E0063594B /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77F5105334A500E21E02 /* UiModule.h in Headers */,
-				24EB77F6105334A500E21E02 /* NativeControlProxy.h in Headers */,
+				24C5ACF01061FDC20063594B /* PlatformModule.h in Headers */,
+				24C5ACD21061FD0E0063594B /* TitaniumModule.h in Headers */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		24C5AC541061FB4C0063594B /* Headers */ = {
+			isa = PBXHeadersBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				24C5ACF21061FDD70063594B /* UiModule.h in Headers */,
+				24C5ACF31061FDD70063594B /* NativeControlProxy.h in Headers */,
+				24C5ACD31061FD140063594B /* TitaniumModule.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -1083,33 +1211,38 @@
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB78501053364D00E21E02 /* TitaniumWebViewController.h in Headers */,
-				24EB78511053364D00E21E02 /* TitaniumTableViewController.h in Headers */,
-				24EB78521053364D00E21E02 /* TitaniumViewController.h in Headers */,
-				24EB78531053364D00E21E02 /* TitaniumContentViewController.h in Headers */,
-				24EB78421053363200E21E02 /* SBJSON.h in Headers */,
-				24EB78431053363200E21E02 /* IPAddress.h in Headers */,
-				24EB78441053363200E21E02 /* NSData+Additions.h in Headers */,
-				24EB78451053363200E21E02 /* base64.h in Headers */,
-				24EB78461053363200E21E02 /* Webcolor.h in Headers */,
-				24EB78471053363200E21E02 /* Logging.h in Headers */,
-				24EB78481053363200E21E02 /* WebFont.h in Headers */,
-				24EB783A1053360E00E21E02 /* TitaniumInvocationGenerator.h in Headers */,
-				24EB783B1053360E00E21E02 /* TitaniumAccessorTuple.h in Headers */,
-				24EB783C1053360E00E21E02 /* TitaniumJSCode.h in Headers */,
-				24EB783D1053360E00E21E02 /* TitaniumBlobWrapper.h in Headers */,
-				24EB782E105335FD00E21E02 /* TitaniumAppDelegate.h in Headers */,
-				24EB782F105335FD00E21E02 /* TitaniumAppProtocol.h in Headers */,
-				24EB7830105335FD00E21E02 /* TitaniumCmdThread.h in Headers */,
-				24EB7831105335FD00E21E02 /* TitaniumUIViewController.h in Headers */,
-				24EB7832105335FD00E21E02 /* TitaniumHost.h in Headers */,
-				24EB7833105335FD00E21E02 /* TitaniumJSConstants.h in Headers */,
-				24EB7834105335FD00E21E02 /* TitaniumActionSheetHelper.h in Headers */,
-				24EB7835105335FD00E21E02 /* TitaniumModule.h in Headers */,
-				24EB7836105335FD00E21E02 /* WebTableViewCell.h in Headers */,
-				24EB7837105335FD00E21E02 /* ValueTableViewCell.h in Headers */,
-				24EB7838105335FD00E21E02 /* TweakedNavController.h in Headers */,
-				24EB7839105335FD00E21E02 /* TweakedScrollView.h in Headers */,
+				24C5ACD41061FD1F0063594B /* Titanium_Prefix.pch in Headers */,
+				24C5AC851061FC260063594B /* TitaniumInvocationGenerator.h in Headers */,
+				24C5AC861061FC260063594B /* TitaniumAccessorTuple.h in Headers */,
+				24C5AC871061FC260063594B /* TitaniumJSCode.h in Headers */,
+				24C5AC881061FC260063594B /* TitaniumBlobWrapper.h in Headers */,
+				24C5AC891061FC260063594B /* SBJSON.h in Headers */,
+				24C5AC8A1061FC260063594B /* IPAddress.h in Headers */,
+				24C5AC8B1061FC260063594B /* NSData+Additions.h in Headers */,
+				24C5AC8C1061FC260063594B /* base64.h in Headers */,
+				24C5AC8D1061FC260063594B /* Webcolor.h in Headers */,
+				24C5AC8E1061FC260063594B /* Logging.h in Headers */,
+				24C5AC8F1061FC260063594B /* WebFont.h in Headers */,
+				24C5AC901061FC260063594B /* TitaniumWebViewController.h in Headers */,
+				24C5AC911061FC260063594B /* TitaniumTableViewController.h in Headers */,
+				24C5AC921061FC260063594B /* TitaniumViewController.h in Headers */,
+				24C5AC931061FC260063594B /* TitaniumContentViewController.h in Headers */,
+				24C5AC941061FC260063594B /* TitaniumScrollableViewController.h in Headers */,
+				24C5AC951061FC260063594B /* TitaniumCompositeViewController.h in Headers */,
+				24C5AC771061FBF50063594B /* TitaniumAppDelegate.h in Headers */,
+				24C5AC781061FBF50063594B /* TitaniumAppProtocol.h in Headers */,
+				24C5AC791061FBF50063594B /* TitaniumCmdThread.h in Headers */,
+				24C5AC7A1061FBF50063594B /* TitaniumUIViewController.h in Headers */,
+				24C5AC7B1061FBF50063594B /* TitaniumHost.h in Headers */,
+				24C5AC7C1061FBF50063594B /* TitaniumJSConstants.h in Headers */,
+				24C5AC7D1061FBF50063594B /* TitaniumActionSheetHelper.h in Headers */,
+				24C5AC7E1061FBF50063594B /* TitaniumModule.h in Headers */,
+				24C5AC7F1061FBF50063594B /* WebTableViewCell.h in Headers */,
+				24C5AC801061FBF50063594B /* ValueTableViewCell.h in Headers */,
+				24C5AC811061FBF50063594B /* TweakedNavController.h in Headers */,
+				24C5AC821061FBF50063594B /* TweakedScrollView.h in Headers */,
+				24C5AC831061FBF50063594B /* TitaniumCellWrapper.h in Headers */,
+				24C5AC841061FBF50063594B /* PickerImageTextCell.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -1133,30 +1266,47 @@
 			productReference = 1D6058910D05DD3D006BFB54 /* Titanium.app */;
 			productType = &quot;com.apple.product-type.application&quot;;
 		};
-		24EB776F1053326C00E21E02 /* libAnalytics */ = {
+		24C5ABF01061FA9D0063594B /* libNotification */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = 24C5ABF41061FABC0063594B /* Build configuration list for PBXNativeTarget &quot;libNotification&quot; */;
+			buildPhases = (
+				24C5ABED1061FA9D0063594B /* Headers */,
+				24C5ABEE1061FA9D0063594B /* Sources */,
+				24C5ABEF1061FA9D0063594B /* Frameworks */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = libNotification;
+			productName = libNotification;
+			productReference = 24C5ABF11061FA9D0063594B /* libNotification.a */;
+			productType = &quot;com.apple.product-type.library.static&quot;;
+		};
+		24C5ABF81061FABE0063594B /* libAnalytics */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = 24EB77731053328B00E21E02 /* Build configuration list for PBXNativeTarget &quot;libAnalytics&quot; */;
+			buildConfigurationList = 24C5AC491061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libAnalytics&quot; */;
 			buildPhases = (
-				24EB776C1053326C00E21E02 /* Headers */,
-				24EB776D1053326C00E21E02 /* Sources */,
-				24EB776E1053326C00E21E02 /* Frameworks */,
+				24C5ABF51061FABE0063594B /* Headers */,
+				24C5ABF61061FABE0063594B /* Sources */,
+				24C5ABF71061FABE0063594B /* Frameworks */,
 			);
 			buildRules = (
 			);
 			dependencies = (
 			);
 			name = libAnalytics;
-			productName = Analytics;
-			productReference = 24EB77701053326C00E21E02 /* libAnalytics.a */;
+			productName = libAnalytics;
+			productReference = 24C5ABF91061FABE0063594B /* libAnalytics.a */;
 			productType = &quot;com.apple.product-type.library.static&quot;;
 		};
-		24EB778C1053333300E21E02 /* libGesture */ = {
+		24C5ABFF1061FAC80063594B /* libGesture */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = 24EB780C105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libGesture&quot; */;
+			buildConfigurationList = 24C5AC4A1061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libGesture&quot; */;
 			buildPhases = (
-				24EB77891053333300E21E02 /* Headers */,
-				24EB778A1053333300E21E02 /* Sources */,
-				24EB778B1053333300E21E02 /* Frameworks */,
+				24C5ABFC1061FAC80063594B /* Headers */,
+				24C5ABFD1061FAC80063594B /* Sources */,
+				24C5ABFE1061FAC80063594B /* Frameworks */,
 			);
 			buildRules = (
 			);
@@ -1164,33 +1314,33 @@
 			);
 			name = libGesture;
 			productName = libGesture;
-			productReference = 24EB778D1053333300E21E02 /* libGesture.a */;
+			productReference = 24C5AC001061FAC80063594B /* libGesture.a */;
 			productType = &quot;com.apple.product-type.library.static&quot;;
 		};
-		24EB77951053336300E21E02 /* libApi */ = {
+		24C5AC061061FAD30063594B /* libApi */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = 24EB780D105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libApi&quot; */;
+			buildConfigurationList = 24C5AC4B1061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libApi&quot; */;
 			buildPhases = (
-				24EB77921053336300E21E02 /* Headers */,
-				24EB77931053336300E21E02 /* Sources */,
-				24EB77941053336300E21E02 /* Frameworks */,
+				24C5AC031061FAD30063594B /* Headers */,
+				24C5AC041061FAD30063594B /* Sources */,
+				24C5AC051061FAD30063594B /* Frameworks */,
 			);
 			buildRules = (
 			);
 			dependencies = (
 			);
 			name = libApi;
-			productName = libAPI;
-			productReference = 24EB77961053336300E21E02 /* libApi.a */;
+			productName = libApi;
+			productReference = 24C5AC071061FAD30063594B /* libApi.a */;
 			productType = &quot;com.apple.product-type.library.static&quot;;
 		};
-		24EB779E1053337F00E21E02 /* libApp */ = {
+		24C5AC0D1061FADC0063594B /* libApp */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = 24EB780E105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libApp&quot; */;
+			buildConfigurationList = 24C5AC4C1061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libApp&quot; */;
 			buildPhases = (
-				24EB779B1053337F00E21E02 /* Headers */,
-				24EB779C1053337F00E21E02 /* Sources */,
-				24EB779D1053337F00E21E02 /* Frameworks */,
+				24C5AC0A1061FADC0063594B /* Headers */,
+				24C5AC0B1061FADC0063594B /* Sources */,
+				24C5AC0C1061FADC0063594B /* Frameworks */,
 			);
 			buildRules = (
 			);
@@ -1198,16 +1348,16 @@
 			);
 			name = libApp;
 			productName = libApp;
-			productReference = 24EB779F1053337F00E21E02 /* libApp.a */;
+			productReference = 24C5AC0E1061FADC0063594B /* libApp.a */;
 			productType = &quot;com.apple.product-type.library.static&quot;;
 		};
-		24EB77A71053339A00E21E02 /* libDatabase */ = {
+		24C5AC141061FAE50063594B /* libDatabase */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = 24EB780F105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libDatabase&quot; */;
+			buildConfigurationList = 24C5AC4D1061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libDatabase&quot; */;
 			buildPhases = (
-				24EB77A41053339A00E21E02 /* Headers */,
-				24EB77A51053339A00E21E02 /* Sources */,
-				24EB77A61053339A00E21E02 /* Frameworks */,
+				24C5AC111061FAE50063594B /* Headers */,
+				24C5AC121061FAE50063594B /* Sources */,
+				24C5AC131061FAE50063594B /* Frameworks */,
 			);
 			buildRules = (
 			);
@@ -1215,16 +1365,16 @@
 			);
 			name = libDatabase;
 			productName = libDatabase;
-			productReference = 24EB77A81053339A00E21E02 /* libDatabase.a */;
+			productReference = 24C5AC151061FAE50063594B /* libDatabase.a */;
 			productType = &quot;com.apple.product-type.library.static&quot;;
 		};
-		24EB77BB105333D900E21E02 /* libFilesystem */ = {
+		24C5AC1B1061FAEF0063594B /* libFilesystem */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = 24EB7810105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libFilesystem&quot; */;
+			buildConfigurationList = 24C5AC4E1061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libFilesystem&quot; */;
 			buildPhases = (
-				24EB77B8105333D900E21E02 /* Headers */,
-				24EB77B9105333D900E21E02 /* Sources */,
-				24EB77BA105333D900E21E02 /* Frameworks */,
+				24C5AC181061FAEF0063594B /* Headers */,
+				24C5AC191061FAEF0063594B /* Sources */,
+				24C5AC1A1061FAEF0063594B /* Frameworks */,
 			);
 			buildRules = (
 			);
@@ -1232,16 +1382,16 @@
 			);
 			name = libFilesystem;
 			productName = libFilesystem;
-			productReference = 24EB77BC105333D900E21E02 /* libFilesystem.a */;
+			productReference = 24C5AC1C1061FAEF0063594B /* libFilesystem.a */;
 			productType = &quot;com.apple.product-type.library.static&quot;;
 		};
-		24EB77C4105333FD00E21E02 /* libGeolocation */ = {
+		24C5AC221061FB000063594B /* libGeolocation */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = 24EB7811105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libGeolocation&quot; */;
+			buildConfigurationList = 24C5AC4F1061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libGeolocation&quot; */;
 			buildPhases = (
-				24EB77C1105333FD00E21E02 /* Headers */,
-				24EB77C2105333FD00E21E02 /* Sources */,
-				24EB77C3105333FD00E21E02 /* Frameworks */,
+				24C5AC1F1061FB000063594B /* Headers */,
+				24C5AC201061FB000063594B /* Sources */,
+				24C5AC211061FB000063594B /* Frameworks */,
 			);
 			buildRules = (
 			);
@@ -1249,16 +1399,16 @@
 			);
 			name = libGeolocation;
 			productName = libGeolocation;
-			productReference = 24EB77C5105333FD00E21E02 /* libGeolocation.a */;
+			productReference = 24C5AC231061FB000063594B /* libGeolocation.a */;
 			productType = &quot;com.apple.product-type.library.static&quot;;
 		};
-		24EB77CD1053341B00E21E02 /* libMedia */ = {
+		24C5AC291061FB080063594B /* libMedia */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = 24EB7812105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libMedia&quot; */;
+			buildConfigurationList = 24C5AC501061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libMedia&quot; */;
 			buildPhases = (
-				24EB77CA1053341B00E21E02 /* Headers */,
-				24EB77CB1053341B00E21E02 /* Sources */,
-				24EB77CC1053341B00E21E02 /* Frameworks */,
+				24C5AC261061FB080063594B /* Headers */,
+				24C5AC271061FB080063594B /* Sources */,
+				24C5AC281061FB080063594B /* Frameworks */,
 			);
 			buildRules = (
 			);
@@ -1266,16 +1416,16 @@
 			);
 			name = libMedia;
 			productName = libMedia;
-			productReference = 24EB77CE1053341B00E21E02 /* libMedia.a */;
+			productReference = 24C5AC2A1061FB080063594B /* libMedia.a */;
 			productType = &quot;com.apple.product-type.library.static&quot;;
 		};
-		24EB77D61053343E00E21E02 /* libAccelerometer */ = {
+		24C5AC301061FB190063594B /* libAccelerometer */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = 24EB7813105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libAccelerometer&quot; */;
+			buildConfigurationList = 24C5AC511061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libAccelerometer&quot; */;
 			buildPhases = (
-				24EB77D31053343E00E21E02 /* Headers */,
-				24EB77D41053343E00E21E02 /* Sources */,
-				24EB77D51053343E00E21E02 /* Frameworks */,
+				24C5AC2D1061FB190063594B /* Headers */,
+				24C5AC2E1061FB190063594B /* Sources */,
+				24C5AC2F1061FB190063594B /* Frameworks */,
 			);
 			buildRules = (
 			);
@@ -1283,16 +1433,16 @@
 			);
 			name = libAccelerometer;
 			productName = libAccelerometer;
-			productReference = 24EB77D71053343E00E21E02 /* libAccelerometer.a */;
+			productReference = 24C5AC311061FB190063594B /* libAccelerometer.a */;
 			productType = &quot;com.apple.product-type.library.static&quot;;
 		};
-		24EB77DF1053346100E21E02 /* libNetwork */ = {
+		24C5AC371061FB240063594B /* libNetwork */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = 24EB7814105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libNetwork&quot; */;
+			buildConfigurationList = 24C5AC521061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libNetwork&quot; */;
 			buildPhases = (
-				24EB77DC1053346100E21E02 /* Headers */,
-				24EB77DD1053346100E21E02 /* Sources */,
-				24EB77DE1053346100E21E02 /* Frameworks */,
+				24C5AC341061FB240063594B /* Headers */,
+				24C5AC351061FB240063594B /* Sources */,
+				24C5AC361061FB240063594B /* Frameworks */,
 			);
 			buildRules = (
 			);
@@ -1300,16 +1450,16 @@
 			);
 			name = libNetwork;
 			productName = libNetwork;
-			productReference = 24EB77E01053346100E21E02 /* libNetwork.a */;
+			productReference = 24C5AC381061FB240063594B /* libNetwork.a */;
 			productType = &quot;com.apple.product-type.library.static&quot;;
 		};
-		24EB77E81053348200E21E02 /* libPlatform */ = {
+		24C5AC3E1061FB2E0063594B /* libPlatform */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = 24EB7815105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libPlatform&quot; */;
+			buildConfigurationList = 24C5AC531061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libPlatform&quot; */;
 			buildPhases = (
-				24EB77E51053348200E21E02 /* Headers */,
-				24EB77E61053348200E21E02 /* Sources */,
-				24EB77E71053348200E21E02 /* Frameworks */,
+				24C5AC3B1061FB2E0063594B /* Headers */,
+				24C5AC3C1061FB2E0063594B /* Sources */,
+				24C5AC3D1061FB2E0063594B /* Frameworks */,
 			);
 			buildRules = (
 			);
@@ -1317,24 +1467,24 @@
 			);
 			name = libPlatform;
 			productName = libPlatform;
-			productReference = 24EB77E91053348200E21E02 /* libPlatform.a */;
+			productReference = 24C5AC3F1061FB2E0063594B /* libPlatform.a */;
 			productType = &quot;com.apple.product-type.library.static&quot;;
 		};
-		24EB77F11053349800E21E02 /* libUi */ = {
+		24C5AC571061FB4C0063594B /* libUI */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = 24EB7816105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libUi&quot; */;
+			buildConfigurationList = 24C5AC6E1061FB730063594B /* Build configuration list for PBXNativeTarget &quot;libUI&quot; */;
 			buildPhases = (
-				24EB77EE1053349800E21E02 /* Headers */,
-				24EB77EF1053349800E21E02 /* Sources */,
-				24EB77F01053349800E21E02 /* Frameworks */,
+				24C5AC541061FB4C0063594B /* Headers */,
+				24C5AC551061FB4C0063594B /* Sources */,
+				24C5AC561061FB4C0063594B /* Frameworks */,
 			);
 			buildRules = (
 			);
 			dependencies = (
 			);
-			name = libUi;
+			name = libUI;
 			productName = libUI;
-			productReference = 24EB77F21053349800E21E02 /* libUi.a */;
+			productReference = 24C5AC581061FB4C0063594B /* libUI.a */;
 			productType = &quot;com.apple.product-type.library.static&quot;;
 		};
 		B41068A10FBB730F00310448 /* libTitanium */ = {
@@ -1387,18 +1537,19 @@
 				1D6058900D05DD3D006BFB54 /* Titanium */,
 				B47A26CB1035F040002146CD /* Titanium-Spaz */,
 				B41068A10FBB730F00310448 /* libTitanium */,
-				24EB776F1053326C00E21E02 /* libAnalytics */,
-				24EB778C1053333300E21E02 /* libGesture */,
-				24EB77951053336300E21E02 /* libApi */,
-				24EB779E1053337F00E21E02 /* libApp */,
-				24EB77A71053339A00E21E02 /* libDatabase */,
-				24EB77BB105333D900E21E02 /* libFilesystem */,
-				24EB77C4105333FD00E21E02 /* libGeolocation */,
-				24EB77CD1053341B00E21E02 /* libMedia */,
-				24EB77D61053343E00E21E02 /* libAccelerometer */,
-				24EB77DF1053346100E21E02 /* libNetwork */,
-				24EB77E81053348200E21E02 /* libPlatform */,
-				24EB77F11053349800E21E02 /* libUi */,
+				24C5ABF01061FA9D0063594B /* libNotification */,
+				24C5ABF81061FABE0063594B /* libAnalytics */,
+				24C5ABFF1061FAC80063594B /* libGesture */,
+				24C5AC061061FAD30063594B /* libApi */,
+				24C5AC0D1061FADC0063594B /* libApp */,
+				24C5AC141061FAE50063594B /* libDatabase */,
+				24C5AC1B1061FAEF0063594B /* libFilesystem */,
+				24C5AC221061FB000063594B /* libGeolocation */,
+				24C5AC291061FB080063594B /* libMedia */,
+				24C5AC301061FB190063594B /* libAccelerometer */,
+				24C5AC371061FB240063594B /* libNetwork */,
+				24C5AC3E1061FB2E0063594B /* libPlatform */,
+				24C5AC571061FB4C0063594B /* libUI */,
 			);
 		};
 /* End PBXProject section */
@@ -1430,6 +1581,7 @@
 				B4B9E4621003D3DE004B8831 /* logo-m.png in Resources */,
 				B4ABEDC4101903CA00639ED5 /* buggy.html in Resources */,
 				B40C00241031ECC4009DEFF9 /* docs.html in Resources */,
+				B4F37E2E1061B50E00ED12AF /* closebox.png in Resources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -1448,7 +1600,6 @@
 				B47A27DC1035F11F002146CD /* trends.js in Resources */,
 				B47A27D51035F11F002146CD /* search.js in Resources */,
 				B47A27CB1035F11F002146CD /* message.js in Resources */,
-				B47A278B1035F11F002146CD /* editaccounts.js in Resources */,
 				B47A27D71035F11F002146CD /* splash.js in Resources */,
 				B47A27C91035F11F002146CD /* json2.js in Resources */,
 				B47A27D11035F11F002146CD /* post.js in Resources */,
@@ -1458,7 +1609,6 @@
 				B47A27241035F0BF002146CD /* MainWindow.xib in Resources */,
 				B47A27841035F11F002146CD /* accounts.html in Resources */,
 				B47A27881035F11F002146CD /* DM.html in Resources */,
-				B47A278A1035F11F002146CD /* editaccounts.html in Resources */,
 				B47A278C1035F11F002146CD /* favorites.html in Resources */,
 				B47A27CA1035F11F002146CD /* message.html in Resources */,
 				B47A27CC1035F11F002146CD /* more.html in Resources */,
@@ -1476,6 +1626,12 @@
 				B47A27E51035F15C002146CD /* Default.png in Resources */,
 				B47A27E61035F15C002146CD /* tiapp.plist in Resources */,
 				B47A283D1035F2E3002146CD /* images in Resources */,
+				B4AA86FE105ED1DF00D29939 /* nointernet.html in Resources */,
+				B4AA8700105ED1DF00D29939 /* timeline-all.html in Resources */,
+				B4AA8702105ED1DF00D29939 /* timeline-replies.html in Resources */,
+				B4AA8704105ED1DF00D29939 /* link.html in Resources */,
+				B4AA8706105ED1DF00D29939 /* timeline-public.html in Resources */,
+				B4AA8708105ED1DF00D29939 /* timeline-dms.html in Resources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -1549,107 +1705,120 @@
 				B4A6D3B4103C9EFD00131CD4 /* NativeControlProxy.m in Sources */,
 				B4D4AF5510472271006E42E0 /* TweakedScrollView.m in Sources */,
 				B4D4B07510489FDC006E42E0 /* WebFont.m in Sources */,
+				B4B8E56E10586D3500D08D44 /* TitaniumCellWrapper.m in Sources */,
+				B451D42710599C1C0025A18B /* PickerImageTextCell.m in Sources */,
+				B40CDEEA105F21F6004CFED3 /* TitaniumScrollableViewController.m in Sources */,
+				B40CDF19105F248F004CFED3 /* TitaniumCompositeViewController.m in Sources */,
+				B4F37DE01061913E00ED12AF /* NotificationModule.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB776D1053326C00E21E02 /* Sources */ = {
+		24C5ABEE1061FA9D0063594B /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB7775105332AC00E21E02 /* AnalyticsModule.m in Sources */,
+				24C5AC5C1061FB670063594B /* NotificationModule.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB778A1053333300E21E02 /* Sources */ = {
+		24C5ABF61061FABE0063594B /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77911053335200E21E02 /* GestureModule.m in Sources */,
+				24C5AC741061FBA30063594B /* AnalyticsModule.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77931053336300E21E02 /* Sources */ = {
+		24C5ABFD1061FAC80063594B /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB779A1053337500E21E02 /* ApiModule.m in Sources */,
+				24C5AC761061FBB20063594B /* GestureModule.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB779C1053337F00E21E02 /* Sources */ = {
+		24C5AC041061FAD30063594B /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB787C10533E7600E21E02 /* AppModule.m in Sources */,
+				24C5ACD51061FD360063594B /* ApiModule.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77A51053339A00E21E02 /* Sources */ = {
+		24C5AC0B1061FADC0063594B /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77B3105333C700E21E02 /* DatabaseModule.m in Sources */,
-				24EB77B4105333C700E21E02 /* PlausibleDatabase.m in Sources */,
-				24EB77B5105333C700E21E02 /* PLSqliteDatabase.m in Sources */,
-				24EB77B6105333C700E21E02 /* PLSqlitePreparedStatement.m in Sources */,
-				24EB77B7105333C700E21E02 /* PLSqliteResultSet.m in Sources */,
+				24C5ACD81061FD430063594B /* AppModule.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77B9105333D900E21E02 /* Sources */ = {
+		24C5AC121061FAE50063594B /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77C0105333E400E21E02 /* FilesystemModule.m in Sources */,
+				24C5ACE11061FD690063594B /* DatabaseModule.m in Sources */,
+				24C5ACE21061FD690063594B /* PlausibleDatabase.m in Sources */,
+				24C5ACE31061FD690063594B /* PLSqliteDatabase.m in Sources */,
+				24C5ACE41061FD690063594B /* PLSqlitePreparedStatement.m in Sources */,
+				24C5ACE51061FD690063594B /* PLSqliteResultSet.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77C2105333FD00E21E02 /* Sources */ = {
+		24C5AC191061FAEF0063594B /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77C91053340C00E21E02 /* GeolocationModule.m in Sources */,
+				24C5ACE71061FD7C0063594B /* FilesystemModule.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77CB1053341B00E21E02 /* Sources */ = {
+		24C5AC201061FB000063594B /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77D21053342700E21E02 /* MediaModule.m in Sources */,
+				24C5ACE91061FD880063594B /* GeolocationModule.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77D41053343E00E21E02 /* Sources */ = {
+		24C5AC271061FB080063594B /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77DB1053344E00E21E02 /* AccelerometerModule.m in Sources */,
+				24C5ACEB1061FD940063594B /* MediaModule.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77DD1053346100E21E02 /* Sources */ = {
+		24C5AC2E1061FB190063594B /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77E41053346F00E21E02 /* NetworkModule.m in Sources */,
+				24C5ACED1061FDAC0063594B /* AccelerometerModule.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77E61053348200E21E02 /* Sources */ = {
+		24C5AC351061FB240063594B /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77ED1053348F00E21E02 /* PlatformModule.m in Sources */,
+				24C5ACEF1061FDBB0063594B /* NetworkModule.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		24EB77EF1053349800E21E02 /* Sources */ = {
+		24C5AC3C1061FB2E0063594B /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB77F7105334AB00E21E02 /* UiModule.m in Sources */,
-				24EB77F8105334AB00E21E02 /* NativeControlProxy.m in Sources */,
+				24C5ACF11061FDC70063594B /* PlatformModule.m in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		24C5AC551061FB4C0063594B /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				24C5ACF41061FDDC0063594B /* UiModule.m in Sources */,
+				24C5ACF51061FDDC0063594B /* NativeControlProxy.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -1657,32 +1826,36 @@
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				24EB78541053365E00E21E02 /* TitaniumWebViewController.m in Sources */,
-				24EB78551053365E00E21E02 /* TitaniumTableViewController.m in Sources */,
-				24EB78561053365E00E21E02 /* TitaniumViewController.m in Sources */,
-				24EB78571053365E00E21E02 /* TitaniumContentViewController.m in Sources */,
-				24EB78491053364000E21E02 /* SBJSON.m in Sources */,
-				24EB784A1053364000E21E02 /* IPAddress.c in Sources */,
-				24EB784B1053364000E21E02 /* NSData+Additions.m in Sources */,
-				24EB784C1053364000E21E02 /* base64.c in Sources */,
-				24EB784D1053364000E21E02 /* Webcolor.m in Sources */,
-				24EB784E1053364000E21E02 /* Logging.c in Sources */,
-				24EB784F1053364000E21E02 /* WebFont.m in Sources */,
-				24EB783E1053362200E21E02 /* TitaniumInvocationGenerator.m in Sources */,
-				24EB783F1053362200E21E02 /* TitaniumAccessorTuple.m in Sources */,
-				24EB78401053362200E21E02 /* TitaniumJSCode.m in Sources */,
-				24EB78411053362200E21E02 /* TitaniumBlobWrapper.m in Sources */,
-				24EB7823105335EE00E21E02 /* TitaniumAppDelegate.m in Sources */,
-				24EB7824105335EE00E21E02 /* TitaniumAppProtocol.m in Sources */,
-				24EB7825105335EE00E21E02 /* TitaniumUIViewController.m in Sources */,
-				24EB7826105335EE00E21E02 /* TitaniumHost.m in Sources */,
-				24EB7827105335EE00E21E02 /* TitaniumCmdThread.m in Sources */,
-				24EB7828105335EE00E21E02 /* TitaniumJSConstants.m in Sources */,
-				24EB7829105335EE00E21E02 /* TitaniumActionSheetHelper.m in Sources */,
-				24EB782A105335EE00E21E02 /* WebTableViewCell.m in Sources */,
-				24EB782B105335EE00E21E02 /* ValueTableViewCell.m in Sources */,
-				24EB782C105335EE00E21E02 /* TweakedNavController.m in Sources */,
-				24EB782D105335EE00E21E02 /* TweakedScrollView.m in Sources */,
+				24C5AC961061FC540063594B /* TitaniumInvocationGenerator.m in Sources */,
+				24C5AC971061FC540063594B /* TitaniumAccessorTuple.m in Sources */,
+				24C5AC981061FC540063594B /* TitaniumJSCode.m in Sources */,
+				24C5AC991061FC540063594B /* TitaniumBlobWrapper.m in Sources */,
+				24C5AC9A1061FC540063594B /* SBJSON.m in Sources */,
+				24C5AC9B1061FC540063594B /* IPAddress.c in Sources */,
+				24C5AC9C1061FC540063594B /* NSData+Additions.m in Sources */,
+				24C5AC9D1061FC540063594B /* base64.c in Sources */,
+				24C5AC9E1061FC540063594B /* Webcolor.m in Sources */,
+				24C5AC9F1061FC540063594B /* Logging.c in Sources */,
+				24C5ACA01061FC540063594B /* WebFont.m in Sources */,
+				24C5ACA11061FC540063594B /* TitaniumWebViewController.m in Sources */,
+				24C5ACA21061FC540063594B /* TitaniumTableViewController.m in Sources */,
+				24C5ACA31061FC540063594B /* TitaniumViewController.m in Sources */,
+				24C5ACA41061FC540063594B /* TitaniumContentViewController.m in Sources */,
+				24C5ACA51061FC540063594B /* TitaniumScrollableViewController.m in Sources */,
+				24C5ACA61061FC540063594B /* TitaniumCompositeViewController.m in Sources */,
+				24C5ACA71061FC540063594B /* TitaniumAppDelegate.m in Sources */,
+				24C5ACA81061FC540063594B /* TitaniumAppProtocol.m in Sources */,
+				24C5ACA91061FC540063594B /* TitaniumUIViewController.m in Sources */,
+				24C5ACAA1061FC540063594B /* TitaniumHost.m in Sources */,
+				24C5ACAB1061FC540063594B /* TitaniumCmdThread.m in Sources */,
+				24C5ACAC1061FC540063594B /* TitaniumJSConstants.m in Sources */,
+				24C5ACAD1061FC540063594B /* TitaniumActionSheetHelper.m in Sources */,
+				24C5ACAE1061FC540063594B /* WebTableViewCell.m in Sources */,
+				24C5ACAF1061FC540063594B /* ValueTableViewCell.m in Sources */,
+				24C5ACB01061FC540063594B /* TweakedNavController.m in Sources */,
+				24C5ACB11061FC540063594B /* TweakedScrollView.m in Sources */,
+				24C5ACB21061FC540063594B /* TitaniumCellWrapper.m in Sources */,
+				24C5ACB31061FC540063594B /* PickerImageTextCell.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -1734,6 +1907,16 @@
 				B4A6D3B3103C9EFD00131CD4 /* NativeControlProxy.m in Sources */,
 				B4D4AF5610472271006E42E0 /* TweakedScrollView.m in Sources */,
 				B4D4B07810489FDC006E42E0 /* WebFont.m in Sources */,
+				B4B8E56B10586D3500D08D44 /* TitaniumCellWrapper.m in Sources */,
+				B451D42610599C1C0025A18B /* PickerImageTextCell.m in Sources */,
+				B4AA86FF105ED1DF00D29939 /* timeline-all.js in Sources */,
+				B4AA8701105ED1DF00D29939 /* timeline-replies.js in Sources */,
+				B4AA8703105ED1DF00D29939 /* link.js in Sources */,
+				B4AA8705105ED1DF00D29939 /* timeline-public.js in Sources */,
+				B4AA8707105ED1DF00D29939 /* timeline-dms.js in Sources */,
+				B40CDEEB105F21F6004CFED3 /* TitaniumScrollableViewController.m in Sources */,
+				B40CDF1A105F248F004CFED3 /* TitaniumCompositeViewController.m in Sources */,
+				B4F37DDF1061913E00ED12AF /* NotificationModule.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -1767,7 +1950,32 @@
 			};
 			name = Release;
 		};
-		24EB77711053326D00E21E02 /* Debug */ = {
+		24C5ABF21061FA9E0063594B /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				COPY_PHASE_STRIP = NO;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				PREBINDING = NO;
+				PRODUCT_NAME = Notification;
+			};
+			name = Debug;
+		};
+		24C5ABF31061FA9E0063594B /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				COPY_PHASE_STRIP = YES;
+				DEBUG_INFORMATION_FORMAT = &quot;dwarf-with-dsym&quot;;
+				GCC_ENABLE_FIX_AND_CONTINUE = NO;
+				PREBINDING = NO;
+				PRODUCT_NAME = Notification;
+				ZERO_LINK = NO;
+			};
+			name = Release;
+		};
+		24C5ABFA1061FABF0063594B /* Debug */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1779,7 +1987,7 @@
 			};
 			name = Debug;
 		};
-		24EB77721053326D00E21E02 /* Release */ = {
+		24C5ABFB1061FABF0063594B /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1792,7 +2000,7 @@
 			};
 			name = Release;
 		};
-		24EB778E1053333400E21E02 /* Debug */ = {
+		24C5AC011061FAC80063594B /* Debug */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1804,7 +2012,7 @@
 			};
 			name = Debug;
 		};
-		24EB778F1053333400E21E02 /* Release */ = {
+		24C5AC021061FAC80063594B /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1817,7 +2025,7 @@
 			};
 			name = Release;
 		};
-		24EB77971053336400E21E02 /* Debug */ = {
+		24C5AC081061FAD30063594B /* Debug */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1829,7 +2037,7 @@
 			};
 			name = Debug;
 		};
-		24EB77981053336400E21E02 /* Release */ = {
+		24C5AC091061FAD30063594B /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1842,7 +2050,7 @@
 			};
 			name = Release;
 		};
-		24EB77A01053338000E21E02 /* Debug */ = {
+		24C5AC0F1061FADD0063594B /* Debug */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1854,7 +2062,7 @@
 			};
 			name = Debug;
 		};
-		24EB77A11053338000E21E02 /* Release */ = {
+		24C5AC101061FADD0063594B /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1867,7 +2075,7 @@
 			};
 			name = Release;
 		};
-		24EB77A91053339B00E21E02 /* Debug */ = {
+		24C5AC161061FAE50063594B /* Debug */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1879,7 +2087,7 @@
 			};
 			name = Debug;
 		};
-		24EB77AA1053339B00E21E02 /* Release */ = {
+		24C5AC171061FAE50063594B /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1892,7 +2100,7 @@
 			};
 			name = Release;
 		};
-		24EB77BD105333DA00E21E02 /* Debug */ = {
+		24C5AC1D1061FAF00063594B /* Debug */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1904,7 +2112,7 @@
 			};
 			name = Debug;
 		};
-		24EB77BE105333DA00E21E02 /* Release */ = {
+		24C5AC1E1061FAF00063594B /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1917,7 +2125,7 @@
 			};
 			name = Release;
 		};
-		24EB77C6105333FE00E21E02 /* Debug */ = {
+		24C5AC241061FB000063594B /* Debug */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1929,7 +2137,7 @@
 			};
 			name = Debug;
 		};
-		24EB77C7105333FE00E21E02 /* Release */ = {
+		24C5AC251061FB000063594B /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1942,7 +2150,7 @@
 			};
 			name = Release;
 		};
-		24EB77CF1053341C00E21E02 /* Debug */ = {
+		24C5AC2B1061FB080063594B /* Debug */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1954,7 +2162,7 @@
 			};
 			name = Debug;
 		};
-		24EB77D01053341C00E21E02 /* Release */ = {
+		24C5AC2C1061FB080063594B /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1967,7 +2175,7 @@
 			};
 			name = Release;
 		};
-		24EB77D81053343F00E21E02 /* Debug */ = {
+		24C5AC321061FB1A0063594B /* Debug */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1979,7 +2187,7 @@
 			};
 			name = Debug;
 		};
-		24EB77D91053343F00E21E02 /* Release */ = {
+		24C5AC331061FB1A0063594B /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -1992,7 +2200,7 @@
 			};
 			name = Release;
 		};
-		24EB77E11053346200E21E02 /* Debug */ = {
+		24C5AC391061FB250063594B /* Debug */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -2004,7 +2212,7 @@
 			};
 			name = Debug;
 		};
-		24EB77E21053346200E21E02 /* Release */ = {
+		24C5AC3A1061FB250063594B /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -2017,7 +2225,7 @@
 			};
 			name = Release;
 		};
-		24EB77EA1053348300E21E02 /* Debug */ = {
+		24C5AC401061FB2F0063594B /* Debug */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -2029,7 +2237,7 @@
 			};
 			name = Debug;
 		};
-		24EB77EB1053348300E21E02 /* Release */ = {
+		24C5AC411061FB2F0063594B /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -2042,7 +2250,7 @@
 			};
 			name = Release;
 		};
-		24EB77F31053349900E21E02 /* Debug */ = {
+		24C5AC591061FB4C0063594B /* Debug */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -2050,11 +2258,11 @@
 				GCC_DYNAMIC_NO_PIC = NO;
 				GCC_OPTIMIZATION_LEVEL = 0;
 				PREBINDING = NO;
-				PRODUCT_NAME = Ui;
+				PRODUCT_NAME = UI;
 			};
 			name = Debug;
 		};
-		24EB77F41053349900E21E02 /* Release */ = {
+		24C5AC5A1061FB4C0063594B /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
@@ -2062,7 +2270,7 @@
 				DEBUG_INFORMATION_FORMAT = &quot;dwarf-with-dsym&quot;;
 				GCC_ENABLE_FIX_AND_CONTINUE = NO;
 				PREBINDING = NO;
-				PRODUCT_NAME = Ui;
+				PRODUCT_NAME = UI;
 				ZERO_LINK = NO;
 			};
 			name = Release;
@@ -2211,110 +2419,119 @@
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		24EB77731053328B00E21E02 /* Build configuration list for PBXNativeTarget &quot;libAnalytics&quot; */ = {
+		24C5ABF41061FABC0063594B /* Build configuration list for PBXNativeTarget &quot;libNotification&quot; */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				24C5ABF21061FA9E0063594B /* Debug */,
+				24C5ABF31061FA9E0063594B /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		24C5AC491061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libAnalytics&quot; */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
-				24EB77711053326D00E21E02 /* Debug */,
-				24EB77721053326D00E21E02 /* Release */,
+				24C5ABFA1061FABF0063594B /* Debug */,
+				24C5ABFB1061FABF0063594B /* Release */,
 			);
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		24EB780C105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libGesture&quot; */ = {
+		24C5AC4A1061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libGesture&quot; */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
-				24EB778E1053333400E21E02 /* Debug */,
-				24EB778F1053333400E21E02 /* Release */,
+				24C5AC011061FAC80063594B /* Debug */,
+				24C5AC021061FAC80063594B /* Release */,
 			);
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		24EB780D105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libApi&quot; */ = {
+		24C5AC4B1061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libApi&quot; */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
-				24EB77971053336400E21E02 /* Debug */,
-				24EB77981053336400E21E02 /* Release */,
+				24C5AC081061FAD30063594B /* Debug */,
+				24C5AC091061FAD30063594B /* Release */,
 			);
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		24EB780E105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libApp&quot; */ = {
+		24C5AC4C1061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libApp&quot; */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
-				24EB77A01053338000E21E02 /* Debug */,
-				24EB77A11053338000E21E02 /* Release */,
+				24C5AC0F1061FADD0063594B /* Debug */,
+				24C5AC101061FADD0063594B /* Release */,
 			);
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		24EB780F105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libDatabase&quot; */ = {
+		24C5AC4D1061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libDatabase&quot; */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
-				24EB77A91053339B00E21E02 /* Debug */,
-				24EB77AA1053339B00E21E02 /* Release */,
+				24C5AC161061FAE50063594B /* Debug */,
+				24C5AC171061FAE50063594B /* Release */,
 			);
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		24EB7810105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libFilesystem&quot; */ = {
+		24C5AC4E1061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libFilesystem&quot; */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
-				24EB77BD105333DA00E21E02 /* Debug */,
-				24EB77BE105333DA00E21E02 /* Release */,
+				24C5AC1D1061FAF00063594B /* Debug */,
+				24C5AC1E1061FAF00063594B /* Release */,
 			);
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		24EB7811105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libGeolocation&quot; */ = {
+		24C5AC4F1061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libGeolocation&quot; */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
-				24EB77C6105333FE00E21E02 /* Debug */,
-				24EB77C7105333FE00E21E02 /* Release */,
+				24C5AC241061FB000063594B /* Debug */,
+				24C5AC251061FB000063594B /* Release */,
 			);
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		24EB7812105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libMedia&quot; */ = {
+		24C5AC501061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libMedia&quot; */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
-				24EB77CF1053341C00E21E02 /* Debug */,
-				24EB77D01053341C00E21E02 /* Release */,
+				24C5AC2B1061FB080063594B /* Debug */,
+				24C5AC2C1061FB080063594B /* Release */,
 			);
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		24EB7813105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libAccelerometer&quot; */ = {
+		24C5AC511061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libAccelerometer&quot; */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
-				24EB77D81053343F00E21E02 /* Debug */,
-				24EB77D91053343F00E21E02 /* Release */,
+				24C5AC321061FB1A0063594B /* Debug */,
+				24C5AC331061FB1A0063594B /* Release */,
 			);
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		24EB7814105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libNetwork&quot; */ = {
+		24C5AC521061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libNetwork&quot; */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
-				24EB77E11053346200E21E02 /* Debug */,
-				24EB77E21053346200E21E02 /* Release */,
+				24C5AC391061FB250063594B /* Debug */,
+				24C5AC3A1061FB250063594B /* Release */,
 			);
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		24EB7815105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libPlatform&quot; */ = {
+		24C5AC531061FB450063594B /* Build configuration list for PBXNativeTarget &quot;libPlatform&quot; */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
-				24EB77EA1053348300E21E02 /* Debug */,
-				24EB77EB1053348300E21E02 /* Release */,
+				24C5AC401061FB2F0063594B /* Debug */,
+				24C5AC411061FB2F0063594B /* Release */,
 			);
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		24EB7816105334BF00E21E02 /* Build configuration list for PBXNativeTarget &quot;libUi&quot; */ = {
+		24C5AC6E1061FB730063594B /* Build configuration list for PBXNativeTarget &quot;libUI&quot; */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
-				24EB77F31053349900E21E02 /* Debug */,
-				24EB77F41053349900E21E02 /* Release */,
+				24C5AC591061FB4C0063594B /* Debug */,
+				24C5AC5A1061FB4C0063594B /* Release */,
 			);
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;</diff>
      <filename>iphone/Titanium.xcodeproj/project.pbxproj</filename>
    </modified>
    <modified>
      <diff>@@ -7,6 +7,7 @@
 #ifdef MODULE_TI_APP
 
 #import &quot;AppModule.h&quot;
+#import &quot;TitaniumJSCode.h&quot;
 
 @implementation AppModule
 
@@ -57,7 +58,11 @@
 - (void) setObject: (NSString *) key value: (NSObject *) newValue;
 {
 	if (![key isKindOfClass:[NSString class]]) return;
-	[defaultsObject setObject:newValue forKey:key];
+	if((newValue==nil) || (newValue==[NSNull null])){
+		[defaultsObject removeObjectForKey:key];
+	} else {
+		[defaultsObject setObject:newValue forKey:key];
+	}
 }
 
 - (NSNumber *) hasProperty: (NSString *) key;
@@ -116,6 +121,7 @@
 								 setInvoc,@&quot;setInt&quot;,
 								 setInvoc,@&quot;setString&quot;,
 								 setInvoc,@&quot;setList&quot;,
+								 [TitaniumJSCode codeWithString:@&quot;function(key){Ti.App.Properties.setString(key);}&quot;],@&quot;removeProperty&quot;,
 								 hasInvoc,@&quot;hasProperty&quot;,
 								 listInvoc,@&quot;listProperties&quot;,
 								 nil];</diff>
      <filename>iphone/modules/AppModule/AppModule.m</filename>
    </modified>
    <modified>
      <diff>@@ -10,7 +10,7 @@
 #import &quot;TitaniumModule.h&quot;
 
 @interface FilesystemModule : NSObject&lt;TitaniumModule&gt; {
-
+	NSOperationQueue * fileCopyQueue;
 }
 
 @end</diff>
      <filename>iphone/modules/FilesystemModule/FilesystemModule.h</filename>
    </modified>
    <modified>
      <diff>@@ -7,6 +7,9 @@
 #ifdef MODULE_TI_FILESYSTEM
 
 #import &quot;FilesystemModule.h&quot;
+#import &quot;TitaniumJSCode.h&quot;
+#import &quot;TitaniumHost.h&quot;
+#import &quot;Logging.h&quot;
 
 @interface FileProxy : TitaniumProxyObject
 {
@@ -30,24 +33,367 @@
 
 @end
 
+@interface FileCopy : TitaniumProxyObject
+{
+	int numberToken;
+	NSArray * startPaths;
+	NSString * destination;
+}
+-(id) init: (int) newToken From: (NSArray *) newStartPaths to:(NSString *)newDestination;
+
+@end
+
+@implementation FileCopy
+
+-(id) init: (int) newToken From: (NSArray *) newStartPaths to:(NSString *)newDestination;
+{
+	self = [super init];
+	if (self != nil) {
+		numberToken = newToken;
+		startPaths = [newStartPaths copy];
+		destination = [newDestination copy];
+	}
+	return self;
+}
+
+- (void) dealloc
+{
+	[startPaths release];
+	[destination release];
+	[super dealloc];
+}
+
+- (void) start;
+{
+	int filesCopied = 0;
+	NSError * error = nil;
+	NSFileManager * ourFileManager = [[NSFileManager alloc] init];
+	
+	
+	for(NSString * thisPath in startPaths){
+		if(![ourFileManager copyItemAtPath:thisPath toPath:destination error:&amp;error])break;
+		filesCopied ++;
+	}
+	
+	NSMutableString * resultString;
+	if(error == nil){
+		resultString = [[NSMutableString alloc] initWithFormat:@&quot;Ti.Filesystem._COPIES[%d].callback();&quot;];
+	}else{
+		for(int i=0;i&lt;filesCopied;i++){
+			[ourFileManager removeItemAtPath:[startPaths objectAtIndex:i] error:nil];
+		}
+		resultString = [[NSMutableString alloc] init];
+	}
+	[resultString appendFormat:@&quot;delete Ti.Filesystem._COPIES[%d];&quot;,numberToken];
+	
+	[[TitaniumHost sharedHost] sendJavascript:resultString toPageWithToken:[self parentPageToken]];
+	
+	[resultString release];
+	[ourFileManager release];
+}
+
+@end
+
+//Why do we use preprocessors instead of an enum? Sadly, it's because of the stringify for the
+//Javascript side prototypes doesn't let us convert from enum to the int value at preprocessing
+//time.
+#define FILEPATH_EXISTS				0
+#define FILEPATH_ISLOCKED			1
+#define FILEPATH_ISLINK				2
+#define FILEPATH_CREATIONSTAMP		3
+#define FILEPATH_MODIFYSTAMP		4
+#define FILEPATH_LISTFILES			5
+#define FILEPATH_COPY				6
+#define	FILEPATH_MAKEDIRECTORY		7
+#define FILEPATH_DELETEDIRECTORY	8
+#define FILEPATH_DELETEFILE			9
+#define FILEPATH_MAKEFILE			10
+#define FILEPATH_MOVE				11
+#define FILEPATH_READ				12
+#define FILEPATH_WRITE				13
+#define FILEPATH_EXTENSION			14
+#define FILEPATH_PARENTDIR			15
+#define FILEPATH_NAME				16
+#define FILEPATH_RESOLVEPATH		17
+
 @implementation FilesystemModule
 
+- (id) filePath: (NSString *) path performFunction: (NSNumber *) functNum arguments:(id)args;
+{
+	Class stringClass = [NSString class];
+	if(![path isKindOfClass:stringClass] || ![functNum respondsToSelector:@selector(intValue)])return nil;
+	switch ([functNum intValue]) {
+		case FILEPATH_EXISTS:{
+			path = [path stringByStandardizingPath];
+			BOOL result = [[NSFileManager defaultManager] fileExistsAtPath:path];
+			return [NSNumber numberWithBool:result];
+		}
+		case FILEPATH_ISLOCKED:{
+			path = [path stringByStandardizingPath];
+			NSDictionary * resultDict = [[NSFileManager defaultManager] fileAttributesAtPath:path traverseLink:NO];
+			return [resultDict objectForKey:NSFileImmutable];
+		}
+		case FILEPATH_ISLINK:{
+			path = [path stringByStandardizingPath];
+			NSDictionary * resultDict = [[NSFileManager defaultManager] fileAttributesAtPath:path traverseLink:NO];
+			BOOL result = [[resultDict objectForKey:NSFileType] isEqualToString:NSFileTypeSymbolicLink];
+			return [NSNumber numberWithBool:result];
+		}
+		case FILEPATH_CREATIONSTAMP:{
+			path = [path stringByStandardizingPath];
+			NSDictionary * resultDict = [[NSFileManager defaultManager] fileAttributesAtPath:path traverseLink:NO];
+			return [resultDict objectForKey:NSFileCreationDate];
+		}
+		case FILEPATH_MODIFYSTAMP:{
+			path = [path stringByStandardizingPath];
+			NSDictionary * resultDict = [[NSFileManager defaultManager] fileAttributesAtPath:path traverseLink:NO];
+			return [resultDict objectForKey:NSFileModificationDate];
+		}
+		case FILEPATH_LISTFILES:{
+			NSError * error=nil;
+			path = [path stringByStandardizingPath];
+			NSArray * resultArray = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:path error:&amp;error];
+			if(error!=nil)return error;
+			return resultArray;			
+		}
+		case FILEPATH_COPY:{
+			if(![args isKindOfClass:[NSString class]])return [NSNumber numberWithBool:NO];
+			NSError * error=nil;
+			NSString * dest=[args stringByStandardizingPath];
+			path = [path stringByStandardizingPath];
+			BOOL result = [[NSFileManager defaultManager] copyItemAtPath:path toPath:dest error:&amp;error];
+			VERBOSE_LOG_IF_TRUE((error!=nil),@&quot;Tried to copy file '%@' to '%@', error was %@&quot;,path,dest,error);
+			return [NSNumber numberWithBool:result];			
+		}
+		case FILEPATH_MAKEDIRECTORY:{
+			NSFileManager * theFM = [NSFileManager defaultManager];
+			BOOL result;
+			path = [path stringByStandardizingPath];
+			if(![theFM fileExistsAtPath:path]){
+				BOOL recurse;
+				if([args respondsToSelector:@selector(boolValue)]){
+					recurse = [args boolValue];
+				} else {
+					recurse = NO;
+				}
+				NSError * error = nil;
+				result = [theFM createDirectoryAtPath:path withIntermediateDirectories:recurse attributes:nil error:&amp;error];
+				VERBOSE_LOG_IF_TRUE((error!=nil),@&quot;Tried to make a directory at '%@' with recursion '%@', error was %@&quot;,path,args,error);
+			} else {
+				result = NO;
+			}
+			return [NSNumber numberWithBool:result];
+		}
+		case FILEPATH_DELETEDIRECTORY:{
+			NSFileManager * theFM = [NSFileManager defaultManager];
+			BOOL result = NO;
+			BOOL isDirectory = NO;
+			path = [path stringByStandardizingPath];
+			BOOL exists = [theFM fileExistsAtPath:path isDirectory:&amp;isDirectory];
+			if(exists &amp;&amp; isDirectory){
+				NSError * error = nil;
+				BOOL shouldDelete = NO;
+				if([args respondsToSelector:@selector(boolValue)] &amp;&amp; [args boolValue]){
+					shouldDelete = YES;
+				} else {
+					NSArray * remainers = [theFM contentsOfDirectoryAtPath:path error:&amp;error];
+					if(error==nil){
+						if([remainers count]==0){
+							shouldDelete = YES;
+						} else {
+							VERBOSE_LOG(@&quot;Denying deleting directory at '%@' because these files remain: %@&quot;,path,remainers);
+						}
+					}
+				}
+				
+				if(shouldDelete){
+					result = [theFM removeItemAtPath:path error:&amp;error];
+				}
+				VERBOSE_LOG_IF_TRUE((error!=nil),@&quot;Tried to delete directory at '%@' with recursion %@, error was %@&quot;,path,args,error);
+			}
+			return [NSNumber numberWithBool:result];
+		}
+		case FILEPATH_DELETEFILE:{
+			NSFileManager * theFM = [NSFileManager defaultManager];
+			BOOL result;
+			BOOL isDirectory = YES;
+			path = [path stringByStandardizingPath];
+			BOOL exists = [theFM fileExistsAtPath:path isDirectory:&amp;isDirectory];
+			if(exists &amp;&amp; !isDirectory){
+				NSError * error = nil;
+				result = [theFM removeItemAtPath:path error:&amp;error];
+				VERBOSE_LOG_IF_TRUE((error!=nil),@&quot;Tried to delete file at '%@', error was %@&quot;,path,args,error);
+			} else {
+				result = NO;
+			}
+			return [NSNumber numberWithBool:result];
+		}
+		case FILEPATH_MAKEFILE:{
+			NSFileManager * theFM = [NSFileManager defaultManager];
+			BOOL result;
+			path = [path stringByStandardizingPath];
+			if(![theFM fileExistsAtPath:path]){
+				if([args respondsToSelector:@selector(boolValue)] &amp;&amp; [args boolValue]){
+					[theFM createDirectoryAtPath:[path stringByDeletingLastPathComponent] withIntermediateDirectories:YES attributes:nil error:nil];
+					//We don't care if this fails.
+				}
+				NSError * error = nil;
+				result = [[NSData data] writeToFile:path options:0 error:&amp;error];
+				VERBOSE_LOG_IF_TRUE((error!=nil),@&quot;Tried to make a file at '%@' with recursion '%@', error was %@&quot;,path,args,error);
+			} else {
+				result = NO;
+			}			
+			return [NSNumber numberWithBool:result];
+		}
+		case FILEPATH_MOVE:{
+			if(![args isKindOfClass:[NSString class]])return [NSNumber numberWithBool:NO];
+			NSError * error=nil;
+			path = [path stringByStandardizingPath];
+			NSString * dest=[args stringByStandardizingPath];
+			BOOL result = [[NSFileManager defaultManager] moveItemAtPath:path toPath:dest error:&amp;error];
+			VERBOSE_LOG_IF_TRUE((error!=nil),@&quot;Tried to move file '%@' to '%@', error was %@&quot;,path,dest,error);
+			return [NSNumber numberWithBool:result];			
+		}
+		case FILEPATH_READ:{
+			path = [path stringByStandardizingPath];
+			NSError * error = nil;
+			NSStringEncoding enc = 0;
+			NSString * result = [NSString stringWithContentsOfFile:path usedEncoding:&amp;enc error:&amp;error];
+			VERBOSE_LOG_IF_TRUE((error!=nil),@&quot;Tried read file '%@', error was %@&quot;,path,error);
+			return result;
+		}
+		case FILEPATH_WRITE:{
+			BOOL result = NO;
+			NSError * error = nil;
+			if([args isKindOfClass:stringClass]){
+				NSStringEncoding enc = [(NSString *)args fastestEncoding];
+				path = [path stringByStandardizingPath];
+				result = [(NSString *)args writeToFile:path atomically:NO encoding:enc error:&amp;error];
+			}
+			VERBOSE_LOG_IF_TRUE((error!=nil),@&quot;Tried read write to file '%@', error was %@, data to write was %@&quot;,path,error,args);
+			return [NSNumber numberWithBool:result];
+		}
+		case FILEPATH_EXTENSION:{
+			return [path pathExtension];
+		}
+		case FILEPATH_PARENTDIR:{
+			return [path stringByDeletingLastPathComponent];
+		}
+		case FILEPATH_NAME:{
+			return [path lastPathComponent];
+		}
+		case FILEPATH_RESOLVEPATH:{
+			return [path stringByStandardizingPath];
+		}
+	}
+	
+	return nil;
+}
+
+
+
+- (void) doAsyncFileCopy: (NSNumber *) copyToken from:(id)sourceObj to:(id)destObj;
+{
+	if(fileCopyQueue == nil){
+		fileCopyQueue = [[NSOperationQueue alloc] init];
+	}
+	FileCopy * ourFileCopy = [[FileCopy alloc] init:[copyToken intValue] From:sourceObj to:destObj];
+	
+	NSInvocationOperation * ourOp = [[NSInvocationOperation alloc] initWithTarget:ourFileCopy selector:@selector(begin) object:nil];
+	[fileCopyQueue addOperation:ourOp];
+	[ourOp release];
+	[ourFileCopy release];
+}
+
+
 #pragma mark startModule
+#define STRINGIFY(foo)	# foo
+#define STRINGVAL(foo)	STRINGIFY(foo)
+
 
 - (BOOL) startModule;
 {
-//	TitaniumInvocationGenerator * invocGen = [TitaniumInvocationGenerator generatorWithTarget:self];
+	TitaniumInvocationGenerator * invocGen = [TitaniumInvocationGenerator generatorWithTarget:self];
+	
+//	[(FilesystemModule *)invocGen doAsyncFileCopy:nil from:nil to:nil];
+//	NSInvocation * asyncCopyInvoc = [invocGen invocation];
+
+	[(FilesystemModule *)invocGen filePath:nil performFunction:nil arguments:nil];
+	NSInvocation * fileActionInvoc = [invocGen invocation];
+	
+//	TitaniumJSCode * asyncCopyObjectCode = [TitaniumJSCode codeWithString:@&quot;function(call){this.running=true;this.callback=call;}&quot;];
+////	[asyncCopyObjectCode setEpilogueCode:@&quot;Ti.Filesystem.AsyncCopyObj.prototype={};&quot;];
+//	TitaniumJSCode * asyncCopyCode = [TitaniumJSCode codeWithString:@&quot;function(src,dst,call){var res=new Ti.Filesystem._ASYNCOBJ(call);&quot;
+//			&quot;var tkn=Ti.Filesystem._FILESYSTKN++;Ti.Filesystem._COPIES[tkn]=res;Ti.Filesystem._ASYNCCOPYACT(tkn,src,dst);&quot;
+//			&quot;return res;}&quot;];
+	
+	TitaniumJSCode * fileWrapperObjectCode = [TitaniumJSCode codeWithString:@&quot;function(newPath){this.path=newPath;}&quot;];
+	[fileWrapperObjectCode setEpilogueCode:@&quot;Ti.Filesystem._FILEOBJ.prototype={&quot;
+			&quot;path:null,nativePath:function(){return this.path},&quot;
+//Boolean functions
+			&quot;exists:function(){return Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_EXISTS) &quot;);},&quot;
+			&quot;isReadonly:function(){return Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_ISLOCKED) &quot;);},&quot;
+			&quot;isSymbolicLink:function(){return Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_ISLINK) &quot;);},&quot;
+			&quot;isWritable:function(){return !this.isReadonly();},&quot;
+//Legacy no-ops
+			&quot;isExecutable:function(){return false;},&quot;
+			&quot;isHidden:function(){return false;},&quot;
+			&quot;setReadonly:function(){return false;},&quot;
+			&quot;setExecutable:function(){return false;},&quot;
+			&quot;setHidden:function(){return false;},&quot;
+//Value functions
+			&quot;createTimeStamp:function(){return Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_CREATIONSTAMP) &quot;);},&quot;
+			&quot;modificationTimeStamp:function(){return Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_MODIFYSTAMP) &quot;);},&quot;
+			&quot;getDirectoryListing:function(){return Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_LISTFILES) &quot;);},&quot;
+//Functions that change data
+			&quot;copy:function(dest){return Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_COPY) &quot;,dest.toString());},&quot;
+			&quot;createDirectory:function(recur){return Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_MAKEDIRECTORY) &quot;,recur);},&quot;
+			&quot;deleteDirectory:function(recur){return Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_DELETEDIRECTORY) &quot;,recur);},&quot;
+			&quot;deleteFile:function(recur){return Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_DELETEFILE) &quot;,recur);},&quot;
+			&quot;createFile:function(recur){return Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_MAKEFILE) &quot;,recur);},&quot;
+			&quot;move:function(dest){var res=Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_MOVE) &quot;,dest.toString());this.path=res;},&quot;
+			&quot;rename:function(dest){var res=Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_MOVE) &quot;,dest.toString());this.path=res;},&quot;
+//IO Functions that mean we can't share file objects?
+			&quot;read:function(){return Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_READ) &quot;);},&quot;
+			&quot;write:function(newval){return Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_WRITE) &quot;,newval);},&quot;
+
+//Functions that should be done in javascript, but I'm feeling lazy?
+			&quot;extension:function(){return Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_EXTENSION) &quot;);},&quot;
+			&quot;getParent:function(){return Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_PARENTDIR) &quot;);},&quot;
+			&quot;name:function(){return Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_NAME) &quot;);},&quot;
+			&quot;resolve:function(){return Ti.Filesystem._FILEACT(this.path,&quot; STRINGVAL(FILEPATH_RESOLVEPATH) &quot;);},&quot;
+
+//Maintenance cool whizzy things
+			&quot;toString:function(){return this.path;},&quot;
+			&quot;};&quot;];
+	
+	TitaniumJSCode * getFileCode = [TitaniumJSCode codeWithString:@&quot;function(newPath){var len=arguments.length;if(len==0)return null;var path=newPath;&quot;
+			&quot;for(var i=1;i&lt;len;i++){path+='/'+arguments[i];}var res=Ti.Filesystem._FILES[path];&quot;
+			&quot;if(!res){res=new Ti.Filesystem._FILEOBJ(path);Ti.Filesystem._FILES[path]=res;}return res;}&quot;];
 	
-//	[(TemplateModule *)invocGen foo];
-//	NSInvocation * fooInvoc = [invocGen invocation];
+	TitaniumJSCode * falseFunct = [TitaniumJSCode codeWithString:@&quot;function(){return false;}&quot;];
 	
-//	NSDictionary * moduleDict = [NSDictionary dictionaryWithObjectsAndKeys:
-//			@&quot;&quot;,@&quot;&quot;,
-////			closeWinInvoc,@&quot;_CLS&quot;,
-////			[TitaniumJSCode codeWithString:systemButtonString],@&quot;SystemButton&quot;,
-//			nil];
+	NSDictionary * moduleDict = [NSDictionary dictionaryWithObjectsAndKeys:
+			[NSNumber numberWithInt:0],@&quot;_FILESYSTKN&quot;,
 
-	NSDictionary * moduleDict = [[[NSDictionary alloc] init] autorelease];
+//			asyncCopyObjectCode,@&quot;_ASYNCOBJ&quot;,
+			fileWrapperObjectCode,@&quot;_FILEOBJ&quot;,
+			fileActionInvoc,@&quot;_FILEACT&quot;,
+			
+//			[TitaniumJSCode codeWithString:@&quot;{}&quot;],@&quot;_COPIES&quot;,
+			[TitaniumJSCode codeWithString:@&quot;{}&quot;],@&quot;_FILES&quot;,
+//			asyncCopyInvoc,@&quot;_ASYNCCOPYACT&quot;,
+//			asyncCopyCode,@&quot;asyncCopy&quot;,
+			
+			getFileCode,@&quot;getFile&quot;,
+			
+			[TitaniumJSCode functionReturning:[[NSBundle mainBundle] resourcePath]],@&quot;getResourcesDirectory&quot;,
+			falseFunct,@&quot;isExteralStoragePresent&quot;,
+			
+			[NSNumber numberWithInt:(int)'A'],@&quot;MODE_APPEND&quot;,
+			[NSNumber numberWithInt:(int)'R'],@&quot;MODE_READ&quot;,
+			[NSNumber numberWithInt:(int)'W'],@&quot;MODE_WRITE&quot;,
+			nil];
 	[[[TitaniumHost sharedHost] titaniumObject] setObject:moduleDict forKey:@&quot;Filesystem&quot;];
 	
 	return YES;</diff>
      <filename>iphone/modules/FilesystemModule/FilesystemModule.m</filename>
    </modified>
    <modified>
      <diff>@@ -39,7 +39,7 @@ enum { //MUST BE NEGATIVE, as it inhabits the same space as UIBarButtonSystemIte
 
 BOOL TitaniumPrepareAnimationsForView(NSDictionary * optionObject, UIView * view);
 
-@interface NativeControlProxy : TitaniumProxyObject&lt;UITextViewDelegate,UITextFieldDelegate,UIPickerViewDelegate,UIPickerViewDataSource&gt;
+@interface NativeControlProxy : TitaniumProxyObject&lt;UITextViewDelegate,UITextFieldDelegate,UIPickerViewDelegate,UIPickerViewDataSource,UIWebViewDelegate&gt;
 {
 	//Properties that are stored until the time is right
 	BOOL needsRefreshing;
@@ -117,7 +117,8 @@ BOOL TitaniumPrepareAnimationsForView(NSDictionary * optionObject, UIView * view
 	
 	//Pickers, general purpose
 	BOOL	showSelectionIndicator;
-	NSArray * pickerColumnsArray;
+	NSMutableArray * pickerColumnsArray;
+	NSURL * baseURL;
 }
 
 @property(nonatomic,readwrite,copy)		NSString * titleString;</diff>
      <filename>iphone/modules/UiModule/NativeControlProxy.h</filename>
    </modified>
    <modified>
      <diff>@@ -7,6 +7,8 @@
 
 
 #import &quot;NativeControlProxy.h&quot;
+#import &quot;TitaniumCellWrapper.h&quot;
+#import &quot;PickerImageTextCell.h&quot;
 
 BOOL TitaniumPrepareAnimationsForView(NSDictionary * optionObject, UIView * view)
 {
@@ -35,59 +37,90 @@ NSDictionary * barButtonSystemItemForStringDict = nil;
 int barButtonSystemItemForString(NSString * inputString){
 	if (barButtonSystemItemForStringDict == nil) {
 		barButtonSystemItemForStringDict = [[NSDictionary alloc] initWithObjectsAndKeys:
-											[NSNumber numberWithInt:UIBarButtonSystemItemAction],@&quot;action&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemBookmarks],@&quot;bookmarks&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemCamera],@&quot;camera&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemCompose],@&quot;compose&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemDone],@&quot;done&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemCancel],@&quot;cancel&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemEdit],@&quot;edit&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemSave],@&quot;save&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemAdd],@&quot;add&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemFlexibleSpace],@&quot;flexiblespace&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemFixedSpace],@&quot;fixedspace&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemReply],@&quot;reply&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemOrganize],@&quot;organize&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemSearch],@&quot;search&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemRefresh],@&quot;refresh&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemStop],@&quot;stop&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemTrash],@&quot;trash&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemPlay],@&quot;play&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemPause],@&quot;pause&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemRewind],@&quot;rewind&quot;,
-											[NSNumber numberWithInt:UIBarButtonSystemItemFastForward],@&quot;fastforward&quot;,
-											[NSNumber numberWithInt:UITitaniumNativeItemSpinner],@&quot;activity&quot;,
-											[NSNumber numberWithInt:UITitaniumNativeItemSlider],@&quot;slider&quot;,
-											[NSNumber numberWithInt:UITitaniumNativeItemSwitch],@&quot;switch&quot;,
-											[NSNumber numberWithInt:UITitaniumNativeItemPicker],@&quot;picker&quot;,
-											[NSNumber numberWithInt:UITitaniumNativeItemDatePicker],@&quot;datepicker&quot;,
-											[NSNumber numberWithInt:UITitaniumNativeItemTextField],@&quot;text&quot;,
-											[NSNumber numberWithInt:UITitaniumNativeItemTextView],@&quot;textarea&quot;,
-											[NSNumber numberWithInt:UITitaniumNativeItemSearchBar],@&quot;search&quot;,
-											[NSNumber numberWithInt:UITitaniumNativeItemMultiButton],@&quot;multibutton&quot;,
-											[NSNumber numberWithInt:UITitaniumNativeItemSegmented],@&quot;segmented&quot;,
-											[NSNumber numberWithInt:UITitaniumNativeItemInfoLight],@&quot;infolight&quot;,
-											[NSNumber numberWithInt:UITitaniumNativeItemInfoDark],@&quot;infodark&quot;,
-											[NSNumber numberWithInt:UITitaniumNativeItemProgressBar],@&quot;progressbar&quot;,
-											nil];
+				[NSNumber numberWithInt:UIBarButtonSystemItemAction],@&quot;action&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemBookmarks],@&quot;bookmarks&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemCamera],@&quot;camera&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemCompose],@&quot;compose&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemDone],@&quot;done&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemCancel],@&quot;cancel&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemEdit],@&quot;edit&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemSave],@&quot;save&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemAdd],@&quot;add&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemFlexibleSpace],@&quot;flexiblespace&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemFixedSpace],@&quot;fixedspace&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemReply],@&quot;reply&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemOrganize],@&quot;organize&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemSearch],@&quot;search&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemRefresh],@&quot;refresh&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemStop],@&quot;stop&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemTrash],@&quot;trash&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemPlay],@&quot;play&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemPause],@&quot;pause&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemRewind],@&quot;rewind&quot;,
+				[NSNumber numberWithInt:UIBarButtonSystemItemFastForward],@&quot;fastforward&quot;,
+				[NSNumber numberWithInt:UITitaniumNativeItemSpinner],@&quot;activity&quot;,
+				[NSNumber numberWithInt:UITitaniumNativeItemSlider],@&quot;slider&quot;,
+				[NSNumber numberWithInt:UITitaniumNativeItemSwitch],@&quot;switch&quot;,
+				[NSNumber numberWithInt:UITitaniumNativeItemPicker],@&quot;picker&quot;,
+				[NSNumber numberWithInt:UITitaniumNativeItemDatePicker],@&quot;datepicker&quot;,
+				[NSNumber numberWithInt:UITitaniumNativeItemTextField],@&quot;text&quot;,
+				[NSNumber numberWithInt:UITitaniumNativeItemTextView],@&quot;textarea&quot;,
+				[NSNumber numberWithInt:UITitaniumNativeItemSearchBar],@&quot;search&quot;,
+				[NSNumber numberWithInt:UITitaniumNativeItemMultiButton],@&quot;multibutton&quot;,
+				[NSNumber numberWithInt:UITitaniumNativeItemSegmented],@&quot;segmented&quot;,
+				[NSNumber numberWithInt:UITitaniumNativeItemInfoLight],@&quot;infolight&quot;,
+				[NSNumber numberWithInt:UITitaniumNativeItemInfoDark],@&quot;infodark&quot;,
+				[NSNumber numberWithInt:UITitaniumNativeItemProgressBar],@&quot;progressbar&quot;,
+				nil];
 	}
 	NSNumber * result = [barButtonSystemItemForStringDict objectForKey:[inputString lowercaseString]];
 	if (result != nil) return [result intValue];
 	return UITitaniumNativeItemNone;
 }
 
-@interface NativePickerColumn : NSObject
+@interface PickerColumnWrapper : NSObject
 {
 	CGFloat	width;
 	CGFloat	rowHeight;
-	NSArray * data;
+	NSMutableArray * data;
 }
 
+@property(nonatomic,readwrite,assign)	CGFloat	width;
+@property(nonatomic,readwrite,assign)	CGFloat	rowHeight;
+@property(nonatomic,readwrite,retain)	NSMutableArray * data;
 
 @end
 
-@implementation NativePickerColumn
+@implementation PickerColumnWrapper
+@synthesize width,rowHeight,data;
 
+- (void) readState: (NSDictionary *) inputState relativeToUrl: (NSURL *) baseUrl;
+{
+	SEL floatVal=@selector(floatValue);
+	id widthObject = [inputState objectForKey:@&quot;width&quot;];
+	if([widthObject respondsToSelector:floatVal])width=[widthObject floatValue];
+	
+	id heightObject = [inputState objectForKey:@&quot;height&quot;];
+	if([heightObject respondsToSelector:floatVal])rowHeight=[heightObject floatValue];
+	if(rowHeight &lt; 1.0)rowHeight=40;
+	
+	NSArray * dataObject = [inputState objectForKey:@&quot;data&quot;];
+	if ([dataObject isKindOfClass:[NSArray class]]){
+		if(data==nil){
+			data = [[NSMutableArray alloc] initWithCapacity:[dataObject count]];
+		} else {
+			[data removeAllObjects];
+		}
+		Class dictClass = [NSDictionary class];
+		
+		for(NSDictionary * thisCellObject in dataObject){
+			if(![thisCellObject isKindOfClass:dictClass])continue;
+			TitaniumCellWrapper * thisCell = [[TitaniumCellWrapper alloc] init];
+			[thisCell useProperties:thisCellObject withUrl:baseUrl];
+			[data addObject:thisCell];
+		}
+	}
+}
 
 @end
 
@@ -277,6 +310,46 @@ needsRefreshing = YES;	\
 	GRAB_IF_SELECTOR(@&quot;minuteInterval&quot;,intValue,minuteInterval);
 
 	GRAB_IF_SELECTOR(@&quot;selectionIndicator&quot;,boolValue,showSelectionIndicator);
+	
+	id dataObject = [newDict objectForKey:@&quot;data&quot;];
+	if ([dataObject isKindOfClass:[NSArray class]]){
+		if(pickerColumnsArray == nil){
+			pickerColumnsArray = [[NSMutableArray alloc] initWithCapacity:[dataObject count]];
+		} else {
+			[pickerColumnsArray removeAllObjects];
+		}
+		Class dictClass = [NSDictionary class];
+		TitaniumHost * theHost = [TitaniumHost sharedHost];
+		[baseURL release];
+		baseURL = [[(TitaniumWebViewController *)[theHost currentTitaniumContentViewController] currentContentURL] retain];
+		
+		int missingWidthColumns = 0;
+		float remainingSpace = 290.0;
+		
+		for(NSDictionary * thisColumnObject in dataObject){
+			if(![thisColumnObject isKindOfClass:dictClass])continue;
+			PickerColumnWrapper * thisColumn = [[PickerColumnWrapper alloc] init];
+			[thisColumn readState:thisColumnObject relativeToUrl:baseURL];
+			float thisColumnWidth = [thisColumn width];
+			if(thisColumnWidth&lt;1.0){
+				missingWidthColumns++;
+			} else {
+				remainingSpace -= thisColumnWidth;
+			}
+			[pickerColumnsArray addObject:thisColumn];
+		}
+		if(missingWidthColumns &gt; 0){
+			remainingSpace = remainingSpace/missingWidthColumns;
+			for(PickerColumnWrapper * thisColumn in pickerColumnsArray){
+				if([thisColumn width]&gt;=1.0)continue;
+				[thisColumn setWidth:remainingSpace];
+				missingWidthColumns--;
+				if(missingWidthColumns &lt; 1)break;
+			}
+		}
+		needsRefreshing = YES;
+	}
+
 
 //	NSArray * selections = [
 
@@ -542,6 +615,7 @@ needsRefreshing = YES;	\
 		case UITitaniumNativeItemPicker:{
 			if ([nativeView isKindOfClass:[UIPickerView class]]){
 				resultView = [nativeView retain];
+				[(UIPickerView *)resultView reloadAllComponents];
 			} else {
 				resultView = [[UIPickerView alloc] initWithFrame:CGRectZero];
 				[(UIPickerView *)resultView setDelegate:self];
@@ -810,27 +884,86 @@ needsRefreshing = YES;	\
 #pragma mark Picker data source callbacks
 - (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView;
 {
-	return 0;
+	return [pickerColumnsArray count];
 }
 
 - (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component;
 {
-	return 0;
+	PickerColumnWrapper * ourColumn = [pickerColumnsArray objectAtIndex:component];
+	return [[ourColumn data] count];
 }
 
 - (CGFloat)pickerView:(UIPickerView *)pickerView widthForComponent:(NSInteger)component;
 {
-	return 0;
+	PickerColumnWrapper * ourColumn = [pickerColumnsArray objectAtIndex:component];
+	return [ourColumn width];
 }
 
 - (CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component;
 {
-	return 0;
+	PickerColumnWrapper * ourColumn = [pickerColumnsArray objectAtIndex:component];
+	return [ourColumn rowHeight];
 }
 
 - (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view;
 {
-	return nil;
+	PickerColumnWrapper * ourColumn = [pickerColumnsArray objectAtIndex:component];
+	TitaniumCellWrapper * ourRow = [[ourColumn data] objectAtIndex:row];
+	CGRect ourFrame = CGRectMake(0, 0, [ourColumn width],[ourColumn rowHeight]);
+
+	NSString * html = [ourRow html];
+	
+	if([html isKindOfClass:[NSString class]] &amp;&amp; ([html length]&gt;0)){
+		if([view isKindOfClass:[UIWebView class]]){
+			[(UIWebView *)view stopLoading];
+			[view setFrame:ourFrame];
+		}else{
+			view = [[[UIWebView alloc] initWithFrame:ourFrame] autorelease];
+			[(UIWebView *)view setDelegate:self];
+			[view setBackgroundColor:[UIColor clearColor]];
+			[view setOpaque:NO];
+		}
+		[view setAlpha:0.0];
+		[(UIWebView *)view loadHTMLString:html baseURL:baseURL];
+		return view;
+	}
+	
+	if([view isKindOfClass:[PickerImageTextCell class]]){
+		[view setFrame:ourFrame];
+	} else {
+		view = [[[PickerImageTextCell alloc] initWithFrame:ourFrame] autorelease];
+	}
+	NSString * thisTitle = [ourRow title];
+	if([thisTitle length] &gt; 0){
+		UILabel * ourLabel = [(PickerImageTextCell *)view textLabel];
+		[ourLabel setText:thisTitle];
+		[ourLabel setFont:[ourRow font]];
+	} else {
+		[(PickerImageTextCell *)view setTextLabel:nil];
+	}
+	
+	UIImage * thisImage = [ourRow image];
+	if(thisImage != nil){
+		UIImageView * ourImageView = [(PickerImageTextCell *)view imageView];
+		[ourImageView setImage:thisImage];
+		CGRect imageFrame;
+		imageFrame.size=[thisImage size];
+		imageFrame.origin=CGPointZero;
+		[ourImageView setFrame:imageFrame];
+	} else {
+		[(PickerImageTextCell *)view setImageView:nil];
+	}
+	
+	NSLog(@&quot;Returning ImageText&quot;);
+	return view;
+}
+
+- (void)webViewDidFinishLoad:(UIWebView *)webView;
+{
+	[UIView beginAnimations:@&quot;webView&quot; context:nil];
+	[UIView setAnimationDuration:0.1];
+	[webView setAlpha:1.0];
+	[UIView commitAnimations];
 }
 
 #pragma mark Events sent to Javascript</diff>
      <filename>iphone/modules/UiModule/NativeControlProxy.m</filename>
    </modified>
    <modified>
      <diff>@@ -11,10 +11,8 @@
 
 @interface UiModule : NSObject&lt;TitaniumModule&gt; {
 	NSUInteger nextButtonToken;
-	NSUInteger nextWindowToken;
 
 	NSMutableDictionary * buttonContexts;
-	NSMutableDictionary * virtualWindowsDict;
 }
 
 - (void) setWindow:(NSString *)tokenString URL:(NSString *)newURLString baseURL:(NSString *)baseURLString;</diff>
      <filename>iphone/modules/UiModule/UiModule.h</filename>
    </modified>
    <modified>
      <diff>@@ -367,15 +367,6 @@ NSString * UrlEncodeString(NSString * string)
 
 @implementation UiModule
 #pragma mark Utility methods
-//- (TitaniumViewController *) titaniumViewControllerForToken: (NSString *) tokenString;
-//{
-//	if (![tokenString isKindOfClass:[NSString class]]) return nil;
-//	TitaniumViewController * ourVC = [virtualWindowsDict objectForKey:tokenString];
-//	if(ourVC == nil) {
-//		ourVC = [[TitaniumHost sharedHost] titaniumViewControllerForToken:tokenString];
-//	}
-//	return ourVC;
-//}
 
 #pragma mark button
 
@@ -447,7 +438,9 @@ NSString * UrlEncodeString(NSString * string)
 
 - (void) modalPicker: (id)proxyObject visible:(NSNumber *) isVisibleObject options: (NSDictionary *) optionsObject;
 {
-	
+	if(![isVisibleObject respondsToSelector:@selector(boolValue)])return;
+	NativeControlProxy * target = [self proxyForObject:proxyObject scan:YES recurse:YES];
+	//TODO: Modal picker stuff
 }
 
 #pragma mark Window actions
@@ -1205,6 +1198,18 @@ NSString * UrlEncodeString(NSString * string)
 			&quot;res.setURL=function(newUrl){this.url=newUrl;if(this._TOKEN){Ti.UI._WURL(this._TOKEN,newUrl,document.location);};};&quot;
 			&quot;res.open=function(){Ti.API.fatal('Open is no longer supported in webViews, as they are no longer their own windows.');};&quot;
 			&quot;return res;}&quot;;
+
+	NSString * createScrollingViewString = @&quot;function(args){var res=Ti.UI.createWindow(args);res._TYPE='scroll';if(!res.views)res.views=[];&quot;
+			&quot;res.addView=function(view){if(!view)return;this.views.push(newView);if(this._TOKEN){view.ensureToken();Ti.UI._SVAVIEW(this._TOKEN,view);}};&quot;
+			&quot;res.scrollToView=function(view){if(typeof(view)=='number'){this.selectedViewIndex=view;}else{if(!view)return;        }};&quot;//TODO: implement
+			&quot;res.addEventListener=Ti._ADDEVT;res.removeEventListener=Ti._REMEVT;res._EVT={scroll:[]};doEvent:Ti._ONEVT;&quot;
+			&quot;return res;}&quot;;
+
+	NSString * createCompositeViewString = @&quot;function(args){var res=Ti.UI.createWindow(args);res._TYPE='multi';if(!res.rules)res.rules=[];&quot;
+			&quot;res.addView=function(view,traits){if(!view)return;var rule={};for(prop in traits){rule.prop=traits.prop;};rule.view=view;this.rules.push(rule);if(this._TOKEN){view.ensureToken();Ti.UI._SVAVIEW(this._TOKEN,view);}};&quot;
+//			&quot;res.scrollToView=function(view){if(typeof(view)=='number'){this.selectedViewIndex=view;}else{if(!view)return;        }};&quot;//TODO: implement
+//			&quot;res.addEventListener=Ti._ADDEVT;res.removeEventListener=Ti._REMEVT;res._EVT={scroll:[]};doEvent:Ti._ONEVT;&quot;
+			&quot;return res;}&quot;;
 	
 	NSString * createTableWindowString = [NSString stringWithFormat:@&quot;function(args,callback){var res=Ti.UI.createWindow(args);res._TYPE='table';res._WINTKN=Ti._TOKEN;res.onClick=callback;&quot;
 			&quot;if(!res.data)res.data=[];&quot;</diff>
      <filename>iphone/modules/UiModule/UiModule.m</filename>
    </modified>
    <modified>
      <diff>@@ -14,62 +14,67 @@ osx_dir = os.path.abspath(os.path.join(template_dir,'osx'))
 
 
 def ignore(file):
-	for f in ['.DS_Store','.git','.gitignore','libTitanium.a','titanium.jar']:
-		if	file == f:
-			return True
-	return False 
-		
+    for f in ['.DS_Store','.git','.gitignore','libTitanium.a','titanium.jar']:
+        if  file == f:
+            return True
+    return False 
+        
 def zip_it(dist_dir,osname,version):
-	if not os.path.exists(dist_dir):
-		os.makedirs(dist_dir)
-	basepath = 'mobilesdk/%s/%s' % (osname,version)
-	sdkzip = os.path.join(dist_dir,'mobilesdk-%s-%s.zip' % (version,osname))	
-	zf = zipfile.ZipFile(sdkzip, 'w', zipfile.ZIP_DEFLATED)
-	osdir = os.path.join(template_dir,osname)
-	tiui = os.path.join(cur_dir,'tiui')
-	for thedir in [all_dir,iphone_dir,android_dir,osdir,tiui]:
-		for walk in os.walk(thedir):
-			for file in walk[2]:
-				file = os.path.join(walk[0], file)
-				arcname = file.replace(thedir + os.sep, &quot;&quot;)
-				if ignore(arcname): continue
-				e = os.path.splitext(file)
-				if len(e)==2 and e[1]=='.pyc': continue
-				if thedir != osdir and thedir != all_dir:
-					arcname = os.path.basename(thedir) + '/' + arcname
-				zf.write(file, basepath + '/' + arcname)
+    if not os.path.exists(dist_dir):
+        os.makedirs(dist_dir)
+    basepath = 'mobilesdk/%s/%s' % (osname,version)
+    sdkzip = os.path.join(dist_dir,'mobilesdk-%s-%s.zip' % (version,osname))    
+    zf = zipfile.ZipFile(sdkzip, 'w', zipfile.ZIP_DEFLATED)
+    osdir = os.path.join(template_dir,osname)
+    tiui = os.path.join(cur_dir,'tiui')
+    for thedir in [all_dir,iphone_dir,android_dir,osdir,tiui]:
+        for walk in os.walk(thedir):
+            for file in walk[2]:
+                file = os.path.join(walk[0], file)
+                arcname = file.replace(thedir + os.sep, &quot;&quot;)
+                if ignore(arcname): continue
+                e = os.path.splitext(file)
+                if len(e)==2 and e[1]=='.pyc': continue
+                if thedir != osdir and thedir != all_dir:
+                    arcname = os.path.basename(thedir) + '/' + arcname
+                zf.write(file, basepath + '/' + arcname)
 
 
-	for f in os.listdir(template_dir):
-		if ignore(f) or not os.path.isfile(os.path.join(template_dir,f)): continue
-		e = os.path.splitext(f)
-		if len(e)==2 and e[1]=='.pyc':continue
-		zf.write(os.path.join(template_dir,f), basepath + '/' + f)
-				
+    for f in os.listdir(template_dir):
+        if ignore(f) or not os.path.isfile(os.path.join(template_dir,f)): continue
+        e = os.path.splitext(f)
+        if len(e)==2 and e[1]=='.pyc':continue
+        zf.write(os.path.join(template_dir,f), basepath + '/' + f)
+                
 
-	android_jar = os.path.join(cur_dir,'android','titanium','bin','titanium.jar')
-	zf.write(android_jar,'%s/android/titanium.jar' % basepath)
-
-	if osname == &quot;osx&quot;:
-		sys.path.append(iphone_dir)
-		import run,prereq
-		for apiversion in prereq.get_sdks():
-			iphone_lib = os.path.join(cur_dir,'iphone','build')
-			for f in os.listdir(iphone_lib):
-				v = &quot;%s.a&quot; % apiversion
-				if os.path.isfile(os.path.join(iphone_lib,f)) and f.find(v)!=-1:
-					zf.write(os.path.join(iphone_lib,f),'%s/iphone/%s' % (basepath,f))
-
-
-	zf.close()
+    android_jar = os.path.join(cur_dir,'android','titanium','bin','titanium.jar')
+    zf.write(android_jar,'%s/android/titanium.jar' % basepath)
+    
+    if osname == &quot;osx&quot;:
+        sys.path.append(iphone_dir)
+        import run,prereq
+        
+        #include our headers such that 3rd party modules can be compiled
+        headers_dir=os.path.join(cur_dir,'iphone','Classes')
+        for f in os.listdir(headers_dir):
+            if os.path.isfile(os.path.join(headers_dir,f)) and os.path.splitext(f)[1]=='.h':
+                zf.write(os.path.join(headers_dir,f),'%s/iphone/include/%s' % (basepath,f))
+                
+        for apiversion in prereq.get_sdks():
+            iphone_lib = os.path.join(cur_dir,'iphone','build')
+            for f in os.listdir(iphone_lib):
+                v = &quot;%s.a&quot; % apiversion
+                if os.path.isfile(os.path.join(iphone_lib,f)) and f.find(v)!=-1:
+                    zf.write(os.path.join(iphone_lib,f),'%s/iphone/%s' % (basepath,f))
+    zf.close()
 
 class Packager(object):
-	def __init__(self):
-		pass
+    def __init__(self):
+        pass
 
-	def build(self,dist_dir,version):
-		os_names = { &quot;Windows&quot;:&quot;win32&quot;, &quot;Linux&quot;:&quot;linux&quot;,  &quot;Darwin&quot;:&quot;osx&quot; }
-		zip_it(dist_dir,os_names[platform.system()], version)
+    def build(self,dist_dir,version):
+        os_names = { &quot;Windows&quot;:&quot;win32&quot;, &quot;Linux&quot;:&quot;linux&quot;,  &quot;Darwin&quot;:&quot;osx&quot; }
+        zip_it(dist_dir,os_names[platform.system()], version)
 
 
 </diff>
      <filename>package.py</filename>
    </modified>
    <modified>
      <diff>@@ -1,8 +1,248 @@
-The files in this directory are excluded from the Apache Public License and are 
-Copyright (c) 2009 Appcelerator, Inc. All Rights Reserved.  These files are 
-proprietary to Appcelerator and provided as part of the distribution of 
-Appcelerator Titanium Mobile.  You can redistribute these files only in whole
-if you build the SDK and redistribute the entire SDK.  However, please don't
-copy or redistribute these individual files without express written permission.
-Please see the LICENSE file in the distribution for the full text of the terms 
-and conditions.
+======================================
+Appcelerator Titanium Mobile
+Copyright 2008-2009 Appcelerator, Inc.
+======================================
+
+   Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   (or the full text of the license is below)
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an &quot;AS IS&quot; BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+
+
+
+                              Apache License
+                        Version 2.0, January 2004
+                     http://www.apache.org/licenses/
+
+TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+1. Definitions.
+
+   &quot;License&quot; shall mean the terms and conditions for use, reproduction,
+   and distribution as defined by Sections 1 through 9 of this document.
+
+   &quot;Licensor&quot; shall mean the copyright owner or entity authorized by
+   the copyright owner that is granting the License.
+
+   &quot;Legal Entity&quot; shall mean the union of the acting entity and all
+   other entities that control, are controlled by, or are under common
+   control with that entity. For the purposes of this definition,
+   &quot;control&quot; means (i) the power, direct or indirect, to cause the
+   direction or management of such entity, whether by contract or
+   otherwise, or (ii) ownership of fifty percent (50%) or more of the
+   outstanding shares, or (iii) beneficial ownership of such entity.
+
+   &quot;You&quot; (or &quot;Your&quot;) shall mean an individual or Legal Entity
+   exercising permissions granted by this License.
+
+   &quot;Source&quot; form shall mean the preferred form for making modifications,
+   including but not limited to software source code, documentation
+   source, and configuration files.
+
+   &quot;Object&quot; form shall mean any form resulting from mechanical
+   transformation or translation of a Source form, including but
+   not limited to compiled object code, generated documentation,
+   and conversions to other media types.
+
+   &quot;Work&quot; shall mean the work of authorship, whether in Source or
+   Object form, made available under the License, as indicated by a
+   copyright notice that is included in or attached to the work
+   (an example is provided in the Appendix below).
+
+   &quot;Derivative Works&quot; shall mean any work, whether in Source or Object
+   form, that is based on (or derived from) the Work and for which the
+   editorial revisions, annotations, elaborations, or other modifications
+   represent, as a whole, an original work of authorship. For the purposes
+   of this License, Derivative Works shall not include works that remain
+   separable from, or merely link (or bind by name) to the interfaces of,
+   the Work and Derivative Works thereof.
+
+   &quot;Contribution&quot; shall mean any work of authorship, including
+   the original version of the Work and any modifications or additions
+   to that Work or Derivative Works thereof, that is intentionally
+   submitted to Licensor for inclusion in the Work by the copyright owner
+   or by an individual or Legal Entity authorized to submit on behalf of
+   the copyright owner. For the purposes of this definition, &quot;submitted&quot;
+   means any form of electronic, verbal, or written communication sent
+   to the Licensor or its representatives, including but not limited to
+   communication on electronic mailing lists, source code control systems,
+   and issue tracking systems that are managed by, or on behalf of, the
+   Licensor for the purpose of discussing and improving the Work, but
+   excluding communication that is conspicuously marked or otherwise
+   designated in writing by the copyright owner as &quot;Not a Contribution.&quot;
+
+   &quot;Contributor&quot; shall mean Licensor and any individual or Legal Entity
+   on behalf of whom a Contribution has been received by Licensor and
+   subsequently incorporated within the Work.
+
+2. Grant of Copyright License. Subject to the terms and conditions of
+   this License, each Contributor hereby grants to You a perpetual,
+   worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+   copyright license to reproduce, prepare Derivative Works of,
+   publicly display, publicly perform, sublicense, and distribute the
+   Work and such Derivative Works in Source or Object form.
+
+3. Grant of Patent License. Subject to the terms and conditions of
+   this License, each Contributor hereby grants to You a perpetual,
+   worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+   (except as stated in this section) patent license to make, have made,
+   use, offer to sell, sell, import, and otherwise transfer the Work,
+   where such license applies only to those patent claims licensable
+   by such Contributor that are necessarily infringed by their
+   Contribution(s) alone or by combination of their Contribution(s)
+   with the Work to which such Contribution(s) was submitted. If You
+   institute patent litigation against any entity (including a
+   cross-claim or counterclaim in a lawsuit) alleging that the Work
+   or a Contribution incorporated within the Work constitutes direct
+   or contributory patent infringement, then any patent licenses
+   granted to You under this License for that Work shall terminate
+   as of the date such litigation is filed.
+
+4. Redistribution. You may reproduce and distribute copies of the
+   Work or Derivative Works thereof in any medium, with or without
+   modifications, and in Source or Object form, provided that You
+   meet the following conditions:
+
+   (a) You must give any other recipients of the Work or
+       Derivative Works a copy of this License; and
+
+   (b) You must cause any modified files to carry prominent notices
+       stating that You changed the files; and
+
+   (c) You must retain, in the Source form of any Derivative Works
+       that You distribute, all copyright, patent, trademark, and
+       attribution notices from the Source form of the Work,
+       excluding those notices that do not pertain to any part of
+       the Derivative Works; and
+
+   (d) If the Work includes a &quot;NOTICE&quot; text file as part of its
+       distribution, then any Derivative Works that You distribute must
+       include a readable copy of the attribution notices contained
+       within such NOTICE file, excluding those notices that do not
+       pertain to any part of the Derivative Works, in at least one
+       of the following places: within a NOTICE text file distributed
+       as part of the Derivative Works; within the Source form or
+       documentation, if provided along with the Derivative Works; or,
+       within a display generated by the Derivative Works, if and
+       wherever such third-party notices normally appear. The contents
+       of the NOTICE file are for informational purposes only and
+       do not modify the License. You may add Your own attribution
+       notices within Derivative Works that You distribute, alongside
+       or as an addendum to the NOTICE text from the Work, provided
+       that such additional attribution notices cannot be construed
+       as modifying the License.
+
+   You may add Your own copyright statement to Your modifications and
+   may provide additional or different license terms and conditions
+   for use, reproduction, or distribution of Your modifications, or
+   for any such Derivative Works as a whole, provided Your use,
+   reproduction, and distribution of the Work otherwise complies with
+   the conditions stated in this License.
+
+5. Submission of Contributions. Unless You explicitly state otherwise,
+   any Contribution intentionally submitted for inclusion in the Work
+   by You to the Licensor shall be under the terms and conditions of
+   this License, without any additional terms or conditions.
+   Notwithstanding the above, nothing herein shall supersede or modify
+   the terms of any separate license agreement you may have executed
+   with Licensor regarding such Contributions.
+
+6. Trademarks. This License does not grant permission to use the trade
+   names, trademarks, service marks, or product names of the Licensor,
+   except as required for reasonable and customary use in describing the
+   origin of the Work and reproducing the content of the NOTICE file.
+
+7. Disclaimer of Warranty. Unless required by applicable law or
+   agreed to in writing, Licensor provides the Work (and each
+   Contributor provides its Contributions) on an &quot;AS IS&quot; BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+   implied, including, without limitation, any warranties or conditions
+   of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+   PARTICULAR PURPOSE. You are solely responsible for determining the
+   appropriateness of using or redistributing the Work and assume any
+   risks associated with Your exercise of permissions under this License.
+
+8. Limitation of Liability. In no event and under no legal theory,
+   whether in tort (including negligence), contract, or otherwise,
+   unless required by applicable law (such as deliberate and grossly
+   negligent acts) or agreed to in writing, shall any Contributor be
+   liable to You for damages, including any direct, indirect, special,
+   incidental, or consequential damages of any character arising as a
+   result of this License or out of the use or inability to use the
+   Work (including but not limited to damages for loss of goodwill,
+   work stoppage, computer failure or malfunction, or any and all
+   other commercial damages or losses), even if such Contributor
+   has been advised of the possibility of such damages.
+
+9. Accepting Warranty or Additional Liability. While redistributing
+   the Work or Derivative Works thereof, You may choose to offer,
+   and charge a fee for, acceptance of support, warranty, indemnity,
+   or other liability obligations and/or rights consistent with this
+   License. However, in accepting such obligations, You may act only
+   on Your own behalf and on Your sole responsibility, not on behalf
+   of any other Contributor, and only if You agree to indemnify,
+   defend, and hold each Contributor harmless for any liability
+   incurred by, or claims asserted against, such Contributor by reason
+   of your accepting any such warranty or additional liability.
+
+END OF TERMS AND CONDITIONS
+
+APPENDIX: How to apply the Apache License to your work.
+
+   To apply the Apache License to your work, attach the following
+   boilerplate notice, with the fields enclosed by brackets &quot;[]&quot;
+   replaced with your own identifying information. (Don't include
+   the brackets!)  The text should be enclosed in the appropriate
+   comment syntax for the file format. We also recommend that a
+   file or class name and description of purpose be included on the
+   same &quot;printed page&quot; as the copyright notice for easier
+   identification within third-party archives.
+
+Copyright [yyyy] [name of copyright owner]
+
+Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an &quot;AS IS&quot; BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+
+
+PRIVACY NOTICE 
+==============
+
+At Appcelerator, we&#8217;re committed to transparency and we respect your privacy.
+This software collects information about you and your end-users of any
+applications that you build. The information we collect is used to 
+improve the content of our Products, Websites and Applications built using
+our technology (collectively and individually, the &quot;Software&quot;), used to 
+customize the content and/or layout of our Software for each individual 
+visitor, used to notify users about updates to our Software, used by us to 
+contact users for marketing purposes, disclosed when legally required to 
+do so, at the request of governmental authorities conducting an investigation, 
+to verify or enforce compliance with the policies governing our Software and 
+applicable laws or to protect against misuse or unauthorized use of our 
+Software, to a successor entity in connection with a corporate merger, 
+consolidation, sale of assets or other corporate change respecting the 
+Software.
+
+
+Please review the full text of our privacy policy online at:
+&lt;http://www.appcelerator.com/company/privacy/&gt;
+
+</diff>
      <filename>support/LICENSE</filename>
    </modified>
    <modified>
      <diff>@@ -5,7 +5,7 @@ window.onload = function()
 	document.getElementById('b').onclick = function() { Titanium.Media.vibrate() };
 
 	Titanium.Gesture.addEventListener('shake',function(){
-		var alerty = Titanium.UI.createAlert();
+		var alerty = Titanium.UI.createAlertDialog();
 		alerty.setTitle(&quot;Not stirred!&quot;);
 		alerty.show();
 	},false);</diff>
      <filename>support/all/index.js</filename>
    </modified>
    <modified>
      <diff>@@ -3,10 +3,6 @@
 # Appcelerator Titanium Mobile
 # Copyright (c) 2009 Appcelerator, Inc. All Right Reserved.
 #
-# This code is proprietary to Appcelerator and should not
-# be redistributed without expression written permission of
-# Appcelerator.
-#
 # Resource to Objective-C Page Compiler
 # Handles JS, CSS and HTML files only
 #</diff>
      <filename>support/iphone/compiler.py</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>7510bb451160f983913b4141d9fa52abebdbc7c9</id>
    </parent>
    <parent>
      <id>b14fb694cdd4e6a2a19b9937805915e5c510a4a6</id>
    </parent>
  </parents>
  <author>
    <name>jhaynie</name>
    <email>jhaynie@gmail.com</email>
  </author>
  <url>http://github.com/appcelerator/titanium_mobile/commit/469f6654a3aa1e01c0793a2a0fb52a26b157a49e</url>
  <id>469f6654a3aa1e01c0793a2a0fb52a26b157a49e</id>
  <committed-date>2009-09-16T22:43:02-07:00</committed-date>
  <authored-date>2009-09-16T22:43:02-07:00</authored-date>
  <message>removed old license notice and make sure everything is apache. include headers for iphone for new module sdk</message>
  <tree>ced9071511399c8331240d0991a072e25c89cebc</tree>
  <committer>
    <name>jhaynie</name>
    <email>jhaynie@gmail.com</email>
  </committer>
</commit>
