diff --git a/experimental/CocoaDebugger/CocoaDebugger-Info.plist b/experimental/CocoaDebugger/CocoaDebugger-Info.plist
deleted file mode 100644
index f696cb2..0000000
--- a/experimental/CocoaDebugger/CocoaDebugger-Info.plist
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
-	<key>CFBundleDevelopmentRegion</key>
-	<string>English</string>
-	<key>CFBundleExecutable</key>
-	<string>${EXECUTABLE_NAME}</string>
-	<key>CFBundleIconFile</key>
-	<string></string>
-	<key>CFBundleIdentifier</key>
-	<string>com.yourcompany.${PRODUCT_NAME:rfc1034identifier}</string>
-	<key>CFBundleInfoDictionaryVersion</key>
-	<string>6.0</string>
-	<key>CFBundleName</key>
-	<string>${PRODUCT_NAME}</string>
-	<key>CFBundlePackageType</key>
-	<string>APPL</string>
-	<key>CFBundleShortVersionString</key>
-	<string>1.0</string>
-	<key>CFBundleSignature</key>
-	<string>????</string>
-	<key>CFBundleVersion</key>
-	<string>1</string>
-	<key>LSMinimumSystemVersion</key>
-	<string>${MACOSX_DEPLOYMENT_TARGET}</string>
-	<key>NSMainNibFile</key>
-	<string>MainMenu</string>
-	<key>NSPrincipalClass</key>
-	<string>NSApplication</string>
-</dict>
-</plist>
diff --git a/experimental/CocoaDebugger/CocoaDebuggerAppDelegate.h b/experimental/CocoaDebugger/CocoaDebuggerAppDelegate.h
deleted file mode 100644
index 88d4011..0000000
--- a/experimental/CocoaDebugger/CocoaDebuggerAppDelegate.h
+++ /dev/null
@@ -1,15 +0,0 @@
-
-/*
- * Copyright 2011 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#import <Cocoa/Cocoa.h>
-#import "SkNSWindow.h"
-@interface CocoaDebuggerAppDelegate : NSObject <NSApplicationDelegate> {
-    SkNSWindow *window;
-}
-
-@property (assign) IBOutlet SkNSWindow *window;
-@end
diff --git a/experimental/CocoaDebugger/CocoaDebuggerAppDelegate.mm b/experimental/CocoaDebugger/CocoaDebuggerAppDelegate.mm
deleted file mode 100644
index 7358c5f..0000000
--- a/experimental/CocoaDebugger/CocoaDebuggerAppDelegate.mm
+++ /dev/null
@@ -1,10 +0,0 @@
-#import "CocoaDebuggerAppDelegate.h"
-
-@implementation CocoaDebuggerAppDelegate
-@synthesize window;
-
--(void) applicationDidFinishLaunching:(NSNotification *)aNotification {
-    //Load specified skia views after launching
-    [window installSkViews];
-}
-@end
diff --git a/experimental/CocoaDebugger/CocoaDebugger_Prefix.pch b/experimental/CocoaDebugger/CocoaDebugger_Prefix.pch
deleted file mode 100644
index 8d43cae..0000000
--- a/experimental/CocoaDebugger/CocoaDebugger_Prefix.pch
+++ /dev/null
@@ -1,7 +0,0 @@
-//
-// Prefix header for all source files of the 'CocoaSampleApp' target in the 'CocoaSampleApp' project
-//
-
-#ifdef __OBJC__
-    #import <Cocoa/Cocoa.h>
-#endif
diff --git a/experimental/CocoaDebugger/English.lproj/InfoPlist.strings b/experimental/CocoaDebugger/English.lproj/InfoPlist.strings
deleted file mode 100644
index 477b28f..0000000
--- a/experimental/CocoaDebugger/English.lproj/InfoPlist.strings
+++ /dev/null
@@ -1,2 +0,0 @@
-/* Localized versions of Info.plist keys */
-
diff --git a/experimental/CocoaDebugger/English.lproj/MainMenu.xib b/experimental/CocoaDebugger/English.lproj/MainMenu.xib
deleted file mode 100644
index beceeb1..0000000
--- a/experimental/CocoaDebugger/English.lproj/MainMenu.xib
+++ /dev/null
@@ -1,4455 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10">
-	<data>
-		<int key="IBDocument.SystemTarget">1060</int>
-		<string key="IBDocument.SystemVersion">10J3250</string>
-		<string key="IBDocument.InterfaceBuilderVersion">851</string>
-		<string key="IBDocument.AppKitVersion">1038.35</string>
-		<string key="IBDocument.HIToolboxVersion">461.00</string>
-		<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
-			<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
-			<string key="NS.object.0">851</string>
-		</object>
-		<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
-			<bool key="EncodedWithXMLCoder">YES</bool>
-			<integer value="371"/>
-			<integer value="81"/>
-		</object>
-		<object class="NSArray" key="IBDocument.PluginDependencies">
-			<bool key="EncodedWithXMLCoder">YES</bool>
-			<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-		</object>
-		<object class="NSMutableDictionary" key="IBDocument.Metadata">
-			<string key="NS.key.0">PluginDependencyRecalculationVersion</string>
-			<integer value="1" key="NS.object.0"/>
-		</object>
-		<object class="NSMutableArray" key="IBDocument.RootObjects" id="1048">
-			<bool key="EncodedWithXMLCoder">YES</bool>
-			<object class="NSCustomObject" id="1021">
-				<string key="NSClassName">NSApplication</string>
-			</object>
-			<object class="NSCustomObject" id="1014">
-				<string key="NSClassName">FirstResponder</string>
-			</object>
-			<object class="NSCustomObject" id="1050">
-				<string key="NSClassName">NSApplication</string>
-			</object>
-			<object class="NSMenu" id="649796088">
-				<string key="NSTitle">AMainMenu</string>
-				<object class="NSMutableArray" key="NSMenuItems">
-					<bool key="EncodedWithXMLCoder">YES</bool>
-					<object class="NSMenuItem" id="694149608">
-						<reference key="NSMenu" ref="649796088"/>
-						<string key="NSTitle">CocoaDebugger</string>
-						<string key="NSKeyEquiv"/>
-						<int key="NSKeyEquivModMask">1048576</int>
-						<int key="NSMnemonicLoc">2147483647</int>
-						<object class="NSCustomResource" key="NSOnImage" id="35465992">
-							<string key="NSClassName">NSImage</string>
-							<string key="NSResourceName">NSMenuCheckmark</string>
-						</object>
-						<object class="NSCustomResource" key="NSMixedImage" id="502551668">
-							<string key="NSClassName">NSImage</string>
-							<string key="NSResourceName">NSMenuMixedState</string>
-						</object>
-						<string key="NSAction">submenuAction:</string>
-						<object class="NSMenu" key="NSSubmenu" id="110575045">
-							<string key="NSTitle">CocoaDebugger</string>
-							<object class="NSMutableArray" key="NSMenuItems">
-								<bool key="EncodedWithXMLCoder">YES</bool>
-								<object class="NSMenuItem" id="238522557">
-									<reference key="NSMenu" ref="110575045"/>
-									<string key="NSTitle">About CocoaDebugger</string>
-									<string key="NSKeyEquiv"/>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="304266470">
-									<reference key="NSMenu" ref="110575045"/>
-									<bool key="NSIsDisabled">YES</bool>
-									<bool key="NSIsSeparator">YES</bool>
-									<string key="NSTitle"/>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="609285721">
-									<reference key="NSMenu" ref="110575045"/>
-									<string key="NSTitle">Preferences…</string>
-									<string key="NSKeyEquiv">,</string>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="481834944">
-									<reference key="NSMenu" ref="110575045"/>
-									<bool key="NSIsDisabled">YES</bool>
-									<bool key="NSIsSeparator">YES</bool>
-									<string key="NSTitle"/>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="1046388886">
-									<reference key="NSMenu" ref="110575045"/>
-									<string key="NSTitle">Services</string>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-									<string key="NSAction">submenuAction:</string>
-									<object class="NSMenu" key="NSSubmenu" id="752062318">
-										<string key="NSTitle">Services</string>
-										<object class="NSMutableArray" key="NSMenuItems">
-											<bool key="EncodedWithXMLCoder">YES</bool>
-										</object>
-										<string key="NSName">_NSServicesMenu</string>
-									</object>
-								</object>
-								<object class="NSMenuItem" id="646227648">
-									<reference key="NSMenu" ref="110575045"/>
-									<bool key="NSIsDisabled">YES</bool>
-									<bool key="NSIsSeparator">YES</bool>
-									<string key="NSTitle"/>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="755159360">
-									<reference key="NSMenu" ref="110575045"/>
-									<string key="NSTitle">Hide CocoaDebugger</string>
-									<string key="NSKeyEquiv">h</string>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="342932134">
-									<reference key="NSMenu" ref="110575045"/>
-									<string key="NSTitle">Hide Others</string>
-									<string key="NSKeyEquiv">h</string>
-									<int key="NSKeyEquivModMask">1572864</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="908899353">
-									<reference key="NSMenu" ref="110575045"/>
-									<string key="NSTitle">Show All</string>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="1056857174">
-									<reference key="NSMenu" ref="110575045"/>
-									<bool key="NSIsDisabled">YES</bool>
-									<bool key="NSIsSeparator">YES</bool>
-									<string key="NSTitle"/>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="632727374">
-									<reference key="NSMenu" ref="110575045"/>
-									<string key="NSTitle">Quit CocoaDebugger</string>
-									<string key="NSKeyEquiv">q</string>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-							</object>
-							<string key="NSName">_NSAppleMenu</string>
-						</object>
-					</object>
-					<object class="NSMenuItem" id="379814623">
-						<reference key="NSMenu" ref="649796088"/>
-						<string key="NSTitle">File</string>
-						<string key="NSKeyEquiv"/>
-						<int key="NSKeyEquivModMask">1048576</int>
-						<int key="NSMnemonicLoc">2147483647</int>
-						<reference key="NSOnImage" ref="35465992"/>
-						<reference key="NSMixedImage" ref="502551668"/>
-						<string key="NSAction">submenuAction:</string>
-						<object class="NSMenu" key="NSSubmenu" id="720053764">
-							<string key="NSTitle">File</string>
-							<object class="NSMutableArray" key="NSMenuItems">
-								<bool key="EncodedWithXMLCoder">YES</bool>
-								<object class="NSMenuItem" id="705341025">
-									<reference key="NSMenu" ref="720053764"/>
-									<string key="NSTitle">New</string>
-									<string key="NSKeyEquiv">n</string>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="722745758">
-									<reference key="NSMenu" ref="720053764"/>
-									<string key="NSTitle">Open…</string>
-									<string key="NSKeyEquiv">o</string>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="1025936716">
-									<reference key="NSMenu" ref="720053764"/>
-									<string key="NSTitle">Open Recent</string>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-									<string key="NSAction">submenuAction:</string>
-									<object class="NSMenu" key="NSSubmenu" id="1065607017">
-										<string key="NSTitle">Open Recent</string>
-										<object class="NSMutableArray" key="NSMenuItems">
-											<bool key="EncodedWithXMLCoder">YES</bool>
-											<object class="NSMenuItem" id="759406840">
-												<reference key="NSMenu" ref="1065607017"/>
-												<string key="NSTitle">Clear Menu</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-										</object>
-										<string key="NSName">_NSRecentDocumentsMenu</string>
-									</object>
-								</object>
-								<object class="NSMenuItem" id="425164168">
-									<reference key="NSMenu" ref="720053764"/>
-									<bool key="NSIsDisabled">YES</bool>
-									<bool key="NSIsSeparator">YES</bool>
-									<string key="NSTitle"/>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="776162233">
-									<reference key="NSMenu" ref="720053764"/>
-									<string key="NSTitle">Close</string>
-									<string key="NSKeyEquiv">w</string>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="1023925487">
-									<reference key="NSMenu" ref="720053764"/>
-									<string key="NSTitle">Save</string>
-									<string key="NSKeyEquiv">s</string>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="117038363">
-									<reference key="NSMenu" ref="720053764"/>
-									<string key="NSTitle">Save As…</string>
-									<string key="NSKeyEquiv">S</string>
-									<int key="NSKeyEquivModMask">1179648</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="579971712">
-									<reference key="NSMenu" ref="720053764"/>
-									<string key="NSTitle">Revert to Saved</string>
-									<string key="NSKeyEquiv"/>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="1010469920">
-									<reference key="NSMenu" ref="720053764"/>
-									<bool key="NSIsDisabled">YES</bool>
-									<bool key="NSIsSeparator">YES</bool>
-									<string key="NSTitle"/>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="294629803">
-									<reference key="NSMenu" ref="720053764"/>
-									<string key="NSTitle">Page Setup...</string>
-									<string key="NSKeyEquiv">P</string>
-									<int key="NSKeyEquivModMask">1179648</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-									<string key="NSToolTip"/>
-								</object>
-								<object class="NSMenuItem" id="49223823">
-									<reference key="NSMenu" ref="720053764"/>
-									<string key="NSTitle">Print…</string>
-									<string key="NSKeyEquiv">p</string>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-							</object>
-						</object>
-					</object>
-					<object class="NSMenuItem" id="952259628">
-						<reference key="NSMenu" ref="649796088"/>
-						<string key="NSTitle">Edit</string>
-						<string key="NSKeyEquiv"/>
-						<int key="NSKeyEquivModMask">1048576</int>
-						<int key="NSMnemonicLoc">2147483647</int>
-						<reference key="NSOnImage" ref="35465992"/>
-						<reference key="NSMixedImage" ref="502551668"/>
-						<string key="NSAction">submenuAction:</string>
-						<object class="NSMenu" key="NSSubmenu" id="789758025">
-							<string key="NSTitle">Edit</string>
-							<object class="NSMutableArray" key="NSMenuItems">
-								<bool key="EncodedWithXMLCoder">YES</bool>
-								<object class="NSMenuItem" id="1058277027">
-									<reference key="NSMenu" ref="789758025"/>
-									<string key="NSTitle">Undo</string>
-									<string key="NSKeyEquiv">z</string>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="790794224">
-									<reference key="NSMenu" ref="789758025"/>
-									<string key="NSTitle">Redo</string>
-									<string key="NSKeyEquiv">Z</string>
-									<int key="NSKeyEquivModMask">1179648</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="1040322652">
-									<reference key="NSMenu" ref="789758025"/>
-									<bool key="NSIsDisabled">YES</bool>
-									<bool key="NSIsSeparator">YES</bool>
-									<string key="NSTitle"/>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="296257095">
-									<reference key="NSMenu" ref="789758025"/>
-									<string key="NSTitle">Cut</string>
-									<string key="NSKeyEquiv">x</string>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="860595796">
-									<reference key="NSMenu" ref="789758025"/>
-									<string key="NSTitle">Copy</string>
-									<string key="NSKeyEquiv">c</string>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="29853731">
-									<reference key="NSMenu" ref="789758025"/>
-									<string key="NSTitle">Paste</string>
-									<string key="NSKeyEquiv">v</string>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="82994268">
-									<reference key="NSMenu" ref="789758025"/>
-									<string key="NSTitle">Paste and Match Style</string>
-									<string key="NSKeyEquiv">V</string>
-									<int key="NSKeyEquivModMask">1572864</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="437104165">
-									<reference key="NSMenu" ref="789758025"/>
-									<string key="NSTitle">Delete</string>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="583158037">
-									<reference key="NSMenu" ref="789758025"/>
-									<string key="NSTitle">Select All</string>
-									<string key="NSKeyEquiv">a</string>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="212016141">
-									<reference key="NSMenu" ref="789758025"/>
-									<bool key="NSIsDisabled">YES</bool>
-									<bool key="NSIsSeparator">YES</bool>
-									<string key="NSTitle"/>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="892235320">
-									<reference key="NSMenu" ref="789758025"/>
-									<string key="NSTitle">Find</string>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-									<string key="NSAction">submenuAction:</string>
-									<object class="NSMenu" key="NSSubmenu" id="963351320">
-										<string key="NSTitle">Find</string>
-										<object class="NSMutableArray" key="NSMenuItems">
-											<bool key="EncodedWithXMLCoder">YES</bool>
-											<object class="NSMenuItem" id="447796847">
-												<reference key="NSMenu" ref="963351320"/>
-												<string key="NSTitle">Find…</string>
-												<string key="NSKeyEquiv">f</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-												<int key="NSTag">1</int>
-											</object>
-											<object class="NSMenuItem" id="326711663">
-												<reference key="NSMenu" ref="963351320"/>
-												<string key="NSTitle">Find Next</string>
-												<string key="NSKeyEquiv">g</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-												<int key="NSTag">2</int>
-											</object>
-											<object class="NSMenuItem" id="270902937">
-												<reference key="NSMenu" ref="963351320"/>
-												<string key="NSTitle">Find Previous</string>
-												<string key="NSKeyEquiv">G</string>
-												<int key="NSKeyEquivModMask">1179648</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-												<int key="NSTag">3</int>
-											</object>
-											<object class="NSMenuItem" id="159080638">
-												<reference key="NSMenu" ref="963351320"/>
-												<string key="NSTitle">Use Selection for Find</string>
-												<string key="NSKeyEquiv">e</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-												<int key="NSTag">7</int>
-											</object>
-											<object class="NSMenuItem" id="88285865">
-												<reference key="NSMenu" ref="963351320"/>
-												<string key="NSTitle">Jump to Selection</string>
-												<string key="NSKeyEquiv">j</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-										</object>
-									</object>
-								</object>
-								<object class="NSMenuItem" id="972420730">
-									<reference key="NSMenu" ref="789758025"/>
-									<string key="NSTitle">Spelling and Grammar</string>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-									<string key="NSAction">submenuAction:</string>
-									<object class="NSMenu" key="NSSubmenu" id="769623530">
-										<string key="NSTitle">Spelling and Grammar</string>
-										<object class="NSMutableArray" key="NSMenuItems">
-											<bool key="EncodedWithXMLCoder">YES</bool>
-											<object class="NSMenuItem" id="679648819">
-												<reference key="NSMenu" ref="769623530"/>
-												<string key="NSTitle">Show Spelling and Grammar</string>
-												<string key="NSKeyEquiv">:</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="96193923">
-												<reference key="NSMenu" ref="769623530"/>
-												<string key="NSTitle">Check Document Now</string>
-												<string key="NSKeyEquiv">;</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="859480356">
-												<reference key="NSMenu" ref="769623530"/>
-												<bool key="NSIsDisabled">YES</bool>
-												<bool key="NSIsSeparator">YES</bool>
-												<string key="NSTitle"/>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="948374510">
-												<reference key="NSMenu" ref="769623530"/>
-												<string key="NSTitle">Check Spelling While Typing</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="967646866">
-												<reference key="NSMenu" ref="769623530"/>
-												<string key="NSTitle">Check Grammar With Spelling</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="795346622">
-												<reference key="NSMenu" ref="769623530"/>
-												<string key="NSTitle">Correct Spelling Automatically</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-										</object>
-									</object>
-								</object>
-								<object class="NSMenuItem" id="507821607">
-									<reference key="NSMenu" ref="789758025"/>
-									<string key="NSTitle">Substitutions</string>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-									<string key="NSAction">submenuAction:</string>
-									<object class="NSMenu" key="NSSubmenu" id="698887838">
-										<string key="NSTitle">Substitutions</string>
-										<object class="NSMutableArray" key="NSMenuItems">
-											<bool key="EncodedWithXMLCoder">YES</bool>
-											<object class="NSMenuItem" id="65139061">
-												<reference key="NSMenu" ref="698887838"/>
-												<string key="NSTitle">Show Substitutions</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="19036812">
-												<reference key="NSMenu" ref="698887838"/>
-												<bool key="NSIsDisabled">YES</bool>
-												<bool key="NSIsSeparator">YES</bool>
-												<string key="NSTitle"/>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="605118523">
-												<reference key="NSMenu" ref="698887838"/>
-												<string key="NSTitle">Smart Copy/Paste</string>
-												<string key="NSKeyEquiv">f</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-												<int key="NSTag">1</int>
-											</object>
-											<object class="NSMenuItem" id="197661976">
-												<reference key="NSMenu" ref="698887838"/>
-												<string key="NSTitle">Smart Quotes</string>
-												<string key="NSKeyEquiv">g</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-												<int key="NSTag">2</int>
-											</object>
-											<object class="NSMenuItem" id="672708820">
-												<reference key="NSMenu" ref="698887838"/>
-												<string key="NSTitle">Smart Dashes</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="708854459">
-												<reference key="NSMenu" ref="698887838"/>
-												<string key="NSTitle">Smart Links</string>
-												<string key="NSKeyEquiv">G</string>
-												<int key="NSKeyEquivModMask">1179648</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-												<int key="NSTag">3</int>
-											</object>
-											<object class="NSMenuItem" id="537092702">
-												<reference key="NSMenu" ref="698887838"/>
-												<string key="NSTitle">Text Replacement</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-										</object>
-									</object>
-								</object>
-								<object class="NSMenuItem" id="288088188">
-									<reference key="NSMenu" ref="789758025"/>
-									<string key="NSTitle">Transformations</string>
-									<string key="NSKeyEquiv"/>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-									<string key="NSAction">submenuAction:</string>
-									<object class="NSMenu" key="NSSubmenu" id="579392910">
-										<string key="NSTitle">Transformations</string>
-										<object class="NSMutableArray" key="NSMenuItems">
-											<bool key="EncodedWithXMLCoder">YES</bool>
-											<object class="NSMenuItem" id="1060694897">
-												<reference key="NSMenu" ref="579392910"/>
-												<string key="NSTitle">Make Upper Case</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="879586729">
-												<reference key="NSMenu" ref="579392910"/>
-												<string key="NSTitle">Make Lower Case</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="56570060">
-												<reference key="NSMenu" ref="579392910"/>
-												<string key="NSTitle">Capitalize</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-										</object>
-									</object>
-								</object>
-								<object class="NSMenuItem" id="676164635">
-									<reference key="NSMenu" ref="789758025"/>
-									<string key="NSTitle">Speech</string>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-									<string key="NSAction">submenuAction:</string>
-									<object class="NSMenu" key="NSSubmenu" id="785027613">
-										<string key="NSTitle">Speech</string>
-										<object class="NSMutableArray" key="NSMenuItems">
-											<bool key="EncodedWithXMLCoder">YES</bool>
-											<object class="NSMenuItem" id="731782645">
-												<reference key="NSMenu" ref="785027613"/>
-												<string key="NSTitle">Start Speaking</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="680220178">
-												<reference key="NSMenu" ref="785027613"/>
-												<string key="NSTitle">Stop Speaking</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-										</object>
-									</object>
-								</object>
-							</object>
-						</object>
-					</object>
-					<object class="NSMenuItem" id="302598603">
-						<reference key="NSMenu" ref="649796088"/>
-						<string key="NSTitle">Format</string>
-						<string key="NSKeyEquiv"/>
-						<int key="NSMnemonicLoc">2147483647</int>
-						<reference key="NSOnImage" ref="35465992"/>
-						<reference key="NSMixedImage" ref="502551668"/>
-						<string key="NSAction">submenuAction:</string>
-						<object class="NSMenu" key="NSSubmenu" id="941447902">
-							<string key="NSTitle">Format</string>
-							<object class="NSMutableArray" key="NSMenuItems">
-								<bool key="EncodedWithXMLCoder">YES</bool>
-								<object class="NSMenuItem" id="792887677">
-									<reference key="NSMenu" ref="941447902"/>
-									<string key="NSTitle">Font</string>
-									<string key="NSKeyEquiv"/>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-									<string key="NSAction">submenuAction:</string>
-									<object class="NSMenu" key="NSSubmenu" id="786677654">
-										<string key="NSTitle">Font</string>
-										<object class="NSMutableArray" key="NSMenuItems">
-											<bool key="EncodedWithXMLCoder">YES</bool>
-											<object class="NSMenuItem" id="159677712">
-												<reference key="NSMenu" ref="786677654"/>
-												<string key="NSTitle">Show Fonts</string>
-												<string key="NSKeyEquiv">t</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="305399458">
-												<reference key="NSMenu" ref="786677654"/>
-												<string key="NSTitle">Bold</string>
-												<string key="NSKeyEquiv">b</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-												<int key="NSTag">2</int>
-											</object>
-											<object class="NSMenuItem" id="814362025">
-												<reference key="NSMenu" ref="786677654"/>
-												<string key="NSTitle">Italic</string>
-												<string key="NSKeyEquiv">i</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-												<int key="NSTag">1</int>
-											</object>
-											<object class="NSMenuItem" id="330926929">
-												<reference key="NSMenu" ref="786677654"/>
-												<string key="NSTitle">Underline</string>
-												<string key="NSKeyEquiv">u</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="533507878">
-												<reference key="NSMenu" ref="786677654"/>
-												<bool key="NSIsDisabled">YES</bool>
-												<bool key="NSIsSeparator">YES</bool>
-												<string key="NSTitle"/>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="158063935">
-												<reference key="NSMenu" ref="786677654"/>
-												<string key="NSTitle">Bigger</string>
-												<string key="NSKeyEquiv">+</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-												<int key="NSTag">3</int>
-											</object>
-											<object class="NSMenuItem" id="885547335">
-												<reference key="NSMenu" ref="786677654"/>
-												<string key="NSTitle">Smaller</string>
-												<string key="NSKeyEquiv">-</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-												<int key="NSTag">4</int>
-											</object>
-											<object class="NSMenuItem" id="901062459">
-												<reference key="NSMenu" ref="786677654"/>
-												<bool key="NSIsDisabled">YES</bool>
-												<bool key="NSIsSeparator">YES</bool>
-												<string key="NSTitle"/>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="767671776">
-												<reference key="NSMenu" ref="786677654"/>
-												<string key="NSTitle">Kern</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-												<string key="NSAction">submenuAction:</string>
-												<object class="NSMenu" key="NSSubmenu" id="175441468">
-													<string key="NSTitle">Kern</string>
-													<object class="NSMutableArray" key="NSMenuItems">
-														<bool key="EncodedWithXMLCoder">YES</bool>
-														<object class="NSMenuItem" id="252969304">
-															<reference key="NSMenu" ref="175441468"/>
-															<string key="NSTitle">Use Default</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-														<object class="NSMenuItem" id="766922938">
-															<reference key="NSMenu" ref="175441468"/>
-															<string key="NSTitle">Use None</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-														<object class="NSMenuItem" id="677519740">
-															<reference key="NSMenu" ref="175441468"/>
-															<string key="NSTitle">Tighten</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-														<object class="NSMenuItem" id="238351151">
-															<reference key="NSMenu" ref="175441468"/>
-															<string key="NSTitle">Loosen</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-													</object>
-												</object>
-											</object>
-											<object class="NSMenuItem" id="691570813">
-												<reference key="NSMenu" ref="786677654"/>
-												<string key="NSTitle">Ligature</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-												<string key="NSAction">submenuAction:</string>
-												<object class="NSMenu" key="NSSubmenu" id="1058217995">
-													<string key="NSTitle">Ligature</string>
-													<object class="NSMutableArray" key="NSMenuItems">
-														<bool key="EncodedWithXMLCoder">YES</bool>
-														<object class="NSMenuItem" id="706297211">
-															<reference key="NSMenu" ref="1058217995"/>
-															<string key="NSTitle">Use Default</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-														<object class="NSMenuItem" id="568384683">
-															<reference key="NSMenu" ref="1058217995"/>
-															<string key="NSTitle">Use None</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-														<object class="NSMenuItem" id="663508465">
-															<reference key="NSMenu" ref="1058217995"/>
-															<string key="NSTitle">Use All</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-													</object>
-												</object>
-											</object>
-											<object class="NSMenuItem" id="769124883">
-												<reference key="NSMenu" ref="786677654"/>
-												<string key="NSTitle">Baseline</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-												<string key="NSAction">submenuAction:</string>
-												<object class="NSMenu" key="NSSubmenu" id="18263474">
-													<string key="NSTitle">Baseline</string>
-													<object class="NSMutableArray" key="NSMenuItems">
-														<bool key="EncodedWithXMLCoder">YES</bool>
-														<object class="NSMenuItem" id="257962622">
-															<reference key="NSMenu" ref="18263474"/>
-															<string key="NSTitle">Use Default</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-														<object class="NSMenuItem" id="644725453">
-															<reference key="NSMenu" ref="18263474"/>
-															<string key="NSTitle">Superscript</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-														<object class="NSMenuItem" id="1037576581">
-															<reference key="NSMenu" ref="18263474"/>
-															<string key="NSTitle">Subscript</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-														<object class="NSMenuItem" id="941806246">
-															<reference key="NSMenu" ref="18263474"/>
-															<string key="NSTitle">Raise</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-														<object class="NSMenuItem" id="1045724900">
-															<reference key="NSMenu" ref="18263474"/>
-															<string key="NSTitle">Lower</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-													</object>
-												</object>
-											</object>
-											<object class="NSMenuItem" id="739652853">
-												<reference key="NSMenu" ref="786677654"/>
-												<bool key="NSIsDisabled">YES</bool>
-												<bool key="NSIsSeparator">YES</bool>
-												<string key="NSTitle"/>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="1012600125">
-												<reference key="NSMenu" ref="786677654"/>
-												<string key="NSTitle">Show Colors</string>
-												<string key="NSKeyEquiv">C</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="214559597">
-												<reference key="NSMenu" ref="786677654"/>
-												<bool key="NSIsDisabled">YES</bool>
-												<bool key="NSIsSeparator">YES</bool>
-												<string key="NSTitle"/>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="596732606">
-												<reference key="NSMenu" ref="786677654"/>
-												<string key="NSTitle">Copy Style</string>
-												<string key="NSKeyEquiv">c</string>
-												<int key="NSKeyEquivModMask">1572864</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="393423671">
-												<reference key="NSMenu" ref="786677654"/>
-												<string key="NSTitle">Paste Style</string>
-												<string key="NSKeyEquiv">v</string>
-												<int key="NSKeyEquivModMask">1572864</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-										</object>
-										<string key="NSName">_NSFontMenu</string>
-									</object>
-								</object>
-								<object class="NSMenuItem" id="215659978">
-									<reference key="NSMenu" ref="941447902"/>
-									<string key="NSTitle">Text</string>
-									<string key="NSKeyEquiv"/>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-									<string key="NSAction">submenuAction:</string>
-									<object class="NSMenu" key="NSSubmenu" id="446991534">
-										<string key="NSTitle">Text</string>
-										<object class="NSMutableArray" key="NSMenuItems">
-											<bool key="EncodedWithXMLCoder">YES</bool>
-											<object class="NSMenuItem" id="875092757">
-												<reference key="NSMenu" ref="446991534"/>
-												<string key="NSTitle">Align Left</string>
-												<string key="NSKeyEquiv">{</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="630155264">
-												<reference key="NSMenu" ref="446991534"/>
-												<string key="NSTitle">Center</string>
-												<string key="NSKeyEquiv">|</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="945678886">
-												<reference key="NSMenu" ref="446991534"/>
-												<string key="NSTitle">Justify</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="512868991">
-												<reference key="NSMenu" ref="446991534"/>
-												<string key="NSTitle">Align Right</string>
-												<string key="NSKeyEquiv">}</string>
-												<int key="NSKeyEquivModMask">1048576</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="163117631">
-												<reference key="NSMenu" ref="446991534"/>
-												<bool key="NSIsDisabled">YES</bool>
-												<bool key="NSIsSeparator">YES</bool>
-												<string key="NSTitle"/>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="31516759">
-												<reference key="NSMenu" ref="446991534"/>
-												<string key="NSTitle">Writing Direction</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-												<string key="NSAction">submenuAction:</string>
-												<object class="NSMenu" key="NSSubmenu" id="956096989">
-													<string key="NSTitle">Writing Direction</string>
-													<object class="NSMutableArray" key="NSMenuItems">
-														<bool key="EncodedWithXMLCoder">YES</bool>
-														<object class="NSMenuItem" id="257099033">
-															<reference key="NSMenu" ref="956096989"/>
-															<bool key="NSIsDisabled">YES</bool>
-															<string key="NSTitle">Paragraph</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-														<object class="NSMenuItem" id="551969625">
-															<reference key="NSMenu" ref="956096989"/>
-															<string type="base64-UTF8" key="NSTitle">CURlZmF1bHQ</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-														<object class="NSMenuItem" id="249532473">
-															<reference key="NSMenu" ref="956096989"/>
-															<string type="base64-UTF8" key="NSTitle">CUxlZnQgdG8gUmlnaHQ</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-														<object class="NSMenuItem" id="607364498">
-															<reference key="NSMenu" ref="956096989"/>
-															<string type="base64-UTF8" key="NSTitle">CVJpZ2h0IHRvIExlZnQ</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-														<object class="NSMenuItem" id="508151438">
-															<reference key="NSMenu" ref="956096989"/>
-															<bool key="NSIsDisabled">YES</bool>
-															<bool key="NSIsSeparator">YES</bool>
-															<string key="NSTitle"/>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-														<object class="NSMenuItem" id="981751889">
-															<reference key="NSMenu" ref="956096989"/>
-															<bool key="NSIsDisabled">YES</bool>
-															<string key="NSTitle">Selection</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-														<object class="NSMenuItem" id="380031999">
-															<reference key="NSMenu" ref="956096989"/>
-															<string type="base64-UTF8" key="NSTitle">CURlZmF1bHQ</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-														<object class="NSMenuItem" id="825984362">
-															<reference key="NSMenu" ref="956096989"/>
-															<string type="base64-UTF8" key="NSTitle">CUxlZnQgdG8gUmlnaHQ</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-														<object class="NSMenuItem" id="560145579">
-															<reference key="NSMenu" ref="956096989"/>
-															<string type="base64-UTF8" key="NSTitle">CVJpZ2h0IHRvIExlZnQ</string>
-															<string key="NSKeyEquiv"/>
-															<int key="NSMnemonicLoc">2147483647</int>
-															<reference key="NSOnImage" ref="35465992"/>
-															<reference key="NSMixedImage" ref="502551668"/>
-														</object>
-													</object>
-												</object>
-											</object>
-											<object class="NSMenuItem" id="908105787">
-												<reference key="NSMenu" ref="446991534"/>
-												<bool key="NSIsDisabled">YES</bool>
-												<bool key="NSIsSeparator">YES</bool>
-												<string key="NSTitle"/>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="644046920">
-												<reference key="NSMenu" ref="446991534"/>
-												<string key="NSTitle">Show Ruler</string>
-												<string key="NSKeyEquiv"/>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="231811626">
-												<reference key="NSMenu" ref="446991534"/>
-												<string key="NSTitle">Copy Ruler</string>
-												<string key="NSKeyEquiv">c</string>
-												<int key="NSKeyEquivModMask">1310720</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-											<object class="NSMenuItem" id="883618387">
-												<reference key="NSMenu" ref="446991534"/>
-												<string key="NSTitle">Paste Ruler</string>
-												<string key="NSKeyEquiv">v</string>
-												<int key="NSKeyEquivModMask">1310720</int>
-												<int key="NSMnemonicLoc">2147483647</int>
-												<reference key="NSOnImage" ref="35465992"/>
-												<reference key="NSMixedImage" ref="502551668"/>
-											</object>
-										</object>
-									</object>
-								</object>
-							</object>
-						</object>
-					</object>
-					<object class="NSMenuItem" id="586577488">
-						<reference key="NSMenu" ref="649796088"/>
-						<string key="NSTitle">View</string>
-						<string key="NSKeyEquiv"/>
-						<int key="NSKeyEquivModMask">1048576</int>
-						<int key="NSMnemonicLoc">2147483647</int>
-						<reference key="NSOnImage" ref="35465992"/>
-						<reference key="NSMixedImage" ref="502551668"/>
-						<string key="NSAction">submenuAction:</string>
-						<object class="NSMenu" key="NSSubmenu" id="466310130">
-							<string key="NSTitle">View</string>
-							<object class="NSMutableArray" key="NSMenuItems">
-								<bool key="EncodedWithXMLCoder">YES</bool>
-								<object class="NSMenuItem" id="102151532">
-									<reference key="NSMenu" ref="466310130"/>
-									<string key="NSTitle">Show Toolbar</string>
-									<string key="NSKeyEquiv">t</string>
-									<int key="NSKeyEquivModMask">1572864</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="237841660">
-									<reference key="NSMenu" ref="466310130"/>
-									<string key="NSTitle">Customize Toolbar…</string>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-							</object>
-						</object>
-					</object>
-					<object class="NSMenuItem" id="713487014">
-						<reference key="NSMenu" ref="649796088"/>
-						<string key="NSTitle">Window</string>
-						<string key="NSKeyEquiv"/>
-						<int key="NSKeyEquivModMask">1048576</int>
-						<int key="NSMnemonicLoc">2147483647</int>
-						<reference key="NSOnImage" ref="35465992"/>
-						<reference key="NSMixedImage" ref="502551668"/>
-						<string key="NSAction">submenuAction:</string>
-						<object class="NSMenu" key="NSSubmenu" id="835318025">
-							<string key="NSTitle">Window</string>
-							<object class="NSMutableArray" key="NSMenuItems">
-								<bool key="EncodedWithXMLCoder">YES</bool>
-								<object class="NSMenuItem" id="1011231497">
-									<reference key="NSMenu" ref="835318025"/>
-									<string key="NSTitle">Minimize</string>
-									<string key="NSKeyEquiv">m</string>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="575023229">
-									<reference key="NSMenu" ref="835318025"/>
-									<string key="NSTitle">Zoom</string>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="299356726">
-									<reference key="NSMenu" ref="835318025"/>
-									<bool key="NSIsDisabled">YES</bool>
-									<bool key="NSIsSeparator">YES</bool>
-									<string key="NSTitle"/>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="625202149">
-									<reference key="NSMenu" ref="835318025"/>
-									<string key="NSTitle">Bring All to Front</string>
-									<string key="NSKeyEquiv"/>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-							</object>
-							<string key="NSName">_NSWindowsMenu</string>
-						</object>
-					</object>
-					<object class="NSMenuItem" id="448692316">
-						<reference key="NSMenu" ref="649796088"/>
-						<string key="NSTitle">Help</string>
-						<string key="NSKeyEquiv"/>
-						<int key="NSMnemonicLoc">2147483647</int>
-						<reference key="NSOnImage" ref="35465992"/>
-						<reference key="NSMixedImage" ref="502551668"/>
-						<string key="NSAction">submenuAction:</string>
-						<object class="NSMenu" key="NSSubmenu" id="992780483">
-							<string key="NSTitle">Help</string>
-							<object class="NSMutableArray" key="NSMenuItems">
-								<bool key="EncodedWithXMLCoder">YES</bool>
-								<object class="NSMenuItem" id="105068016">
-									<reference key="NSMenu" ref="992780483"/>
-									<string key="NSTitle">CocoaDebugger Help</string>
-									<string key="NSKeyEquiv">?</string>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-							</object>
-							<string key="NSName">_NSHelpMenu</string>
-						</object>
-					</object>
-				</object>
-				<string key="NSName">_NSMainMenu</string>
-			</object>
-			<object class="NSWindowTemplate" id="972006081">
-				<int key="NSWindowStyleMask">15</int>
-				<int key="NSWindowBacking">2</int>
-				<string key="NSWindowRect">{{335, 239}, {840, 680}}</string>
-				<int key="NSWTFlags">1954021376</int>
-				<string key="NSWindowTitle">CocoaDebugger</string>
-				<string key="NSWindowClass">SkDebugger</string>
-				<nil key="NSViewClass"/>
-				<string key="NSWindowContentMaxSize">{3.40282e+38, 3.40282e+38}</string>
-				<object class="NSView" key="NSWindowView" id="439893737">
-					<reference key="NSNextResponder"/>
-					<int key="NSvFlags">256</int>
-					<object class="NSMutableArray" key="NSSubviews">
-						<bool key="EncodedWithXMLCoder">YES</bool>
-						<object class="NSSplitView" id="235139528">
-							<reference key="NSNextResponder" ref="439893737"/>
-							<int key="NSvFlags">274</int>
-							<object class="NSMutableArray" key="NSSubviews">
-								<bool key="EncodedWithXMLCoder">YES</bool>
-								<object class="NSCustomView" id="638101539">
-									<reference key="NSNextResponder" ref="235139528"/>
-									<int key="NSvFlags">256</int>
-									<string key="NSFrameSize">{200, 680}</string>
-									<reference key="NSSuperview" ref="235139528"/>
-									<string key="NSClassName">SkNSView</string>
-								</object>
-								<object class="NSSplitView" id="341659203">
-									<reference key="NSNextResponder" ref="235139528"/>
-									<int key="NSvFlags">268</int>
-									<object class="NSMutableArray" key="NSSubviews">
-										<bool key="EncodedWithXMLCoder">YES</bool>
-										<object class="NSCustomView" id="882643913">
-											<reference key="NSNextResponder" ref="341659203"/>
-											<int key="NSvFlags">256</int>
-											<string key="NSFrameSize">{639, 529}</string>
-											<reference key="NSSuperview" ref="341659203"/>
-											<string key="NSClassName">SkNSView</string>
-										</object>
-										<object class="NSCustomView" id="119239">
-											<reference key="NSNextResponder" ref="341659203"/>
-											<int key="NSvFlags">256</int>
-											<string key="NSFrame">{{0, 530}, {639, 150}}</string>
-											<reference key="NSSuperview" ref="341659203"/>
-											<string key="NSClassName">SkNSView</string>
-										</object>
-									</object>
-									<string key="NSFrame">{{201, 0}, {639, 680}}</string>
-									<reference key="NSSuperview" ref="235139528"/>
-									<int key="NSDividerStyle">2</int>
-								</object>
-							</object>
-							<string key="NSFrameSize">{840, 680}</string>
-							<reference key="NSSuperview" ref="439893737"/>
-							<bool key="NSIsVertical">YES</bool>
-							<int key="NSDividerStyle">2</int>
-						</object>
-					</object>
-					<string key="NSFrameSize">{840, 680}</string>
-					<reference key="NSSuperview"/>
-				</object>
-				<string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string>
-				<string key="NSMaxSize">{3.40282e+38, 3.40282e+38}</string>
-			</object>
-			<object class="NSCustomObject" id="976324537">
-				<string key="NSClassName">CocoaDebuggerAppDelegate</string>
-			</object>
-			<object class="NSCustomObject" id="755631768">
-				<string key="NSClassName">NSFontManager</string>
-			</object>
-			<object class="NSCustomObject" id="615377771">
-				<string key="NSClassName">SkMenuController</string>
-			</object>
-		</object>
-		<object class="IBObjectContainer" key="IBDocument.Objects">
-			<object class="NSMutableArray" key="connectionRecords">
-				<bool key="EncodedWithXMLCoder">YES</bool>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">performMiniaturize:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="1011231497"/>
-					</object>
-					<int key="connectionID">37</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">arrangeInFront:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="625202149"/>
-					</object>
-					<int key="connectionID">39</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">print:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="49223823"/>
-					</object>
-					<int key="connectionID">86</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">runPageLayout:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="294629803"/>
-					</object>
-					<int key="connectionID">87</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">clearRecentDocuments:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="759406840"/>
-					</object>
-					<int key="connectionID">127</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">orderFrontStandardAboutPanel:</string>
-						<reference key="source" ref="1021"/>
-						<reference key="destination" ref="238522557"/>
-					</object>
-					<int key="connectionID">142</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">performClose:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="776162233"/>
-					</object>
-					<int key="connectionID">193</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">toggleContinuousSpellChecking:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="948374510"/>
-					</object>
-					<int key="connectionID">222</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">undo:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="1058277027"/>
-					</object>
-					<int key="connectionID">223</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">copy:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="860595796"/>
-					</object>
-					<int key="connectionID">224</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">checkSpelling:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="96193923"/>
-					</object>
-					<int key="connectionID">225</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">paste:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="29853731"/>
-					</object>
-					<int key="connectionID">226</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">stopSpeaking:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="680220178"/>
-					</object>
-					<int key="connectionID">227</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">cut:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="296257095"/>
-					</object>
-					<int key="connectionID">228</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">showGuessPanel:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="679648819"/>
-					</object>
-					<int key="connectionID">230</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">redo:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="790794224"/>
-					</object>
-					<int key="connectionID">231</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">selectAll:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="583158037"/>
-					</object>
-					<int key="connectionID">232</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">startSpeaking:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="731782645"/>
-					</object>
-					<int key="connectionID">233</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">delete:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="437104165"/>
-					</object>
-					<int key="connectionID">235</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">performZoom:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="575023229"/>
-					</object>
-					<int key="connectionID">240</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">performFindPanelAction:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="447796847"/>
-					</object>
-					<int key="connectionID">241</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">centerSelectionInVisibleArea:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="88285865"/>
-					</object>
-					<int key="connectionID">245</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">toggleGrammarChecking:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="967646866"/>
-					</object>
-					<int key="connectionID">347</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">toggleSmartInsertDelete:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="605118523"/>
-					</object>
-					<int key="connectionID">355</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">toggleAutomaticQuoteSubstitution:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="197661976"/>
-					</object>
-					<int key="connectionID">356</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">toggleAutomaticLinkDetection:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="708854459"/>
-					</object>
-					<int key="connectionID">357</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">saveDocument:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="1023925487"/>
-					</object>
-					<int key="connectionID">362</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">saveDocumentAs:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="117038363"/>
-					</object>
-					<int key="connectionID">363</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">revertDocumentToSaved:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="579971712"/>
-					</object>
-					<int key="connectionID">364</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">runToolbarCustomizationPalette:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="237841660"/>
-					</object>
-					<int key="connectionID">365</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">toggleToolbarShown:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="102151532"/>
-					</object>
-					<int key="connectionID">366</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">hide:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="755159360"/>
-					</object>
-					<int key="connectionID">367</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">hideOtherApplications:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="342932134"/>
-					</object>
-					<int key="connectionID">368</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">unhideAllApplications:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="908899353"/>
-					</object>
-					<int key="connectionID">370</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">newDocument:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="705341025"/>
-					</object>
-					<int key="connectionID">373</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">addFontTrait:</string>
-						<reference key="source" ref="755631768"/>
-						<reference key="destination" ref="305399458"/>
-					</object>
-					<int key="connectionID">421</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">addFontTrait:</string>
-						<reference key="source" ref="755631768"/>
-						<reference key="destination" ref="814362025"/>
-					</object>
-					<int key="connectionID">422</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">modifyFont:</string>
-						<reference key="source" ref="755631768"/>
-						<reference key="destination" ref="885547335"/>
-					</object>
-					<int key="connectionID">423</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">orderFrontFontPanel:</string>
-						<reference key="source" ref="755631768"/>
-						<reference key="destination" ref="159677712"/>
-					</object>
-					<int key="connectionID">424</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">modifyFont:</string>
-						<reference key="source" ref="755631768"/>
-						<reference key="destination" ref="158063935"/>
-					</object>
-					<int key="connectionID">425</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">raiseBaseline:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="941806246"/>
-					</object>
-					<int key="connectionID">426</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">lowerBaseline:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="1045724900"/>
-					</object>
-					<int key="connectionID">427</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">copyFont:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="596732606"/>
-					</object>
-					<int key="connectionID">428</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">subscript:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="1037576581"/>
-					</object>
-					<int key="connectionID">429</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">superscript:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="644725453"/>
-					</object>
-					<int key="connectionID">430</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">tightenKerning:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="677519740"/>
-					</object>
-					<int key="connectionID">431</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">underline:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="330926929"/>
-					</object>
-					<int key="connectionID">432</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">orderFrontColorPanel:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="1012600125"/>
-					</object>
-					<int key="connectionID">433</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">useAllLigatures:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="663508465"/>
-					</object>
-					<int key="connectionID">434</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">loosenKerning:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="238351151"/>
-					</object>
-					<int key="connectionID">435</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">pasteFont:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="393423671"/>
-					</object>
-					<int key="connectionID">436</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">unscript:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="257962622"/>
-					</object>
-					<int key="connectionID">437</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">useStandardKerning:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="252969304"/>
-					</object>
-					<int key="connectionID">438</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">useStandardLigatures:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="706297211"/>
-					</object>
-					<int key="connectionID">439</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">turnOffLigatures:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="568384683"/>
-					</object>
-					<int key="connectionID">440</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">turnOffKerning:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="766922938"/>
-					</object>
-					<int key="connectionID">441</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">terminate:</string>
-						<reference key="source" ref="1050"/>
-						<reference key="destination" ref="632727374"/>
-					</object>
-					<int key="connectionID">449</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">toggleAutomaticSpellingCorrection:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="795346622"/>
-					</object>
-					<int key="connectionID">456</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">orderFrontSubstitutionsPanel:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="65139061"/>
-					</object>
-					<int key="connectionID">458</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">toggleAutomaticDashSubstitution:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="672708820"/>
-					</object>
-					<int key="connectionID">461</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">toggleAutomaticTextReplacement:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="537092702"/>
-					</object>
-					<int key="connectionID">463</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">uppercaseWord:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="1060694897"/>
-					</object>
-					<int key="connectionID">464</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">capitalizeWord:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="56570060"/>
-					</object>
-					<int key="connectionID">467</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">lowercaseWord:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="879586729"/>
-					</object>
-					<int key="connectionID">468</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">pasteAsPlainText:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="82994268"/>
-					</object>
-					<int key="connectionID">486</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">performFindPanelAction:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="326711663"/>
-					</object>
-					<int key="connectionID">487</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">performFindPanelAction:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="270902937"/>
-					</object>
-					<int key="connectionID">488</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">performFindPanelAction:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="159080638"/>
-					</object>
-					<int key="connectionID">489</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">showHelp:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="105068016"/>
-					</object>
-					<int key="connectionID">493</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">delegate</string>
-						<reference key="source" ref="1021"/>
-						<reference key="destination" ref="976324537"/>
-					</object>
-					<int key="connectionID">495</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">alignCenter:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="630155264"/>
-					</object>
-					<int key="connectionID">518</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">pasteRuler:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="883618387"/>
-					</object>
-					<int key="connectionID">519</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">toggleRuler:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="644046920"/>
-					</object>
-					<int key="connectionID">520</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">alignRight:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="512868991"/>
-					</object>
-					<int key="connectionID">521</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">copyRuler:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="231811626"/>
-					</object>
-					<int key="connectionID">522</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">alignJustified:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="945678886"/>
-					</object>
-					<int key="connectionID">523</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">alignLeft:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="875092757"/>
-					</object>
-					<int key="connectionID">524</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">makeBaseWritingDirectionNatural:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="551969625"/>
-					</object>
-					<int key="connectionID">525</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">makeBaseWritingDirectionLeftToRight:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="249532473"/>
-					</object>
-					<int key="connectionID">526</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">makeBaseWritingDirectionRightToLeft:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="607364498"/>
-					</object>
-					<int key="connectionID">527</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">makeTextWritingDirectionNatural:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="380031999"/>
-					</object>
-					<int key="connectionID">528</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">makeTextWritingDirectionLeftToRight:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="825984362"/>
-					</object>
-					<int key="connectionID">529</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">makeTextWritingDirectionRightToLeft:</string>
-						<reference key="source" ref="1014"/>
-						<reference key="destination" ref="560145579"/>
-					</object>
-					<int key="connectionID">530</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">window</string>
-						<reference key="source" ref="976324537"/>
-						<reference key="destination" ref="972006081"/>
-					</object>
-					<int key="connectionID">537</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">fCommandView</string>
-						<reference key="source" ref="972006081"/>
-						<reference key="destination" ref="638101539"/>
-					</object>
-					<int key="connectionID">550</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">fContentView</string>
-						<reference key="source" ref="972006081"/>
-						<reference key="destination" ref="882643913"/>
-					</object>
-					<int key="connectionID">551</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">fInfoView</string>
-						<reference key="source" ref="972006081"/>
-						<reference key="destination" ref="119239"/>
-					</object>
-					<int key="connectionID">552</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">menu</string>
-						<reference key="source" ref="972006081"/>
-						<reference key="destination" ref="649796088"/>
-					</object>
-					<int key="connectionID">554</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">openFile:</string>
-						<reference key="source" ref="615377771"/>
-						<reference key="destination" ref="722745758"/>
-					</object>
-					<int key="connectionID">565</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">fWindow</string>
-						<reference key="source" ref="615377771"/>
-						<reference key="destination" ref="972006081"/>
-					</object>
-					<int key="connectionID">567</int>
-				</object>
-			</object>
-			<object class="IBMutableOrderedSet" key="objectRecords">
-				<object class="NSArray" key="orderedObjects">
-					<bool key="EncodedWithXMLCoder">YES</bool>
-					<object class="IBObjectRecord">
-						<int key="objectID">0</int>
-						<object class="NSArray" key="object" id="0">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-						</object>
-						<reference key="children" ref="1048"/>
-						<nil key="parent"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">-2</int>
-						<reference key="object" ref="1021"/>
-						<reference key="parent" ref="0"/>
-						<string key="objectName">File's Owner</string>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">-1</int>
-						<reference key="object" ref="1014"/>
-						<reference key="parent" ref="0"/>
-						<string key="objectName">First Responder</string>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">-3</int>
-						<reference key="object" ref="1050"/>
-						<reference key="parent" ref="0"/>
-						<string key="objectName">Application</string>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">29</int>
-						<reference key="object" ref="649796088"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="713487014"/>
-							<reference ref="694149608"/>
-							<reference ref="952259628"/>
-							<reference ref="379814623"/>
-							<reference ref="586577488"/>
-							<reference ref="302598603"/>
-							<reference ref="448692316"/>
-						</object>
-						<reference key="parent" ref="0"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">19</int>
-						<reference key="object" ref="713487014"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="835318025"/>
-						</object>
-						<reference key="parent" ref="649796088"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">56</int>
-						<reference key="object" ref="694149608"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="110575045"/>
-						</object>
-						<reference key="parent" ref="649796088"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">217</int>
-						<reference key="object" ref="952259628"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="789758025"/>
-						</object>
-						<reference key="parent" ref="649796088"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">83</int>
-						<reference key="object" ref="379814623"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="720053764"/>
-						</object>
-						<reference key="parent" ref="649796088"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">81</int>
-						<reference key="object" ref="720053764"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="1023925487"/>
-							<reference ref="117038363"/>
-							<reference ref="49223823"/>
-							<reference ref="722745758"/>
-							<reference ref="705341025"/>
-							<reference ref="1025936716"/>
-							<reference ref="294629803"/>
-							<reference ref="776162233"/>
-							<reference ref="425164168"/>
-							<reference ref="579971712"/>
-							<reference ref="1010469920"/>
-						</object>
-						<reference key="parent" ref="379814623"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">75</int>
-						<reference key="object" ref="1023925487"/>
-						<reference key="parent" ref="720053764"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">80</int>
-						<reference key="object" ref="117038363"/>
-						<reference key="parent" ref="720053764"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">78</int>
-						<reference key="object" ref="49223823"/>
-						<reference key="parent" ref="720053764"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">72</int>
-						<reference key="object" ref="722745758"/>
-						<reference key="parent" ref="720053764"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">82</int>
-						<reference key="object" ref="705341025"/>
-						<reference key="parent" ref="720053764"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">124</int>
-						<reference key="object" ref="1025936716"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="1065607017"/>
-						</object>
-						<reference key="parent" ref="720053764"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">77</int>
-						<reference key="object" ref="294629803"/>
-						<reference key="parent" ref="720053764"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">73</int>
-						<reference key="object" ref="776162233"/>
-						<reference key="parent" ref="720053764"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">79</int>
-						<reference key="object" ref="425164168"/>
-						<reference key="parent" ref="720053764"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">112</int>
-						<reference key="object" ref="579971712"/>
-						<reference key="parent" ref="720053764"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">74</int>
-						<reference key="object" ref="1010469920"/>
-						<reference key="parent" ref="720053764"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">125</int>
-						<reference key="object" ref="1065607017"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="759406840"/>
-						</object>
-						<reference key="parent" ref="1025936716"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">126</int>
-						<reference key="object" ref="759406840"/>
-						<reference key="parent" ref="1065607017"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">205</int>
-						<reference key="object" ref="789758025"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="437104165"/>
-							<reference ref="583158037"/>
-							<reference ref="1058277027"/>
-							<reference ref="212016141"/>
-							<reference ref="296257095"/>
-							<reference ref="29853731"/>
-							<reference ref="860595796"/>
-							<reference ref="1040322652"/>
-							<reference ref="790794224"/>
-							<reference ref="892235320"/>
-							<reference ref="972420730"/>
-							<reference ref="676164635"/>
-							<reference ref="507821607"/>
-							<reference ref="288088188"/>
-							<reference ref="82994268"/>
-						</object>
-						<reference key="parent" ref="952259628"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">202</int>
-						<reference key="object" ref="437104165"/>
-						<reference key="parent" ref="789758025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">198</int>
-						<reference key="object" ref="583158037"/>
-						<reference key="parent" ref="789758025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">207</int>
-						<reference key="object" ref="1058277027"/>
-						<reference key="parent" ref="789758025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">214</int>
-						<reference key="object" ref="212016141"/>
-						<reference key="parent" ref="789758025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">199</int>
-						<reference key="object" ref="296257095"/>
-						<reference key="parent" ref="789758025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">203</int>
-						<reference key="object" ref="29853731"/>
-						<reference key="parent" ref="789758025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">197</int>
-						<reference key="object" ref="860595796"/>
-						<reference key="parent" ref="789758025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">206</int>
-						<reference key="object" ref="1040322652"/>
-						<reference key="parent" ref="789758025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">215</int>
-						<reference key="object" ref="790794224"/>
-						<reference key="parent" ref="789758025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">218</int>
-						<reference key="object" ref="892235320"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="963351320"/>
-						</object>
-						<reference key="parent" ref="789758025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">216</int>
-						<reference key="object" ref="972420730"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="769623530"/>
-						</object>
-						<reference key="parent" ref="789758025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">200</int>
-						<reference key="object" ref="769623530"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="948374510"/>
-							<reference ref="96193923"/>
-							<reference ref="679648819"/>
-							<reference ref="967646866"/>
-							<reference ref="859480356"/>
-							<reference ref="795346622"/>
-						</object>
-						<reference key="parent" ref="972420730"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">219</int>
-						<reference key="object" ref="948374510"/>
-						<reference key="parent" ref="769623530"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">201</int>
-						<reference key="object" ref="96193923"/>
-						<reference key="parent" ref="769623530"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">204</int>
-						<reference key="object" ref="679648819"/>
-						<reference key="parent" ref="769623530"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">220</int>
-						<reference key="object" ref="963351320"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="270902937"/>
-							<reference ref="88285865"/>
-							<reference ref="159080638"/>
-							<reference ref="326711663"/>
-							<reference ref="447796847"/>
-						</object>
-						<reference key="parent" ref="892235320"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">213</int>
-						<reference key="object" ref="270902937"/>
-						<reference key="parent" ref="963351320"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">210</int>
-						<reference key="object" ref="88285865"/>
-						<reference key="parent" ref="963351320"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">221</int>
-						<reference key="object" ref="159080638"/>
-						<reference key="parent" ref="963351320"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">208</int>
-						<reference key="object" ref="326711663"/>
-						<reference key="parent" ref="963351320"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">209</int>
-						<reference key="object" ref="447796847"/>
-						<reference key="parent" ref="963351320"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">57</int>
-						<reference key="object" ref="110575045"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="238522557"/>
-							<reference ref="755159360"/>
-							<reference ref="908899353"/>
-							<reference ref="632727374"/>
-							<reference ref="646227648"/>
-							<reference ref="609285721"/>
-							<reference ref="481834944"/>
-							<reference ref="304266470"/>
-							<reference ref="1046388886"/>
-							<reference ref="1056857174"/>
-							<reference ref="342932134"/>
-						</object>
-						<reference key="parent" ref="694149608"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">58</int>
-						<reference key="object" ref="238522557"/>
-						<reference key="parent" ref="110575045"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">134</int>
-						<reference key="object" ref="755159360"/>
-						<reference key="parent" ref="110575045"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">150</int>
-						<reference key="object" ref="908899353"/>
-						<reference key="parent" ref="110575045"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">136</int>
-						<reference key="object" ref="632727374"/>
-						<reference key="parent" ref="110575045"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">144</int>
-						<reference key="object" ref="646227648"/>
-						<reference key="parent" ref="110575045"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">129</int>
-						<reference key="object" ref="609285721"/>
-						<reference key="parent" ref="110575045"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">143</int>
-						<reference key="object" ref="481834944"/>
-						<reference key="parent" ref="110575045"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">236</int>
-						<reference key="object" ref="304266470"/>
-						<reference key="parent" ref="110575045"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">131</int>
-						<reference key="object" ref="1046388886"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="752062318"/>
-						</object>
-						<reference key="parent" ref="110575045"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">149</int>
-						<reference key="object" ref="1056857174"/>
-						<reference key="parent" ref="110575045"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">145</int>
-						<reference key="object" ref="342932134"/>
-						<reference key="parent" ref="110575045"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">130</int>
-						<reference key="object" ref="752062318"/>
-						<reference key="parent" ref="1046388886"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">24</int>
-						<reference key="object" ref="835318025"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="299356726"/>
-							<reference ref="625202149"/>
-							<reference ref="575023229"/>
-							<reference ref="1011231497"/>
-						</object>
-						<reference key="parent" ref="713487014"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">92</int>
-						<reference key="object" ref="299356726"/>
-						<reference key="parent" ref="835318025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">5</int>
-						<reference key="object" ref="625202149"/>
-						<reference key="parent" ref="835318025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">239</int>
-						<reference key="object" ref="575023229"/>
-						<reference key="parent" ref="835318025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">23</int>
-						<reference key="object" ref="1011231497"/>
-						<reference key="parent" ref="835318025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">295</int>
-						<reference key="object" ref="586577488"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="466310130"/>
-						</object>
-						<reference key="parent" ref="649796088"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">296</int>
-						<reference key="object" ref="466310130"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="102151532"/>
-							<reference ref="237841660"/>
-						</object>
-						<reference key="parent" ref="586577488"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">297</int>
-						<reference key="object" ref="102151532"/>
-						<reference key="parent" ref="466310130"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">298</int>
-						<reference key="object" ref="237841660"/>
-						<reference key="parent" ref="466310130"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">211</int>
-						<reference key="object" ref="676164635"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="785027613"/>
-						</object>
-						<reference key="parent" ref="789758025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">212</int>
-						<reference key="object" ref="785027613"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="680220178"/>
-							<reference ref="731782645"/>
-						</object>
-						<reference key="parent" ref="676164635"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">195</int>
-						<reference key="object" ref="680220178"/>
-						<reference key="parent" ref="785027613"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">196</int>
-						<reference key="object" ref="731782645"/>
-						<reference key="parent" ref="785027613"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">346</int>
-						<reference key="object" ref="967646866"/>
-						<reference key="parent" ref="769623530"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">348</int>
-						<reference key="object" ref="507821607"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="698887838"/>
-						</object>
-						<reference key="parent" ref="789758025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">349</int>
-						<reference key="object" ref="698887838"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="605118523"/>
-							<reference ref="197661976"/>
-							<reference ref="708854459"/>
-							<reference ref="65139061"/>
-							<reference ref="19036812"/>
-							<reference ref="672708820"/>
-							<reference ref="537092702"/>
-						</object>
-						<reference key="parent" ref="507821607"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">350</int>
-						<reference key="object" ref="605118523"/>
-						<reference key="parent" ref="698887838"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">351</int>
-						<reference key="object" ref="197661976"/>
-						<reference key="parent" ref="698887838"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">354</int>
-						<reference key="object" ref="708854459"/>
-						<reference key="parent" ref="698887838"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">371</int>
-						<reference key="object" ref="972006081"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="439893737"/>
-						</object>
-						<reference key="parent" ref="0"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">372</int>
-						<reference key="object" ref="439893737"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="235139528"/>
-						</object>
-						<reference key="parent" ref="972006081"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">375</int>
-						<reference key="object" ref="302598603"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="941447902"/>
-						</object>
-						<reference key="parent" ref="649796088"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">376</int>
-						<reference key="object" ref="941447902"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="792887677"/>
-							<reference ref="215659978"/>
-						</object>
-						<reference key="parent" ref="302598603"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">377</int>
-						<reference key="object" ref="792887677"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="786677654"/>
-						</object>
-						<reference key="parent" ref="941447902"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">388</int>
-						<reference key="object" ref="786677654"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="159677712"/>
-							<reference ref="305399458"/>
-							<reference ref="814362025"/>
-							<reference ref="330926929"/>
-							<reference ref="533507878"/>
-							<reference ref="158063935"/>
-							<reference ref="885547335"/>
-							<reference ref="901062459"/>
-							<reference ref="767671776"/>
-							<reference ref="691570813"/>
-							<reference ref="769124883"/>
-							<reference ref="739652853"/>
-							<reference ref="1012600125"/>
-							<reference ref="214559597"/>
-							<reference ref="596732606"/>
-							<reference ref="393423671"/>
-						</object>
-						<reference key="parent" ref="792887677"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">389</int>
-						<reference key="object" ref="159677712"/>
-						<reference key="parent" ref="786677654"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">390</int>
-						<reference key="object" ref="305399458"/>
-						<reference key="parent" ref="786677654"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">391</int>
-						<reference key="object" ref="814362025"/>
-						<reference key="parent" ref="786677654"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">392</int>
-						<reference key="object" ref="330926929"/>
-						<reference key="parent" ref="786677654"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">393</int>
-						<reference key="object" ref="533507878"/>
-						<reference key="parent" ref="786677654"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">394</int>
-						<reference key="object" ref="158063935"/>
-						<reference key="parent" ref="786677654"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">395</int>
-						<reference key="object" ref="885547335"/>
-						<reference key="parent" ref="786677654"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">396</int>
-						<reference key="object" ref="901062459"/>
-						<reference key="parent" ref="786677654"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">397</int>
-						<reference key="object" ref="767671776"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="175441468"/>
-						</object>
-						<reference key="parent" ref="786677654"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">398</int>
-						<reference key="object" ref="691570813"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="1058217995"/>
-						</object>
-						<reference key="parent" ref="786677654"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">399</int>
-						<reference key="object" ref="769124883"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="18263474"/>
-						</object>
-						<reference key="parent" ref="786677654"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">400</int>
-						<reference key="object" ref="739652853"/>
-						<reference key="parent" ref="786677654"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">401</int>
-						<reference key="object" ref="1012600125"/>
-						<reference key="parent" ref="786677654"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">402</int>
-						<reference key="object" ref="214559597"/>
-						<reference key="parent" ref="786677654"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">403</int>
-						<reference key="object" ref="596732606"/>
-						<reference key="parent" ref="786677654"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">404</int>
-						<reference key="object" ref="393423671"/>
-						<reference key="parent" ref="786677654"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">405</int>
-						<reference key="object" ref="18263474"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="257962622"/>
-							<reference ref="644725453"/>
-							<reference ref="1037576581"/>
-							<reference ref="941806246"/>
-							<reference ref="1045724900"/>
-						</object>
-						<reference key="parent" ref="769124883"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">406</int>
-						<reference key="object" ref="257962622"/>
-						<reference key="parent" ref="18263474"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">407</int>
-						<reference key="object" ref="644725453"/>
-						<reference key="parent" ref="18263474"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">408</int>
-						<reference key="object" ref="1037576581"/>
-						<reference key="parent" ref="18263474"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">409</int>
-						<reference key="object" ref="941806246"/>
-						<reference key="parent" ref="18263474"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">410</int>
-						<reference key="object" ref="1045724900"/>
-						<reference key="parent" ref="18263474"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">411</int>
-						<reference key="object" ref="1058217995"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="706297211"/>
-							<reference ref="568384683"/>
-							<reference ref="663508465"/>
-						</object>
-						<reference key="parent" ref="691570813"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">412</int>
-						<reference key="object" ref="706297211"/>
-						<reference key="parent" ref="1058217995"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">413</int>
-						<reference key="object" ref="568384683"/>
-						<reference key="parent" ref="1058217995"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">414</int>
-						<reference key="object" ref="663508465"/>
-						<reference key="parent" ref="1058217995"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">415</int>
-						<reference key="object" ref="175441468"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="252969304"/>
-							<reference ref="766922938"/>
-							<reference ref="677519740"/>
-							<reference ref="238351151"/>
-						</object>
-						<reference key="parent" ref="767671776"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">416</int>
-						<reference key="object" ref="252969304"/>
-						<reference key="parent" ref="175441468"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">417</int>
-						<reference key="object" ref="766922938"/>
-						<reference key="parent" ref="175441468"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">418</int>
-						<reference key="object" ref="677519740"/>
-						<reference key="parent" ref="175441468"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">419</int>
-						<reference key="object" ref="238351151"/>
-						<reference key="parent" ref="175441468"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">420</int>
-						<reference key="object" ref="755631768"/>
-						<reference key="parent" ref="0"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">450</int>
-						<reference key="object" ref="288088188"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="579392910"/>
-						</object>
-						<reference key="parent" ref="789758025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">451</int>
-						<reference key="object" ref="579392910"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="1060694897"/>
-							<reference ref="879586729"/>
-							<reference ref="56570060"/>
-						</object>
-						<reference key="parent" ref="288088188"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">452</int>
-						<reference key="object" ref="1060694897"/>
-						<reference key="parent" ref="579392910"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">453</int>
-						<reference key="object" ref="859480356"/>
-						<reference key="parent" ref="769623530"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">454</int>
-						<reference key="object" ref="795346622"/>
-						<reference key="parent" ref="769623530"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">457</int>
-						<reference key="object" ref="65139061"/>
-						<reference key="parent" ref="698887838"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">459</int>
-						<reference key="object" ref="19036812"/>
-						<reference key="parent" ref="698887838"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">460</int>
-						<reference key="object" ref="672708820"/>
-						<reference key="parent" ref="698887838"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">462</int>
-						<reference key="object" ref="537092702"/>
-						<reference key="parent" ref="698887838"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">465</int>
-						<reference key="object" ref="879586729"/>
-						<reference key="parent" ref="579392910"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">466</int>
-						<reference key="object" ref="56570060"/>
-						<reference key="parent" ref="579392910"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">485</int>
-						<reference key="object" ref="82994268"/>
-						<reference key="parent" ref="789758025"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">490</int>
-						<reference key="object" ref="448692316"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="992780483"/>
-						</object>
-						<reference key="parent" ref="649796088"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">491</int>
-						<reference key="object" ref="992780483"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="105068016"/>
-						</object>
-						<reference key="parent" ref="448692316"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">492</int>
-						<reference key="object" ref="105068016"/>
-						<reference key="parent" ref="992780483"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">494</int>
-						<reference key="object" ref="976324537"/>
-						<reference key="parent" ref="0"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">496</int>
-						<reference key="object" ref="215659978"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="446991534"/>
-						</object>
-						<reference key="parent" ref="941447902"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">497</int>
-						<reference key="object" ref="446991534"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="875092757"/>
-							<reference ref="630155264"/>
-							<reference ref="945678886"/>
-							<reference ref="512868991"/>
-							<reference ref="163117631"/>
-							<reference ref="31516759"/>
-							<reference ref="908105787"/>
-							<reference ref="644046920"/>
-							<reference ref="231811626"/>
-							<reference ref="883618387"/>
-						</object>
-						<reference key="parent" ref="215659978"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">498</int>
-						<reference key="object" ref="875092757"/>
-						<reference key="parent" ref="446991534"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">499</int>
-						<reference key="object" ref="630155264"/>
-						<reference key="parent" ref="446991534"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">500</int>
-						<reference key="object" ref="945678886"/>
-						<reference key="parent" ref="446991534"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">501</int>
-						<reference key="object" ref="512868991"/>
-						<reference key="parent" ref="446991534"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">502</int>
-						<reference key="object" ref="163117631"/>
-						<reference key="parent" ref="446991534"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">503</int>
-						<reference key="object" ref="31516759"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="956096989"/>
-						</object>
-						<reference key="parent" ref="446991534"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">504</int>
-						<reference key="object" ref="908105787"/>
-						<reference key="parent" ref="446991534"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">505</int>
-						<reference key="object" ref="644046920"/>
-						<reference key="parent" ref="446991534"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">506</int>
-						<reference key="object" ref="231811626"/>
-						<reference key="parent" ref="446991534"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">507</int>
-						<reference key="object" ref="883618387"/>
-						<reference key="parent" ref="446991534"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">508</int>
-						<reference key="object" ref="956096989"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="257099033"/>
-							<reference ref="551969625"/>
-							<reference ref="249532473"/>
-							<reference ref="607364498"/>
-							<reference ref="508151438"/>
-							<reference ref="981751889"/>
-							<reference ref="380031999"/>
-							<reference ref="825984362"/>
-							<reference ref="560145579"/>
-						</object>
-						<reference key="parent" ref="31516759"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">509</int>
-						<reference key="object" ref="257099033"/>
-						<reference key="parent" ref="956096989"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">510</int>
-						<reference key="object" ref="551969625"/>
-						<reference key="parent" ref="956096989"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">511</int>
-						<reference key="object" ref="249532473"/>
-						<reference key="parent" ref="956096989"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">512</int>
-						<reference key="object" ref="607364498"/>
-						<reference key="parent" ref="956096989"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">513</int>
-						<reference key="object" ref="508151438"/>
-						<reference key="parent" ref="956096989"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">514</int>
-						<reference key="object" ref="981751889"/>
-						<reference key="parent" ref="956096989"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">515</int>
-						<reference key="object" ref="380031999"/>
-						<reference key="parent" ref="956096989"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">516</int>
-						<reference key="object" ref="825984362"/>
-						<reference key="parent" ref="956096989"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">517</int>
-						<reference key="object" ref="560145579"/>
-						<reference key="parent" ref="956096989"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">541</int>
-						<reference key="object" ref="235139528"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="638101539"/>
-							<reference ref="341659203"/>
-						</object>
-						<reference key="parent" ref="439893737"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">542</int>
-						<reference key="object" ref="638101539"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-						</object>
-						<reference key="parent" ref="235139528"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">547</int>
-						<reference key="object" ref="341659203"/>
-						<object class="NSMutableArray" key="children">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<reference ref="882643913"/>
-							<reference ref="119239"/>
-						</object>
-						<reference key="parent" ref="235139528"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">548</int>
-						<reference key="object" ref="882643913"/>
-						<reference key="parent" ref="341659203"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">549</int>
-						<reference key="object" ref="119239"/>
-						<reference key="parent" ref="341659203"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">564</int>
-						<reference key="object" ref="615377771"/>
-						<reference key="parent" ref="0"/>
-					</object>
-				</object>
-			</object>
-			<object class="NSMutableDictionary" key="flattenedProperties">
-				<bool key="EncodedWithXMLCoder">YES</bool>
-				<object class="NSArray" key="dict.sortedKeys">
-					<bool key="EncodedWithXMLCoder">YES</bool>
-					<string>-3.IBPluginDependency</string>
-					<string>112.IBPluginDependency</string>
-					<string>112.ImportedFromIB2</string>
-					<string>124.IBPluginDependency</string>
-					<string>124.ImportedFromIB2</string>
-					<string>125.IBPluginDependency</string>
-					<string>125.ImportedFromIB2</string>
-					<string>125.editorWindowContentRectSynchronizationRect</string>
-					<string>126.IBPluginDependency</string>
-					<string>126.ImportedFromIB2</string>
-					<string>129.IBPluginDependency</string>
-					<string>129.ImportedFromIB2</string>
-					<string>130.IBPluginDependency</string>
-					<string>130.ImportedFromIB2</string>
-					<string>130.editorWindowContentRectSynchronizationRect</string>
-					<string>131.IBPluginDependency</string>
-					<string>131.ImportedFromIB2</string>
-					<string>134.IBPluginDependency</string>
-					<string>134.ImportedFromIB2</string>
-					<string>136.IBPluginDependency</string>
-					<string>136.ImportedFromIB2</string>
-					<string>143.IBPluginDependency</string>
-					<string>143.ImportedFromIB2</string>
-					<string>144.IBPluginDependency</string>
-					<string>144.ImportedFromIB2</string>
-					<string>145.IBPluginDependency</string>
-					<string>145.ImportedFromIB2</string>
-					<string>149.IBPluginDependency</string>
-					<string>149.ImportedFromIB2</string>
-					<string>150.IBPluginDependency</string>
-					<string>150.ImportedFromIB2</string>
-					<string>19.IBPluginDependency</string>
-					<string>19.ImportedFromIB2</string>
-					<string>195.IBPluginDependency</string>
-					<string>195.ImportedFromIB2</string>
-					<string>196.IBPluginDependency</string>
-					<string>196.ImportedFromIB2</string>
-					<string>197.IBPluginDependency</string>
-					<string>197.ImportedFromIB2</string>
-					<string>198.IBPluginDependency</string>
-					<string>198.ImportedFromIB2</string>
-					<string>199.IBPluginDependency</string>
-					<string>199.ImportedFromIB2</string>
-					<string>200.IBEditorWindowLastContentRect</string>
-					<string>200.IBPluginDependency</string>
-					<string>200.ImportedFromIB2</string>
-					<string>200.editorWindowContentRectSynchronizationRect</string>
-					<string>201.IBPluginDependency</string>
-					<string>201.ImportedFromIB2</string>
-					<string>202.IBPluginDependency</string>
-					<string>202.ImportedFromIB2</string>
-					<string>203.IBPluginDependency</string>
-					<string>203.ImportedFromIB2</string>
-					<string>204.IBPluginDependency</string>
-					<string>204.ImportedFromIB2</string>
-					<string>205.IBEditorWindowLastContentRect</string>
-					<string>205.IBPluginDependency</string>
-					<string>205.ImportedFromIB2</string>
-					<string>205.editorWindowContentRectSynchronizationRect</string>
-					<string>206.IBPluginDependency</string>
-					<string>206.ImportedFromIB2</string>
-					<string>207.IBPluginDependency</string>
-					<string>207.ImportedFromIB2</string>
-					<string>208.IBPluginDependency</string>
-					<string>208.ImportedFromIB2</string>
-					<string>209.IBPluginDependency</string>
-					<string>209.ImportedFromIB2</string>
-					<string>210.IBPluginDependency</string>
-					<string>210.ImportedFromIB2</string>
-					<string>211.IBPluginDependency</string>
-					<string>211.ImportedFromIB2</string>
-					<string>212.IBPluginDependency</string>
-					<string>212.ImportedFromIB2</string>
-					<string>212.editorWindowContentRectSynchronizationRect</string>
-					<string>213.IBPluginDependency</string>
-					<string>213.ImportedFromIB2</string>
-					<string>214.IBPluginDependency</string>
-					<string>214.ImportedFromIB2</string>
-					<string>215.IBPluginDependency</string>
-					<string>215.ImportedFromIB2</string>
-					<string>216.IBPluginDependency</string>
-					<string>216.ImportedFromIB2</string>
-					<string>217.IBPluginDependency</string>
-					<string>217.ImportedFromIB2</string>
-					<string>218.IBPluginDependency</string>
-					<string>218.ImportedFromIB2</string>
-					<string>219.IBPluginDependency</string>
-					<string>219.ImportedFromIB2</string>
-					<string>220.IBEditorWindowLastContentRect</string>
-					<string>220.IBPluginDependency</string>
-					<string>220.ImportedFromIB2</string>
-					<string>220.editorWindowContentRectSynchronizationRect</string>
-					<string>221.IBPluginDependency</string>
-					<string>221.ImportedFromIB2</string>
-					<string>23.IBPluginDependency</string>
-					<string>23.ImportedFromIB2</string>
-					<string>236.IBPluginDependency</string>
-					<string>236.ImportedFromIB2</string>
-					<string>239.IBPluginDependency</string>
-					<string>239.ImportedFromIB2</string>
-					<string>24.IBEditorWindowLastContentRect</string>
-					<string>24.IBPluginDependency</string>
-					<string>24.ImportedFromIB2</string>
-					<string>24.editorWindowContentRectSynchronizationRect</string>
-					<string>29.IBEditorWindowLastContentRect</string>
-					<string>29.IBPluginDependency</string>
-					<string>29.ImportedFromIB2</string>
-					<string>29.WindowOrigin</string>
-					<string>29.editorWindowContentRectSynchronizationRect</string>
-					<string>295.IBPluginDependency</string>
-					<string>296.IBEditorWindowLastContentRect</string>
-					<string>296.IBPluginDependency</string>
-					<string>296.editorWindowContentRectSynchronizationRect</string>
-					<string>297.IBPluginDependency</string>
-					<string>298.IBPluginDependency</string>
-					<string>346.IBPluginDependency</string>
-					<string>346.ImportedFromIB2</string>
-					<string>348.IBPluginDependency</string>
-					<string>348.ImportedFromIB2</string>
-					<string>349.IBEditorWindowLastContentRect</string>
-					<string>349.IBPluginDependency</string>
-					<string>349.ImportedFromIB2</string>
-					<string>349.editorWindowContentRectSynchronizationRect</string>
-					<string>350.IBPluginDependency</string>
-					<string>350.ImportedFromIB2</string>
-					<string>351.IBPluginDependency</string>
-					<string>351.ImportedFromIB2</string>
-					<string>354.IBPluginDependency</string>
-					<string>354.ImportedFromIB2</string>
-					<string>371.IBEditorWindowLastContentRect</string>
-					<string>371.IBPluginDependency</string>
-					<string>371.IBWindowTemplateEditedContentRect</string>
-					<string>371.NSWindowTemplate.visibleAtLaunch</string>
-					<string>371.editorWindowContentRectSynchronizationRect</string>
-					<string>371.windowTemplate.maxSize</string>
-					<string>371.windowTemplate.minSize</string>
-					<string>372.IBPluginDependency</string>
-					<string>375.IBPluginDependency</string>
-					<string>376.IBEditorWindowLastContentRect</string>
-					<string>376.IBPluginDependency</string>
-					<string>377.IBPluginDependency</string>
-					<string>388.IBEditorWindowLastContentRect</string>
-					<string>388.IBPluginDependency</string>
-					<string>389.IBPluginDependency</string>
-					<string>390.IBPluginDependency</string>
-					<string>391.IBPluginDependency</string>
-					<string>392.IBPluginDependency</string>
-					<string>393.IBPluginDependency</string>
-					<string>394.IBPluginDependency</string>
-					<string>395.IBPluginDependency</string>
-					<string>396.IBPluginDependency</string>
-					<string>397.IBPluginDependency</string>
-					<string>398.IBPluginDependency</string>
-					<string>399.IBPluginDependency</string>
-					<string>400.IBPluginDependency</string>
-					<string>401.IBPluginDependency</string>
-					<string>402.IBPluginDependency</string>
-					<string>403.IBPluginDependency</string>
-					<string>404.IBPluginDependency</string>
-					<string>405.IBPluginDependency</string>
-					<string>406.IBPluginDependency</string>
-					<string>407.IBPluginDependency</string>
-					<string>408.IBPluginDependency</string>
-					<string>409.IBPluginDependency</string>
-					<string>410.IBPluginDependency</string>
-					<string>411.IBPluginDependency</string>
-					<string>412.IBPluginDependency</string>
-					<string>413.IBPluginDependency</string>
-					<string>414.IBPluginDependency</string>
-					<string>415.IBPluginDependency</string>
-					<string>416.IBPluginDependency</string>
-					<string>417.IBPluginDependency</string>
-					<string>418.IBPluginDependency</string>
-					<string>419.IBPluginDependency</string>
-					<string>450.IBPluginDependency</string>
-					<string>451.IBEditorWindowLastContentRect</string>
-					<string>451.IBPluginDependency</string>
-					<string>452.IBPluginDependency</string>
-					<string>453.IBPluginDependency</string>
-					<string>454.IBPluginDependency</string>
-					<string>457.IBPluginDependency</string>
-					<string>459.IBPluginDependency</string>
-					<string>460.IBPluginDependency</string>
-					<string>462.IBPluginDependency</string>
-					<string>465.IBPluginDependency</string>
-					<string>466.IBPluginDependency</string>
-					<string>485.IBPluginDependency</string>
-					<string>490.IBPluginDependency</string>
-					<string>491.IBEditorWindowLastContentRect</string>
-					<string>491.IBPluginDependency</string>
-					<string>492.IBPluginDependency</string>
-					<string>496.IBPluginDependency</string>
-					<string>497.IBEditorWindowLastContentRect</string>
-					<string>497.IBPluginDependency</string>
-					<string>498.IBPluginDependency</string>
-					<string>499.IBPluginDependency</string>
-					<string>5.IBPluginDependency</string>
-					<string>5.ImportedFromIB2</string>
-					<string>500.IBPluginDependency</string>
-					<string>501.IBPluginDependency</string>
-					<string>502.IBPluginDependency</string>
-					<string>503.IBPluginDependency</string>
-					<string>504.IBPluginDependency</string>
-					<string>505.IBPluginDependency</string>
-					<string>506.IBPluginDependency</string>
-					<string>507.IBPluginDependency</string>
-					<string>508.IBEditorWindowLastContentRect</string>
-					<string>508.IBPluginDependency</string>
-					<string>509.IBPluginDependency</string>
-					<string>510.IBPluginDependency</string>
-					<string>511.IBPluginDependency</string>
-					<string>512.IBPluginDependency</string>
-					<string>513.IBPluginDependency</string>
-					<string>514.IBPluginDependency</string>
-					<string>515.IBPluginDependency</string>
-					<string>516.IBPluginDependency</string>
-					<string>517.IBPluginDependency</string>
-					<string>541.IBPluginDependency</string>
-					<string>542.IBPluginDependency</string>
-					<string>547.IBPluginDependency</string>
-					<string>548.IBPluginDependency</string>
-					<string>549.IBPluginDependency</string>
-					<string>56.IBPluginDependency</string>
-					<string>56.ImportedFromIB2</string>
-					<string>564.IBPluginDependency</string>
-					<string>57.IBEditorWindowLastContentRect</string>
-					<string>57.IBPluginDependency</string>
-					<string>57.ImportedFromIB2</string>
-					<string>57.editorWindowContentRectSynchronizationRect</string>
-					<string>58.IBPluginDependency</string>
-					<string>58.ImportedFromIB2</string>
-					<string>72.IBPluginDependency</string>
-					<string>72.ImportedFromIB2</string>
-					<string>73.IBPluginDependency</string>
-					<string>73.ImportedFromIB2</string>
-					<string>74.IBPluginDependency</string>
-					<string>74.ImportedFromIB2</string>
-					<string>75.IBPluginDependency</string>
-					<string>75.ImportedFromIB2</string>
-					<string>77.IBPluginDependency</string>
-					<string>77.ImportedFromIB2</string>
-					<string>78.IBPluginDependency</string>
-					<string>78.ImportedFromIB2</string>
-					<string>79.IBPluginDependency</string>
-					<string>79.ImportedFromIB2</string>
-					<string>80.IBPluginDependency</string>
-					<string>80.ImportedFromIB2</string>
-					<string>81.IBEditorWindowLastContentRect</string>
-					<string>81.IBPluginDependency</string>
-					<string>81.ImportedFromIB2</string>
-					<string>81.editorWindowContentRectSynchronizationRect</string>
-					<string>82.IBPluginDependency</string>
-					<string>82.ImportedFromIB2</string>
-					<string>83.IBPluginDependency</string>
-					<string>83.ImportedFromIB2</string>
-					<string>92.IBPluginDependency</string>
-					<string>92.ImportedFromIB2</string>
-				</object>
-				<object class="NSMutableArray" key="dict.values">
-					<bool key="EncodedWithXMLCoder">YES</bool>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{{522, 812}, {146, 23}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{{436, 809}, {64, 6}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{{753, 187}, {275, 113}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{{608, 612}, {275, 83}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{{567, 553}, {254, 283}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{{187, 434}, {243, 243}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{{608, 612}, {167, 43}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{{753, 217}, {238, 103}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{{608, 612}, {241, 103}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{{654, 239}, {194, 73}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{{525, 802}, {197, 73}}</string>
-					<string>{{366, 1048}, {479, 20}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{74, 862}</string>
-					<string>{{6, 978}, {478, 20}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>{{604, 269}, {231, 43}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>{{475, 832}, {234, 43}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{{746, 287}, {220, 133}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{{608, 612}, {215, 63}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{{307, 304}, {840, 680}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>{{307, 304}, {840, 680}}</string>
-					<integer value="1"/>
-					<string>{{33, 99}, {480, 360}}</string>
-					<string>{3.40282e+38, 3.40282e+38}</string>
-					<string>{0, 0}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>{{591, 420}, {83, 43}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>{{523, 2}, {178, 283}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>{{753, 197}, {170, 63}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>{{725, 289}, {246, 23}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>{{674, 260}, {204, 183}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>{{878, 180}, {164, 173}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>{{286, 129}, {275, 183}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{{23, 794}, {245, 183}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{{511, 845}, {196, 203}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>{{145, 474}, {199, 203}}</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<integer value="1"/>
-				</object>
-			</object>
-			<object class="NSMutableDictionary" key="unlocalizedProperties">
-				<bool key="EncodedWithXMLCoder">YES</bool>
-				<reference key="dict.sortedKeys" ref="0"/>
-				<object class="NSMutableArray" key="dict.values">
-					<bool key="EncodedWithXMLCoder">YES</bool>
-				</object>
-			</object>
-			<nil key="activeLocalization"/>
-			<object class="NSMutableDictionary" key="localizations">
-				<bool key="EncodedWithXMLCoder">YES</bool>
-				<reference key="dict.sortedKeys" ref="0"/>
-				<object class="NSMutableArray" key="dict.values">
-					<bool key="EncodedWithXMLCoder">YES</bool>
-				</object>
-			</object>
-			<nil key="sourceID"/>
-			<int key="maxID">567</int>
-		</object>
-		<object class="IBClassDescriber" key="IBDocument.Classes">
-			<object class="NSMutableArray" key="referencedPartialClassDescriptions">
-				<bool key="EncodedWithXMLCoder">YES</bool>
-				<object class="IBPartialClassDescription">
-					<string key="className">CocoaDebuggerAppDelegate</string>
-					<string key="superclassName">NSObject</string>
-					<object class="NSMutableDictionary" key="outlets">
-						<string key="NS.key.0">window</string>
-						<string key="NS.object.0">SkNSWindow</string>
-					</object>
-					<object class="NSMutableDictionary" key="toOneOutletInfosByName">
-						<string key="NS.key.0">window</string>
-						<object class="IBToOneOutletInfo" key="NS.object.0">
-							<string key="name">window</string>
-							<string key="candidateClassName">SkNSWindow</string>
-						</object>
-					</object>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBProjectSource</string>
-						<string key="minorKey">CocoaDebuggerAppDelegate.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">SkDebugger</string>
-					<string key="superclassName">SkNSWindow</string>
-					<object class="NSMutableDictionary" key="outlets">
-						<bool key="EncodedWithXMLCoder">YES</bool>
-						<object class="NSArray" key="dict.sortedKeys">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<string>fCommandView</string>
-							<string>fContentView</string>
-							<string>fInfoView</string>
-						</object>
-						<object class="NSMutableArray" key="dict.values">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<string>SkNSView</string>
-							<string>SkNSView</string>
-							<string>SkNSView</string>
-						</object>
-					</object>
-					<object class="NSMutableDictionary" key="toOneOutletInfosByName">
-						<bool key="EncodedWithXMLCoder">YES</bool>
-						<object class="NSArray" key="dict.sortedKeys">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<string>fCommandView</string>
-							<string>fContentView</string>
-							<string>fInfoView</string>
-						</object>
-						<object class="NSMutableArray" key="dict.values">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<object class="IBToOneOutletInfo">
-								<string key="name">fCommandView</string>
-								<string key="candidateClassName">SkNSView</string>
-							</object>
-							<object class="IBToOneOutletInfo">
-								<string key="name">fContentView</string>
-								<string key="candidateClassName">SkNSView</string>
-							</object>
-							<object class="IBToOneOutletInfo">
-								<string key="name">fInfoView</string>
-								<string key="candidateClassName">SkNSView</string>
-							</object>
-						</object>
-					</object>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBProjectSource</string>
-						<string key="minorKey">SkDebugger.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">SkMenuController</string>
-					<string key="superclassName">NSObject</string>
-					<object class="NSMutableDictionary" key="actions">
-						<string key="NS.key.0">openFile:</string>
-						<string key="NS.object.0">id</string>
-					</object>
-					<object class="NSMutableDictionary" key="actionInfosByName">
-						<string key="NS.key.0">openFile:</string>
-						<object class="IBActionInfo" key="NS.object.0">
-							<string key="name">openFile:</string>
-							<string key="candidateClassName">id</string>
-						</object>
-					</object>
-					<object class="NSMutableDictionary" key="outlets">
-						<string key="NS.key.0">fWindow</string>
-						<string key="NS.object.0">SkDebugger</string>
-					</object>
-					<object class="NSMutableDictionary" key="toOneOutletInfosByName">
-						<string key="NS.key.0">fWindow</string>
-						<object class="IBToOneOutletInfo" key="NS.object.0">
-							<string key="name">fWindow</string>
-							<string key="candidateClassName">SkDebugger</string>
-						</object>
-					</object>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBProjectSource</string>
-						<string key="minorKey">SkMenuController.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">SkNSView</string>
-					<string key="superclassName">NSView</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBProjectSource</string>
-						<string key="minorKey">../SimpleCocoaApp/SkNSView.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">SkNSWindow</string>
-					<string key="superclassName">NSWindow</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBProjectSource</string>
-						<string key="minorKey">../SimpleCocoaApp/SkNSWindow.h</string>
-					</object>
-				</object>
-			</object>
-			<object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
-				<bool key="EncodedWithXMLCoder">YES</bool>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSApplication</string>
-					<string key="superclassName">NSResponder</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier" id="822405504">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSApplication.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSApplication</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier" id="850738725">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSApplication</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier" id="624831158">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSApplication</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSApplication</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSApplication</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSBrowser</string>
-					<string key="superclassName">NSControl</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSBrowser.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSControl</string>
-					<string key="superclassName">NSView</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier" id="310914472">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSControl.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSDocument</string>
-					<string key="superclassName">NSObject</string>
-					<object class="NSMutableDictionary" key="actions">
-						<bool key="EncodedWithXMLCoder">YES</bool>
-						<object class="NSArray" key="dict.sortedKeys">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<string>printDocument:</string>
-							<string>revertDocumentToSaved:</string>
-							<string>runPageLayout:</string>
-							<string>saveDocument:</string>
-							<string>saveDocumentAs:</string>
-							<string>saveDocumentTo:</string>
-						</object>
-						<object class="NSMutableArray" key="dict.values">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<string>id</string>
-							<string>id</string>
-							<string>id</string>
-							<string>id</string>
-							<string>id</string>
-							<string>id</string>
-						</object>
-					</object>
-					<object class="NSMutableDictionary" key="actionInfosByName">
-						<bool key="EncodedWithXMLCoder">YES</bool>
-						<object class="NSArray" key="dict.sortedKeys">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<string>printDocument:</string>
-							<string>revertDocumentToSaved:</string>
-							<string>runPageLayout:</string>
-							<string>saveDocument:</string>
-							<string>saveDocumentAs:</string>
-							<string>saveDocumentTo:</string>
-						</object>
-						<object class="NSMutableArray" key="dict.values">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<object class="IBActionInfo">
-								<string key="name">printDocument:</string>
-								<string key="candidateClassName">id</string>
-							</object>
-							<object class="IBActionInfo">
-								<string key="name">revertDocumentToSaved:</string>
-								<string key="candidateClassName">id</string>
-							</object>
-							<object class="IBActionInfo">
-								<string key="name">runPageLayout:</string>
-								<string key="candidateClassName">id</string>
-							</object>
-							<object class="IBActionInfo">
-								<string key="name">saveDocument:</string>
-								<string key="candidateClassName">id</string>
-							</object>
-							<object class="IBActionInfo">
-								<string key="name">saveDocumentAs:</string>
-								<string key="candidateClassName">id</string>
-							</object>
-							<object class="IBActionInfo">
-								<string key="name">saveDocumentTo:</string>
-								<string key="candidateClassName">id</string>
-							</object>
-						</object>
-					</object>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSDocument.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSDocument</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSDocumentScripting.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSDocumentController</string>
-					<string key="superclassName">NSObject</string>
-					<object class="NSMutableDictionary" key="actions">
-						<bool key="EncodedWithXMLCoder">YES</bool>
-						<object class="NSArray" key="dict.sortedKeys">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<string>clearRecentDocuments:</string>
-							<string>newDocument:</string>
-							<string>openDocument:</string>
-							<string>saveAllDocuments:</string>
-						</object>
-						<object class="NSMutableArray" key="dict.values">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<string>id</string>
-							<string>id</string>
-							<string>id</string>
-							<string>id</string>
-						</object>
-					</object>
-					<object class="NSMutableDictionary" key="actionInfosByName">
-						<bool key="EncodedWithXMLCoder">YES</bool>
-						<object class="NSArray" key="dict.sortedKeys">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<string>clearRecentDocuments:</string>
-							<string>newDocument:</string>
-							<string>openDocument:</string>
-							<string>saveAllDocuments:</string>
-						</object>
-						<object class="NSMutableArray" key="dict.values">
-							<bool key="EncodedWithXMLCoder">YES</bool>
-							<object class="IBActionInfo">
-								<string key="name">clearRecentDocuments:</string>
-								<string key="candidateClassName">id</string>
-							</object>
-							<object class="IBActionInfo">
-								<string key="name">newDocument:</string>
-								<string key="candidateClassName">id</string>
-							</object>
-							<object class="IBActionInfo">
-								<string key="name">openDocument:</string>
-								<string key="candidateClassName">id</string>
-							</object>
-							<object class="IBActionInfo">
-								<string key="name">saveAllDocuments:</string>
-								<string key="candidateClassName">id</string>
-							</object>
-						</object>
-					</object>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSDocumentController.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSFontManager</string>
-					<string key="superclassName">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier" id="946436764">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSFormatter</string>
-					<string key="superclassName">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSMatrix</string>
-					<string key="superclassName">NSControl</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSMatrix.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSMenu</string>
-					<string key="superclassName">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier" id="1056362899">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSMenu.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSMenuItem</string>
-					<string key="superclassName">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier" id="472958451">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSMovieView</string>
-					<string key="superclassName">NSView</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSMovieView.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<reference key="sourceIdentifier" ref="822405504"/>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<reference key="sourceIdentifier" ref="850738725"/>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<reference key="sourceIdentifier" ref="624831158"/>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<reference key="sourceIdentifier" ref="310914472"/>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSDragging.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<reference key="sourceIdentifier" ref="946436764"/>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<reference key="sourceIdentifier" ref="1056362899"/>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier" id="809545482">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSTableView.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier" id="260078765">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSView.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSError.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSObject.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSThread.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSURL.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSResponder</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSResponder</string>
-					<string key="superclassName">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSResponder.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSSplitView</string>
-					<string key="superclassName">NSView</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSSplitView.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSTableView</string>
-					<string key="superclassName">NSControl</string>
-					<reference key="sourceIdentifier" ref="809545482"/>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSText</string>
-					<string key="superclassName">NSView</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSText.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSTextView</string>
-					<string key="superclassName">NSText</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSTextView.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSView</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSClipView.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSView</string>
-					<reference key="sourceIdentifier" ref="472958451"/>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSView</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSView</string>
-					<string key="superclassName">NSResponder</string>
-					<reference key="sourceIdentifier" ref="260078765"/>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSWindow</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSDrawer.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSWindow</string>
-					<string key="superclassName">NSResponder</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSWindow.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSWindow</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSWindowScripting.h</string>
-					</object>
-				</object>
-			</object>
-		</object>
-		<int key="IBDocument.localizationMode">0</int>
-		<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
-		<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
-			<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
-			<integer value="1060" key="NS.object.0"/>
-		</object>
-		<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
-			<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
-			<integer value="3000" key="NS.object.0"/>
-		</object>
-		<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
-		<string key="IBDocument.LastKnownRelativeProjectPath">../CocoaDebugger.xcodeproj</string>
-		<int key="IBDocument.defaultPropertyAccessControl">3</int>
-		<object class="NSMutableDictionary" key="IBDocument.LastKnownImageSizes">
-			<bool key="EncodedWithXMLCoder">YES</bool>
-			<object class="NSArray" key="dict.sortedKeys">
-				<bool key="EncodedWithXMLCoder">YES</bool>
-				<string>NSMenuCheckmark</string>
-				<string>NSMenuMixedState</string>
-			</object>
-			<object class="NSMutableArray" key="dict.values">
-				<bool key="EncodedWithXMLCoder">YES</bool>
-				<string>{9, 8}</string>
-				<string>{7, 2}</string>
-			</object>
-		</object>
-	</data>
-</archive>
diff --git a/experimental/CocoaDebugger/SkCommandListView.cpp b/experimental/CocoaDebugger/SkCommandListView.cpp
deleted file mode 100644
index 209adcf..0000000
--- a/experimental/CocoaDebugger/SkCommandListView.cpp
+++ /dev/null
@@ -1,148 +0,0 @@
-
-/*
- * Copyright 2011 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#include "SkDebuggerViews.h"
-
-SkCommandListView::SkCommandListView() {
-    fBGColor = 0xFFBBBBBB;
-    fTopIndex = 0;
-    fHighlight = 0;
-    
-    SkPaint p;
-    p.setTextSize(SkIntToScalar(SkDebugger_TextSize));
-    fSpacing = p.getFontSpacing();
-    fCentered = false;
-    fRange = (int)(this->height()/fSpacing) - 1;
-}
-
-bool SkCommandListView::onEvent(const SkEvent& evt) {
-    if (evt.isType(SkDebugger_CommandType)) {
-        SkString msg(evt.findString(SkDebugger_Atom));
-        fList.push_back(msg);
-        this->inval(NULL);
-        return true;
-    }
-    return this->INHERITED::onEvent(evt);
-}
-
-void SkCommandListView::onSizeChange() {
-    fRange = (int)(this->height()/fSpacing) - 1;
-    this->INHERITED::onSizeChange();
-}
-
-void SkCommandListView::reinit() {
-    fList.clear();
-    fTopIndex = 0;
-    fHighlight = 0;
-}
-
-void SkCommandListView::alignCenter() {
-    if (!fCentered || fHighlight < fRange/2 || fHighlight > (fList.size() - fRange/2))
-        return;
-    else {
-        if (fHighlight > (fTopIndex + fRange/2)) {
-            fTopIndex += fHighlight - (fTopIndex + fRange/2);
-        }
-        if (fHighlight < (fTopIndex + fRange/2)) {
-            fTopIndex -= (fTopIndex + fRange/2) - fHighlight;
-        }
-    }
-}
-
-int SkCommandListView::nextItem() {
-    if (fHighlight < fList.size() - 1)
-        ++fHighlight;
-    if (fHighlight < fTopIndex || fHighlight > (fTopIndex + fRange)) {
-        fTopIndex = fHighlight;
-    }
-    if (fHighlight == (fTopIndex + fRange)) {
-        ++fTopIndex;
-    }
-    this->alignCenter();
-    this->inval(NULL);
-    return fHighlight;
-}
-
-int SkCommandListView::prevItem() {
-    if (fHighlight > 0)
-        --fHighlight;
-    if (fHighlight < fTopIndex || fHighlight > (fTopIndex + fRange)) {
-        fTopIndex = fHighlight;
-    }
-    this->alignCenter();
-    this->inval(NULL);
-    return fHighlight;
-}
-
-int SkCommandListView::scrollUp() {
-    if (fTopIndex > 0)
-        --fTopIndex;
-    this->inval(NULL);
-    return fHighlight;
-}
-
-int SkCommandListView::scrollDown() {
-    if (fTopIndex < (fList.size() - 1))
-        ++fTopIndex;
-    this->inval(NULL);
-    return fHighlight;
-}
-
-void SkCommandListView::highlight(int index) {
-    SkASSERT(index >= 0 && index < fList.size());
-    if (fHighlight != index) {
-        fHighlight = index;
-        this->alignCenter();
-        this->inval(NULL);
-    }
-}
-
-int SkCommandListView::selectHighlight(int ypos) {
-    int i = (int)(ypos/fSpacing) + fTopIndex;
-    if (i >= fList.size()) {
-        i = fList.size() - 1;
-    }
-    if (fHighlight != i) {
-        fHighlight = i;
-        this->alignCenter();
-        this->inval(NULL);
-    }
-    return fHighlight;
-}
-
-void SkCommandListView::toggleCentered() {
-    fCentered = !fCentered;
-    this->alignCenter();
-    this->inval(NULL);
-}
-
-void SkCommandListView::onDraw(SkCanvas* canvas) {
-    canvas->drawColor(fBGColor);
-    
-    SkPaint p;
-    p.setTextSize(SkIntToScalar(SkDebugger_TextSize));
-    p.setAntiAlias(true);
-    
-    //draw highlight
-    int selected = fHighlight - fTopIndex;
-    SkRect r = {0, fSpacing * selected, this->width(), fSpacing * (selected+1)};
-    p.setColor(0x880033DD);
-    canvas->drawRect(r, p);
-    
-    int endIndex = fTopIndex + fRange; 
-    if (endIndex > fList.size())
-        endIndex = fList.size();
-    
-    p.setColor(0xFF000000);
-    int pos;
-    for (int i = fTopIndex; i < endIndex; ++i) {
-        pos = i - fTopIndex;
-        canvas->drawText(fList[i].c_str(), fList[i].size(), 
-                         0, fSpacing - 2 + fSpacing * pos, p);
-    }
-    this->INHERITED::onDraw(canvas);
-}
\ No newline at end of file
diff --git a/experimental/CocoaDebugger/SkContentView.cpp b/experimental/CocoaDebugger/SkContentView.cpp
deleted file mode 100644
index 8846826..0000000
--- a/experimental/CocoaDebugger/SkContentView.cpp
+++ /dev/null
@@ -1,157 +0,0 @@
-
-/*
- * Copyright 2011 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#include "SkDebuggerViews.h"
-#include <stdio.h>
-
-SkContentView::SkContentView(SkEventSinkID clID, SkEventSinkID ipID) : 
-                         fDumper(this->getSinkID(), clID, ipID) {
-    fBGColor = 0xFFDDDDDD;
-    fAtomsToRead = 0;
-    fDisplayClip = false;
-}
-
-SkContentView::~SkContentView() {
-    fAtomBounds.clear();
-    fFrameBounds.clear();
-}
-
-void SkContentView::reinit(const char* filename) {
-    fFilePath.set(filename);
-    fAtomsToRead = 0;
-    this->init();
-}
-
-bool SkContentView::onEvent(const SkEvent& evt) {
-    return this->INHERITED::onEvent(evt);
-}
-
-//Read file atom by atom and record attom bounds
-void SkContentView::init() {
-    fDumper.unload();
-    fAtomBounds.clear();
-    fFrameBounds.clear();
-    
-    SkDumpCanvasM* dumpCanvas = new SkDumpCanvasM(&fDumper);
-    SkGPipeReader* dumpReader = new SkGPipeReader(dumpCanvas);
-    
-    FILE* f = fopen(fFilePath.c_str(), "rb");
-    SkASSERT(f != NULL);
-    fseek(f, 0, SEEK_END);
-    int fileSize = ftell(f) * sizeof(char);
-    fseek(f, 0, SEEK_SET);
-    if (fileSize > 0) {
-        char* block = (char*)sk_malloc_throw(fileSize);
-        fread(block, 1, fileSize, f);
-        int offset = 0;
-        int frameBound = 0;
-        size_t bytesRead;
-        while (offset < fileSize) {
-            SkGPipeReader::Status s = dumpReader->playback(block + offset, 
-                                                           fileSize - offset, 
-                                                           &bytesRead, true);
-            SkASSERT(SkGPipeReader::kError_Status != s);
-            offset += bytesRead;
-            if (SkGPipeReader::kDone_Status == s) {
-                fDumper.dump(dumpCanvas,SkDumpCanvasM::kNULL_Verb, 
-                             "End of Frame", NULL);
-                delete dumpReader;
-                delete dumpCanvas;
-                dumpCanvas = new SkDumpCanvasM(&fDumper);
-                dumpReader = new SkGPipeReader(dumpCanvas);
-                frameBound = offset;
-            }
-            fAtomBounds.push_back(offset);
-            fFrameBounds.push_back(frameBound);
-        }
-        sk_free(block);
-    }
-
-    fclose(f);
-    
-    delete dumpReader;
-    delete dumpCanvas;
-    
-    fDumper.load();
-}
-
-void SkContentView::goToAtom(int atom) {
-    if (atom != fAtomsToRead) {
-        fAtomsToRead = atom;
-        this->inval(NULL);
-    }
-}
-
-void SkContentView::toggleClip() {
-    fDisplayClip = !fDisplayClip;
-    this->inval(NULL);
-}
-
-void SkContentView::onDraw(SkCanvas* canvas) {
-    canvas->drawColor(fBGColor);
-    
-    SkAutoCanvasRestore acr(canvas, true);
-
-    int lastFrameBound = fFrameBounds[fAtomsToRead];
-    int toBeRead = fAtomBounds[fAtomsToRead] - lastFrameBound;
-    int firstChunk = (fAtomsToRead > 0) ? fAtomBounds[fAtomsToRead - 1] -
-                                          lastFrameBound: 0;
-    if (toBeRead > 0) {
-        SkDumpCanvasM* dumpCanvas = new SkDumpCanvasM(&fDumper);
-        SkGPipeReader* dumpReader = new SkGPipeReader(dumpCanvas);
-        SkGPipeReader* reader = new SkGPipeReader(canvas);
-        fDumper.disable();
-        
-        FILE* f = fopen(fFilePath.c_str(), "rb");
-        SkASSERT(f != NULL);
-        fseek(f, lastFrameBound, SEEK_SET);
-        char* block = (char*)sk_malloc_throw(toBeRead);
-        fread(block, 1, toBeRead, f);
-        int offset = 0;
-        size_t bytesRead;
-        SkGPipeReader::Status s;
-        //Read the first chunk
-        if (offset < firstChunk && firstChunk < toBeRead) {
-            s = dumpReader->playback(block + offset, firstChunk - offset, NULL, false);
-            SkASSERT(SkGPipeReader::kError_Status != s);
-            s = reader->playback(block + offset, firstChunk - offset, &bytesRead, false);
-            SkASSERT(SkGPipeReader::kError_Status != s);
-            if (SkGPipeReader::kDone_Status == s){
-                delete dumpReader;
-                delete dumpCanvas;
-                dumpCanvas = new SkDumpCanvasM(&fDumper);
-                dumpReader = new SkGPipeReader(dumpCanvas);
-                delete reader;
-                reader = new SkGPipeReader(canvas);
-            }
-            offset += bytesRead;
-        }
-        SkASSERT(offset == firstChunk);
-        //Then read the current atom
-        fDumper.enable();
-        s = dumpReader->playback(block + offset, toBeRead - offset, NULL, true);
-        SkASSERT(SkGPipeReader::kError_Status != s);
-        s = reader->playback(block + offset, toBeRead - offset, &bytesRead, true);
-        SkASSERT(SkGPipeReader::kError_Status != s);
-
-        sk_free(block);
-        fclose(f);
-        
-        delete reader;
-        delete dumpReader;
-        delete dumpCanvas;
-        
-        if (fDisplayClip) {
-            SkPaint p;
-            p.setColor(0x440000AA);
-            SkPath path;
-            canvas->getTotalClip().getBoundaryPath(&path);
-            canvas->drawPath(path, p);
-        }
-    }
-    this->INHERITED::onDraw(canvas);
-}
\ No newline at end of file
diff --git a/experimental/CocoaDebugger/SkDebugger.h b/experimental/CocoaDebugger/SkDebugger.h
deleted file mode 100644
index f18848e..0000000
--- a/experimental/CocoaDebugger/SkDebugger.h
+++ /dev/null
@@ -1,22 +0,0 @@
-
-/*
- * Copyright 2011 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#import "SkNSWindow.h"
-#import "SkDebuggerViews.h"
-@interface SkDebugger : SkNSWindow {
-    IBOutlet SkNSView* fCommandView;
-    IBOutlet SkNSView* fContentView;
-    IBOutlet SkNSView* fInfoView;
-    
-    SkCommandListView* fCommand;
-    SkContentView* fContent;
-    SkInfoPanelView* fInfo;
-}
-
-- (void)loadFile:(NSString *)filename;
-@end
-
diff --git a/experimental/CocoaDebugger/SkDebugger.mm b/experimental/CocoaDebugger/SkDebugger.mm
deleted file mode 100644
index a969583..0000000
--- a/experimental/CocoaDebugger/SkDebugger.mm
+++ /dev/null
@@ -1,156 +0,0 @@
-#import "SkDebugger.h"
-@implementation SkDebugger
--(void) installSkViews {
-    
-    float width = [self frame].size.width;
-    float height = [self frame].size.height;
-    float commandListW = 200;
-    float infoPanelH = 150.0;
-    fCommand = new SkCommandListView;
-    fCommand->setSize(commandListW, height);
-    fCommand->setVisibleP(true);
-    
-    fInfo = new SkInfoPanelView;
-    fInfo->setSize(width - commandListW, infoPanelH);
-    fInfo->setVisibleP(true);
-    
-    fContent = new SkContentView(fCommand->getSinkID(), 
-                                 fInfo->getSinkID());
-    fContent->setSize(width - commandListW, height - infoPanelH);
-    fContent->setVisibleP(true);
-    
-    [fInfoView addSkView:fInfo];
-    [fCommandView addSkView:fCommand];
-    [fContentView addSkView:fContent];
-    
-    fInfo->unref();
-    fCommand->unref();
-    fContent->unref();
-}
-
-- (void)loadFile:(NSString *)filename {
-    fCommand->reinit();
-    fContent->reinit([filename UTF8String]);
-}
-
-- (void)keyDown:(NSEvent *)event {
-    // arrow keys have this mask
-    if ([event modifierFlags] & NSNumericPadKeyMask) { 
-        NSString *theArrow = [event charactersIgnoringModifiers];
-        if ( [theArrow length] == 0 )
-            return;            // reject dead keys
-        if ( [theArrow length] == 1 ) {
-            switch ([theArrow characterAtIndex:0]) {
-                case NSLeftArrowFunctionKey:
-                    fContent->goToAtom(fCommand->prevItem());
-                    break;
-                case NSRightArrowFunctionKey:
-                    fContent->goToAtom(fCommand->nextItem());
-                    break;
-                case NSUpArrowFunctionKey:
-                    fContent->goToAtom(fCommand->scrollUp());
-                    break;
-                case NSDownArrowFunctionKey:
-                    fContent->goToAtom(fCommand->scrollDown());
-                    break;
-                default:
-                    [super keyDown:event];
-            }
-            return;
-        }
-    }
-    else {//normal keys
-        switch ([[event characters] characterAtIndex:0]) {
-            case 'c':
-                fContent->toggleClip();
-                break;
-            case 'e':
-                fCommand->toggleCentered();
-                break;
-            default:
-                [super keyDown:event];
-        }
-        return;
-    }
-    
-    [super keyDown:event];
-}
-
-- (void)mouseDown:(NSEvent *)event {
-    if ([event clickCount] > 1) {
-        [fContentView resetTransformations];
-        [fContentView setNeedsDisplay:YES];
-    }
-    else {
-        NSPoint p = [event locationInWindow];
-        NSRect commandRect = [fCommandView convertRectToBase:[fCommandView bounds]];
-        if ([fCommandView mouse:p inRect:commandRect]) {
-            NSPoint mouseLocInView = [fCommandView convertPoint:p fromView:nil];
-            fContent->goToAtom(fCommand->selectHighlight(mouseLocInView.y));
-        }
-    }
-    [super mouseDown:event];
-}
-
-- (void)mouseDragged:(NSEvent *)event {
-    NSPoint p = [event locationInWindow];
-    NSRect contentRect = [fContentView convertRectToBase:[fContentView bounds]];
-    NSRect commandRect = [fCommandView convertRectToBase:[fCommandView bounds]];
-    if ([fContentView mouse:p inRect:contentRect]) {
-        fContentView.fOffset =  NSMakePoint(fContentView.fOffset.x + [event deltaX], 
-                                           fContentView.fOffset.y + [event deltaY]);
-        fContentView.fCenter =  NSMakePoint(fContentView.fCenter.x - [event deltaX], 
-                                           fContentView.fCenter.y - [event deltaY]);
-        [fContentView setNeedsDisplay:YES];
-    }
-    [super mouseDragged:event];
-}
-
-- (void)magnifyWithEvent:(NSEvent *)event {
-    if ([fContentView mouse:[event locationInWindow] 
-                     inRect:[fContentView convertRectToBase:[fContentView bounds]]]) {
-//        fContentView.fCenter = [fContentView convertPoint:[event locationInWindow]
-//                                                fromView:nil];
-        fContentView.fScale = fContentView.fScale * ([event magnification] + 1.0);
-        [fContentView setNeedsDisplay:YES];
-    }
-    [super magnifyWithEvent:event];
-}
-
-- (void)rotateWithEvent:(NSEvent *)event {
-    if ([fContentView mouse:[event locationInWindow] 
-                     inRect:[fContentView convertRectToBase:[fContentView bounds]]]) {
-//        fContentView.fCenter  = [fContentView convertPoint:[event locationInWindow]
-//                                          fromView:nil];
-        fContentView.fRotation = fContentView.fRotation - [event rotation];
-        [fContentView setNeedsDisplay:YES];
-    }
-    [super rotateWithEvent:event];
-}
-
-- (void)scrollWheel:(NSEvent *)event {
-    NSPoint p = [event locationInWindow];
-    NSRect contentRect = [fContentView convertRectToBase:[fContentView bounds]];
-    NSRect commandRect = [fCommandView convertRectToBase:[fCommandView bounds]];
-    if ([fContentView mouse:p inRect:contentRect]) {
-//        fContentView.fCenter = [fContentView convertPoint:[event locationInWindow]
-//                                                fromView:nil];
-        if ([event deltaY] > 0) {
-            fContentView.fScale = fContentView.fScale * (1.05);
-        }
-        if ([event deltaY] < 0) {
-            fContentView.fScale = fContentView.fScale * (0.95);
-        }
-        [fContentView setNeedsDisplay:YES];
-    }
-    if ([fCommandView mouse:p inRect:commandRect]) {
-        if ([event deltaY] > 0) {
-            fContent->goToAtom(fCommand->scrollUp());
-        }
-        if ([event deltaY] < 0) {
-            fContent->goToAtom(fCommand->scrollDown());
-        }
-    }
-    [super scrollWheel:event];
-}
-@end
\ No newline at end of file
diff --git a/experimental/CocoaDebugger/SkDebuggerViews.h b/experimental/CocoaDebugger/SkDebuggerViews.h
deleted file mode 100644
index d292140..0000000
--- a/experimental/CocoaDebugger/SkDebuggerViews.h
+++ /dev/null
@@ -1,121 +0,0 @@
-
-/*
- * Copyright 2011 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#include "SkView.h"
-#include "SkColor.h"
-#include "SkBitmap.h"
-#include "SkCanvas.h"
-#include "SkGPipe.h"
-#include "SkPaint.h"
-
-#include "SkDebugDumper.h"
-#include <deque> 
-#define SkDebugger_TextSize 14
-
-#define SkDebugger_CommandType  "SkDebugger_Command"
-#define SkDebugger_StateType    "SkDebugger_State"
-
-#define SkDebugger_Atom         "SkDebugger_Atom"
-#define SkDebugger_Matrix       "SkDebugger_Matrix"
-#define SkDebugger_Clip         "SkDebugger_Clip"
-#define SkDebugger_PaintInfo    "SkDebugger_PaintInfo"
-#define SkDebugger_Paint        "SkDebugger_Paint"
-
-/*
- * Debugger - Main Content
- */
-class SkContentView : public SkView {
-public:
-    SkContentView(SkEventSinkID clID, SkEventSinkID ipID);
-    ~SkContentView();
-    
-    void init();
-    void reinit(const char* fileName);
-    void toggleClip();
-    void goToAtom(int atom);
-    
-protected:
-    virtual bool onEvent(const SkEvent& evt);
-    virtual void onDraw(SkCanvas* canvas);
-    
-private:
-    SkColor         fBGColor;
-    int             fAtomsToRead;
-    std::deque<int> fAtomBounds;
-    std::deque<int> fFrameBounds;
-    bool            fDisplayClip;
-    SkString        fFilePath;
-    SkDebugDumper   fDumper;
-    typedef SkView INHERITED;
-};
-
-/*
- * Debugger - Info Panel
- */
-class SkInfoPanelView : public SkView {
-public:
-    SkInfoPanelView();
-    
-protected:
-    virtual bool onEvent(const SkEvent& evt);
-    virtual void onDraw(SkCanvas* canvas);
-    
-private:
-    SkColor     fBGColor;
-    SkPaint     fPaint;
-    SkString    fMatrix;
-    SkString    fPaintInfo;
-    SkString    fClip;
-    typedef SkView INHERITED;
-};
-
-/*
- * Debugger - Commands List
- */
-class SkCommandListView : public SkView {
-public:
-    SkCommandListView();
-    void reinit();
-    int nextItem();
-    int prevItem();
-    int scrollUp();
-    int scrollDown();
-    void highlight(int index);
-    int  selectHighlight(int ypos);
-    void toggleCentered();
-    
-protected:
-    virtual bool onEvent(const SkEvent& evt);
-    virtual void onSizeChange();
-    virtual void onDraw(SkCanvas* canvas);
-private:
-    void init();
-    void alignCenter();
-    SkColor     fBGColor;
-    int         fTopIndex;
-    int         fHighlight;
-    SkScalar    fSpacing;
-    int         fRange;
-    bool        fCentered;
-    std::deque<SkString> fList;
-    typedef SkView INHERITED;
-};
-
-
-static void* PaintProc(void* ptr, bool doRef) {
-    SkPaint* p = (SkPaint*) ptr;
-    
-    if (doRef) {
-        return new SkPaint(*p);
-    }
-    else {
-        delete p;
-        return NULL;
-    }
-    
-}
-
diff --git a/experimental/CocoaDebugger/SkDumpCanvasM.cpp b/experimental/CocoaDebugger/SkDumpCanvasM.cpp
deleted file mode 100644
index 80d2422..0000000
--- a/experimental/CocoaDebugger/SkDumpCanvasM.cpp
+++ /dev/null
@@ -1,385 +0,0 @@
-
-/*
- * Copyright 2011 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#include "SkDumpCanvasM.h"
-#include "SkPicture.h"
-#include "SkPixelRef.h"
-#include "SkString.h"
-#include <stdarg.h>
-
-// needed just to know that these are all subclassed from SkFlattenable
-#include "SkShader.h"
-#include "SkPathEffect.h"
-#include "SkXfermode.h"
-#include "SkColorFilter.h"
-#include "SkPathEffect.h"
-#include "SkMaskFilter.h"
-#include "SkEvent.h"
-static void toString(const SkRect& r, SkString* str) {
-    str->printf("[%g,%g %g:%g]",
-                SkScalarToFloat(r.fLeft), SkScalarToFloat(r.fTop),
-                SkScalarToFloat(r.width()), SkScalarToFloat(r.height()));
-}
-
-static void toString(const SkIRect& r, SkString* str) {
-    str->printf("[%d,%d %d:%d]", r.fLeft, r.fTop, r.width(), r.height());
-}
-
-static void dumpVerbs(const SkPath& path, SkString* str) {
-    SkPath::Iter iter(path, false);
-    SkPoint pts[4];
-    for (;;) {
-        switch (iter.next(pts)) {
-            case SkPath::kMove_Verb:
-                str->appendf(" M%g,%g", pts[0].fX, pts[0].fY);
-                break;
-            case SkPath::kLine_Verb:
-                str->appendf(" L%g,%g", pts[0].fX, pts[0].fY);
-                break;
-            case SkPath::kQuad_Verb:
-                str->appendf(" Q%g,%g,%g,%g", pts[1].fX, pts[1].fY,
-                             pts[2].fX, pts[2].fY);
-                break;
-            case SkPath::kCubic_Verb:
-                str->appendf(" C%g,%g,%g,%g,%g,%g", pts[1].fX, pts[1].fY,
-                             pts[2].fX, pts[2].fY, pts[3].fX, pts[3].fY);
-                break;
-            case SkPath::kClose_Verb:
-                str->appendf("X");
-                break;
-            case SkPath::kDone_Verb:
-                return;
-        }
-    }
-}
-
-static void toString(const SkPath& path, SkString* str) {
-    if (path.isEmpty()) {
-        str->set("path:empty");
-    } else {
-        toString(path.getBounds(), str);
-#if 1
-        SkString s;
-        dumpVerbs(path, &s);
-        str->append(s.c_str());
-#endif
-        str->append("]");
-        str->prepend("path:[");
-    }
-}
-
-static const char* toString(SkRegion::Op op) {
-    static const char* gOpNames[] = {
-        "DIFF", "SECT", "UNION", "XOR", "RDIFF", "REPLACE"
-    };
-    return gOpNames[op];
-}
-
-static void toString(const SkRegion& rgn, SkString* str) {
-    toString(rgn.getBounds(), str);
-    str->prepend("Region:[");
-    str->append("]");
-    if (rgn.isComplex()) {
-        str->append(".complex");
-    }
-}
-
-static const char* toString(SkCanvas::VertexMode vm) {
-    static const char* gVMNames[] = {
-        "TRIANGLES", "STRIP", "FAN"
-    };
-    return gVMNames[vm];
-}
-
-static const char* toString(SkCanvas::PointMode pm) {
-    static const char* gPMNames[] = {
-        "POINTS", "LINES", "POLYGON"
-    };
-    return gPMNames[pm];
-}
-
-static const char* toString(SkBitmap::Config config) {
-    static const char* gConfigNames[] = {
-        "NONE", "A1", "A8", "INDEX8", "565", "4444", "8888", "RLE"
-    };
-    return gConfigNames[config];
-}
-
-static void toString(const SkBitmap& bm, SkString* str) {
-    str->printf("bitmap:[%d %d] %s", bm.width(), bm.height(),
-                toString(bm.config()));
-
-    SkPixelRef* pr = bm.pixelRef();
-    if (NULL == pr) {
-        // show null or the explicit pixel address (rare)
-        str->appendf(" pixels:%p", bm.getPixels());
-    } else {
-        const char* uri = pr->getURI();
-        if (uri) {
-            str->appendf(" uri:\"%s\"", uri);
-        } else {
-            str->appendf(" pixelref:%p", pr);
-        }
-    }
-}
-
-static void toString(const void* text, size_t len, SkPaint::TextEncoding enc,
-                     SkString* str) {
-    switch (enc) {
-        case SkPaint::kUTF8_TextEncoding:
-            str->printf("\"%.*s\"%s", SkMax32(len, 32), text,
-                        len > 32 ? "..." : "");
-            break;
-        case SkPaint::kUTF16_TextEncoding:
-            str->printf("\"%.*S\"%s", SkMax32(len, 32), text,
-                        len > 64 ? "..." : "");
-            break;
-        case SkPaint::kGlyphID_TextEncoding:
-            str->set("<glyphs>");
-            break;
-    }
-}
-
-///////////////////////////////////////////////////////////////////////////////
-
-SkDumpCanvasM::SkDumpCanvasM(Dumper* dumper) : fNestLevel(0) {
-    SkSafeRef(dumper);
-    fDumper = dumper;
-
-    static const int WIDE_OPEN = 16384;
-    SkBitmap emptyBitmap;
-
-    emptyBitmap.setConfig(SkBitmap::kNo_Config, WIDE_OPEN, WIDE_OPEN);
-    this->setBitmapDevice(emptyBitmap);
-}
-
-SkDumpCanvasM::~SkDumpCanvasM() {
-    SkSafeUnref(fDumper);
-}
-
-void SkDumpCanvasM::dump(Verb verb, const SkPaint* paint,
-                        const char format[], ...) {
-    static const size_t BUFFER_SIZE = 1024;
-
-    char    buffer[BUFFER_SIZE];
-    va_list args;
-    va_start(args, format);
-    vsnprintf(buffer, BUFFER_SIZE, format, args);
-    va_end(args);
-
-    if (fDumper) {
-        fDumper->dump(this, verb, buffer, paint);
-    }
-}
-
-///////////////////////////////////////////////////////////////////////////////
-
-int SkDumpCanvasM::save(SaveFlags flags) {
-    this->dump(kSave_Verb, NULL, "save(0x%X)", flags);
-    return this->INHERITED::save(flags);
-}
-
-int SkDumpCanvasM::saveLayer(const SkRect* bounds, const SkPaint* paint,
-                             SaveFlags flags) {
-    this->dump(kSave_Verb, paint, "saveLayer(0x%X)", flags);
-    return this->INHERITED::saveLayer(bounds, paint, flags);
-}
-
-void SkDumpCanvasM::restore() {
-    this->INHERITED::restore();
-    this->dump(kRestore_Verb, NULL, "restore");
-}
-
-bool SkDumpCanvasM::translate(SkScalar dx, SkScalar dy) {
-    this->dump(kMatrix_Verb, NULL, "translate(%g %g)",
-               SkScalarToFloat(dx), SkScalarToFloat(dy));
-    return this->INHERITED::translate(dx, dy);
-}
-
-bool SkDumpCanvasM::scale(SkScalar sx, SkScalar sy) {
-    this->dump(kMatrix_Verb, NULL, "scale(%g %g)",
-               SkScalarToFloat(sx), SkScalarToFloat(sy));
-    return this->INHERITED::scale(sx, sy);
-}
-
-bool SkDumpCanvasM::rotate(SkScalar degrees) {
-    this->dump(kMatrix_Verb, NULL, "rotate(%g)", SkScalarToFloat(degrees));
-    return this->INHERITED::rotate(degrees);
-}
-
-bool SkDumpCanvasM::skew(SkScalar sx, SkScalar sy) {
-    this->dump(kMatrix_Verb, NULL, "skew(%g %g)",
-               SkScalarToFloat(sx), SkScalarToFloat(sy));
-    return this->INHERITED::skew(sx, sy);
-}
-
-bool SkDumpCanvasM::concat(const SkMatrix& matrix) {
-    SkString str;
-    matrix.toDumpString(&str);
-    this->dump(kMatrix_Verb, NULL, "concat(%s)", str.c_str());
-    return this->INHERITED::concat(matrix);
-}
-
-void SkDumpCanvasM::setMatrix(const SkMatrix& matrix) {
-    SkString str;
-    matrix.toDumpString(&str);
-    this->dump(kMatrix_Verb, NULL, "setMatrix(%s)", str.c_str());
-    this->INHERITED::setMatrix(matrix);
-}
-
-///////////////////////////////////////////////////////////////////////////////
-
-bool SkDumpCanvasM::clipRect(const SkRect& rect, SkRegion::Op op) {
-    SkString str;
-    toString(rect, &str);
-    this->dump(kClip_Verb, NULL, "clipRect(%s %s)", str.c_str(), toString(op));
-    return this->INHERITED::clipRect(rect, op);
-}
-
-bool SkDumpCanvasM::clipPath(const SkPath& path, SkRegion::Op op) {
-    SkString str;
-    toString(path, &str);
-    this->dump(kClip_Verb, NULL, "clipPath(%s %s)", str.c_str(), toString(op));
-    return this->INHERITED::clipPath(path, op);
-}
-
-bool SkDumpCanvasM::clipRegion(const SkRegion& deviceRgn, SkRegion::Op op) {
-    SkString str;
-    toString(deviceRgn, &str);
-    this->dump(kClip_Verb, NULL, "clipRegion(%s %s)", str.c_str(),
-               toString(op));
-    return this->INHERITED::clipRegion(deviceRgn, op);
-}
-
-///////////////////////////////////////////////////////////////////////////////
-
-void SkDumpCanvasM::drawPaint(const SkPaint& paint) {
-    this->dump(kDrawPaint_Verb, &paint, "drawPaint()");
-}
-
-void SkDumpCanvasM::drawPoints(PointMode mode, size_t count,
-                               const SkPoint pts[], const SkPaint& paint) {
-    this->dump(kDrawPoints_Verb, &paint, "drawPoints(%s, %d)", toString(mode),
-               count);
-}
-
-void SkDumpCanvasM::drawRect(const SkRect& rect, const SkPaint& paint) {
-    SkString str;
-    toString(rect, &str);
-    this->dump(kDrawRect_Verb, &paint, "drawRect(%s)", str.c_str());
-}
-
-void SkDumpCanvasM::drawPath(const SkPath& path, const SkPaint& paint) {
-    SkString str;
-    toString(path, &str);
-    this->dump(kDrawPath_Verb, &paint, "drawPath(%s)", str.c_str());
-}
-
-void SkDumpCanvasM::drawBitmap(const SkBitmap& bitmap, SkScalar x, SkScalar y,
-                               const SkPaint* paint) {
-    SkString str;
-    toString(bitmap, &str);
-    this->dump(kDrawBitmap_Verb, paint, "drawBitmap(%s %g %g)", str.c_str(),
-               SkScalarToFloat(x), SkScalarToFloat(y));
-}
-
-void SkDumpCanvasM::drawBitmapRect(const SkBitmap& bitmap, const SkIRect* src,
-                                   const SkRect& dst, const SkPaint* paint) {
-    SkString bs, rs;
-    toString(bitmap, &bs);
-    toString(dst, &rs);
-    // show the src-rect only if its not everything
-    if (src && (src->fLeft > 0 || src->fTop > 0 ||
-                src->fRight < bitmap.width() ||
-                src->fBottom < bitmap.height())) {
-        SkString ss;
-        toString(*src, &ss);
-        rs.prependf("%s ", ss.c_str());
-    }
-
-    this->dump(kDrawBitmap_Verb, paint, "drawBitmapRect(%s %s)",
-               bs.c_str(), rs.c_str());
-}
-
-void SkDumpCanvasM::drawBitmapMatrix(const SkBitmap& bitmap, const SkMatrix& m,
-                                     const SkPaint* paint) {
-    SkString bs, ms;
-    toString(bitmap, &bs);
-    m.toDumpString(&ms);
-    this->dump(kDrawBitmap_Verb, paint, "drawBitmapMatrix(%s %s)",
-               bs.c_str(), ms.c_str());
-}
-
-void SkDumpCanvasM::drawSprite(const SkBitmap& bitmap, int x, int y,
-                               const SkPaint* paint) {
-    SkString str;
-    toString(bitmap, &str);
-    this->dump(kDrawBitmap_Verb, paint, "drawSprite(%s %d %d)", str.c_str(),
-               x, y);
-}
-
-void SkDumpCanvasM::drawText(const void* text, size_t byteLength, SkScalar x,
-                             SkScalar y, const SkPaint& paint) {
-    SkString str;
-    toString(text, byteLength, paint.getTextEncoding(), &str);
-    this->dump(kDrawText_Verb, &paint, "drawText(%s [%d] %g %g)", str.c_str(),
-               byteLength, SkScalarToFloat(x), SkScalarToFloat(y));
-}
-
-void SkDumpCanvasM::drawPosText(const void* text, size_t byteLength,
-                                const SkPoint pos[], const SkPaint& paint) {
-    SkString str;
-    toString(text, byteLength, paint.getTextEncoding(), &str);
-    this->dump(kDrawText_Verb, &paint, "drawPosText(%s [%d] %g %g ...)",
-               str.c_str(), byteLength, SkScalarToFloat(pos[0].fX),
-               SkScalarToFloat(pos[0].fY));
-}
-
-void SkDumpCanvasM::drawPosTextH(const void* text, size_t byteLength,
-                                 const SkScalar xpos[], SkScalar constY,
-                                 const SkPaint& paint) {
-    SkString str;
-    toString(text, byteLength, paint.getTextEncoding(), &str);
-    this->dump(kDrawText_Verb, &paint, "drawPosTextH(%s [%d] %g %g ...)",
-               str.c_str(), byteLength, SkScalarToFloat(xpos[0]),
-               SkScalarToFloat(constY));
-}
-
-void SkDumpCanvasM::drawTextOnPath(const void* text, size_t byteLength,
-                                   const SkPath& path, const SkMatrix* matrix,
-                                   const SkPaint& paint) {
-    SkString str;
-    toString(text, byteLength, paint.getTextEncoding(), &str);
-    this->dump(kDrawText_Verb, &paint, "drawTextOnPath(%s [%d])",
-               str.c_str(), byteLength);
-}
-
-void SkDumpCanvasM::drawPicture(SkPicture& picture) {
-    this->dump(kDrawPicture_Verb, NULL, "drawPicture(%p) %d:%d", &picture,
-               picture.width(), picture.height());
-    fNestLevel += 1;
-    this->INHERITED::drawPicture(picture);
-    fNestLevel -= 1;
-    this->dump(kDrawPicture_Verb, NULL, "endPicture(%p) %d:%d", &picture,
-               picture.width(), picture.height());
-}
-
-void SkDumpCanvasM::drawVertices(VertexMode vmode, int vertexCount,
-                                 const SkPoint vertices[], const SkPoint texs[],
-                                 const SkColor colors[], SkXfermode* xmode,
-                                 const uint16_t indices[], int indexCount,
-                                 const SkPaint& paint) {
-    this->dump(kDrawVertices_Verb, &paint, "drawVertices(%s [%d] %g %g ...)",
-               toString(vmode), vertexCount, SkScalarToFloat(vertices[0].fX),
-               SkScalarToFloat(vertices[0].fY));
-}
-
-void SkDumpCanvasM::drawData(const void* data, size_t length) {
-//    this->dump(kDrawData_Verb, NULL, "drawData(%d)", length);
-    this->dump(kDrawData_Verb, NULL, "drawData(%d) %.*s", length,
-               SkMin32(length, 64), data);
-}
\ No newline at end of file
diff --git a/experimental/CocoaDebugger/SkDumpCanvasM.h b/experimental/CocoaDebugger/SkDumpCanvasM.h
deleted file mode 100644
index be83d6c..0000000
--- a/experimental/CocoaDebugger/SkDumpCanvasM.h
+++ /dev/null
@@ -1,122 +0,0 @@
-
-/*
- * Copyright 2011 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#ifndef SkDumpCanvasM_DEFINED
-#define SkDumpCanvasM_DEFINED
-
-#include "SkCanvas.h"
-
-/** This class overrides all the draw methods on SkCanvas, and formats them
-    as text, and then sends that to a Dumper helper object.
- 
-    Typical use might be to dump a display list to a log file to see what is
-    being drawn.
- */
-class SkDumpCanvasM : public SkCanvas {
-public:
-    class Dumper;
-
-    explicit SkDumpCanvasM(Dumper* = 0);
-    virtual ~SkDumpCanvasM();
-    
-    enum Verb {
-        kNULL_Verb,
-
-        kSave_Verb,
-        kRestore_Verb,
-        
-        kMatrix_Verb,
-        
-        kClip_Verb,
-        
-        kDrawPaint_Verb,
-        kDrawPoints_Verb,
-        kDrawRect_Verb,
-        kDrawPath_Verb,
-        kDrawBitmap_Verb,
-        kDrawText_Verb,
-        kDrawPicture_Verb,
-        kDrawVertices_Verb,
-        kDrawData_Verb
-    };
-    
-    /** Subclasses of this are installed on the DumpCanvas, and then called for
-        each drawing command.
-     */
-    class Dumper : public SkRefCnt {
-    public:
-        virtual void dump(SkDumpCanvasM*, SkDumpCanvasM::Verb, const char str[],
-                          const SkPaint*) = 0;
-    };
-        
-    Dumper* getDumper() const { return fDumper; }
-    void    setDumper(Dumper*);
-    
-    int getNestLevel() const { return fNestLevel; }
-    
-    // overrides from SkCanvas
-
-    virtual int save(SaveFlags flags = kMatrixClip_SaveFlag);
-    virtual int saveLayer(const SkRect* bounds, const SkPaint* paint,
-                          SaveFlags flags = kARGB_ClipLayer_SaveFlag);
-    virtual void restore();
-
-    virtual bool translate(SkScalar dx, SkScalar dy);
-    virtual bool scale(SkScalar sx, SkScalar sy);
-    virtual bool rotate(SkScalar degrees);
-    virtual bool skew(SkScalar sx, SkScalar sy);
-    virtual bool concat(const SkMatrix& matrix);
-    virtual void setMatrix(const SkMatrix& matrix);
-    
-    virtual bool clipRect(const SkRect& rect,
-                          SkRegion::Op op = SkRegion::kIntersect_Op);
-    virtual bool clipPath(const SkPath& path,
-                          SkRegion::Op op = SkRegion::kIntersect_Op);
-    virtual bool clipRegion(const SkRegion& deviceRgn,
-                            SkRegion::Op op = SkRegion::kIntersect_Op);
-
-    virtual void drawPaint(const SkPaint& paint);
-    virtual void drawPoints(PointMode mode, size_t count, const SkPoint pts[],
-                            const SkPaint& paint);
-    virtual void drawRect(const SkRect& rect, const SkPaint& paint);
-    virtual void drawPath(const SkPath& path, const SkPaint& paint);
-    virtual void drawBitmap(const SkBitmap& bitmap, SkScalar left, SkScalar top,
-                            const SkPaint* paint = NULL);
-    virtual void drawBitmapRect(const SkBitmap& bitmap, const SkIRect* src,
-                                const SkRect& dst, const SkPaint* paint = NULL);
-    virtual void drawBitmapMatrix(const SkBitmap& bitmap, const SkMatrix& m,
-                                  const SkPaint* paint = NULL);
-    virtual void drawSprite(const SkBitmap& bitmap, int left, int top,
-                            const SkPaint* paint = NULL);
-    virtual void drawText(const void* text, size_t byteLength, SkScalar x,
-                          SkScalar y, const SkPaint& paint);
-    virtual void drawPosText(const void* text, size_t byteLength,
-                             const SkPoint pos[], const SkPaint& paint);
-    virtual void drawPosTextH(const void* text, size_t byteLength,
-                              const SkScalar xpos[], SkScalar constY,
-                              const SkPaint& paint);
-    virtual void drawTextOnPath(const void* text, size_t byteLength,
-                                const SkPath& path, const SkMatrix* matrix,
-                                const SkPaint& paint);
-    virtual void drawPicture(SkPicture&);
-    virtual void drawVertices(VertexMode vmode, int vertexCount,
-                              const SkPoint vertices[], const SkPoint texs[],
-                              const SkColor colors[], SkXfermode* xmode,
-                              const uint16_t indices[], int indexCount,
-                              const SkPaint& paint);
-    virtual void drawData(const void*, size_t);
-
-private:
-    Dumper* fDumper;
-    int     fNestLevel; // for nesting recursive elements like pictures
-    
-    void dump(Verb, const SkPaint*, const char format[], ...);
-
-    typedef SkCanvas INHERITED;
-};
-
-#endif
diff --git a/experimental/CocoaDebugger/SkInfoPanelView.cpp b/experimental/CocoaDebugger/SkInfoPanelView.cpp
deleted file mode 100644
index 3b54860..0000000
--- a/experimental/CocoaDebugger/SkInfoPanelView.cpp
+++ /dev/null
@@ -1,48 +0,0 @@
-
-/*
- * Copyright 2011 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#include "SkDebuggerViews.h"
-#include "SkRect.h"
-
-SkInfoPanelView::SkInfoPanelView() {
-    fBGColor = 0xFF999999;
-    fPaint.setColor(fBGColor);
-}
-
-bool SkInfoPanelView::onEvent(const SkEvent& evt) {
-    if (evt.isType(SkDebugger_StateType)) {
-        fMatrix = evt.findString(SkDebugger_Matrix);
-        fClip = evt.findString(SkDebugger_Clip);
-        
-        SkPaint* ptr;
-        if (evt.getMetaData().findPtr(SkDebugger_Paint, (void**)&ptr)) {
-            fPaint = *ptr;
-            fPaintInfo = evt.findString(SkDebugger_PaintInfo);
-        }
-        this->inval(NULL);
-        return true;
-    }
-    return this->INHERITED::onEvent(evt);
-}
-
-void SkInfoPanelView::onDraw(SkCanvas* canvas) {
-    canvas->drawColor(fBGColor);
-    
-    //Display Current Paint
-    SkRect r = {10, 20, 40, 50};
-    canvas->drawRect(r, fPaint);
-    //Display Information
-    SkPaint p;
-    p.setTextSize(SkDebugger_TextSize);
-    p.setAntiAlias(true);
-    int x = 50;
-    canvas->drawText(fPaintInfo.c_str(), fPaintInfo.size(), x, 30, p);
-    canvas->drawText(fMatrix.c_str(), fMatrix.size(), x, 60, p);
-    canvas->drawText(fClip.c_str(), fClip.size(), x, 90, p);
-    
-    this->INHERITED::onDraw(canvas);
-}
\ No newline at end of file
diff --git a/experimental/CocoaDebugger/SkMenuController.h b/experimental/CocoaDebugger/SkMenuController.h
deleted file mode 100644
index e8a7e8b..0000000
--- a/experimental/CocoaDebugger/SkMenuController.h
+++ /dev/null
@@ -1,14 +0,0 @@
-
-/*
- * Copyright 2011 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-#import <Cocoa/Cocoa.h>
-#import "SkDebugger.h"
-@interface SkMenuController : NSObject {
-    IBOutlet SkDebugger *fWindow;
-}
--(IBAction) openFile:(id) sender;
-@end
diff --git a/experimental/CocoaDebugger/SkMenuController.mm b/experimental/CocoaDebugger/SkMenuController.mm
deleted file mode 100644
index 4a9f4f7..0000000
--- a/experimental/CocoaDebugger/SkMenuController.mm
+++ /dev/null
@@ -1,16 +0,0 @@
-#import "SkMenuController.h"
-
-@implementation SkMenuController
--(IBAction) openFile:(id) sender {
-    NSOpenPanel* panel = [NSOpenPanel openPanel];
-    NSInteger response = [panel runModal];
-    
-    [panel setFloatingPanel:YES];
-    [panel setCanChooseDirectories:NO];
-    [panel setCanChooseFiles:YES];
-    
-    if(response == NSOKButton){
-        [fWindow loadFile:[panel filename]];
-    } 
-}
-@end
diff --git a/experimental/CocoaDebugger/TestData/test1.data b/experimental/CocoaDebugger/TestData/test1.data
deleted file mode 100644
index 07ae8ea..0000000
--- a/experimental/CocoaDebugger/TestData/test1.data
+++ /dev/null
Binary files differ
diff --git a/experimental/CocoaDebugger/TestData/test2.data b/experimental/CocoaDebugger/TestData/test2.data
deleted file mode 100644
index 9cf95f6..0000000
--- a/experimental/CocoaDebugger/TestData/test2.data
+++ /dev/null
Binary files differ
diff --git a/experimental/CocoaDebugger/main.m b/experimental/CocoaDebugger/main.m
deleted file mode 100644
index cd85c6d..0000000
--- a/experimental/CocoaDebugger/main.m
+++ /dev/null
@@ -1,16 +0,0 @@
-//
-//  main.m
-//  CocoaSampleApp
-//
-//  Created by Yang Su on 6/14/11.
-//  Copyright 2011 Google Inc.
-//  Use of this source code is governed by a BSD-style license that can be
-//  found in the LICENSE file.
-//
-
-#import <Cocoa/Cocoa.h>
-
-int main(int argc, char *argv[])
-{
-    return NSApplicationMain(argc,  (const char **) argv);
-}
diff --git a/experimental/CocoaSampleApp/SampleApp.xib b/experimental/CocoaSampleApp/SampleApp.xib
index 074d52b..e0c5f2b 100644
--- a/experimental/CocoaSampleApp/SampleApp.xib
+++ b/experimental/CocoaSampleApp/SampleApp.xib
@@ -11,9 +11,9 @@
 			<string key="NS.object.0">851</string>
 		</object>
 		<array class="NSMutableArray" key="IBDocument.EditedObjectIDs">
-			<integer value="296"/>
-			<integer value="372"/>
+			<integer value="24"/>
 			<integer value="634"/>
+			<integer value="372"/>
 		</array>
 		<array key="IBDocument.PluginDependencies">
 			<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -952,24 +952,6 @@
 						<object class="NSMenu" key="NSSubmenu" id="466310130">
 							<string key="NSTitle">View</string>
 							<array class="NSMutableArray" key="NSMenuItems">
-								<object class="NSMenuItem" id="962976284">
-									<reference key="NSMenu" ref="466310130"/>
-									<string key="NSTitle">Increase Increase Size</string>
-									<string key="NSKeyEquiv">=</string>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
-								<object class="NSMenuItem" id="368680108">
-									<reference key="NSMenu" ref="466310130"/>
-									<string key="NSTitle">Decrease Window Size</string>
-									<string key="NSKeyEquiv">-</string>
-									<int key="NSKeyEquivModMask">1048576</int>
-									<int key="NSMnemonicLoc">2147483647</int>
-									<reference key="NSOnImage" ref="35465992"/>
-									<reference key="NSMixedImage" ref="502551668"/>
-								</object>
 								<object class="NSMenuItem" id="87708234">
 									<reference key="NSMenu" ref="466310130"/>
 									<string key="NSTitle">Show Menu Key Equivalents</string>
@@ -1507,6 +1489,15 @@
 									<reference key="NSOnImage" ref="35465992"/>
 									<reference key="NSMixedImage" ref="502551668"/>
 								</object>
+								<object class="NSMenuItem" id="92029792">
+									<reference key="NSMenu" ref="835318025"/>
+									<string key="NSTitle">768 x 1024</string>
+									<string key="NSKeyEquiv">=</string>
+									<int key="NSKeyEquivModMask">1048576</int>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="35465992"/>
+									<reference key="NSMixedImage" ref="502551668"/>
+								</object>
 								<object class="NSMenuItem" id="299356726">
 									<reference key="NSMenu" ref="835318025"/>
 									<bool key="NSIsDisabled">YES</bool>
@@ -2294,28 +2285,20 @@
 				</object>
 				<object class="IBConnectionRecord">
 					<object class="IBActionConnection" key="connection">
-						<string key="label">increaseWindowSize:</string>
-						<reference key="source" ref="976324537"/>
-						<reference key="destination" ref="962976284"/>
-					</object>
-					<int key="connectionID">711</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">decreaseWindowSize:</string>
-						<reference key="source" ref="976324537"/>
-						<reference key="destination" ref="368680108"/>
-					</object>
-					<int key="connectionID">712</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
 						<string key="label">toggleKeyEquivalents:</string>
 						<reference key="source" ref="429436769"/>
 						<reference key="destination" ref="87708234"/>
 					</object>
 					<int key="connectionID">719</int>
 				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">toiPadSize:</string>
+						<reference key="source" ref="976324537"/>
+						<reference key="destination" ref="92029792"/>
+					</object>
+					<int key="connectionID">721</int>
+				</object>
 			</array>
 			<object class="IBMutableOrderedSet" key="objectRecords">
 				<array key="orderedObjects">
@@ -2717,6 +2700,7 @@
 							<reference ref="625202149"/>
 							<reference ref="575023229"/>
 							<reference ref="1011231497"/>
+							<reference ref="92029792"/>
 						</array>
 						<reference key="parent" ref="713487014"/>
 					</object>
@@ -2754,8 +2738,6 @@
 						<array class="NSMutableArray" key="children">
 							<reference ref="102151532"/>
 							<reference ref="237841660"/>
-							<reference ref="962976284"/>
-							<reference ref="368680108"/>
 							<reference ref="87708234"/>
 						</array>
 						<reference key="parent" ref="586577488"/>
@@ -3406,20 +3388,15 @@
 						<reference key="parent" ref="110575045"/>
 					</object>
 					<object class="IBObjectRecord">
-						<int key="objectID">708</int>
-						<reference key="object" ref="962976284"/>
-						<reference key="parent" ref="466310130"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">710</int>
-						<reference key="object" ref="368680108"/>
-						<reference key="parent" ref="466310130"/>
-					</object>
-					<object class="IBObjectRecord">
 						<int key="objectID">718</int>
 						<reference key="object" ref="87708234"/>
 						<reference key="parent" ref="466310130"/>
 					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">720</int>
+						<reference key="object" ref="92029792"/>
+						<reference key="parent" ref="835318025"/>
+					</object>
 				</array>
 			</object>
 			<dictionary class="NSMutableDictionary" key="flattenedProperties">
@@ -3523,7 +3500,7 @@
 				<integer value="1" key="236.ImportedFromIB2"/>
 				<string key="239.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
 				<integer value="1" key="239.ImportedFromIB2"/>
-				<string key="24.IBEditorWindowLastContentRect">{{707, 426}, {194, 73}}</string>
+				<string key="24.IBEditorWindowLastContentRect">{{707, 406}, {194, 93}}</string>
 				<string key="24.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
 				<integer value="1" key="24.ImportedFromIB2"/>
 				<string key="24.editorWindowContentRectSynchronizationRect">{{525, 802}, {197, 73}}</string>
@@ -3533,7 +3510,7 @@
 				<string key="29.WindowOrigin">{74, 862}</string>
 				<string key="29.editorWindowContentRectSynchronizationRect">{{6, 978}, {478, 20}}</string>
 				<string key="295.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="296.IBEditorWindowLastContentRect">{{591, 396}, {279, 103}}</string>
+				<string key="296.IBEditorWindowLastContentRect">{{591, 436}, {276, 63}}</string>
 				<string key="296.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
 				<string key="296.editorWindowContentRectSynchronizationRect">{{475, 832}, {234, 43}}</string>
 				<string key="297.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -3552,9 +3529,9 @@
 				<integer value="1" key="351.ImportedFromIB2"/>
 				<string key="354.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
 				<integer value="1" key="354.ImportedFromIB2"/>
-				<string key="371.IBEditorWindowLastContentRect">{{199, 4}, {640, 480}}</string>
+				<string key="371.IBEditorWindowLastContentRect">{{254, 23}, {640, 480}}</string>
 				<string key="371.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="371.IBWindowTemplateEditedContentRect">{{199, 4}, {640, 480}}</string>
+				<string key="371.IBWindowTemplateEditedContentRect">{{254, 23}, {640, 480}}</string>
 				<integer value="1" key="371.NSWindowTemplate.visibleAtLaunch"/>
 				<string key="371.editorWindowContentRectSynchronizationRect">{{33, 99}, {480, 360}}</string>
 				<string key="371.windowTemplate.maxSize">{3.40282e+38, 3.40282e+38}</string>
@@ -3642,7 +3619,7 @@
 				<string key="515.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
 				<string key="516.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
 				<string key="517.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="538.IBEditorWindowLastContentRect">{{136, 946}, {341, 321}}</string>
+				<string key="538.IBEditorWindowLastContentRect">{{136, 685}, {341, 321}}</string>
 				<string key="538.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
 				<string key="539.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
 				<string key="56.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -3670,11 +3647,10 @@
 				<string key="698.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
 				<string key="705.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
 				<string key="706.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="708.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="710.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
 				<string key="718.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
 				<string key="72.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
 				<integer value="1" key="72.ImportedFromIB2"/>
+				<string key="720.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
 				<string key="73.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
 				<integer value="1" key="73.ImportedFromIB2"/>
 				<string key="74.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -3704,27 +3680,24 @@
 			<nil key="activeLocalization"/>
 			<dictionary class="NSMutableDictionary" key="localizations"/>
 			<nil key="sourceID"/>
-			<int key="maxID">719</int>
+			<int key="maxID">721</int>
 		</object>
 		<object class="IBClassDescriber" key="IBDocument.Classes">
 			<array class="NSMutableArray" key="referencedPartialClassDescriptions">
 				<object class="IBPartialClassDescription">
 					<string key="className">SampleAppDelegate</string>
 					<string key="superclassName">NSObject</string>
-					<dictionary class="NSMutableDictionary" key="actions">
-						<string key="decreaseWindowSize:">id</string>
-						<string key="increaseWindowSize:">id</string>
-					</dictionary>
-					<dictionary class="NSMutableDictionary" key="actionInfosByName">
-						<object class="IBActionInfo" key="decreaseWindowSize:">
-							<string key="name">decreaseWindowSize:</string>
+					<object class="NSMutableDictionary" key="actions">
+						<string key="NS.key.0">toiPadSize:</string>
+						<string key="NS.object.0">id</string>
+					</object>
+					<object class="NSMutableDictionary" key="actionInfosByName">
+						<string key="NS.key.0">toiPadSize:</string>
+						<object class="IBActionInfo" key="NS.object.0">
+							<string key="name">toiPadSize:</string>
 							<string key="candidateClassName">id</string>
 						</object>
-						<object class="IBActionInfo" key="increaseWindowSize:">
-							<string key="name">increaseWindowSize:</string>
-							<string key="candidateClassName">id</string>
-						</object>
-					</dictionary>
+					</object>
 					<dictionary class="NSMutableDictionary" key="outlets">
 						<string key="fOptions">SkOptionsTableView</string>
 						<string key="fView">SkNSView</string>
diff --git a/experimental/CocoaSampleApp/SampleAppDelegate.h b/experimental/CocoaSampleApp/SampleAppDelegate.h
index ee2cacb..e4892d6 100644
--- a/experimental/CocoaSampleApp/SampleAppDelegate.h
+++ b/experimental/CocoaSampleApp/SampleAppDelegate.h
@@ -11,6 +11,5 @@
 @property (assign) IBOutlet SkNSView* fView;
 @property (assign) IBOutlet SkOptionsTableView* fOptions;
 
-- (IBAction)decreaseWindowSize:(id)sender;
-- (IBAction)increaseWindowSize:(id)sender;
+- (IBAction)toiPadSize:(id)sender;
 @end
diff --git a/experimental/CocoaSampleApp/SampleAppDelegate.mm b/experimental/CocoaSampleApp/SampleAppDelegate.mm
index 2a216ab..c54a8a3 100644
--- a/experimental/CocoaSampleApp/SampleAppDelegate.mm
+++ b/experimental/CocoaSampleApp/SampleAppDelegate.mm
@@ -8,24 +8,8 @@
     [fOptions registerMenus:fView.fWind->getMenus()];
 }
 
-static float deltaw = 120;
-static float deltah = 80;
-
-- (IBAction)decreaseWindowSize:(id)sender {
-    NSRect frame = [fWindow frame];
-    frame.origin.y += deltah;
-    frame.size.width -=deltaw;
-    frame.size.height -= deltah;
-    
-    [fWindow setFrame:frame display:YES animate:YES];
-}
-
-- (IBAction)increaseWindowSize:(id)sender {
-    NSRect frame = [fWindow frame];
-    frame.origin.y -= deltah;
-    frame.size.width += deltaw;
-    frame.size.height += deltah;
-    
+- (IBAction)toiPadSize:(id)sender {
+    NSRect frame = NSMakeRect(fWindow.frame.origin.x, fWindow.frame.origin.y, 768, 1024);
     [fWindow setFrame:frame display:YES animate:YES];
 }
 @end
diff --git a/experimental/CocoaSampleApp/SkNSView.mm b/experimental/CocoaSampleApp/SkNSView.mm
index 4ce3d3d..aa8768a 100644
--- a/experimental/CocoaSampleApp/SkNSView.mm
+++ b/experimental/CocoaSampleApp/SkNSView.mm
@@ -204,10 +204,7 @@
 
 CGLContextObj createGLContext() {
     GLint major, minor;
-    CGLContextObj ctx;
-    
     CGLGetVersion(&major, &minor);
-    SkDebugf("---- cgl version %d %d\n", major, minor);
     
     const CGLPixelFormatAttribute attributes[] = {
         kCGLPFAStencilSize, (CGLPixelFormatAttribute)8,
@@ -224,11 +221,9 @@
     CGLPixelFormatObj format;
     GLint npix;
     CGLChoosePixelFormat(attributes, &format, &npix);
-    SkDebugf("----- cgl format %p\n", format);
     
+    CGLContextObj ctx;
     CGLCreateContext(format, NULL, &ctx);
-
-    SkDebugf("----- cgl context %p\n", ctx);
     CGLDestroyPixelFormat(format);
     
     static const GLint interval = 1;
diff --git a/experimental/CocoaSampleApp/SkOptionsTableView.mm b/experimental/CocoaSampleApp/SkOptionsTableView.mm
index 2a0cd30..d905f9b 100644
--- a/experimental/CocoaSampleApp/SkOptionsTableView.mm
+++ b/experimental/CocoaSampleApp/SkOptionsTableView.mm
@@ -54,7 +54,7 @@
     if (menuIndex >= 0 && menuIndex < fMenus->count()) {
         NSUInteger first = 0;
         for (NSInteger i = 0; i < menuIndex; ++i) {
-            first += (*fMenus)[i]->countItems();
+            first += (*fMenus)[i]->getCount();
         }
         [fItems removeObjectsInRange:NSMakeRange(first, [fItems count] - first)];
         [self loadMenu:menu];
@@ -72,20 +72,22 @@
 }
 
 - (void)loadMenu:(const SkOSMenu*)menu {
-    for (int i = 0; i < menu->countItems(); ++i) {
-        const SkOSMenu::Item* item = menu->getItem(i);
+    const SkOSMenu::Item* menuitems[menu->getCount()];
+    menu->getItems(menuitems);
+    for (int i = 0; i < menu->getCount(); ++i) {
+        const SkOSMenu::Item* item = menuitems[i];
         SkOptionItem* option = [[SkOptionItem alloc] init];
         option.fItem = item;
         
         if (SkOSMenu::kList_Type == item->getType()) {
             int index = 0, count = 0;
-            SkOSMenu::FindListItemCount(item->getEvent(), &count);
+            SkOSMenu::FindListItemCount(*item->getEvent(), &count);
             NSMutableArray* optionstrs = [[NSMutableArray alloc] initWithCapacity:count];
             SkString options[count];
-            SkOSMenu::FindListItems(item->getEvent(), options);
+            SkOSMenu::FindListItems(*item->getEvent(), options);
             for (int i = 0; i < count; ++i)
                 [optionstrs addObject:[NSString stringWithUTF8String:options[i].c_str()]];
-            SkOSMenu::FindListIndex(item->getEvent(), item->getSlotName(), &index);
+            SkOSMenu::FindListIndex(*item->getEvent(), item->getSlotName(), &index);
             option.fCell = [self createList:optionstrs current:index];
             [optionstrs release];
         }
@@ -99,23 +101,23 @@
                     break;
                 case SkOSMenu::kSlider_Type:
                     SkScalar min, max, value;
-                    SkOSMenu::FindSliderValue(item->getEvent(), item->getSlotName(), &value);
-                    SkOSMenu::FindSliderMin(item->getEvent(), &min);
-                    SkOSMenu::FindSliderMax(item->getEvent(), &max);
+                    SkOSMenu::FindSliderValue(*item->getEvent(), item->getSlotName(), &value);
+                    SkOSMenu::FindSliderMin(*item->getEvent(), &min);
+                    SkOSMenu::FindSliderMax(*item->getEvent(), &max);
                     option.fCell = [self createSlider:value 
                                                   min:min 
                                                   max:max];
                     break;                    
                 case SkOSMenu::kSwitch_Type:
-                    SkOSMenu::FindSwitchState(item->getEvent(), item->getSlotName(), &state);
+                    SkOSMenu::FindSwitchState(*item->getEvent(), item->getSlotName(), &state);
                     option.fCell = [self createSwitch:(BOOL)state];
                     break;
                 case SkOSMenu::kTriState_Type:
-                    SkOSMenu::FindTriState(item->getEvent(), item->getSlotName(), &tristate);
+                    SkOSMenu::FindTriState(*item->getEvent(), item->getSlotName(), &tristate);
                     option.fCell = [self createTriState:[self triStateToNSState:tristate]];
                     break;
                 case SkOSMenu::kTextField_Type:
-                    SkOSMenu::FindText(item->getEvent(),item->getSlotName(), &str);
+                    SkOSMenu::FindText(*item->getEvent(),item->getSlotName(), &str);
                     option.fCell = [self createTextField:[NSString stringWithUTF8String:str.c_str()]];
                     break;
                 default:
@@ -202,29 +204,30 @@
                 break;
             case SkOSMenu::kList_Type:
                 [(NSPopUpButtonCell*)cell selectItemAtIndex:[anObject intValue]];
-                item->postEventWithInt([anObject intValue]);
+                item->setInt([anObject intValue]);
                 break;
             case SkOSMenu::kSlider_Type:
                 [cell setFloatValue:[anObject floatValue]];
-                item->postEventWithScalar([anObject floatValue]);
+                item->setScalar([anObject floatValue]);
                 break;
             case SkOSMenu::kSwitch_Type:
                 [cell setState:[anObject boolValue]];
-                item->postEventWithBool([anObject boolValue]);
+                item->setBool([anObject boolValue]);
                 break;
             case SkOSMenu::kTextField_Type:
                 if ([anObject length] > 0) {
                     [cell setStringValue:anObject];
-                    item->postEventWithString([anObject UTF8String]);
+                    item->setString([anObject UTF8String]);
                 }
                 break;
             case SkOSMenu::kTriState_Type:
                 [cell setState:[anObject intValue]];
-                item->postEventWithInt([anObject intValue]);
+                item->setTriState((SkOSMenu::TriState)[anObject intValue]);
                 break;
             default:
                 break;
         }
+        item->postEvent();
     }
 }
 
diff --git a/experimental/Debugger/DebuggerCommandsView.cpp b/experimental/Debugger/DebuggerCommandsView.cpp
new file mode 100644
index 0000000..112c447
--- /dev/null
+++ b/experimental/Debugger/DebuggerCommandsView.cpp
@@ -0,0 +1,145 @@
+
+/*
+ * Copyright 2011 Google Inc.
+ *
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+#include "DebuggerViews.h"
+
+DebuggerCommandsView::DebuggerCommandsView() {
+    fBGColor = 0xFFBBBBBB;
+    fTopIndex = 0;
+    fHighlight = 0;
+    fResizing = false;
+    
+    SkPaint p;
+    p.setTextSize(SkIntToScalar(SKDEBUGGER_TEXTSIZE));
+    fSpacing = p.getFontSpacing();
+    fCentered = false;
+    fRange = (int)(this->height()/fSpacing) - 1;
+}
+
+DebuggerCommandsView::~DebuggerCommandsView() {
+    fList.deleteAll();
+}
+
+bool DebuggerCommandsView::onEvent(const SkEvent& evt) {
+    if (evt.isType(SKDEBUGGER_COMMANDTYPE)) {
+        *fList.append() = new SkString(evt.findString(SKDEBUGGER_ATOM));
+        this->inval(NULL);
+        return true;
+    }
+    return this->INHERITED::onEvent(evt);
+}
+
+void DebuggerCommandsView::onSizeChange() {
+    fRange = (int)(this->height()/fSpacing);
+    this->INHERITED::onSizeChange();
+}
+
+void DebuggerCommandsView::alignCenter() {
+    if (!fCentered || fHighlight < fRange/2 || fHighlight > (fList.count() - fRange/2)) {
+        return;
+    } else {
+        if (fHighlight > (fTopIndex + fRange/2)) 
+            fTopIndex += fHighlight - (fTopIndex + fRange/2);
+        if (fHighlight < (fTopIndex + fRange/2))
+            fTopIndex -= (fTopIndex + fRange/2) - fHighlight;
+    }
+}
+
+int DebuggerCommandsView::nextItem() {
+    if (fHighlight < fList.count() - 1)
+        ++fHighlight;
+    if (fHighlight < fTopIndex || fHighlight > (fTopIndex + fRange))
+        fTopIndex = fHighlight;
+    if (fHighlight == (fTopIndex + fRange))
+        ++fTopIndex;
+    this->alignCenter();
+    this->inval(NULL);
+    return fHighlight;
+}
+
+int DebuggerCommandsView::prevItem() {
+    if (fHighlight > 0)
+        --fHighlight;
+    if (fHighlight < fTopIndex || fHighlight > (fTopIndex + fRange))
+        fTopIndex = fHighlight;
+    this->alignCenter();
+    this->inval(NULL);
+    return fHighlight;
+}
+
+int DebuggerCommandsView::scrollUp() {
+    if (fTopIndex > 0)
+        --fTopIndex;
+    this->inval(NULL);
+    return fHighlight;
+}
+
+int DebuggerCommandsView::scrollDown() {
+    if (fTopIndex < (fList.count() - 1))
+        ++fTopIndex;
+    this->inval(NULL);
+    return fHighlight;
+}
+
+void DebuggerCommandsView::highlight(int index) {
+    SkASSERT(index >= 0 && index < fList.count());
+    if (fHighlight != index) {
+        fHighlight = index;
+        this->alignCenter();
+        this->inval(NULL);
+    }
+}
+
+int DebuggerCommandsView::selectHighlight(int ypos) {
+    int i = (int)(ypos/fSpacing) + fTopIndex;
+    if (i >= fList.count()) {
+        i = fList.count() - 1;
+    }
+    if (fHighlight != i) {
+        fHighlight = i;
+        this->alignCenter();
+        this->inval(NULL);
+    }
+    return fHighlight;
+}
+
+void DebuggerCommandsView::toggleCentered() {
+    fCentered = !fCentered;
+    this->alignCenter();
+    this->inval(NULL);
+}
+
+void DebuggerCommandsView::onDraw(SkCanvas* canvas) {
+    canvas->drawColor(fBGColor);
+    
+    SkPaint p;
+    p.setTextSize(SkIntToScalar(SKDEBUGGER_TEXTSIZE));
+    p.setAntiAlias(true);
+    
+    //draw highlight
+    int selected = fHighlight - fTopIndex;
+    SkRect r = {0, fSpacing * selected, this->width(), fSpacing * (selected+1)};
+    p.setColor(SKDEBUGGER_HIGHLIGHTCOLOR);
+    canvas->drawRect(r, p);
+    
+    int endIndex = fTopIndex + fRange; 
+    if (endIndex > fList.count())
+        endIndex = fList.count();
+    
+    p.setColor(SKDEBUGGER_TEXTCOLOR);
+    int pos;
+    for (int i = fTopIndex; i < endIndex; ++i) {
+        pos = i - fTopIndex;
+        canvas->drawText(fList[i]->c_str(), fList[i]->size(), 
+                         0, fSpacing - 2 + fSpacing * pos, p);
+    }
+    p.setColor(SKDEBUGGER_RESIZEBARCOLOR);
+    r = SkRect::MakeXYWH(this->width() - SKDEBUGGER_RESIZEBARSIZE, 0, 
+                         SKDEBUGGER_RESIZEBARSIZE, this->height());
+    canvas->drawRect(r, p);
+    this->INHERITED::onDraw(canvas);
+}
\ No newline at end of file
diff --git a/experimental/Debugger/DebuggerContentView.cpp b/experimental/Debugger/DebuggerContentView.cpp
new file mode 100644
index 0000000..925c372
--- /dev/null
+++ b/experimental/Debugger/DebuggerContentView.cpp
@@ -0,0 +1,271 @@
+#include "SampleCode.h"
+#include "SkView.h"
+#include "SkCanvas.h"
+#include "SkGradientShader.h"
+#include "SkGPipe.h"
+#include "SkOSMenu.h"
+
+#include "DebuggerViews.h"
+static const char gIsDebuggerQuery[] = "is-debugger";
+class DebuggerView : public SampleView {
+public:
+	DebuggerView(const char* data, size_t size) {
+        fData.append(size, data);
+        fCommandsVisible = true;
+        fCommandsResizing = false;
+        fStateVisible = true;
+        fStateResizing = false;
+        
+        fCommands = new DebuggerCommandsView;
+        fCommands->setVisibleP(fCommandsVisible);
+        this->attachChildToFront(fCommands)->unref();
+        
+
+        fState = new DebuggerStateView;
+        fState->setVisibleP(fStateVisible);
+        this->attachChildToFront(fState)->unref();
+        
+        fAtomsToRead = 0;
+        fDisplayClip = false;
+        
+        fDumper = new SkDebugDumper(this->getSinkID(), fCommands->getSinkID(), 
+                                    fState->getSinkID());
+                                    
+        fDumper->unload();
+        fAtomBounds.reset();
+        fFrameBounds.reset();
+        
+        SkDumpCanvas* dumpCanvas = new SkDumpCanvas(fDumper);
+        SkGPipeReader* dumpReader = new SkGPipeReader(dumpCanvas);
+        
+
+        if (size > 0) {
+            int offset = 0;
+            int frameBound = 0;
+            size_t bytesRead;
+            while (offset < size) {
+                SkGPipeReader::Status s = dumpReader->playback(data + offset, 
+                                                               size - offset, 
+                                                               &bytesRead, 
+                                                               true);
+                SkASSERT(SkGPipeReader::kError_Status != s);
+                offset += bytesRead;
+                
+                if (SkGPipeReader::kDone_Status == s) {
+                    fDumper->dump(dumpCanvas, SkDumpCanvas::kNULL_Verb, 
+                                 "End of Frame", NULL);
+                    delete dumpReader;
+                    delete dumpCanvas;
+                    dumpCanvas = new SkDumpCanvas(fDumper);
+                    dumpReader = new SkGPipeReader(dumpCanvas);
+                    frameBound = offset;
+                }
+                fAtomBounds.append(1, &offset);
+                fFrameBounds.append(1, &frameBound);
+            }
+        }
+        
+        delete dumpReader;
+        delete dumpCanvas;
+        
+        fDumper->load();
+    }
+    
+    ~DebuggerView() {
+        fAtomBounds.reset();
+        fFrameBounds.reset();
+        delete fDumper;
+    }
+    
+    virtual void requestMenu(SkOSMenu* menu) {
+        menu->setTitle("Debugger");
+        menu->appendSwitch("Show Commands", "Commands", this->getSinkID(), fCommandsVisible);
+        menu->appendSwitch("Show State", "State", this->getSinkID(), fStateVisible);
+        menu->appendSwitch("Display Clip", "Clip", this->getSinkID(), fDisplayClip);
+    }
+    
+    
+    void goToAtom(int atom) {
+        if (atom != fAtomsToRead) {
+            fAtomsToRead = atom;
+            this->inval(NULL);
+        }
+    }
+    
+protected:
+    virtual bool onQuery(SkEvent* evt) {
+        if (SampleCode::TitleQ(*evt)) {
+            SampleCode::TitleR(evt, "Debugger");
+            return true;
+        }
+        if (evt->isType(gIsDebuggerQuery)) {
+            return true;
+        }
+        return this->INHERITED::onQuery(evt);
+    }
+    
+    virtual bool onEvent(const SkEvent& evt) {
+        if (SkOSMenu::FindSwitchState(evt, "Commands", &fCommandsVisible) ||
+            SkOSMenu::FindSwitchState(evt, "State", &fStateVisible)) {
+            fCommands->setVisibleP(fCommandsVisible);
+            fState->setVisibleP(fStateVisible);
+            fStateOffset = (fCommandsVisible) ? fCommands->width() : 0;
+            fState->setSize(this->width() - fStateOffset, fState->height());
+            fState->setLoc(fStateOffset, this->height() - fState->height());
+            this->inval(NULL);
+            return true;
+        }
+        if (SkOSMenu::FindSwitchState(evt, "Clip", &fDisplayClip)) {
+            this->inval(NULL);
+            return true;
+        }
+        return this->INHERITED::onEvent(evt);
+    }
+    
+    virtual void onDrawContent(SkCanvas* canvas) {
+        if (fData.count() <= 0)
+            return;
+        SkAutoCanvasRestore acr(canvas, true);
+        canvas->translate(fStateOffset, 0);
+        
+        int lastFrameBound = fFrameBounds[fAtomsToRead];
+        int toBeRead = fAtomBounds[fAtomsToRead] - lastFrameBound;
+        int firstChunk = (fAtomsToRead > 0) ? fAtomBounds[fAtomsToRead - 1] - lastFrameBound: 0;
+        if (toBeRead > 0) {
+            SkDumpCanvas* dumpCanvas = new SkDumpCanvas(fDumper);
+            SkGPipeReader* dumpReader = new SkGPipeReader(dumpCanvas);
+            SkGPipeReader* reader = new SkGPipeReader(canvas);
+            fDumper->disable();
+            
+            int offset = 0;
+            size_t bytesRead;
+            SkGPipeReader::Status s;
+            //Read the first chunk
+            if (offset < firstChunk && firstChunk < toBeRead) {
+                s = dumpReader->playback(fData.begin() + offset, firstChunk - offset, NULL, false);
+                SkASSERT(SkGPipeReader::kError_Status != s);
+                s = reader->playback(fData.begin() + offset, firstChunk - offset, &bytesRead, false);
+                SkASSERT(SkGPipeReader::kError_Status != s);
+                if (SkGPipeReader::kDone_Status == s){
+                    delete dumpReader;
+                    delete dumpCanvas;
+                    dumpCanvas = new SkDumpCanvas(fDumper);
+                    dumpReader = new SkGPipeReader(dumpCanvas);
+                    delete reader;
+                    reader = new SkGPipeReader(canvas);
+                }
+                offset += bytesRead;
+            }
+            SkASSERT(offset == firstChunk);
+            //Then read the current atom
+            fDumper->enable();
+            s = dumpReader->playback(fData.begin() + offset, toBeRead - offset, NULL, true);
+            SkASSERT(SkGPipeReader::kError_Status != s);
+            s = reader->playback(fData.begin() + offset, toBeRead - offset, &bytesRead, true);
+            SkASSERT(SkGPipeReader::kError_Status != s);
+
+            delete reader;
+            delete dumpReader;
+            delete dumpCanvas;
+            
+            if (fDisplayClip) {
+                SkPaint p;
+                p.setColor(0x440000AA);
+                SkPath path;
+                canvas->getTotalClip().getBoundaryPath(&path);
+                canvas->drawPath(path, p);
+            }
+        }
+    }
+    
+    virtual SkView::Click* onFindClickHandler(SkScalar x, SkScalar y) {
+        return new Click(this);
+    }
+    
+    virtual bool onClick(SkView::Click* click) {
+        SkPoint prev = click->fPrev;
+        SkPoint curr = click->fCurr;
+        bool handled = true;
+        switch (click->fState) {
+            case SkView::Click::kDown_State:
+                if (SkScalarAbs(curr.fX - fCommands->width()) <= SKDEBUGGER_RESIZEBARSIZE) {
+                    fCommandsResizing = true;
+                }
+                else if (SkScalarAbs(curr.fY - (this->height() - fState->height())) <= SKDEBUGGER_RESIZEBARSIZE &&
+                         curr.fX > fCommands->width()) {
+                    fStateResizing = true;
+                }
+                else if (curr.fX < fCommands->width()) {
+                    fAtomsToRead = fCommands->selectHighlight(curr.fY);
+                }
+                else 
+                    handled = false;
+                break;
+            case SkView::Click::kMoved_State:
+                if (fCommandsResizing)
+                    fCommands->setSize(curr.fX, this->height());
+                else if (fStateResizing)
+                    fState->setSize(this->width(), this->height() - curr.fY);
+                else if (curr.fX < fCommands->width()) {
+                    if (curr.fY - prev.fY < 0) {
+                        fCommands->scrollDown();
+                    }
+                    if (curr.fY - prev.fY > 0) {
+                        fCommands->scrollUp();
+                    }
+                }
+                else
+                    handled = false;
+                break;
+            case SkView::Click::kUp_State:
+                fStateResizing = fCommandsResizing = false;
+                break;
+            default:
+                break;
+        }
+        
+        fStateOffset = fCommands->width();
+        fState->setSize(this->width() - fStateOffset, fState->height());
+        fState->setLoc(fStateOffset, this->height() - fState->height());
+        if (handled)
+            this->inval(NULL);
+        return handled;
+    }
+    
+    virtual void onSizeChange() {
+        this->INHERITED::onSizeChange();
+        fCommands->setSize(CMD_WIDTH, this->height());
+        fCommands->setLoc(0, 0);
+        fState->setSize(this->width() - CMD_WIDTH, INFO_HEIGHT);
+        fState->setLoc(CMD_WIDTH, this->height() - INFO_HEIGHT);
+    }
+    
+private:
+    DebuggerCommandsView*   fCommands;
+    DebuggerStateView*      fState;
+    bool                    fCommandsResizing;
+    bool                    fCommandsVisible;
+    bool                    fStateResizing;
+    bool                    fStateVisible;
+    float                   fStateOffset;
+    bool                    fDisplayClip;
+    int                     fAtomsToRead;
+    SkTDArray<int>          fAtomBounds;
+    SkTDArray<int>          fFrameBounds;
+    SkTDArray<char>         fData;
+    SkDebugDumper*          fDumper;
+    
+    typedef SampleView INHERITED;
+};
+
+
+///////////////////////////////////////////////////////////////////////////////
+
+SkView* create_debugger(const char* data, size_t size) {
+    return SkNEW_ARGS(DebuggerView, (data, size));
+};
+
+bool is_debugger(SkView* view) {
+    SkEvent isDebugger(gIsDebuggerQuery);
+    return view->doQuery(&isDebugger); 
+}
diff --git a/experimental/Debugger/DebuggerStateView.cpp b/experimental/Debugger/DebuggerStateView.cpp
new file mode 100644
index 0000000..2953e8f
--- /dev/null
+++ b/experimental/Debugger/DebuggerStateView.cpp
@@ -0,0 +1,52 @@
+
+/*
+ * Copyright 2011 Google Inc.
+ *
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+#include "DebuggerViews.h"
+#include "SkRect.h"
+
+DebuggerStateView::DebuggerStateView() {
+    fBGColor = 0xFF999999;
+    fPaint.setColor(fBGColor);
+    fResizing = false;
+}
+
+bool DebuggerStateView::onEvent(const SkEvent& evt) {
+    if (evt.isType(SKDEBUGGER_STATETYPE)) {
+        fMatrix = evt.findString(SKDEBUGGER_MATRIX);
+        fClip = evt.findString(SKDEBUGGER_CLIP);
+        
+        SkPaint* ptr;
+        if (evt.getMetaData().findPtr(SKDEBUGGER_PAINT, (void**)&ptr)) {
+            fPaint = *ptr;
+            fPaintInfo = evt.findString(SKDEBUGGER_PAINTINFO);
+        }
+        this->inval(NULL);
+        return true;
+    }
+    return this->INHERITED::onEvent(evt);
+}
+
+void DebuggerStateView::onDraw(SkCanvas* canvas) {
+    canvas->drawColor(fBGColor);
+    
+    //Display Current Paint
+    SkRect r = {10, 20, 40, 50};
+    canvas->drawRect(r, fPaint);
+    //Display Information
+    SkPaint p;
+    p.setTextSize(SKDEBUGGER_TEXTSIZE);
+    p.setAntiAlias(true);
+    int x = 50;
+    canvas->drawText(fPaintInfo.c_str(), fPaintInfo.size(), x, 30, p);
+    canvas->drawText(fMatrix.c_str(), fMatrix.size(), x, 60, p);
+    canvas->drawText(fClip.c_str(), fClip.size(), x, 90, p);
+    
+    p.setColor(SKDEBUGGER_RESIZEBARCOLOR);
+    r = SkRect::MakeXYWH(0, 0, this->width(), SKDEBUGGER_RESIZEBARSIZE);
+    canvas->drawRect(r, p);
+    this->INHERITED::onDraw(canvas);
+}
\ No newline at end of file
diff --git a/experimental/Debugger/DebuggerViews.h b/experimental/Debugger/DebuggerViews.h
new file mode 100644
index 0000000..acaa68b
--- /dev/null
+++ b/experimental/Debugger/DebuggerViews.h
@@ -0,0 +1,100 @@
+
+/*
+ * Copyright 2011 Google Inc.
+ *
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+#include "SkView.h"
+#include "SkColor.h"
+#include "SkBitmap.h"
+#include "SkCanvas.h"
+#include "SkGPipe.h"
+#include "SkPaint.h"
+
+#include "SkDebugDumper.h"
+
+#define SKDEBUGGER_COMMANDTYPE  "SKDEBUGGER_COMMAND"
+#define SKDEBUGGER_STATETYPE    "SKDEBUGGER_STATE"
+
+#define SKDEBUGGER_ATOM         "SKDEBUGGER_ATOM"
+#define SKDEBUGGER_MATRIX       "SKDEBUGGER_MATRIX"
+#define SKDEBUGGER_CLIP         "SKDEBUGGER_CLIP"
+#define SKDEBUGGER_PAINTINFO    "SKDEBUGGER_PAINTINFO"
+#define SKDEBUGGER_PAINT        "SKDEBUGGER_PAINT"
+
+#define SKDEBUGGER_TEXTSIZE         14
+#define CMD_WIDTH                   200
+#define INFO_HEIGHT                 150.0
+#define SKDEBUGGER_HIGHLIGHTCOLOR   0xFF113399
+#define SKDEBUGGER_TEXTCOLOR        0xFF000000
+#define SKDEBUGGER_RESIZEBARCOLOR   0xFF333333
+#define SKDEBUGGER_RESIZEBARSIZE    5
+
+/*
+ * Debugger - Info Panel
+ */
+class DebuggerStateView : public SkView {
+public:
+    DebuggerStateView();
+    
+protected:
+    virtual bool onEvent(const SkEvent& evt);
+    virtual void onDraw(SkCanvas* canvas);
+private:
+    SkColor     fBGColor;
+    SkPaint     fPaint;
+    SkString    fMatrix;
+    SkString    fPaintInfo;
+    SkString    fClip;
+    bool        fResizing;
+    typedef SkView INHERITED;
+};
+
+/*
+ * Debugger - Commands List
+ */
+class DebuggerCommandsView : public SkView {
+public:
+    DebuggerCommandsView();
+    ~DebuggerCommandsView();
+    int nextItem();
+    int prevItem();
+    int scrollUp();
+    int scrollDown();
+    void highlight(int index);
+    int  selectHighlight(int ypos);
+    void toggleCentered();
+    
+protected:
+    virtual bool onEvent(const SkEvent& evt);
+    virtual void onSizeChange();
+    virtual void onDraw(SkCanvas* canvas);
+private:
+    void        init();
+    void        alignCenter();
+    SkColor     fBGColor;
+    int         fTopIndex;
+    int         fHighlight;
+    SkScalar    fSpacing;
+    int         fRange;
+    bool        fResizing;
+    bool        fCentered;
+    SkTDArray<SkString*> fList;
+    typedef SkView INHERITED;
+};
+
+
+static void* PaintProc(void* ptr, bool doRef) {
+    SkPaint* p = (SkPaint*) ptr;
+    
+    if (doRef) {
+        return new SkPaint(*p);
+    }
+    else {
+        delete p;
+        return NULL;
+    }
+    
+}
+
diff --git a/experimental/CocoaDebugger/SkDebugDumper.cpp b/experimental/Debugger/SkDebugDumper.cpp
similarity index 71%
rename from experimental/CocoaDebugger/SkDebugDumper.cpp
rename to experimental/Debugger/SkDebugDumper.cpp
index 225435a..d353cfd 100644
--- a/experimental/CocoaDebugger/SkDebugDumper.cpp
+++ b/experimental/Debugger/SkDebugDumper.cpp
@@ -14,31 +14,16 @@
 #include "SkColorFilter.h"
 #include "SkPathEffect.h"
 #include "SkMaskFilter.h"
-#include "SkGradientShader.h"
-#include "SkDebuggerViews.h"
-
-bool gNeverSetToTrueJustNeedToFoolLinker;
-static void init_effects() {
-    if (gNeverSetToTrueJustNeedToFoolLinker) {
-        SkPoint p = SkPoint::Make(0,0);
-        SkPoint q = SkPoint::Make(100,100);
-        SkPoint pts[] = {p, q};
-        SkColor colors[] = { SK_ColorRED, SK_ColorGREEN };
-        SkScalar pos[] = { 0, 1.0};
-        SkGradientShader::CreateLinear(pts, colors, pos, 2, 
-                                       SkShader::kMirror_TileMode);
-    }
-}
+#include "DebuggerViews.h"
 
 SkDebugDumper::SkDebugDumper(SkEventSinkID cID, SkEventSinkID clID, 
                              SkEventSinkID ipID) {
     fContentID = cID;
-    fCommandListID = clID;
-    fInfoPanelID = ipID;
+    fCommandsID = clID;
+    fStateID = ipID;
     fInit = false;
     fDisabled = false;
     fCount = 0;
-    init_effects();
 }
 
 static void appendPtr(SkString* str, const void* ptr, const char name[]) {
@@ -52,14 +37,14 @@
     if (ptr) {
         SkString info;
         if (ptr->toDumpString(&info)) {
-            str->appendf("%s", info.c_str());
+            str->appendf("%s\n", info.c_str());
         } else {
-            str->appendf("%s: %p", name, ptr);
+            str->appendf("%s: %p\n", name, ptr);
         }
     }
 }
 
-static SkString dumpMatrix(SkDumpCanvasM* canvas) {
+static SkString dumpMatrix(SkDumpCanvas* canvas) {
     SkString str;
     SkMatrix m = canvas->getTotalMatrix();
     str.appendf("Matrix:");
@@ -79,7 +64,7 @@
     return str;
 }
 
-static SkString dumpClip(SkDumpCanvasM* canvas) {
+static SkString dumpClip(SkDumpCanvas* canvas) {
     SkString str;
     SkPath p;
     int maxPts = 50;
@@ -111,13 +96,12 @@
     "LCD/Subpixel Glyph Rendering",
     "Embedded Bitmap Text",
     "Freetype Autohinting",
-    
     "ALL"
 };
 
 
-static SkString dumpPaint(SkDumpCanvasM* canvas, const SkPaint* p,
-                      SkDumpCanvasM::Verb verb) {
+static SkString dumpPaint(SkDumpCanvas* canvas, const SkPaint* p,
+                      SkDumpCanvas::Verb verb) {
     SkString str;
     str.appendf("Color: #%08X\n", p->getColor()); 
     str.appendf("Flags: %s\n", gPaintFlags[p->getFlags()]);
@@ -128,7 +112,7 @@
     appendFlattenable(&str, p->getPathEffect(), "pathEffect");
     appendFlattenable(&str, p->getColorFilter(), "filter");
     
-    if (SkDumpCanvasM::kDrawText_Verb == verb) {
+    if (SkDumpCanvas::kDrawText_Verb == verb) {
         str.appendf("Text Size:%0.4g\n", SkScalarToFloat(p->getTextSize()));
         appendPtr(&str, p->getTypeface(), "typeface");
     }
@@ -136,7 +120,7 @@
     return str;
 }
 
-void SkDebugDumper::dump(SkDumpCanvasM* canvas, SkDumpCanvasM::Verb verb,
+void SkDebugDumper::dump(SkDumpCanvas* canvas, SkDumpCanvas::Verb verb,
                           const char str[], const SkPaint* p) {      
     if (!fDisabled) {
         SkString msg, tab;
@@ -150,19 +134,19 @@
         msg.appendf("%03d: %s%s\n", fCount, tab.c_str(), str);
         ++fCount;
         if (!fInit) {
-            SkEvent* cmd = new SkEvent(SkDebugger_CommandType);
-            cmd->setString(SkDebugger_Atom, msg);
-            cmd->post(fCommandListID, 100);
+            SkEvent* cmd = new SkEvent(SKDEBUGGER_COMMANDTYPE, fCommandsID);
+            cmd->setString(SKDEBUGGER_ATOM, msg);
+            cmd->postDelay(100);
         }
         else {
-            SkEvent* state = new SkEvent(SkDebugger_StateType);
-            state->setString(SkDebugger_Matrix, dumpMatrix(canvas));
-            state->setString(SkDebugger_Clip, dumpClip(canvas));
+            SkEvent* state = new SkEvent(SKDEBUGGER_STATETYPE, fStateID);
+            state->setString(SKDEBUGGER_MATRIX, dumpMatrix(canvas));
+            state->setString(SKDEBUGGER_CLIP, dumpClip(canvas));
             if (p) {
-                state->setString(SkDebugger_PaintInfo, dumpPaint(canvas, p, verb));
-                state->getMetaData().setPtr(SkDebugger_Paint, (void*)p, PaintProc);
+                state->setString(SKDEBUGGER_PAINTINFO, dumpPaint(canvas, p, verb));
+                state->getMetaData().setPtr(SKDEBUGGER_PAINT, (void*)p, PaintProc);
             }
-            state->post(fInfoPanelID);
+            state->post();
         }
     }
 }
\ No newline at end of file
diff --git a/experimental/CocoaDebugger/SkDebugDumper.h b/experimental/Debugger/SkDebugDumper.h
similarity index 72%
rename from experimental/CocoaDebugger/SkDebugDumper.h
rename to experimental/Debugger/SkDebugDumper.h
index 73cb1b2..35b0b23 100644
--- a/experimental/CocoaDebugger/SkDebugDumper.h
+++ b/experimental/Debugger/SkDebugDumper.h
@@ -7,21 +7,18 @@
  */
 #ifndef SkDebugDumper_DEFINED
 #define SkDebugDumper_DEFINED
-#include "SkDumpCanvasM.h"
+#include "SkDumpCanvas.h"
 #include "SkEvent.h"
 
-class CommandListView;
-class InfoPanelView;
-class ContentView;
 /** Formats the draw commands, and send them to a function-pointer provided
  by the caller.
  */
-class SkDebugDumper : public SkDumpCanvasM::Dumper {
+class SkDebugDumper : public SkDumpCanvas::Dumper {
 public:
     SkDebugDumper(SkEventSinkID cID, SkEventSinkID clID, SkEventSinkID ipID);
     // override from baseclass that does the formatting, and in turn calls
     // the function pointer that was passed to the constructor
-    virtual void dump(SkDumpCanvasM*, SkDumpCanvasM::Verb, const char str[],
+    virtual void dump(SkDumpCanvas*, SkDumpCanvas::Verb, const char str[],
                       const SkPaint*);
     
     void load() { fInit = true; };
@@ -33,9 +30,9 @@
     bool            fInit;
     bool            fDisabled;
     SkEventSinkID   fContentID;
-    SkEventSinkID   fCommandListID;
-    SkEventSinkID   fInfoPanelID;
+    SkEventSinkID   fCommandsID;
+    SkEventSinkID   fStateID;
     
-    typedef SkDumpCanvasM::Dumper INHERITED;
+    typedef SkDumpCanvas::Dumper INHERITED;
 };
 #endif
\ No newline at end of file
diff --git a/experimental/DrawingBoard/SampleDrawingClient.cpp b/experimental/DrawingBoard/SampleDrawingClient.cpp
index 9885d51..02b7a3b 100644
--- a/experimental/DrawingBoard/SampleDrawingClient.cpp
+++ b/experimental/DrawingBoard/SampleDrawingClient.cpp
@@ -8,7 +8,32 @@
 #include "SkColorPalette.h"
 #include "SkOSMenu.h"
 
+
+/**
+ * Drawing Client
+ *
+ * A drawing client that allows a user to perform simple brush stokes with 
+ * a selected color and brush size. The drawing client communicates with a 
+ * drawing server to send/receive data to/from other clients connected to the
+ * same server. The drawing client stores data in fData and fBuffer depending on
+ * the data type. Append type means that the drawing data is a completed stroke
+ * and Replace type means that the drawing data is in progress and will be 
+ * replaced by subsequent data. fData and fBuffer are read by a pipe reader and 
+ * reproduce the drawing. When the client is in a normal state, the data stored
+ * on the client and the server should be identical.
+ * The drawing client is also able to switch between vector and bitmap drawing.
+ * The drawing client also renders the latest drawing stroke locally in order to
+ * produce better reponses. This can be disabled by calling 
+ * controller.disablePlayBack(), which will introduce a lag between the input 
+ * and the drawing.
+ * Note: in order to keep up with the drawing data, the client will try to read
+ * a few times each frame in case more than one frame worth of data has been 
+ * received and render them together. This behavior can be adjusted by tweaking
+ * MAX_READ_PER_FRAME or disabled by turning fSync to false
+ */
+
 #define MAX_READ_PER_FRAME 5
+
 class DrawingClientView : public SampleView {
 public:
 	DrawingClientView() {
@@ -22,8 +47,8 @@
         fBrushSize = SkFloatToScalar(2.5);
         fAA = false;
         fPaletteVisible = true;
-        fSync = false;
-        fVector = false;
+        fSync = true;
+        fVector = true;
     }
     ~DrawingClientView() {
         if (fSocket) {
@@ -35,11 +60,14 @@
     
     virtual void requestMenu(SkOSMenu* menu) {
         menu->setTitle("Drawing Client");
-        menu->appendTextField("Server IP", "Server IP", this->getSinkID(), "IP address or hostname");
+        menu->appendTextField("Server IP", "Server IP", this->getSinkID(), 
+                              "IP address or hostname");
         menu->appendSwitch("Vector", "Vector", this->getSinkID(), fVector);
-        menu->appendSlider("Brush Size", "Brush Size", this->getSinkID(), 1.0, 100.0, fBrushSize);
+        menu->appendSlider("Brush Size", "Brush Size", this->getSinkID(), 1.0, 
+                           100.0, fBrushSize);
         menu->appendSwitch("Anti-Aliasing", "AA", this->getSinkID(), fAA);
-        menu->appendSwitch("Show Color Palette", "Palette", this->getSinkID(), fPaletteVisible);
+        menu->appendSwitch("Show Color Palette", "Palette", this->getSinkID(), 
+                           fPaletteVisible);
         menu->appendSwitch("Sync", "Sync", this->getSinkID(), fSync);
         menu->appendAction("Clear", this->getSinkID());
     }
@@ -75,11 +103,11 @@
     }
     
     bool onEvent(const SkEvent& evt) {;
-        if (SkOSMenu::FindSliderValue(&evt, "Brush Size", &fBrushSize))
+        if (SkOSMenu::FindSliderValue(evt, "Brush Size", &fBrushSize))
             return true;
         
         SkString s;
-        if (SkOSMenu::FindText(&evt, "Server IP", &s)) {
+        if (SkOSMenu::FindText(evt, "Server IP", &s)) {
             if (NULL != fSocket) {
                 delete fSocket;
             }
@@ -92,18 +120,18 @@
             this->inval(NULL);
             return true;
         }
-        if (SkOSMenu::FindSwitchState(&evt, "AA", &fAA) ||
-            SkOSMenu::FindSwitchState(&evt, "Sync", &fSync))
+        if (SkOSMenu::FindSwitchState(evt, "AA", &fAA) ||
+            SkOSMenu::FindSwitchState(evt, "Sync", &fSync))
             return true;
-        if (SkOSMenu::FindSwitchState(&evt, "Vector", &fVector)) {
+        if (SkOSMenu::FindSwitchState(evt, "Vector", &fVector)) {
             this->clearBitmap();
             return true;
         }
-        if (SkOSMenu::FindAction(&evt, "Clear")) {
+        if (SkOSMenu::FindAction(evt, "Clear")) {
             this->clear();
             return true;
         }
-        if (SkOSMenu::FindSwitchState(&evt, "Palette", &fPaletteVisible)) {
+        if (SkOSMenu::FindSwitchState(evt, "Palette", &fPaletteVisible)) {
             fPalette->setVisibleP(fPaletteVisible);
             return true;
         }
@@ -150,6 +178,7 @@
                 fSocket->connectToServer();
         }
         size_t bytesRead = 0;
+        SkGPipeReader::Status status;
         SkCanvas bufferCanvas(fBase);
         SkCanvas* tempCanvas;
         while (fTotalBytesRead < fData.count()) {
@@ -157,10 +186,10 @@
                 tempCanvas = canvas;
             else
                 tempCanvas = &bufferCanvas;
-            SkGPipeReader reader(tempCanvas);
-            SkGPipeReader::Status status = reader.playback(fData.begin() + fTotalBytesRead,
-                                                           fData.count() - fTotalBytesRead,
-                                                           &bytesRead);
+            SkGPipeReader reader(tempCanvas); 
+            status = reader.playback(fData.begin() + fTotalBytesRead,
+                                     fData.count() - fTotalBytesRead,
+                                     &bytesRead);
             SkASSERT(SkGPipeReader::kError_Status != status);
             fTotalBytesRead += bytesRead;
         }
@@ -172,10 +201,10 @@
         size_t totalBytesRead = 0;
         while (totalBytesRead < fBuffer.count()) {
             SkGPipeReader reader(canvas);
-            reader.playback(fBuffer.begin() + totalBytesRead, 
-                            fBuffer.count() - totalBytesRead, 
-                            &bytesRead);
-            
+            status = reader.playback(fBuffer.begin() + totalBytesRead, 
+                                     fBuffer.count() - totalBytesRead, 
+                                     &bytesRead);
+            SkASSERT(SkGPipeReader::kError_Status != status);
             totalBytesRead += bytesRead;
         }
         
diff --git a/experimental/DrawingBoard/SampleDrawingServer.cpp b/experimental/DrawingBoard/SampleDrawingServer.cpp
index 6542b58..c79f8d3 100644
--- a/experimental/DrawingBoard/SampleDrawingServer.cpp
+++ b/experimental/DrawingBoard/SampleDrawingServer.cpp
@@ -7,6 +7,25 @@
 #include "SkCornerPathEffect.h"
 #include "SkOSMenu.h"
 #include <map>
+
+/**
+ * Drawing Server
+ *
+ * This simple drawing server can accept connections from multiple drawing 
+ * clients simultaneously. It accumulates drawing data from each client each 
+ * frame, stores it in the appropriate place, and then broadcasts incremental
+ * changes back to all the clients. Each logical packet, meaning one brush
+ * stoke in this case can be of two types, append and replace. Append types are
+ * completed strokes ready to be stored in the fData queue and will no longer be
+ * modified. Replace types are drawing operations that are still in progress on 
+ * the client side, so they are appended to fBuffer. The location and size of 
+ * the buffered data for each client is stored in a map and updated properly.
+ * Each time a new replace drawing call is received from a client, its previous
+ * buffered data is discarded.
+ * Since the Server keeps all the complete drawing data and the latest buffered
+ * data, it's able to switch between vector and bitmap drawing
+ */
+
 class DrawingServerView : public SampleView {
 public:
 	DrawingServerView(){
@@ -77,14 +96,12 @@
                                  SkSocket::kPipeAppend_type);
             fTotalBytesWritten = fData.count();
             fServer->suspendWrite();
-            //this->clearBitmap();
         }
         else {
             //other types of data
         }
     }
     
-    // overrides from SkEventSink
     bool onQuery(SkEvent* evt) {
         if (SampleCode::TitleQ(*evt)) {
             SampleCode::TitleR(evt, "Drawing Server");
@@ -94,11 +111,11 @@
     }
     
     bool onEvent(const SkEvent& evt) {
-        if (SkOSMenu::FindAction(&evt, "Clear")) {
+        if (SkOSMenu::FindAction(evt, "Clear")) {
             this->clear();
             return true;
         }
-        if (SkOSMenu::FindSwitchState(&evt, "Vector", &fVector)) {
+        if (SkOSMenu::FindSwitchState(evt, "Vector", &fVector)) {
             this->clearBitmap();
             return true;
         }
@@ -121,33 +138,35 @@
         }
         
         size_t bytesRead;
+        SkGPipeReader::Status stat;
         SkCanvas bufferCanvas(fBase);
         SkCanvas* tempCanvas;
         while (fTotalBytesRead < fData.count()) {
-            if (fVector)
+            if (fVector) {
                 tempCanvas = canvas;
-            else
+            } else {
                 tempCanvas = &bufferCanvas;
+            }
             SkGPipeReader reader(tempCanvas);
-            SkGPipeReader::Status stat = reader.playback(fData.begin() + fTotalBytesRead,
-                                                         fData.count() - fTotalBytesRead,
-                                                         &bytesRead);
+            stat = reader.playback(fData.begin() + fTotalBytesRead,
+                                   fData.count() - fTotalBytesRead,
+                                   &bytesRead);
             SkASSERT(SkGPipeReader::kError_Status != stat);
             fTotalBytesRead += bytesRead;
-            
-            if (SkGPipeReader::kDone_Status == stat) {}
         }
-        if (fVector)
+        if (fVector) {
             fTotalBytesRead = 0;
-        else
+        } else {
             canvas->drawBitmap(fBase, 0, 0, NULL);
+        }
         
         size_t totalBytesRead = 0;
         while (totalBytesRead < fBuffer.count()) {
             SkGPipeReader reader(canvas);
-            reader.playback(fBuffer.begin() + totalBytesRead,
-                            fBuffer.count() - totalBytesRead,
-                            &bytesRead);
+            stat = reader.playback(fBuffer.begin() + totalBytesRead,
+                                   fBuffer.count() - totalBytesRead,
+                                   &bytesRead);
+            SkASSERT(SkGPipeReader::kError_Status != stat);
             totalBytesRead += bytesRead;
         }
         
@@ -159,7 +178,9 @@
     
     virtual void onSizeChange() {
         this->INHERITED::onSizeChange();
-        fBase.setConfig(SkBitmap::kARGB_8888_Config, this->width(), this->height());
+        fBase.setConfig(SkBitmap::kARGB_8888_Config, 
+                        this->width(), 
+                        this->height());
         fBase.allocPixels(NULL);
         this->clearBitmap();
     }
@@ -181,6 +202,7 @@
         int bufferBase;
         int bufferSize;
     };
+    
     std::map<int, ClientState*> fClientMap;
     SkTDArray<char>             fData;
     SkTDArray<char>             fBuffer;
diff --git a/experimental/Networking/SampleNetPipeReader.cpp b/experimental/Networking/SampleNetPipeReader.cpp
index 0d90286..f58d5c2 100644
--- a/experimental/Networking/SampleNetPipeReader.cpp
+++ b/experimental/Networking/SampleNetPipeReader.cpp
@@ -6,12 +6,26 @@
 #include "SkSockets.h"
 #include "SkOSMenu.h"
 
-#define MAX_READS_PER_FRAME 5
+/**
+ * A simple networked pipe reader
+ *
+ * This view will connect to a user specified server, in this case meaning any
+ * Skia app that's has a SkTCPServer set up to broadcast its piped drawing data,
+ * received all the data transmitted and attempt to reproduce the drawing calls.
+ * This reader will only keep the latest batch of data. In order to keep up with
+ * the server, which may be producing data at a much higher rate than the reader
+ * is consuming, the reader will attempt multiple reads and only render the 
+ * latest frame. this behavior can be adjusted by changing MAX_READS_PER_FRAME
+ * or disabled by setting fSync to false
+ */
+
+#define MAX_READS_PER_FRAME 12
+
 class NetPipeReaderView : public SampleView {
 public:
 	NetPipeReaderView() {
         fSocket = NULL;
-        fSync = false;
+        fSync = true;
     }
     
     ~NetPipeReaderView() {
@@ -47,9 +61,9 @@
         return this->INHERITED::onQuery(evt);
     }
 
-    bool onEvent(const SkEvent& evt) {;
+    bool onEvent(const SkEvent& evt) {
         SkString s;
-        if (SkOSMenu::FindText(&evt, "Server IP", &s)) {
+        if (SkOSMenu::FindText(evt, "Server IP", &s)) {
             if (NULL != fSocket) {
                 delete fSocket;
             }
@@ -58,7 +72,7 @@
             SkDebugf("Connecting to %s\n", s.c_str());
             return true;
         }
-        if (SkOSMenu::FindSwitchState(&evt, "Sync", &fSync))
+        if (SkOSMenu::FindSwitchState(evt, "Sync", &fSync))
             return true;
         return this->INHERITED::onEvent(evt);
     }
@@ -73,10 +87,17 @@
                 int numreads = 0;
                 while (fSocket->readPacket(readData, this) > 0 && 
                        numreads < MAX_READS_PER_FRAME) {
+                    // at this point, new data has been read and stored, discard
+                    // old data since it's not needed anymore
+                    SkASSERT(fDataArray.count() > dataToRemove);
                     fDataArray.remove(0, dataToRemove);
                     dataToRemove = fDataArray.count();
                     ++numreads;
                 }
+                // clean up if max reads reached
+                if (numreads == MAX_READS_PER_FRAME && 
+                    fDataArray.count() > dataToRemove)
+                    fDataArray.remove(0, dataToRemove);
             }
             else {
                 if (fSocket->readPacket(readData, this) > 0) 
@@ -85,7 +106,7 @@
         }
         else
             fSocket->connectToServer();
-
+        
         SkGPipeReader reader(canvas);
         size_t bytesRead;
         SkGPipeReader::Status fStatus = reader.playback(fDataArray.begin(),
@@ -102,7 +123,6 @@
     typedef SampleView INHERITED;
 };
 
-
 ///////////////////////////////////////////////////////////////////////////////
 
 static SkView* MyFactory() { return new NetPipeReaderView; }
diff --git a/experimental/Networking/SkSockets.cpp b/experimental/Networking/SkSockets.cpp
index ccf6010..4304b6c 100644
--- a/experimental/Networking/SkSockets.cpp
+++ b/experimental/Networking/SkSockets.cpp
@@ -23,6 +23,7 @@
 
 SkSocket::~SkSocket() {
     this->closeSocket(fSockfd);
+    shutdown(fSockfd, 2); //stop sending/receiving
 }
 
 int SkSocket::createSocket() {
@@ -49,7 +50,6 @@
     if (!fReady)
         return;
     
-    shutdown(sockfd, 2); //stop sending/receiving
     close(sockfd);
     //SkDebugf("Closed fd:%d\n", sockfd);
     
@@ -151,7 +151,7 @@
         }
 
         if (failure) {
-            onRead(NULL, 0, i, h.type, context);
+            onRead(i, NULL, 0, h.type, context);
             this->onFailedConnection(i);
             continue;
         }
diff --git a/experimental/Networking/SkSockets.h b/experimental/Networking/SkSockets.h
index 1f47a94..0302426 100644
--- a/experimental/Networking/SkSockets.h
+++ b/experimental/Networking/SkSockets.h
@@ -52,8 +52,8 @@
      * For blocking sockets, write will block indefinitely if the socket at the
      * other end of the connection doesn't receive any data.
      * NOTE: This method guarantees that all of the data will be sent unless 
-     * there was an error, so it might block temporarily when the write buffer 
-     * is full
+     * there was an error, so it may block temporarily when the write buffer is 
+     * full
      */
     int writePacket(void* data, size_t size, DataType type = kPipeAppend_type);
     
@@ -67,7 +67,7 @@
      * blocking sockets, read will block indefinitely if the socket doesn't
      * receive any data.
      * NOTE: This method guarantees that all the data in a logical packet will 
-     * be read so there might be temporary delays if it's waiting for parts of a
+     * be read so it may block temporarily if it's waiting for parts of a
      * packet
      */
     int readPacket(void (*onRead)(int cid, const void* data, size_t size, 
diff --git a/experimental/iOSSampleApp/Shared/SkOptionsTableViewController.mm b/experimental/iOSSampleApp/Shared/SkOptionsTableViewController.mm
index 29f2c7e..acf70b8 100644
--- a/experimental/iOSSampleApp/Shared/SkOptionsTableViewController.mm
+++ b/experimental/iOSSampleApp/Shared/SkOptionsTableViewController.mm
@@ -38,7 +38,7 @@
 - (NSUInteger)convertPathToIndex:(NSIndexPath*)path {
     NSUInteger index = 0;
     for (NSInteger i = 0; i < path.section; ++i) {
-        index += (*fMenus)[i]->countItems();
+        index += (*fMenus)[i]->getCount();
     }
     return index + path.row;
 }
@@ -57,7 +57,7 @@
     if (menuIndex >= 0 && menuIndex < fMenus->count()) {
         NSUInteger first = 0;
         for (NSInteger i = 0; i < menuIndex; ++i) {
-            first += (*fMenus)[i]->countItems();
+            first += (*fMenus)[i]->getCount();
         }
         [fItems removeObjectsInRange:NSMakeRange(first, [fItems count] - first)];
         [self loadMenu:menu];
@@ -66,8 +66,10 @@
 }
 
 - (void)loadMenu:(const SkOSMenu*)menu {
-    for (int i = 0; i < menu->countItems(); ++i) {
-        const SkOSMenu::Item* item = menu->getItem(i);
+    const SkOSMenu::Item* menuitems[menu->getCount()];
+    menu->getItems(menuitems);
+    for (int i = 0; i < menu->getCount(); ++i) {
+        const SkOSMenu::Item* item = menuitems[i];
         NSString* title = [NSString stringWithUTF8String:item->getLabel()];
         
         if (SkOSMenu::kList_Type == item->getType()) {
@@ -78,12 +80,12 @@
             List.fOptions = [[SkOptionListController alloc] initWithStyle:UITableViewStyleGrouped];
             
             int count = 0;
-            SkOSMenu::FindListItemCount(item->getEvent(), &count);
+            SkOSMenu::FindListItemCount(*item->getEvent(), &count);
             SkString options[count];
-            SkOSMenu::FindListItems(item->getEvent(), options);
+            SkOSMenu::FindListItems(*item->getEvent(), options);
             for (int i = 0; i < count; ++i)
                 [List.fOptions addOption:[NSString stringWithUTF8String:options[i].c_str()]];
-            SkOSMenu::FindListIndex(item->getEvent(), item->getSlotName(), &value);
+            SkOSMenu::FindListIndex(*item->getEvent(), item->getSlotName(), &value);
             
             List.fOptions.fSelectedIndex = value;
             List.fCell = [self createList:title
@@ -104,25 +106,25 @@
                     option.fCell = [self createAction:title];
                     break;
                 case SkOSMenu::kSwitch_Type:
-                    SkOSMenu::FindSwitchState(item->getEvent(), item->getSlotName(), &state);
+                    SkOSMenu::FindSwitchState(*item->getEvent(), item->getSlotName(), &state);
                     option.fCell = [self createSwitch:title default:(BOOL)state];
                     break;
                 case SkOSMenu::kSlider_Type:
                     SkScalar min, max, value;
-                    SkOSMenu::FindSliderValue(item->getEvent(), item->getSlotName(), &value);
-                    SkOSMenu::FindSliderMin(item->getEvent(), &min);
-                    SkOSMenu::FindSliderMax(item->getEvent(), &max);
+                    SkOSMenu::FindSliderValue(*item->getEvent(), item->getSlotName(), &value);
+                    SkOSMenu::FindSliderMin(*item->getEvent(), &min);
+                    SkOSMenu::FindSliderMax(*item->getEvent(), &max);
                     option.fCell = [self createSlider:title 
                                                   min:min 
                                                   max:max
                                               default:value];
                     break;                    
                 case SkOSMenu::kTriState_Type:
-                    SkOSMenu::FindTriState(item->getEvent(), item->getSlotName(), &tristate);
+                    SkOSMenu::FindTriState(*item->getEvent(), item->getSlotName(), &tristate);
                     option.fCell = [self createTriState:title default:(int)tristate];
                     break;
                 case SkOSMenu::kTextField_Type:
-                    SkOSMenu::FindText(item->getEvent(), item->getSlotName(), &str);
+                    SkOSMenu::FindText(*item->getEvent(), item->getSlotName(), &str);
                     option.fCell = [self createTextField:title 
                                                  default:[NSString stringWithUTF8String:str.c_str()]];
                     break;
@@ -142,26 +144,31 @@
     if ([sender isKindOfClass:[UISlider class]]) {//Slider
         UISlider* slider = (UISlider *)sender;
         cell.detailTextLabel.text = [NSString stringWithFormat:@"%1.1f", slider.value];
-        item.fItem->postEventWithScalar(slider.value);
+        item.fItem->setScalar(slider.value);
     }
     else if ([sender isKindOfClass:[UISwitch class]]) {//Switch
         UISwitch* switch_ = (UISwitch *)sender;
-        item.fItem->postEventWithBool(switch_.on);
+        item.fItem->setBool(switch_.on);
     }
     else if ([sender isKindOfClass:[UITextField class]]) { //TextField
         UITextField* textField = (UITextField *)sender;
         [textField resignFirstResponder];
-        item.fItem->postEventWithString([textField.text UTF8String]);
+        item.fItem->setString([textField.text UTF8String]);
     }
     else if ([sender isKindOfClass:[UISegmentedControl class]]) { //Action
         UISegmentedControl* segmented = (UISegmentedControl *)sender;
-        item.fItem->postEventWithInt((2 == segmented.selectedSegmentIndex) ? 
-                                     SkOSMenu::kMixedState : 
-                                     segmented.selectedSegmentIndex);
+        SkOSMenu::TriState state;
+        if (2 == segmented.selectedSegmentIndex) {
+            state = SkOSMenu::kMixedState;
+        } else {
+            state = (SkOSMenu::TriState)segmented.selectedSegmentIndex;
+        }
+        item.fItem->setTriState(state);
     }
     else{
         NSLog(@"unknown");
     }
+    item.fItem->postEvent();
 }
 
 - (UITableViewCell*)createAction:(NSString*)title {
@@ -272,7 +279,7 @@
 }
 
 - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
-    return (*fMenus)[section]->countItems();
+    return (*fMenus)[section]->getCount();
 }
 
 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
@@ -314,7 +321,8 @@
     if (self == viewController) { //when a List option is popped, trigger event
         NSString* selectedOption = [fCurrentList.fOptions getSelectedOption];
         fCurrentList.fCell.detailTextLabel.text = selectedOption;
-        fCurrentList.fItem->postEventWithInt(fCurrentList.fOptions.fSelectedIndex);
+        fCurrentList.fItem->setInt(fCurrentList.fOptions.fSelectedIndex);
+        fCurrentList.fItem->postEvent();
     }
 }
 
diff --git a/experimental/iOSSampleApp/Shared/SkUIDetailViewController.mm b/experimental/iOSSampleApp/Shared/SkUIDetailViewController.mm
index f4976b5..7c2aef4 100644
--- a/experimental/iOSSampleApp/Shared/SkUIDetailViewController.mm
+++ b/experimental/iOSSampleApp/Shared/SkUIDetailViewController.mm
@@ -1,4 +1,3 @@
-#import "SkAlertPrompt.h"
 #import "SkUIDetailViewController.h"
 #include "SampleApp.h"
 #include "SkCGUtils.h"
diff --git a/experimental/iOSSampleApp/Shared/SkUIView.mm b/experimental/iOSSampleApp/Shared/SkUIView.mm
index c6f1e22..05b6edd 100644
--- a/experimental/iOSSampleApp/Shared/SkUIView.mm
+++ b/experimental/iOSSampleApp/Shared/SkUIView.mm
@@ -5,7 +5,7 @@
 #define SKGL_CONFIG         kEAGLColorFormatRGB565
 //#define SKGL_CONFIG         kEAGLColorFormatRGBA8
 
-//#define FORCE_REDRAW
+#define FORCE_REDRAW
 
 //#define USE_GL_1
 #define USE_GL_2
diff --git a/experimental/iOSSampleApp/iOSSampleApp.xcodeproj/project.pbxproj b/experimental/iOSSampleApp/iOSSampleApp.xcodeproj/project.pbxproj
index d1fcab1..e876678 100755
--- a/experimental/iOSSampleApp/iOSSampleApp.xcodeproj/project.pbxproj
+++ b/experimental/iOSSampleApp/iOSSampleApp.xcodeproj/project.pbxproj
@@ -9,92 +9,51 @@
 /* Begin PBXBuildFile section */
 		1D60589B0D05DD56006BFB54 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; };
 		1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
-		260E00D513B11F5B0064D447 /* bitmapfilters.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001513B11F5B0064D447 /* bitmapfilters.cpp */; };
-		260E00D613B11F5B0064D447 /* blurs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001613B11F5B0064D447 /* blurs.cpp */; };
-		260E00D713B11F5B0064D447 /* complexclip.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001713B11F5B0064D447 /* complexclip.cpp */; };
-		260E00D813B11F5B0064D447 /* filltypes.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001813B11F5B0064D447 /* filltypes.cpp */; };
-		260E00D913B11F5B0064D447 /* gradients.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001A13B11F5B0064D447 /* gradients.cpp */; };
-		260E00DA13B11F5B0064D447 /* nocolorbleed.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001B13B11F5B0064D447 /* nocolorbleed.cpp */; };
-		260E00DB13B11F5B0064D447 /* points.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001C13B11F5B0064D447 /* points.cpp */; };
-		260E00DC13B11F5B0064D447 /* poly2poly.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001D13B11F5B0064D447 /* poly2poly.cpp */; };
-		260E00DD13B11F5B0064D447 /* shadertext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001E13B11F5B0064D447 /* shadertext.cpp */; };
-		260E00DE13B11F5B0064D447 /* shadows.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001F13B11F5B0064D447 /* shadows.cpp */; };
-		260E00DF13B11F5B0064D447 /* shapes.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E002013B11F5B0064D447 /* shapes.cpp */; };
-		260E00E013B11F5B0064D447 /* tilemodes.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E002113B11F5B0064D447 /* tilemodes.cpp */; };
-		260E00E113B11F5B0064D447 /* xfermodes.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E002213B11F5B0064D447 /* xfermodes.cpp */; };
+		2605F44213F18B1B0044A072 /* DebuggerView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2605F43C13F18B1B0044A072 /* DebuggerView.cpp */; };
+		2605F44313F18B1B0044A072 /* DebuggerCommandsView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2605F43E13F18B1B0044A072 /* DebuggerCommandsView.cpp */; };
+		2605F44413F18B1B0044A072 /* SkDebugDumper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2605F43F13F18B1B0044A072 /* SkDebugDumper.cpp */; };
+		2605F44513F18B1B0044A072 /* DebuggerStateView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2605F44113F18B1B0044A072 /* DebuggerStateView.cpp */; };
+		2605F65D13F19D1D0044A072 /* SamplePicture.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E005913B11F5B0064D447 /* SamplePicture.cpp */; };
+		2605F66513F19EB80044A072 /* GrStencilBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2605F66413F19EB80044A072 /* GrStencilBuffer.cpp */; };
+		2605F83013F1AE4B0044A072 /* xfermodes.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E002213B11F5B0064D447 /* xfermodes.cpp */; };
+		2605F83113F1AE4C0044A072 /* tilemodes.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E002113B11F5B0064D447 /* tilemodes.cpp */; };
+		2605F83213F1AE4C0044A072 /* shapes.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E002013B11F5B0064D447 /* shapes.cpp */; };
+		2605F83313F1AE4D0044A072 /* shadows.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001F13B11F5B0064D447 /* shadows.cpp */; };
+		2605F83413F1AE4D0044A072 /* shadertext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001E13B11F5B0064D447 /* shadertext.cpp */; };
+		2605F83513F1AE4E0044A072 /* poly2poly.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001D13B11F5B0064D447 /* poly2poly.cpp */; };
+		2605F83613F1AE4F0044A072 /* nocolorbleed.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001B13B11F5B0064D447 /* nocolorbleed.cpp */; };
+		2605F83713F1AE500044A072 /* points.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001C13B11F5B0064D447 /* points.cpp */; };
+		2605F83813F1AE500044A072 /* gradients.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001A13B11F5B0064D447 /* gradients.cpp */; };
+		2605F83913F1AE510044A072 /* filltypes.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001813B11F5B0064D447 /* filltypes.cpp */; };
+		2605F83A13F1AE520044A072 /* complexclip.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001713B11F5B0064D447 /* complexclip.cpp */; };
+		2605F83B13F1AE520044A072 /* blurs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001613B11F5B0064D447 /* blurs.cpp */; };
+		2605F83C13F1AE530044A072 /* bitmapfilters.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E001513B11F5B0064D447 /* bitmapfilters.cpp */; };
 		260E00E313B11F5B0064D447 /* OverView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E002513B11F5B0064D447 /* OverView.cpp */; };
-		260E00E413B11F5B0064D447 /* SampleAARects.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E002613B11F5B0064D447 /* SampleAARects.cpp */; };
-		260E00E513B11F5B0064D447 /* SampleAll.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E002713B11F5B0064D447 /* SampleAll.cpp */; };
-		260E00E613B11F5B0064D447 /* SampleAnimator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E002813B11F5B0064D447 /* SampleAnimator.cpp */; };
 		260E00E813B11F5B0064D447 /* SampleArc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E002A13B11F5B0064D447 /* SampleArc.cpp */; };
 		260E00E913B11F5B0064D447 /* SampleAvoid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E002B13B11F5B0064D447 /* SampleAvoid.cpp */; };
-		260E00EA13B11F5B0064D447 /* SampleBigGradient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E002C13B11F5B0064D447 /* SampleBigGradient.cpp */; };
-		260E00EB13B11F5B0064D447 /* SampleBitmapRect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E002D13B11F5B0064D447 /* SampleBitmapRect.cpp */; };
 		260E00EC13B11F5B0064D447 /* SampleBlur.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E002E13B11F5B0064D447 /* SampleBlur.cpp */; };
-		260E00ED13B11F5B0064D447 /* SampleCamera.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E002F13B11F5B0064D447 /* SampleCamera.cpp */; };
 		260E00EE13B11F5B0064D447 /* SampleCircle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E003013B11F5B0064D447 /* SampleCircle.cpp */; };
-		260E00EF13B11F5B0064D447 /* SampleColorFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E003213B11F5B0064D447 /* SampleColorFilter.cpp */; };
 		260E00F013B11F5B0064D447 /* SampleComplexClip.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E003313B11F5B0064D447 /* SampleComplexClip.cpp */; };
-		260E00F113B11F5B0064D447 /* SampleConcavePaths.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E003413B11F5B0064D447 /* SampleConcavePaths.cpp */; };
 		260E00F213B11F5B0064D447 /* SampleCull.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E003513B11F5B0064D447 /* SampleCull.cpp */; };
-		260E00F313B11F5B0064D447 /* SampleDecode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E003613B11F5B0064D447 /* SampleDecode.cpp */; };
-		260E00F413B11F5B0064D447 /* SampleDither.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E003713B11F5B0064D447 /* SampleDither.cpp */; };
-		260E00F513B11F5B0064D447 /* SampleDitherBitmap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E003813B11F5B0064D447 /* SampleDitherBitmap.cpp */; };
-		260E00F613B11F5B0064D447 /* SampleDrawLooper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E003913B11F5B0064D447 /* SampleDrawLooper.cpp */; };
-		260E00F713B11F5B0064D447 /* SampleEffects.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E003A13B11F5B0064D447 /* SampleEffects.cpp */; };
-		260E00F813B11F5B0064D447 /* SampleEmboss.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E003B13B11F5B0064D447 /* SampleEmboss.cpp */; };
-		260E00F913B11F5B0064D447 /* SampleEncode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E003C13B11F5B0064D447 /* SampleEncode.cpp */; };
-		260E00FA13B11F5B0064D447 /* SampleExtractAlpha.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E003D13B11F5B0064D447 /* SampleExtractAlpha.cpp */; };
 		260E00FB13B11F5B0064D447 /* SampleFillType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E003E13B11F5B0064D447 /* SampleFillType.cpp */; };
-		260E00FC13B11F5B0064D447 /* SampleFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E003F13B11F5B0064D447 /* SampleFilter.cpp */; };
-		260E00FD13B11F5B0064D447 /* SampleFilter2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E004013B11F5B0064D447 /* SampleFilter2.cpp */; };
-		260E00FE13B11F5B0064D447 /* SampleFontCache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E004113B11F5B0064D447 /* SampleFontCache.cpp */; };
-		260E010213B11F5B0064D447 /* SampleGradients.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E004513B11F5B0064D447 /* SampleGradients.cpp */; };
-		260E010313B11F5B0064D447 /* SampleHairline.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E004613B11F5B0064D447 /* SampleHairline.cpp */; };
-		260E010413B11F5B0064D447 /* SampleImage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E004713B11F5B0064D447 /* SampleImage.cpp */; };
-		260E010513B11F5B0064D447 /* SampleImageDir.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E004813B11F5B0064D447 /* SampleImageDir.cpp */; };
 		260E010613B11F5B0064D447 /* SampleLCD.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E004913B11F5B0064D447 /* SampleLCD.cpp */; };
-		260E010713B11F5B0064D447 /* SampleLayerMask.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E004A13B11F5B0064D447 /* SampleLayerMask.cpp */; };
-		260E010813B11F5B0064D447 /* SampleLayers.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E004B13B11F5B0064D447 /* SampleLayers.cpp */; };
-		260E010913B11F5B0064D447 /* SampleLineClipper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E004C13B11F5B0064D447 /* SampleLineClipper.cpp */; };
-		260E010A13B11F5B0064D447 /* SampleLines.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E004D13B11F5B0064D447 /* SampleLines.cpp */; };
-		260E010B13B11F5B0064D447 /* SampleMeasure.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E004E13B11F5B0064D447 /* SampleMeasure.cpp */; };
-		260E010C13B11F5B0064D447 /* SampleMipMap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E004F13B11F5B0064D447 /* SampleMipMap.cpp */; };
-		260E010D13B11F5B0064D447 /* SampleMovie.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E005013B11F5B0064D447 /* SampleMovie.cpp */; };
-		260E010E13B11F5B0064D447 /* SampleNinePatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E005113B11F5B0064D447 /* SampleNinePatch.cpp */; };
-		260E010F13B11F5B0064D447 /* SampleOvalTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E005213B11F5B0064D447 /* SampleOvalTest.cpp */; };
-		260E011013B11F5B0064D447 /* SampleOverflow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E005313B11F5B0064D447 /* SampleOverflow.cpp */; };
-		260E011113B11F5B0064D447 /* SamplePageFlip.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E005413B11F5B0064D447 /* SamplePageFlip.cpp */; };
-		260E011213B11F5B0064D447 /* SamplePatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E005513B11F5B0064D447 /* SamplePatch.cpp */; };
 		260E011313B11F5B0064D447 /* SamplePath.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E005613B11F5B0064D447 /* SamplePath.cpp */; };
 		260E011413B11F5B0064D447 /* SamplePathClip.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E005713B11F5B0064D447 /* SamplePathClip.cpp */; };
 		260E011513B11F5B0064D447 /* SamplePathEffects.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E005813B11F5B0064D447 /* SamplePathEffects.cpp */; };
-		260E011613B11F5B0064D447 /* SamplePicture.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E005913B11F5B0064D447 /* SamplePicture.cpp */; };
 		260E011713B11F5B0064D447 /* SamplePoints.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E005A13B11F5B0064D447 /* SamplePoints.cpp */; };
 		260E011813B11F5B0064D447 /* SamplePolyToPoly.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E005B13B11F5B0064D447 /* SamplePolyToPoly.cpp */; };
 		260E011913B11F5B0064D447 /* SampleRegion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E005C13B11F5B0064D447 /* SampleRegion.cpp */; };
-		260E011A13B11F5B0064D447 /* SampleRepeatTile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E005D13B11F5B0064D447 /* SampleRepeatTile.cpp */; };
-		260E011B13B11F5B0064D447 /* SampleShaderText.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E005E13B11F5B0064D447 /* SampleShaderText.cpp */; };
-		260E011C13B11F5B0064D447 /* SampleShaders.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E005F13B11F5B0064D447 /* SampleShaders.cpp */; };
 		260E011D13B11F5B0064D447 /* SampleShapes.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E006013B11F5B0064D447 /* SampleShapes.cpp */; };
-		260E011E13B11F5B0064D447 /* SampleSkLayer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E006113B11F5B0064D447 /* SampleSkLayer.cpp */; };
 		260E011F13B11F5B0064D447 /* SampleSlides.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E006213B11F5B0064D447 /* SampleSlides.cpp */; };
-		260E012013B11F5B0064D447 /* SampleStrokePath.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E006313B11F5B0064D447 /* SampleStrokePath.cpp */; };
-		260E012113B11F5B0064D447 /* SampleStrokeText.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E006413B11F5B0064D447 /* SampleStrokeText.cpp */; };
 		260E012313B11F5B0064D447 /* SampleText.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E006613B11F5B0064D447 /* SampleText.cpp */; };
 		260E012413B11F5B0064D447 /* SampleTextAlpha.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E006713B11F5B0064D447 /* SampleTextAlpha.cpp */; };
 		260E012513B11F5B0064D447 /* SampleTextBox.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E006813B11F5B0064D447 /* SampleTextBox.cpp */; };
 		260E012613B11F5B0064D447 /* SampleTextEffects.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E006913B11F5B0064D447 /* SampleTextEffects.cpp */; };
 		260E012713B11F5B0064D447 /* SampleTextOnPath.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E006A13B11F5B0064D447 /* SampleTextOnPath.cpp */; };
-		260E012813B11F5B0064D447 /* SampleTextureDomain.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E006B13B11F5B0064D447 /* SampleTextureDomain.cpp */; };
-		260E012913B11F5B0064D447 /* SampleTiling.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E006C13B11F5B0064D447 /* SampleTiling.cpp */; };
-		260E012A13B11F5B0064D447 /* SampleTinyBitmap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E006D13B11F5B0064D447 /* SampleTinyBitmap.cpp */; };
 		260E012B13B11F5B0064D447 /* SampleTriangles.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E006E13B11F5B0064D447 /* SampleTriangles.cpp */; };
 		260E012C13B11F5B0064D447 /* SampleTypeface.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E006F13B11F5B0064D447 /* SampleTypeface.cpp */; };
 		260E012D13B11F5B0064D447 /* SampleUnitMapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E007013B11F5B0064D447 /* SampleUnitMapper.cpp */; };
 		260E012E13B11F5B0064D447 /* SampleVertices.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E007113B11F5B0064D447 /* SampleVertices.cpp */; };
-		260E012F13B11F5B0064D447 /* SampleXfermodes.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E007213B11F5B0064D447 /* SampleXfermodes.cpp */; };
-		260E013013B11F5B0064D447 /* SampleXfermodesBlur.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E007313B11F5B0064D447 /* SampleXfermodesBlur.cpp */; };
 		260E013113B11F5B0064D447 /* SkGPipeRead.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E007513B11F5B0064D447 /* SkGPipeRead.cpp */; };
 		260E013213B11F5B0064D447 /* SkGPipeWrite.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E007613B11F5B0064D447 /* SkGPipeWrite.cpp */; };
 		260E02A213B1225D0064D447 /* Sk64.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E020C13B1225D0064D447 /* Sk64.cpp */; };
@@ -410,8 +369,6 @@
 		260E095813B134C90064D447 /* GrDrawMesh.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E095613B134C90064D447 /* GrDrawMesh.cpp */; };
 		260E147913B2734E0064D447 /* SkUISplitViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 260E147813B2734E0064D447 /* SkUISplitViewController.mm */; };
 		260E16E613B2853F0064D447 /* SampleGM.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E004413B11F5B0064D447 /* SampleGM.cpp */; };
-		260E16F013B285540064D447 /* SampleFuzz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E004313B11F5B0064D447 /* SampleFuzz.cpp */; };
-		260E16F213B285570064D447 /* SampleFontScalerTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E004213B11F5B0064D447 /* SampleFontScalerTest.cpp */; };
 		260E1DCD13B3AA490064D447 /* SkUINavigationController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 260E1DCB13B3AA490064D447 /* SkUINavigationController.mm */; };
 		260E1EA213B3B15A0064D447 /* SkPDFCatalog.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E1E9613B3B15A0064D447 /* SkPDFCatalog.cpp */; };
 		260E1EA313B3B15A0064D447 /* SkPDFDevice.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 260E1E9713B3B15A0064D447 /* SkPDFDevice.cpp */; };
@@ -429,6 +386,7 @@
 		260EF18513AFD62E0064D447 /* CoreText.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 260EF18413AFD62E0064D447 /* CoreText.framework */; };
 		260EF2B013AFDBD30064D447 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
 		263BE75813CCC7BF00CCE991 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 263BE75713CCC7BF00CCE991 /* QuartzCore.framework */; };
+		2645945F13F34FB100DCF534 /* test.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2645945E13F34FB100DCF534 /* test.cpp */; };
 		26591EB913EB16EB000DA8A8 /* TransitionView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26591EB813EB16EB000DA8A8 /* TransitionView.cpp */; };
 		265C7DE313D75752008329F6 /* SkOptionListController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 265C7DE213D75752008329F6 /* SkOptionListController.mm */; };
 		2662AB7013BD067900CDE7E9 /* SkiOSSampleApp-Debug.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 2662AB6F13BD067900CDE7E9 /* SkiOSSampleApp-Debug.xcconfig */; };
@@ -440,7 +398,6 @@
 		268C50D613F022820003FF9A /* SkColorPalette.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 268C50D213F022820003FF9A /* SkColorPalette.cpp */; };
 		268C50D713F022820003FF9A /* SkNetPipeController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 268C50D413F022820003FF9A /* SkNetPipeController.cpp */; };
 		268C50DA13F022AF0003FF9A /* SampleDrawingClient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 268C50D813F022AF0003FF9A /* SampleDrawingClient.cpp */; };
-		268C50DB13F022AF0003FF9A /* SampleDrawingServer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 268C50D913F022AF0003FF9A /* SampleDrawingServer.cpp */; };
 		268C50DF13F0230C0003FF9A /* SampleNetPipeReader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 268C50DC13F0230C0003FF9A /* SampleNetPipeReader.cpp */; };
 		268C50E013F0230C0003FF9A /* SkSockets.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 268C50DD13F0230C0003FF9A /* SkSockets.cpp */; };
 		26962B2313CDF6A00039B1FB /* SkOSFile_iOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 260EE8BB13AFA7790064D447 /* SkOSFile_iOS.mm */; };
@@ -482,6 +439,13 @@
 		1D30AB110D05D00D00671497 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
 		1D6058910D05DD3D006BFB54 /* iOSSampleApp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = iOSSampleApp.app; sourceTree = BUILT_PRODUCTS_DIR; };
 		1DF5F4DF0D08C38300B7A737 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
+		2605F43C13F18B1B0044A072 /* DebuggerView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DebuggerView.cpp; sourceTree = "<group>"; };
+		2605F43D13F18B1B0044A072 /* DebuggerViews.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DebuggerViews.h; sourceTree = "<group>"; };
+		2605F43E13F18B1B0044A072 /* DebuggerCommandsView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DebuggerCommandsView.cpp; sourceTree = "<group>"; };
+		2605F43F13F18B1B0044A072 /* SkDebugDumper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SkDebugDumper.cpp; sourceTree = "<group>"; };
+		2605F44013F18B1B0044A072 /* SkDebugDumper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SkDebugDumper.h; sourceTree = "<group>"; };
+		2605F44113F18B1B0044A072 /* DebuggerStateView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DebuggerStateView.cpp; sourceTree = "<group>"; };
+		2605F66413F19EB80044A072 /* GrStencilBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GrStencilBuffer.cpp; sourceTree = "<group>"; };
 		260E001513B11F5B0064D447 /* bitmapfilters.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = bitmapfilters.cpp; sourceTree = "<group>"; };
 		260E001613B11F5B0064D447 /* blurs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = blurs.cpp; sourceTree = "<group>"; };
 		260E001713B11F5B0064D447 /* complexclip.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = complexclip.cpp; sourceTree = "<group>"; };
@@ -1327,6 +1291,7 @@
 		260EE9D113AFA7850064D447 /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; };
 		260EF18413AFD62E0064D447 /* CoreText.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreText.framework; path = System/Library/Frameworks/CoreText.framework; sourceTree = SDKROOT; };
 		263BE75713CCC7BF00CCE991 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; };
+		2645945E13F34FB100DCF534 /* test.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = test.cpp; sourceTree = SOURCE_ROOT; };
 		26591EB813EB16EB000DA8A8 /* TransitionView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TransitionView.cpp; sourceTree = "<group>"; };
 		265C7DE113D75752008329F6 /* SkOptionListController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkOptionListController.h; path = Shared/SkOptionListController.h; sourceTree = "<group>"; };
 		265C7DE213D75752008329F6 /* SkOptionListController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = SkOptionListController.mm; path = Shared/SkOptionListController.mm; sourceTree = "<group>"; };
@@ -1434,6 +1399,20 @@
 			name = Products;
 			sourceTree = "<group>";
 		};
+		2605F43B13F18B1B0044A072 /* Debugger */ = {
+			isa = PBXGroup;
+			children = (
+				2605F43C13F18B1B0044A072 /* DebuggerView.cpp */,
+				2605F43D13F18B1B0044A072 /* DebuggerViews.h */,
+				2605F43E13F18B1B0044A072 /* DebuggerCommandsView.cpp */,
+				2605F43F13F18B1B0044A072 /* SkDebugDumper.cpp */,
+				2605F44013F18B1B0044A072 /* SkDebugDumper.h */,
+				2605F44113F18B1B0044A072 /* DebuggerStateView.cpp */,
+			);
+			name = Debugger;
+			path = ../Debugger;
+			sourceTree = SOURCE_ROOT;
+		};
 		260E001413B11F5B0064D447 /* gm */ = {
 			isa = PBXGroup;
 			children = (
@@ -1459,6 +1438,7 @@
 		260E002313B11F5B0064D447 /* samplecode */ = {
 			isa = PBXGroup;
 			children = (
+				2645945E13F34FB100DCF534 /* test.cpp */,
 				26591EB813EB16EB000DA8A8 /* TransitionView.cpp */,
 				260E002413B11F5B0064D447 /* ClockFaceView.cpp */,
 				260E002513B11F5B0064D447 /* OverView.cpp */,
@@ -2028,6 +2008,7 @@
 		260E03C813B122D40064D447 /* src */ = {
 			isa = PBXGroup;
 			children = (
+				2605F66413F19EB80044A072 /* GrStencilBuffer.cpp */,
 				26FB12B313E70D51001AFF6D /* GrRenderTarget.cpp */,
 				26FB12AD13E70D3B001AFF6D /* GrGLRenderTarget.cpp */,
 				26FB12AE13E70D3B001AFF6D /* GrGLRenderTarget.h */,
@@ -2822,6 +2803,7 @@
 				26962C8E13CE25D60039B1FB /* iOSSampleApp_Prefix.pch */,
 				26962C8F13CE25D60039B1FB /* iOSSampleApp-Info.plist */,
 				26962CC813CE27390039B1FB /* xcconfig */,
+				2605F43B13F18B1B0044A072 /* Debugger */,
 				26F67B2A13CB3564005DDCD2 /* Networking */,
 				26962CE713CE29120039B1FB /* DrawingBoard */,
 				260EE8B913AFA7790064D447 /* iOS */,
@@ -2912,92 +2894,32 @@
 				1D60589B0D05DD56006BFB54 /* main.m in Sources */,
 				2860E328111B887F00E27156 /* AppDelegate_iPhone.mm in Sources */,
 				2860E32E111B888700E27156 /* AppDelegate_iPad.mm in Sources */,
-				260E00D513B11F5B0064D447 /* bitmapfilters.cpp in Sources */,
-				260E00D613B11F5B0064D447 /* blurs.cpp in Sources */,
-				260E00D713B11F5B0064D447 /* complexclip.cpp in Sources */,
-				260E00D813B11F5B0064D447 /* filltypes.cpp in Sources */,
-				260E00D913B11F5B0064D447 /* gradients.cpp in Sources */,
-				260E00DA13B11F5B0064D447 /* nocolorbleed.cpp in Sources */,
-				260E00DB13B11F5B0064D447 /* points.cpp in Sources */,
-				260E00DC13B11F5B0064D447 /* poly2poly.cpp in Sources */,
-				260E00DD13B11F5B0064D447 /* shadertext.cpp in Sources */,
-				260E00DE13B11F5B0064D447 /* shadows.cpp in Sources */,
-				260E00DF13B11F5B0064D447 /* shapes.cpp in Sources */,
-				260E00E013B11F5B0064D447 /* tilemodes.cpp in Sources */,
-				260E00E113B11F5B0064D447 /* xfermodes.cpp in Sources */,
 				260E00E313B11F5B0064D447 /* OverView.cpp in Sources */,
-				260E00E413B11F5B0064D447 /* SampleAARects.cpp in Sources */,
-				260E00E513B11F5B0064D447 /* SampleAll.cpp in Sources */,
-				260E00E613B11F5B0064D447 /* SampleAnimator.cpp in Sources */,
 				260E00E813B11F5B0064D447 /* SampleArc.cpp in Sources */,
 				260E00E913B11F5B0064D447 /* SampleAvoid.cpp in Sources */,
-				260E00EA13B11F5B0064D447 /* SampleBigGradient.cpp in Sources */,
-				260E00EB13B11F5B0064D447 /* SampleBitmapRect.cpp in Sources */,
 				260E00EC13B11F5B0064D447 /* SampleBlur.cpp in Sources */,
-				260E00ED13B11F5B0064D447 /* SampleCamera.cpp in Sources */,
 				260E00EE13B11F5B0064D447 /* SampleCircle.cpp in Sources */,
-				260E00EF13B11F5B0064D447 /* SampleColorFilter.cpp in Sources */,
 				260E00F013B11F5B0064D447 /* SampleComplexClip.cpp in Sources */,
-				260E00F113B11F5B0064D447 /* SampleConcavePaths.cpp in Sources */,
 				260E00F213B11F5B0064D447 /* SampleCull.cpp in Sources */,
-				260E00F313B11F5B0064D447 /* SampleDecode.cpp in Sources */,
-				260E00F413B11F5B0064D447 /* SampleDither.cpp in Sources */,
-				260E00F513B11F5B0064D447 /* SampleDitherBitmap.cpp in Sources */,
-				260E00F613B11F5B0064D447 /* SampleDrawLooper.cpp in Sources */,
-				260E00F713B11F5B0064D447 /* SampleEffects.cpp in Sources */,
-				260E00F813B11F5B0064D447 /* SampleEmboss.cpp in Sources */,
-				260E00F913B11F5B0064D447 /* SampleEncode.cpp in Sources */,
-				260E00FA13B11F5B0064D447 /* SampleExtractAlpha.cpp in Sources */,
 				260E00FB13B11F5B0064D447 /* SampleFillType.cpp in Sources */,
-				260E00FC13B11F5B0064D447 /* SampleFilter.cpp in Sources */,
-				260E00FD13B11F5B0064D447 /* SampleFilter2.cpp in Sources */,
-				260E00FE13B11F5B0064D447 /* SampleFontCache.cpp in Sources */,
-				260E010213B11F5B0064D447 /* SampleGradients.cpp in Sources */,
-				260E010313B11F5B0064D447 /* SampleHairline.cpp in Sources */,
-				260E010413B11F5B0064D447 /* SampleImage.cpp in Sources */,
-				260E010513B11F5B0064D447 /* SampleImageDir.cpp in Sources */,
 				260E010613B11F5B0064D447 /* SampleLCD.cpp in Sources */,
-				260E010713B11F5B0064D447 /* SampleLayerMask.cpp in Sources */,
-				260E010813B11F5B0064D447 /* SampleLayers.cpp in Sources */,
-				260E010913B11F5B0064D447 /* SampleLineClipper.cpp in Sources */,
-				260E010A13B11F5B0064D447 /* SampleLines.cpp in Sources */,
-				260E010B13B11F5B0064D447 /* SampleMeasure.cpp in Sources */,
-				260E010C13B11F5B0064D447 /* SampleMipMap.cpp in Sources */,
-				260E010D13B11F5B0064D447 /* SampleMovie.cpp in Sources */,
-				260E010E13B11F5B0064D447 /* SampleNinePatch.cpp in Sources */,
-				260E010F13B11F5B0064D447 /* SampleOvalTest.cpp in Sources */,
-				260E011013B11F5B0064D447 /* SampleOverflow.cpp in Sources */,
-				260E011113B11F5B0064D447 /* SamplePageFlip.cpp in Sources */,
-				260E011213B11F5B0064D447 /* SamplePatch.cpp in Sources */,
 				260E011313B11F5B0064D447 /* SamplePath.cpp in Sources */,
 				260E011413B11F5B0064D447 /* SamplePathClip.cpp in Sources */,
 				260E011513B11F5B0064D447 /* SamplePathEffects.cpp in Sources */,
-				260E011613B11F5B0064D447 /* SamplePicture.cpp in Sources */,
 				260E011713B11F5B0064D447 /* SamplePoints.cpp in Sources */,
 				260E011813B11F5B0064D447 /* SamplePolyToPoly.cpp in Sources */,
 				260E011913B11F5B0064D447 /* SampleRegion.cpp in Sources */,
-				260E011A13B11F5B0064D447 /* SampleRepeatTile.cpp in Sources */,
-				260E011B13B11F5B0064D447 /* SampleShaderText.cpp in Sources */,
-				260E011C13B11F5B0064D447 /* SampleShaders.cpp in Sources */,
 				260E011D13B11F5B0064D447 /* SampleShapes.cpp in Sources */,
-				260E011E13B11F5B0064D447 /* SampleSkLayer.cpp in Sources */,
 				260E011F13B11F5B0064D447 /* SampleSlides.cpp in Sources */,
-				260E012013B11F5B0064D447 /* SampleStrokePath.cpp in Sources */,
-				260E012113B11F5B0064D447 /* SampleStrokeText.cpp in Sources */,
 				260E012313B11F5B0064D447 /* SampleText.cpp in Sources */,
 				260E012413B11F5B0064D447 /* SampleTextAlpha.cpp in Sources */,
 				260E012513B11F5B0064D447 /* SampleTextBox.cpp in Sources */,
 				260E012613B11F5B0064D447 /* SampleTextEffects.cpp in Sources */,
 				260E012713B11F5B0064D447 /* SampleTextOnPath.cpp in Sources */,
-				260E012813B11F5B0064D447 /* SampleTextureDomain.cpp in Sources */,
-				260E012913B11F5B0064D447 /* SampleTiling.cpp in Sources */,
-				260E012A13B11F5B0064D447 /* SampleTinyBitmap.cpp in Sources */,
 				260E012B13B11F5B0064D447 /* SampleTriangles.cpp in Sources */,
 				260E012C13B11F5B0064D447 /* SampleTypeface.cpp in Sources */,
 				260E012D13B11F5B0064D447 /* SampleUnitMapper.cpp in Sources */,
 				260E012E13B11F5B0064D447 /* SampleVertices.cpp in Sources */,
-				260E012F13B11F5B0064D447 /* SampleXfermodes.cpp in Sources */,
-				260E013013B11F5B0064D447 /* SampleXfermodesBlur.cpp in Sources */,
 				260E013113B11F5B0064D447 /* SkGPipeRead.cpp in Sources */,
 				260E013213B11F5B0064D447 /* SkGPipeWrite.cpp in Sources */,
 				260E02A213B1225D0064D447 /* Sk64.cpp in Sources */,
@@ -3313,8 +3235,6 @@
 				260E095813B134C90064D447 /* GrDrawMesh.cpp in Sources */,
 				260E147913B2734E0064D447 /* SkUISplitViewController.mm in Sources */,
 				260E16E613B2853F0064D447 /* SampleGM.cpp in Sources */,
-				260E16F013B285540064D447 /* SampleFuzz.cpp in Sources */,
-				260E16F213B285570064D447 /* SampleFontScalerTest.cpp in Sources */,
 				260E1DCD13B3AA490064D447 /* SkUINavigationController.mm in Sources */,
 				260E1EA213B3B15A0064D447 /* SkPDFCatalog.cpp in Sources */,
 				260E1EA313B3B15A0064D447 /* SkPDFDevice.cpp in Sources */,
@@ -3363,9 +3283,28 @@
 				268C50D613F022820003FF9A /* SkColorPalette.cpp in Sources */,
 				268C50D713F022820003FF9A /* SkNetPipeController.cpp in Sources */,
 				268C50DA13F022AF0003FF9A /* SampleDrawingClient.cpp in Sources */,
-				268C50DB13F022AF0003FF9A /* SampleDrawingServer.cpp in Sources */,
 				268C50DF13F0230C0003FF9A /* SampleNetPipeReader.cpp in Sources */,
 				268C50E013F0230C0003FF9A /* SkSockets.cpp in Sources */,
+				2605F44213F18B1B0044A072 /* DebuggerView.cpp in Sources */,
+				2605F44313F18B1B0044A072 /* DebuggerCommandsView.cpp in Sources */,
+				2605F44413F18B1B0044A072 /* SkDebugDumper.cpp in Sources */,
+				2605F44513F18B1B0044A072 /* DebuggerStateView.cpp in Sources */,
+				2605F65D13F19D1D0044A072 /* SamplePicture.cpp in Sources */,
+				2605F66513F19EB80044A072 /* GrStencilBuffer.cpp in Sources */,
+				2605F83013F1AE4B0044A072 /* xfermodes.cpp in Sources */,
+				2605F83113F1AE4C0044A072 /* tilemodes.cpp in Sources */,
+				2605F83213F1AE4C0044A072 /* shapes.cpp in Sources */,
+				2605F83313F1AE4D0044A072 /* shadows.cpp in Sources */,
+				2605F83413F1AE4D0044A072 /* shadertext.cpp in Sources */,
+				2605F83513F1AE4E0044A072 /* poly2poly.cpp in Sources */,
+				2605F83613F1AE4F0044A072 /* nocolorbleed.cpp in Sources */,
+				2605F83713F1AE500044A072 /* points.cpp in Sources */,
+				2605F83813F1AE500044A072 /* gradients.cpp in Sources */,
+				2605F83913F1AE510044A072 /* filltypes.cpp in Sources */,
+				2605F83A13F1AE520044A072 /* complexclip.cpp in Sources */,
+				2605F83B13F1AE520044A072 /* blurs.cpp in Sources */,
+				2605F83C13F1AE530044A072 /* bitmapfilters.cpp in Sources */,
+				2645945F13F34FB100DCF534 /* test.cpp in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
diff --git a/gyp/CocoaDebuggerApp.gyp b/gyp/CocoaDebuggerApp.gyp
deleted file mode 100644
index e53dfbb..0000000
--- a/gyp/CocoaDebuggerApp.gyp
+++ /dev/null
@@ -1,79 +0,0 @@
-{
-  'includes': [
-    'common.gypi',
-  ],
-  'targets': [
-    {
-      'target_name': 'CocoaDebuggerApp',
-      'type': 'executable',
-      'mac_bundle' : 1,
-      
-      'include_dirs' : [
-        '../include/pipe',
-        '../experimental/CocoaDebugger',
-        '../experimental/SimpleCocoaApp',
-      ],
-      'sources': [
-        '../experimental/CocoaDebugger/SkCommandListView.cpp',
-        '../experimental/CocoaDebugger/SkContentView.cpp',
-        '../experimental/CocoaDebugger/SkDebugDumper.cpp',
-        '../experimental/CocoaDebugger/SkDumpCanvasM.cpp',
-        '../experimental/CocoaDebugger/SkInfoPanelView.cpp',
-        '../src/pipe/SkGPipeRead.cpp',
-      ],
-      'dependencies': [
-        'core.gyp:core',
-        'effects.gyp:effects',
-        'opts.gyp:opts',
-        'utils.gyp:utils',
-        'views.gyp:views',
-        'xml.gyp:xml',
-      ],
-      'conditions' : [
-        # Only supports Mac currently
-        ['skia_os == "mac"', {
-          'sources': [
-            '../experimental/CocoaDebugger/CocoaDebugger-Info.plist',
-            '../experimental/CocoaDebugger/CocoaDebugger_Prefix.pch',
-            '../experimental/CocoaDebugger/CocoaDebuggerAppDelegate.mm',
-            '../experimental/CocoaDebugger/main.m',
-            '../experimental/CocoaDebugger/SkDebugger.mm',
-            '../experimental/CocoaDebugger/SkMenuController.mm',
-            '../experimental/SimpleCocoaApp/SkNSView.mm',
-            '../experimental/SimpleCocoaApp/SkNSWindow.mm',
-            '../include/utils/mac/SkCGUtils.h',
-            '../src/utils/mac/SkCreateCGImageRef.cpp',
-          ],
-          'link_settings': {
-            'libraries': [
-            '$(SDKROOT)/System/Library/Frameworks/Cocoa.framework',
-            '$(SDKROOT)/System/Library/Frameworks/AppKit.framework',
-            '$(SDKROOT)/System/Library/Frameworks/Foundation.framework',
-            '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework',
-            ],
-            'libraries!': [
-            # Currently skia mac apps rely on Carbon and AGL for UI. Future
-            # apps should use Cocoa instead and dependencies on Carbon and AGL
-            # should eventually be removed
-            '$(SDKROOT)/System/Library/Frameworks/Carbon.framework',
-            '$(SDKROOT)/System/Library/Frameworks/AGL.framework',
-            ],
-          },
-          'xcode_settings' : {
-            'INFOPLIST_FILE' : '../experimental/CocoaDebugger/CocoaDebugger-Info.plist',
-          },
-          'mac_bundle_resources' : [
-            '../experimental/CocoaDebugger/English.lproj/InfoPlist.strings',
-            '../experimental/CocoaDebugger/English.lproj/MainMenu.xib',
-          ],
-        }],
-      ],
-    },
-  ],
-}
-
-# Local Variables:
-# tab-width:2
-# indent-tabs-mode:nil
-# End:
-# vim: set expandtab tabstop=2 shiftwidth=2:
diff --git a/gyp/CocoaSampleApp.gyp b/gyp/CocoaSampleApp.gyp
index 8dccce5..27846e1 100644
--- a/gyp/CocoaSampleApp.gyp
+++ b/gyp/CocoaSampleApp.gyp
@@ -14,104 +14,104 @@
       ],
       'sources': [
         # gm files needed for SampleGM.cpp
-        '../gm/bitmapfilters.cpp',
-        '../gm/blurs.cpp',
-        '../gm/complexclip.cpp',
-        '../gm/filltypes.cpp',
-        '../gm/gm.h',
-        '../gm/gradients.cpp',
-        '../gm/nocolorbleed.cpp',
-        '../gm/points.cpp',
-        '../gm/poly2poly.cpp',
-        '../gm/shadertext.cpp',
-        '../gm/shadows.cpp',
-        '../gm/shapes.cpp',
-        '../gm/tilemodes.cpp',
-        '../gm/xfermodes.cpp',
+        #'../gm/bitmapfilters.cpp',
+        #'../gm/blurs.cpp',
+        #'../gm/complexclip.cpp',
+        #'../gm/filltypes.cpp',
+        #'../gm/gm.h',
+        #'../gm/gradients.cpp',
+        #'../gm/nocolorbleed.cpp',
+        #'../gm/points.cpp',
+        #'../gm/poly2poly.cpp',
+        #'../gm/shadertext.cpp',
+        #'../gm/shadows.cpp',
+        #'../gm/shapes.cpp',
+        #'../gm/tilemodes.cpp',
+        #'../gm/xfermodes.cpp',
 
-        '../samplecode/ClockFaceView.cpp',
+        #'../samplecode/ClockFaceView.cpp',
         '../samplecode/OverView.cpp',
-        '../samplecode/Sample2PtRadial.cpp',
-        '../samplecode/SampleAll.cpp',
-        '../samplecode/SampleAnimator.cpp',
+        #'../samplecode/Sample2PtRadial.cpp',
+        #'../samplecode/SampleAll.cpp',
+        #'../samplecode/SampleAnimator.cpp',
         '../samplecode/SampleApp.cpp',
         '../samplecode/SampleArc.cpp',
         '../samplecode/SampleAvoid.cpp',
-        '../samplecode/SampleBigBlur.cpp',
-        '../samplecode/SampleBigGradient.cpp',
-        '../samplecode/SampleBitmapRect.cpp',
+        #'../samplecode/SampleBigBlur.cpp',
+        #'../samplecode/SampleBigGradient.cpp',
+        #'../samplecode/SampleBitmapRect.cpp',
         '../samplecode/SampleBlur.cpp',
-        '../samplecode/SampleCamera.cpp',
-        '../samplecode/SampleCircle.cpp',
+        #'../samplecode/SampleCamera.cpp',
+        #'../samplecode/SampleCircle.cpp',
         '../samplecode/SampleCode.h',
-        '../samplecode/SampleColorFilter.cpp',
+        #'../samplecode/SampleColorFilter.cpp',
         '../samplecode/SampleComplexClip.cpp',
-        '../samplecode/SampleConcavePaths.cpp',
+        #'../samplecode/SampleConcavePaths.cpp',
         '../samplecode/SampleCull.cpp',
-        '../samplecode/SampleDecode.cpp',
+        #'../samplecode/SampleDecode.cpp',
         '../samplecode/SampleDegenerateTwoPtRadials.cpp',
-        '../samplecode/SampleDither.cpp',
-        '../samplecode/SampleDitherBitmap.cpp',
-        '../samplecode/SampleDrawBitmap.cpp',
-        '../samplecode/SampleDrawLooper.cpp',
-        '../samplecode/SampleEffects.cpp',
-        '../samplecode/SampleEmboss.cpp',
-        '../samplecode/SampleEncode.cpp',
-        '../samplecode/SampleExtractAlpha.cpp',
+        #'../samplecode/SampleDither.cpp',
+        #'../samplecode/SampleDitherBitmap.cpp',
+        #'../samplecode/SampleDrawBitmap.cpp',
+        #'../samplecode/SampleDrawLooper.cpp',
+        #'../samplecode/SampleEffects.cpp',
+        #'../samplecode/SampleEmboss.cpp',
+        #'../samplecode/SampleEncode.cpp',
+        #'../samplecode/SampleExtractAlpha.cpp',
         '../samplecode/SampleFillType.cpp',
-        '../samplecode/SampleFilter.cpp',
-        '../samplecode/SampleFilter2.cpp',
-        '../samplecode/SampleFontCache.cpp',
-        '../samplecode/SampleFontScalerTest.cpp',
-        '../samplecode/SampleFuzz.cpp',
-        '../samplecode/SampleGM.cpp',
-        '../samplecode/SampleGradients.cpp',
-        '../samplecode/SampleHairline.cpp',
-        '../samplecode/SampleImage.cpp',
-        '../samplecode/SampleImageDir.cpp',
-        '../samplecode/SampleLayerMask.cpp',
-        '../samplecode/SampleLayers.cpp',
+        #'../samplecode/SampleFilter.cpp',
+        #'../samplecode/SampleFilter2.cpp',
+        #'../samplecode/SampleFontCache.cpp',
+        #'../samplecode/SampleFontScalerTest.cpp',
+        #'../samplecode/SampleFuzz.cpp',
+        #'../samplecode/SampleGM.cpp',
+        #'../samplecode/SampleGradients.cpp',
+        #'../samplecode/SampleHairline.cpp',
+        #'../samplecode/SampleImage.cpp',
+        #'../samplecode/SampleImageDir.cpp',
+        #'../samplecode/SampleLayerMask.cpp',
+        #'../samplecode/SampleLayers.cpp',
         '../samplecode/SampleLCD.cpp',
         '../samplecode/SampleLineClipper.cpp',
-        '../samplecode/SampleLines.cpp',
-        '../samplecode/SampleMeasure.cpp',
-        '../samplecode/SampleMipMap.cpp',
-        '../samplecode/SampleMovie.cpp',
-        '../samplecode/SampleNinePatch.cpp',
-        '../samplecode/SampleOvalTest.cpp',
-        '../samplecode/SampleOverflow.cpp',
-        '../samplecode/SamplePageFlip.cpp',
-        '../samplecode/SamplePatch.cpp',
+        #'../samplecode/SampleLines.cpp',
+        #'../samplecode/SampleMeasure.cpp',
+        #'../samplecode/SampleMipMap.cpp',
+        #'../samplecode/SampleMovie.cpp',
+        #'../samplecode/SampleNinePatch.cpp',
+        #'../samplecode/SampleOvalTest.cpp',
+        #'../samplecode/SampleOverflow.cpp',
+        #'../samplecode/SamplePageFlip.cpp',
+        #'../samplecode/SamplePatch.cpp',
         '../samplecode/SamplePath.cpp',
         '../samplecode/SamplePathClip.cpp',
         '../samplecode/SamplePathEffects.cpp',
         '../samplecode/SamplePicture.cpp',
         '../samplecode/SamplePoints.cpp',
         '../samplecode/SamplePolyToPoly.cpp',
-        '../samplecode/SampleAARects.cpp',
+        ##'../samplecode/SampleAARects.cpp',
         '../samplecode/SampleRegion.cpp',
-        '../samplecode/SampleRepeatTile.cpp',
-        '../samplecode/SampleShaders.cpp',
-        '../samplecode/SampleShaderText.cpp',
-        '../samplecode/SampleShapes.cpp',
-        '../samplecode/SampleSkLayer.cpp',
+        #'../samplecode/SampleRepeatTile.cpp',
+        #'../samplecode/SampleShaders.cpp',
+        #'../samplecode/SampleShaderText.cpp',
+        #'../samplecode/SampleShapes.cpp',
+        #'../samplecode/SampleSkLayer.cpp',
         '../samplecode/SampleSlides.cpp',
-        '../samplecode/SampleStrokePath.cpp',
-        '../samplecode/SampleStrokeText.cpp',
-        '../samplecode/SampleTests.cpp',
-        '../samplecode/SampleText.cpp',
-        '../samplecode/SampleTextAlpha.cpp',
+        #'../samplecode/SampleStrokePath.cpp',
+        #'../samplecode/SampleStrokeText.cpp',
+        #'../samplecode/SampleTests.cpp',
+        #'../samplecode/SampleText.cpp',
+        #'../samplecode/SampleTextAlpha.cpp',
         '../samplecode/SampleTextBox.cpp',
         '../samplecode/SampleTextEffects.cpp',
         '../samplecode/SampleTextOnPath.cpp',
-        '../samplecode/SampleTextureDomain.cpp',
-        '../samplecode/SampleTiling.cpp',
-        '../samplecode/SampleTinyBitmap.cpp',
+        #'../samplecode/SampleTextureDomain.cpp',
+        #'../samplecode/SampleTiling.cpp',
+        #'../samplecode/SampleTinyBitmap.cpp',
         '../samplecode/SampleTriangles.cpp',
         '../samplecode/SampleTypeface.cpp',
         '../samplecode/SampleUnitMapper.cpp',
-        '../samplecode/SampleVertices.cpp',
-        '../samplecode/SampleXfermodes.cpp',
+        #'../samplecode/SampleVertices.cpp',
+        #'../samplecode/SampleXfermodes.cpp',
         '../samplecode/SampleXfermodesBlur.cpp',
         '../samplecode/TransitionView.cpp',
         
@@ -124,13 +124,21 @@
         '../experimental/DrawingBoard/SkColorPalette.cpp',
         '../experimental/DrawingBoard/SkNetPipeController.h',
         '../experimental/DrawingBoard/SkNetPipeController.cpp',
-        '../experimental/DrawingBoard/SampleDrawingClient.cpp',
+        #'../experimental/DrawingBoard/SampleDrawingClient.cpp',
         '../experimental/DrawingBoard/SampleDrawingServer.cpp',
     
         # Networking
         '../experimental/Networking/SampleNetPipeReader.cpp',
         '../experimental/Networking/SkSockets.cpp',
         '../experimental/Networking/SkSockets.h',
+        
+        # Debugger
+        '../experimental/Debugger/DebuggerViews.h',
+        '../experimental/Debugger/DebuggerContentView.cpp',
+        '../experimental/Debugger/DebuggerCommandsView.cpp',
+        '../experimental/Debugger/DebuggerStateView.cpp',
+        '../experimental/Debugger/SkDebugDumper.cpp',
+        '../experimental/Debugger/SkDebugDumper.h',
       ],
       'sources!': [
         '../samplecode/SampleSkLayer.cpp', #relies on SkMatrix44 which doesn't compile
diff --git a/gyp/SimpleCocoaApp.gyp b/gyp/SimpleCocoaApp.gyp
index ead9fe4..1725f12 100644
--- a/gyp/SimpleCocoaApp.gyp
+++ b/gyp/SimpleCocoaApp.gyp
@@ -12,12 +12,16 @@
       ],
       'sources': [
         '../experimental/SimpleCocoaApp/main.m',
+        '../experimental/SimpleCocoaApp/SampleWindow.h',
         '../experimental/SimpleCocoaApp/SampleWindow.mm',
+        '../experimental/SimpleCocoaApp/SimpleCocoaAppDelegate.h',
+        '../experimental/SimpleCocoaApp/SimpleCocoaAppDelegate.mm',
+        '../experimental/SimpleCocoaApp/SkNSView.h',
+        '../experimental/SimpleCocoaApp/SkNSView.mm',
+        '../experimental/SimpleCocoaApp/SkNSWindow.h',
+        '../experimental/SimpleCocoaApp/SkNSWindow.mm',
         '../experimental/SimpleCocoaApp/SimpleCocoaApp-Info.plist',
         '../experimental/SimpleCocoaApp/SimpleCocoaApp_Prefix.pch',
-        '../experimental/SimpleCocoaApp/SimpleCocoaAppDelegate.mm',
-        '../experimental/SimpleCocoaApp/SkNSView.mm',
-        '../experimental/SimpleCocoaApp/SkNSWindow.mm',
       ],
       'dependencies': [
         'core.gyp:core',
diff --git a/include/views/SkOSMenu.h b/include/views/SkOSMenu.h
index 763499e..0c4a619 100644
--- a/include/views/SkOSMenu.h
+++ b/include/views/SkOSMenu.h
@@ -66,18 +66,19 @@
         SkUnichar   getKeyEquivalent() const { return fKey; }
         
         /**
+         * Helper functions for predefined types
+         */
+        void setBool(bool value) const;             //For Switch
+        void setScalar(SkScalar value) const;       //For Slider     
+        void setInt(int value) const;               //For List
+        void setTriState(TriState value) const;     //For Tristate
+        void setString(const char value[]) const;   //For TextField
+        
+        /**
          * Post event associated with the menu item to target, any changes to 
          * the associated event must be made prior to calling this method
          */
         void postEvent() const { (new SkEvent(*(fEvent)))->post(); }
-        
-        /**
-         * Helper functions for predefined types
-         */
-        void postEventWithBool(bool value) const;           //For Switch
-        void postEventWithScalar(SkScalar value) const;     //For Slider
-        void postEventWithInt(int value) const;             //For List, TriState
-        void postEventWithString(const char value[]) const; //For TextField
 
     private:
         int             fID;
@@ -88,11 +89,12 @@
         SkUnichar       fKey;
     };
     
-    void reset();
+    void        reset();
     const char* getTitle() const { return fTitle.c_str(); }
     void        setTitle (const char title[]) { fTitle.set(title); }
-    int         countItems() const { return fItems.count(); }
-    const Item* getItem(int index) const { return fItems[index]; }
+    int         getCount() const { return fItems.count(); }
+    const Item* getItemByID(int itemID) const;
+    void        getItems(const Item* items[]) const;
     
     /**
      * Assign key to the menu item with itemID, will do nothing if there's no 
@@ -143,30 +145,30 @@
      * Helper functions to retrieve information other than the stored value for
      * some predefined types
      */
-    static bool FindListItemCount(const SkEvent* evt, int* count);
+    static bool FindListItemCount(const SkEvent& evt, int* count);
     /**
      * Ensure that the items array can store n SkStrings where n is the count 
      * extracted using FindListItemCount
      */
-    static bool FindListItems(const SkEvent* evt, SkString items[]);
-    static bool FindSliderMin(const SkEvent* evt, SkScalar* min);
-    static bool FindSliderMax(const SkEvent* evt, SkScalar* max);
+    static bool FindListItems(const SkEvent& evt, SkString items[]);
+    static bool FindSliderMin(const SkEvent& evt, SkScalar* min);
+    static bool FindSliderMax(const SkEvent& evt, SkScalar* max);
     
     /**
      * Returns true if an action with the given label is found, false otherwise
      */
-    static bool FindAction(const SkEvent* evt, const char label[]);
+    static bool FindAction(const SkEvent& evt, const char label[]);
     /**
      * The following helper functions will return true if evt is generated from 
      * a predefined item type and retrieve the corresponding state information. 
      * They will return false and leave value unchanged if there's a type 
      * mismatch or slotName is incorrect
      */
-    static bool FindListIndex(const SkEvent* evt, const char slotName[], int* value);
-    static bool FindSliderValue(const SkEvent* evt, const char slotName[], SkScalar* value);
-    static bool FindSwitchState(const SkEvent* evt, const char slotName[], bool* value);
-    static bool FindTriState(const SkEvent* evt, const char slotName[], TriState* value);
-    static bool FindText(const SkEvent* evt, const char slotName[], SkString* value);
+    static bool FindListIndex(const SkEvent& evt, const char slotName[], int* value);
+    static bool FindSliderValue(const SkEvent& evt, const char slotName[], SkScalar* value);
+    static bool FindSwitchState(const SkEvent& evt, const char slotName[], bool* value);
+    static bool FindTriState(const SkEvent& evt, const char slotName[], TriState* value);
+    static bool FindText(const SkEvent& evt, const char slotName[], SkString* value);
     
 private:
     SkString fTitle;
diff --git a/samplecode/OverView.cpp b/samplecode/OverView.cpp
index 8a9359a..1a6d9e9 100644
--- a/samplecode/OverView.cpp
+++ b/samplecode/OverView.cpp
@@ -13,6 +13,11 @@
 const SkScalar W = SkIntToScalar(640);
 const SkScalar H = SkIntToScalar(480); 
 
+static const char gIsOverview[] = "is-overview";
+bool is_overview(SkView* view) {
+    SkEvent isOverview(gIsOverview);
+    return view->doQuery(&isOverview); 
+}
 class OverView : public SkView {
 public:
     OverView(int count, const SkViewFactory factories[]);
@@ -33,6 +38,9 @@
             SampleCode::TitleR(evt, "Overview");
             return true;
         }
+        if (evt->isType(gIsOverview)) {
+            return true;
+        }
         return this->INHERITED::onQuery(evt);
     }
 
diff --git a/samplecode/SampleApp.cpp b/samplecode/SampleApp.cpp
index 15d1c28..e450a95 100644
--- a/samplecode/SampleApp.cpp
+++ b/samplecode/SampleApp.cpp
@@ -29,7 +29,7 @@
 #include "SkPDFDocument.h"
 #include "SkStream.h"
 
-#define TEST_GPIPEx
+#define TEST_GPIPE
 
 #ifdef  TEST_GPIPE
 #define PIPE_FILEx
@@ -42,13 +42,24 @@
 #include "SkSockets.h"
 SkTCPServer gServer;
 #endif
+
+#define DEBUGGERx
+#ifdef  DEBUGGER
+extern SkView* create_debugger(const char* data, size_t size);
+extern bool is_debugger(SkView* view);
+SkTDArray<char> gTempDataStore;
+#endif
+
 #endif
 
 #define USE_ARROWS_FOR_ZOOM true
 //#define DEFAULT_TO_GPU
 
 extern SkView* create_overview(int, const SkViewFactory[]);
+extern bool is_overview(SkView* view);
 extern SkView* create_transition(SkView*, SkView*, int);
+extern bool is_transition(SkView* view);
+
 
 #define ANIMATING_EVENTTYPE "nextSample"
 #define ANIMATING_DELAY     750
@@ -438,6 +449,7 @@
     fZoomScale = SK_Scalar1;
     
     fMagnify = false;
+    fDebugger = false;
     
     fSaveToPdf = false;
     fPdfCanvas = NULL;
@@ -449,7 +461,8 @@
     fAppMenu.setTitle("Global Settings");
     int itemID;
     
-    itemID =fAppMenu.appendList("Device Type", "Device Type", sinkID, 0, "Raster", "Picture", "OpenGL", NULL);
+    itemID =fAppMenu.appendList("Device Type", "Device Type", sinkID, 0, 
+                                "Raster", "Picture", "OpenGL", NULL);
     fAppMenu.assignKeyEquivalentToItem(itemID, 'd');
     itemID = fAppMenu.appendTriState("AA", "AA", sinkID, fAAState);
     fAppMenu.assignKeyEquivalentToItem(itemID, 'b');
@@ -459,14 +472,16 @@
     fAppMenu.assignKeyEquivalentToItem(itemID, 'n');
     itemID = fAppMenu.appendTriState("Hinting", "Hinting", sinkID, fHintingState);
     fAppMenu.assignKeyEquivalentToItem(itemID, 'h');
-    itemID = fAppMenu.appendSwitch("Pipe", "Pipe" , sinkID, fUsePipe);    
-    fAppMenu.assignKeyEquivalentToItem(itemID, 'p');
+    fUsePipeMenuItemID = fAppMenu.appendSwitch("Pipe", "Pipe" , sinkID, fUsePipe);    
+    fAppMenu.assignKeyEquivalentToItem(fUsePipeMenuItemID, 'p');
+#ifdef DEBUGGER
+    itemID = fAppMenu.appendSwitch("Debugger", "Debugger", sinkID, fDebugger);
+    fAppMenu.assignKeyEquivalentToItem(itemID, 'q');
+#endif
     itemID = fAppMenu.appendSwitch("Slide Show", "Slide Show" , sinkID, false);    
     fAppMenu.assignKeyEquivalentToItem(itemID, 'a');    
     itemID = fAppMenu.appendSwitch("Clip", "Clip" , sinkID, fUseClip);    
     fAppMenu.assignKeyEquivalentToItem(itemID, 'c');
-    itemID = fAppMenu.appendSwitch("Measure FPS", "Measure FPS" , sinkID, fMeasureFPS);
-    fAppMenu.assignKeyEquivalentToItem(itemID, 'f');
     itemID = fAppMenu.appendSwitch("Flip X", "Flip X" , sinkID, false); 
     fAppMenu.assignKeyEquivalentToItem(itemID, 'x');
     itemID = fAppMenu.appendSwitch("Flip Y", "Flip Y" , sinkID, false);
@@ -914,7 +929,7 @@
         this->inval(NULL);
         return;
     }
-
+    
     if (fRequestGrabImage) {
         fRequestGrabImage = false;
 
@@ -969,7 +984,24 @@
         r.set(50, 50, 50+100, 50+100);
         bm.scrollRect(&r, dx, dy, &inval);
         paint_rgn(bm, r, inval);
-    }        
+    }
+#ifdef DEBUGGER
+    SkView* curr = curr_view(this);
+    if (fDebugger && !is_debugger(curr) && !is_transition(curr) && !is_overview(curr)) {
+        //Stop Pipe when fDebugger is active
+        fUsePipe = false;
+        (void)SampleView::SetUsePipe(curr, false);
+        fAppMenu.getItemByID(fUsePipeMenuItemID)->setBool(fUsePipe);
+        this->onUpdateMenu(&fAppMenu);
+        
+        //Reset any transformations
+        fGesture.stop();
+        fGesture.reset();
+        
+        this->loadView(create_debugger(gTempDataStore.begin(), 
+                                       gTempDataStore.count()));
+    }
+#endif
 }
 
 void SampleWindow::beforeChild(SkView* child, SkCanvas* canvas) {
@@ -1000,7 +1032,7 @@
     } else {
         (void)SampleView::SetRepeatDraw(child, 1);
     }
-    (void)SampleView::SetUsePipe(child, fUsePipe);
+    //(void)SampleView::SetUsePipe(child, fUsePipe);
 }
 
 void SampleWindow::afterChild(SkView* child, SkCanvas* canvas) {
@@ -1089,8 +1121,8 @@
         }
         return true;
     }
-    if (evt.isType("unref-transition-view")) {
-        SkEventSink::FindSink(evt.getFast32())->unref();
+    if (evt.isType("replace-transition-view")) {
+        this->loadView((SkView*)SkEventSink::FindSink(evt.getFast32()));
         return true;
     }
     if (evt.isType("set-curr-index")) {
@@ -1102,49 +1134,65 @@
         return true;
     }
     int selected = -1;
-    if (SkOSMenu::FindListIndex(&evt, "Device Type", &selected)) {
+    if (SkOSMenu::FindListIndex(evt, "Device Type", &selected)) {
         this->setDeviceType((DeviceType)selected);
         return true; 
     }
-    if (SkOSMenu::FindSwitchState(&evt, "Pipe", NULL)) {
-        this->togglePipe();
+    if (SkOSMenu::FindSwitchState(evt, "Pipe", &fUsePipe)) {
+#ifdef PIPE_NET
+        if (!fUsePipe)
+            gServer.disconnectAll();
+#endif
+        (void)SampleView::SetUsePipe(curr_view(this), fUsePipe);
+        this->updateTitle();
+        this->inval(NULL);
         return true;
     }
-    if (SkOSMenu::FindSwitchState(&evt, "Slide Show", NULL)) {
+    if (SkOSMenu::FindSwitchState(evt, "Slide Show", NULL)) {
         this->toggleSlideshow();
         return true;
     }
-    if (SkOSMenu::FindTriState(&evt, "AA", &fAAState) ||
-        SkOSMenu::FindTriState(&evt, "LCD", &fLCDState) ||
-        SkOSMenu::FindTriState(&evt, "Filter", &fFilterState) ||
-        SkOSMenu::FindTriState(&evt, "Hinting", &fHintingState) ||
-        SkOSMenu::FindSwitchState(&evt, "Clip", &fUseClip) ||
-        SkOSMenu::FindSwitchState(&evt, "Zoomer", &fShowZoomer) ||
-        SkOSMenu::FindSwitchState(&evt, "Magnify", &fMagnify) ||
-        SkOSMenu::FindSwitchState(&evt, "Measure FPS", &fMeasureFPS) ||
-        SkOSMenu::FindListIndex(&evt, "Transition-Next", &fTransitionNext) ||
-        SkOSMenu::FindListIndex(&evt, "Transition-Prev", &fTransitionPrev)) {
+    if (SkOSMenu::FindTriState(evt, "AA", &fAAState) ||
+        SkOSMenu::FindTriState(evt, "LCD", &fLCDState) ||
+        SkOSMenu::FindTriState(evt, "Filter", &fFilterState) ||
+        SkOSMenu::FindTriState(evt, "Hinting", &fHintingState) ||
+        SkOSMenu::FindSwitchState(evt, "Clip", &fUseClip) ||
+        SkOSMenu::FindSwitchState(evt, "Zoomer", &fShowZoomer) ||
+        SkOSMenu::FindSwitchState(evt, "Magnify", &fMagnify) ||
+        SkOSMenu::FindListIndex(evt, "Transition-Next", &fTransitionNext) ||
+        SkOSMenu::FindListIndex(evt, "Transition-Prev", &fTransitionPrev)) {
         this->inval(NULL);
         this->updateTitle();
         return true;
     }
-    if (SkOSMenu::FindSwitchState(&evt, "Flip X", NULL)) {
+    if (SkOSMenu::FindSwitchState(evt, "Flip X", NULL)) {
         fFlipAxis ^= kFlipAxis_X;
         this->updateTitle();
         this->inval(NULL);
         return true;
     }
-    if (SkOSMenu::FindSwitchState(&evt, "Flip Y", NULL)) {
+    if (SkOSMenu::FindSwitchState(evt, "Flip Y", NULL)) {
         fFlipAxis ^= kFlipAxis_Y;
         this->updateTitle();
         this->inval(NULL);
         return true;
     }
-    
-    if (SkOSMenu::FindAction(&evt,"Save to PDF")) {
+    if (SkOSMenu::FindAction(evt,"Save to PDF")) {
         this->saveToPdf();
         return true;
-    }    
+    } 
+#ifdef DEBUGGER
+    if (SkOSMenu::FindSwitchState(evt, "Debugger", &fDebugger)) {
+        if (fDebugger) {
+            fUsePipe = true;
+            (void)SampleView::SetUsePipe(curr_view(this), true);
+        } else {
+            this->loadView(fSamples[fCurrIndex]());
+        }
+        this->inval(NULL);
+        return true;
+    }
+#endif
     return this->INHERITED::onEvent(evt);
 }
 
@@ -1230,6 +1278,12 @@
         case 'd':
             SkGraphics::SetFontCacheUsed(0);
             return true;
+        case 'f':
+            // only 
+            fMeasureFPS = !fMeasureFPS;
+            this->updateTitle();
+            this->inval(NULL);
+            break;
         case 'g':
             fRequestGrabImage = true;
             this->inval(NULL);
@@ -1285,16 +1339,6 @@
     this->inval(NULL);
 }
 
-void SampleWindow::togglePipe() {
-    fUsePipe = !fUsePipe;
-#ifdef PIPE_NET
-    if (!fUsePipe)
-        gServer.disconnectAll();
-#endif
-    this->updateTitle();
-    this->inval(NULL);
-}
-
 #include "SkDumpCanvas.h"
 
 bool SampleWindow::onHandleKey(SkKey key) {
@@ -1427,7 +1471,7 @@
     if (prev) {
         prev->detachFromParent();
     }
-
+    
     view->setVisibleP(true);
     view->setClipToBounds(false);
     this->attachChildToFront(view)->unref();
@@ -1435,10 +1479,16 @@
 
     //repopulate the slide menu when a view is loaded
     fSlideMenu.reset();
+#ifdef DEBUGGER
+    if (!is_debugger(view) && !is_overview(view) && !is_transition(view) && fDebugger) {
+        //Force Pipe to be on if using debugger
+        fUsePipe = true;
+    }
+#endif
+    (void)SampleView::SetUsePipe(view, fUsePipe);
     if (SampleView::IsSampleView(view))
         ((SampleView*)view)->requestMenu(&fSlideMenu);
     this->onUpdateMenu(&fSlideMenu);
-    
     this->updateTitle();
 }
 
@@ -1648,10 +1698,9 @@
 SimplePC::~SimplePC() {
 //    SkASSERT(SkGPipeReader::kDone_Status == fStatus);
     if (fTotalWritten) {
-        SkDebugf("--- %d bytes %d atoms, status %d\n", fTotalWritten,
-                     fAtomsWritten, fStatus);
-        
         if (fWriteToPipe) {
+            SkDebugf("--- %d bytes %d atoms, status %d\n", fTotalWritten,
+                     fAtomsWritten, fStatus);
 #ifdef  PIPE_FILE
             //File is open in append mode
             FILE* f = fopen(FILE_PATH, "ab");
@@ -1665,6 +1714,10 @@
                 gServer.writePacket(fBlock, fTotalWritten);
             }
 #endif
+#ifdef  DEBUGGER
+            gTempDataStore.reset();
+            gTempDataStore.append(fTotalWritten, (const char*)fBlock);
+#endif
         }
     }
     sk_free(fBlock);
@@ -1701,6 +1754,9 @@
         canvas = writer.startRecording(&controller, flags);
         //Must draw before controller goes out of scope and sends data
         this->INHERITED::draw(canvas);
+        //explicitly end recording to ensure writer is flushed before the memory
+        //is freed in the deconstructor of the controller
+        writer.endRecording();
         controller.setWriteToPipe(fUsePipe);
     }
     else
diff --git a/samplecode/SampleApp.h b/samplecode/SampleApp.h
index 07c6452..729b7b1 100644
--- a/samplecode/SampleApp.h
+++ b/samplecode/SampleApp.h
@@ -82,7 +82,6 @@
     void toggleRendering();
     void toggleSlideshow();
     void toggleFPS();
-    void togglePipe();
     void showOverview();
 
     GrContext* getGrContext() const { return fDevManager->getGrContext(); }
@@ -144,11 +143,15 @@
     bool fRotate;
     bool fScale;
     bool fRequestGrabImage;
-    bool fUsePipe;
     bool fMeasureFPS;
     SkMSec fMeasureFPS_Time;
     bool fMagnify;
     
+    
+    bool fUsePipe;
+    int  fUsePipeMenuItemID;
+    bool fDebugger;
+    
     // The following are for the 'fatbits' drawing
     // Latest position of the mouse.
     int fMouseX, fMouseY;
diff --git a/samplecode/TransitionView.cpp b/samplecode/TransitionView.cpp
index 8cf3227..99d1275 100644
--- a/samplecode/TransitionView.cpp
+++ b/samplecode/TransitionView.cpp
@@ -10,9 +10,12 @@
 #include "SkTime.h"
 #include "SkInterpolator.h"
 
+extern bool is_overview(SkView* view);
+
 static const char gIsTransitionQuery[] = "is-transition";
 static const char gReplaceTransitionEvt[] = "replace-transition-view";
-static bool isTransition(SkView* view) {
+
+bool is_transition(SkView* view) {
     SkEvent isTransition(gIsTransitionQuery);
     return view->doQuery(&isTransition);
 }
@@ -37,10 +40,13 @@
         //Calling unref because next is a newly created view and TransitionView
         //is now the sole owner of fNext
         this->attachChildToFront(fNext)->unref();
+        
+        fDone = false;
+        //SkDebugf("--created transition\n");
     }
     
     ~TransitionView(){
-        //SkDebugf("deleted transition\n");
+        //SkDebugf("--deleted transition\n");
     }
     
     virtual void requestMenu(SkOSMenu* menu) {
@@ -72,11 +78,30 @@
             this->attachChildToBack(fPrev)->unref();
             this->inval(NULL);
             return true;
-        } 
+        }
+        if (evt.isType("transition-done")) {
+            fNext->setLoc(0, 0);
+            fNext->setClipToBounds(false);
+            SkEvent* evt = new SkEvent(gReplaceTransitionEvt, 
+                                       this->getParent()->getSinkID());
+            evt->setFast32(fNext->getSinkID());
+            //increate ref count of fNext so it survives detachAllChildren
+            fNext->ref();
+            this->detachAllChildren();
+            evt->post();
+            return true;
+        }
         return this->INHERITED::onEvent(evt);
     }
     virtual void onDrawBackground(SkCanvas* canvas) {}
     virtual void onDrawContent(SkCanvas* canvas) {
+        if (fDone)
+            return;
+
+        if (is_overview(fNext) || is_overview(fPrev)) {
+            fUsePipe = false;
+        }
+        
         SkScalar values[4];
         SkInterpolator::Result result = fInterp.timeToValues(SkTime::GetMSecs(), values);
         //SkDebugf("transition %x %d pipe:%d\n", this, result, fUsePipe);
@@ -89,35 +114,9 @@
             this->inval(NULL);
         }
         else {
-            fNext->setLocX(0);
-            fNext->setLocY(0);
-            fNext->setClipToBounds(false);
-            
-            SkView* parent = this->getParent();
-            int id = this->getParent()->getSinkID();
-            
-            SkEvent* evt;
-            if (isTransition(parent)) {
-                evt = new SkEvent(gReplaceTransitionEvt, id);
-                evt->setFast32(fNext->getSinkID());
-                //increate ref count of fNext so it survives detachAllChildren
-                fNext->ref();
-            }
-            else {
-                parent->attachChildToFront(fNext);
-                (void)SampleView::SetUsePipe(fNext, fUsePipe);
-                evt = new SkEvent("unref-transition-view", id);
-                evt->setFast32(this->getSinkID());
-                fUsePipe = false;
-                //keep this(TransitionView) alive so it can be deleted by its 
-                //parent through the unref-transition-view event
-                this->ref();
-                this->detachFromParent();
-            }
-            this->detachAllChildren();
-            evt->post();
+            (new SkEvent("transition-done", this->getSinkID()))->post();
+            fDone = true;
         }
-        this->inval(NULL);
     }
     
     virtual void onSizeChange() {
@@ -142,7 +141,7 @@
         fNext->setLocX(lr);
         fNext->setLocY(ud);
         
-        if (isTransition(fPrev))
+        if (is_transition(fPrev))
             lr = ud = 0;
         fEnd[kPrevX] = -lr;
         fEnd[kPrevY] = -ud;
@@ -161,6 +160,7 @@
     };
     SkView* fPrev;
     SkView* fNext;
+    bool    fDone;
     SkInterpolator fInterp;
     
     enum Direction{
diff --git a/src/views/SkOSMenu.cpp b/src/views/SkOSMenu.cpp
index ce3894a..ed37541 100644
--- a/src/views/SkOSMenu.cpp
+++ b/src/views/SkOSMenu.cpp
@@ -23,6 +23,22 @@
     fTitle.reset();
 }
 
+const SkOSMenu::Item* SkOSMenu::getItemByID(int itemID) const {
+    for (int i = 0; i < fItems.count(); ++i) {
+        if (itemID == fItems[i]->getID())
+            return fItems[i];
+    }
+    return NULL;
+}
+
+void SkOSMenu::getItems(const SkOSMenu::Item* items[]) const {
+    if (NULL != items) {
+        for (int i = 0; i < fItems.count(); ++i) {
+            items[i] = fItems[i];
+        }
+    }
+}
+
 void SkOSMenu::assignKeyEquivalentToItem(int itemID, SkUnichar key) {
     for (int i = 0; i < fItems.count(); ++i) {
         if (itemID == fItems[i]->getID())
@@ -40,31 +56,31 @@
             SkString list;
             switch (item->getType()) {
                 case kList_Type:
-                    SkOSMenu::FindListItemCount(item->getEvent(), &size);
-                    SkOSMenu::FindListIndex(item->getEvent(), item->getSlotName(), &value);
+                    SkOSMenu::FindListItemCount(*item->getEvent(), &size);
+                    SkOSMenu::FindListIndex(*item->getEvent(), item->getSlotName(), &value);
                     value = (value + 1) % size;
-                    item->postEventWithInt(value);
+                    item->setInt(value);
                     break;
                 case kSwitch_Type:
-                    SkOSMenu::FindSwitchState(item->getEvent(), item->getSlotName(), &state);
-                    item->postEventWithBool(!state);
+                    SkOSMenu::FindSwitchState(*item->getEvent(), item->getSlotName(), &state);
+                    item->setBool(!state);
                     break;
                 case kTriState_Type:
-                    SkOSMenu::FindTriState(item->getEvent(), item->getSlotName(), &tristate);
+                    SkOSMenu::FindTriState(*item->getEvent(), item->getSlotName(), &tristate);
                     if (kOnState == tristate)
                         tristate = kMixedState;
                     else
                         tristate = (SkOSMenu::TriState)((int)tristate + 1);
-                    item->postEventWithInt(tristate);
+                    item->setTriState(tristate);
                     break;
                 case kAction_Type:
                 case kCustom_Type:
                 case kSlider_Type:
                 case kTextField_Type:
                 default:
-                    item->postEvent();
                     break;
             }
+            item->postEvent();
             return true;
         }
     }
@@ -83,28 +99,29 @@
     fID = sk_atomic_inc(&gOSMenuCmd);
 }
 
-void SkOSMenu::Item::postEventWithBool(bool value) const {
+void SkOSMenu::Item::setBool(bool value) const {
     SkASSERT(SkOSMenu::kSwitch_Type == fType);
     fEvent->setBool(fSlotName.c_str(), value);
-    this->postEvent();
 }
 
-void SkOSMenu::Item::postEventWithScalar(SkScalar value) const {
+void SkOSMenu::Item::setScalar(SkScalar value) const {
     SkASSERT(SkOSMenu::kSlider_Type == fType);
     fEvent->setScalar(fSlotName.c_str(), value);
-    this->postEvent();
 }
 
-void SkOSMenu::Item::postEventWithInt(int value) const {
-    SkASSERT(SkOSMenu::kList_Type == fType || SkOSMenu::kTriState_Type == fType);
+void SkOSMenu::Item::setInt(int value) const {
+    SkASSERT(SkOSMenu::kList_Type == fType);
     fEvent->setS32(fSlotName.c_str(), value);
-    this->postEvent();
 }
 
-void SkOSMenu::Item::postEventWithString(const char value[]) const {
+void SkOSMenu::Item::setTriState(TriState value) const {
+    SkASSERT(SkOSMenu::kTriState_Type == fType);
+    fEvent->setS32(fSlotName.c_str(), value);
+}
+
+void SkOSMenu::Item::setString(const char value[]) const {
     SkASSERT(SkOSMenu::kTextField_Type == fType);
     fEvent->setString(fSlotName.c_str(), value);
-    this->postEvent();
 }
 
 ////////////////////////////////////////////////////////////////////////////////
@@ -182,13 +199,13 @@
     return appendItem(label, SkOSMenu::kTextField_Type, slotName, evt);
 }
 
-bool SkOSMenu::FindListItemCount(const SkEvent* evt, int* count) {
-    return evt->isType(gMenuEventType) && evt->findS32(gList_ItemCount_S32, count);
+bool SkOSMenu::FindListItemCount(const SkEvent& evt, int* count) {
+    return evt.isType(gMenuEventType) && evt.findS32(gList_ItemCount_S32, count);
 }
 
-bool SkOSMenu::FindListItems(const SkEvent* evt, SkString items[]) {
-    if (evt->isType(gMenuEventType) && NULL != items) {
-        const char* text = evt->findString(gList_Items_Str);
+bool SkOSMenu::FindListItems(const SkEvent& evt, SkString items[]) {
+    if (evt.isType(gMenuEventType) && NULL != items) {
+        const char* text = evt.findString(gList_Items_Str);
         if (text != NULL) {
             SkString temp(text);
             char* token = strtok((char*)temp.c_str(), gDelimiter);
@@ -204,37 +221,37 @@
     return false;
 }
 
-bool SkOSMenu::FindSliderMin(const SkEvent* evt, SkScalar* min) {
-    return evt->isType(gMenuEventType) && evt->findScalar(gSlider_Min_Scalar, min);
+bool SkOSMenu::FindSliderMin(const SkEvent& evt, SkScalar* min) {
+    return evt.isType(gMenuEventType) && evt.findScalar(gSlider_Min_Scalar, min);
 }
 
-bool SkOSMenu::FindSliderMax(const SkEvent* evt, SkScalar* max) {
-    return evt->isType(gMenuEventType) && evt->findScalar(gSlider_Max_Scalar, max);
+bool SkOSMenu::FindSliderMax(const SkEvent& evt, SkScalar* max) {
+    return evt.isType(gMenuEventType) && evt.findScalar(gSlider_Max_Scalar, max);
 }
 
-bool SkOSMenu::FindAction(const SkEvent* evt, const char label[]) {
-    return evt->isType(gMenuEventType) && evt->findString(label);
+bool SkOSMenu::FindAction(const SkEvent& evt, const char label[]) {
+    return evt.isType(gMenuEventType) && evt.findString(label);
 }
 
-bool SkOSMenu::FindListIndex(const SkEvent* evt, const char slotName[], int* value) {
-    return evt->isType(gMenuEventType) && evt->findS32(slotName, value); 
+bool SkOSMenu::FindListIndex(const SkEvent& evt, const char slotName[], int* value) {
+    return evt.isType(gMenuEventType) && evt.findS32(slotName, value); 
 }
 
-bool SkOSMenu::FindSliderValue(const SkEvent* evt, const char slotName[], SkScalar* value) {
-    return evt->isType(gMenuEventType) && evt->findScalar(slotName, value);
+bool SkOSMenu::FindSliderValue(const SkEvent& evt, const char slotName[], SkScalar* value) {
+    return evt.isType(gMenuEventType) && evt.findScalar(slotName, value);
 }
 
-bool SkOSMenu::FindSwitchState(const SkEvent* evt, const char slotName[], bool* value) {
-    return evt->isType(gMenuEventType) && evt->findBool(slotName, value);
+bool SkOSMenu::FindSwitchState(const SkEvent& evt, const char slotName[], bool* value) {
+    return evt.isType(gMenuEventType) && evt.findBool(slotName, value);
 }
 
-bool SkOSMenu::FindTriState(const SkEvent* evt, const char slotName[], SkOSMenu::TriState* value) {
-    return evt->isType(gMenuEventType) && evt->findS32(slotName, (int*)value);
+bool SkOSMenu::FindTriState(const SkEvent& evt, const char slotName[], SkOSMenu::TriState* value) {
+    return evt.isType(gMenuEventType) && evt.findS32(slotName, (int*)value);
 }
 
-bool SkOSMenu::FindText(const SkEvent* evt, const char slotName[], SkString* value) {
-    if (evt->isType(gMenuEventType)) {
-        const char* text = evt->findString(slotName);
+bool SkOSMenu::FindText(const SkEvent& evt, const char slotName[], SkString* value) {
+    if (evt.isType(gMenuEventType)) {
+        const char* text = evt.findString(slotName);
         if (!text || !*text)
             return false;
         else {
