[dasher: 36/43] MacOS: add direct mode toggle and NSTextView interface



commit fc302db3423e15d4bc42237e7f63a74f37654ef8
Author: Alan Lawrence <acl33 inf phy cam ac uk>
Date:   Thu May 5 10:40:40 2011 +0100

    MacOS: add direct mode toggle and NSTextView interface
    
    Standard NSWindow (menu behaviour) with file open/save, edit menu, view (font
     etc. global across textview). Filename in window title, confirm b4 close, etc.
     Direct mode not as good as in panel (AppWatcher always locked),  but hopefully
     will tide users over until we can do a proper InputMethod?
    
    Edit functions factored into DasherEdit protocol, implemented by DirectEdit
     and DasherTextView (subclass of NSTextView - forwards keyevents to DasherApp
     whilst remaining "editable" so cut/copy/paste etc. work)
    
    CKeyboardHelper etc. moved from DasherViewOpenGL to DasherApp & shared
    
    DasherOpenGL refuses firstResponder => DasherTextView focused
    
    Usual bodge, ignore events while Dasher is updating text, as node offsets broken
      by control mode! (Worse here as text view calls back even for appending text)

 Src/MacOSX/AppWatcher.h                            |    7 -
 Src/MacOSX/AppWatcher.m                            |   40 -
 Src/MacOSX/COSXDasherControl.h                     |   22 +-
 Src/MacOSX/COSXDasherControl.mm                    |   43 +-
 Src/MacOSX/Dasher.xcodeproj/project.pbxproj        |    8 +
 Src/MacOSX/DasherApp.h                             |   23 +-
 Src/MacOSX/DasherApp.mm                            |  198 +-
 Src/MacOSX/DasherEdit.h                            |   33 +-
 Src/MacOSX/DasherEdit.mm                           |   81 +-
 Src/MacOSX/DasherTextView.h                        |   18 +
 Src/MacOSX/DasherTextView.mm                       |  177 +
 Src/MacOSX/DasherViewOpenGL.h                      |    2 -
 Src/MacOSX/DasherViewOpenGL.mm                     |   20 +-
 Src/MacOSX/English.lproj/MainMenu.nib/classes.nib  |   69 -
 .../English.lproj/MainMenu.nib/designable.nib      | 3819 ++++++++++++++++++++
 Src/MacOSX/English.lproj/MainMenu.nib/info.nib     |   22 -
 .../English.lproj/MainMenu.nib/keyedobjects.nib    |  Bin 12170 -> 32759 bytes
 17 files changed, 4329 insertions(+), 253 deletions(-)
---
diff --git a/Src/MacOSX/AppWatcher.h b/Src/MacOSX/AppWatcher.h
index 3360c00..8e50950 100755
--- a/Src/MacOSX/AppWatcher.h
+++ b/Src/MacOSX/AppWatcher.h
@@ -12,17 +12,12 @@
 @interface AppWatcher : NSObject {
   NSMutableArray *_apps;
   NSDictionary *_targetAppInfo;
-  NSTimer *watchActiveAppTimer;
-  BOOL lockTargetApp;
   IBOutlet NSArrayController *appsController;
 }
 
 - (AXUIElementRef)targetAppUIElementRef;
 - (BOOL)psnOfAppInfo:(NSDictionary *)appInfo1 isEqualToPsnOfAppInfo:(NSDictionary *)appInfo2;
 - (id)init;
-- (void)startTimer;
-- (void)stopTimer;
-- (void)checkActiveApp:(NSTimer *)timer;
 - (void)awakeFromNib;
 - (void)fillApps;
 - (unsigned int)indexOfAppWithApplicationName:(NSString *)aName;
@@ -36,8 +31,6 @@
 - (void)setApps:(NSMutableArray *)newApps;
 - (NSDictionary *)targetAppInfo;
 - (void)setTargetAppInfo:(NSDictionary *)newTargetAppInfo;
-- (BOOL)lockTargetApp;
-- (void)setLockTargetApp:(BOOL)newLockTargetApp;
 - (void)dealloc;
 
 @end
diff --git a/Src/MacOSX/AppWatcher.m b/Src/MacOSX/AppWatcher.m
index 886499c..d1d98c9 100755
--- a/Src/MacOSX/AppWatcher.m
+++ b/Src/MacOSX/AppWatcher.m
@@ -16,7 +16,6 @@
     [self setApps:[NSMutableArray arrayWithCapacity:20]];
     [self registerNotifications];
     [self fillApps];
-    [self startTimer];
   }
   return self;
 }
@@ -32,31 +31,9 @@
   return AXUIElementCreateApplication(pid);
 }
 
-- (void)startTimer {
-  if (watchActiveAppTimer == nil) {
-    watchActiveAppTimer = [NSTimer scheduledTimerWithTimeInterval:3.0 target:self selector:@selector(checkActiveApp:) userInfo:nil repeats:YES];
-    [watchActiveAppTimer fire];
-  }
-}
-
-- (void)stopTimer {
-  [watchActiveAppTimer invalidate];
-  watchActiveAppTimer = nil;
-}
-
-- (void)checkActiveApp:(NSTimer *)timer {
-  NSDictionary *appInfo = [[NSWorkspace sharedWorkspace] activeApplication];
-  if ([self indexOfAppWithInfo:appInfo] != NSNotFound) {
-    [self setTargetAppInfo:appInfo];
-  } else {
-    [self setTargetAppInfo:nil];
-  }
-}
-
 - (void)awakeFromNib {
   NSSortDescriptor *d = [[[NSSortDescriptor alloc] initWithKey:@"NSApplicationName" ascending:YES selector:@selector(caseInsensitiveCompare:)] autorelease];
   [appsController setSortDescriptors:[NSArray arrayWithObject:d]];
-  [self setLockTargetApp:YES];
   [self setTargetAppInfo:nil];
 }
 
@@ -162,27 +139,10 @@
   }
 }
 
-- (BOOL)lockTargetApp {
-  return lockTargetApp;
-}
-
-- (void)setLockTargetApp:(BOOL)newLockTargetApp {
-  if (lockTargetApp != newLockTargetApp) {
-    lockTargetApp = newLockTargetApp;
-    if (newLockTargetApp) {
-      [self stopTimer];
-    } else {
-      [self startTimer];
-    }
-  }
-}
-
-
 - (void)dealloc {
   [[[NSWorkspace sharedWorkspace] notificationCenter] removeObserver:self];
   [_apps release];
   [_targetAppInfo release];
-  [watchActiveAppTimer invalidate];
   [super dealloc];
 }
 
diff --git a/Src/MacOSX/COSXDasherControl.h b/Src/MacOSX/COSXDasherControl.h
index a9e4521..91c734f 100644
--- a/Src/MacOSX/COSXDasherControl.h
+++ b/Src/MacOSX/COSXDasherControl.h
@@ -14,7 +14,7 @@
 #import "COSXMouseInput.h"
 
 @class DasherApp;
- class DasherEdit;
+ protocol DasherEdit;
 
 ///
 /// \brief C++ core of the Dasher GTK UI component.
@@ -54,6 +54,7 @@ public:
   void ClearAllContext();
   std::string GetContext(unsigned int iOffset, unsigned int iLength);
   virtual int GetFileSize(const std::string &strFileName);
+  void SetEdit(id<DasherEdit> pEdit);
 private:
   virtual void ScanAlphabetFiles(std::vector<std::string> &vFileList);
   virtual void ScanColourFiles(std::vector<std::string> &vFileList);
@@ -66,23 +67,10 @@ private:
   virtual void Speak(const std::string &strText, bool bInterrupt);
   virtual bool SupportsClipboard() {return true;}
   virtual void CopyToClipboard(const std::string &strText);
-  ///Control-mode editing commands not currently supported on MacOSX,
-  /// so just returns the current offset unchanged.
-  ///Could try to send arrow keys via LowLevelKeyboardHandling,
-  /// but at best we'd lose our context.
-  ///Really this will have to wait for either (a)reinstating an in-Dasher
-  /// text edit box, or (b) implementing the MacOSX input method API.
+  ///Control-mode editing commands delegate to DasherEdit.
   unsigned int ctrlMove(bool bForwards, CControlManager::EditDistance dist);
 
-  ///Control-mode editing commands not currently supported on MacOSX;
-  /// forward deletion returns current offset and does nothing,
-  /// backwards deletion we look for space/paragraph characters
-  /// and send corresponding # of (char-)deletes.
-  ///Could try to send complex keypresses (option-delete=word, line/file...
-  /// = select then delete?) via LowLevelKeyboardHandling, but at best we'd
-  /// lose our context.
-  ///Really this will have to wait for either (a)reinstating an in-Dasher
-  /// text edit box, or (b) implementing the MacOSX input method API.
+  ///Control-mode editing commands delegate to DasherEdit.
   unsigned int ctrlDelete(bool bForwards, CControlManager::EditDistance dist);
   // No need to HandleEvent: the PreferencesController is observing changes to the 
   // user defaults controller which is observing the user defaults and will be notified when
@@ -97,7 +85,7 @@ private:
   void editProtect(CDasherNode *pSource);
 
   DasherApp *dasherApp;   // objc counterpart
-  DasherEdit *dasherEdit;  // for outputting into other apps
+  id<DasherEdit> dasherEdit;  // current output - sends to other apps or textfield
   
   COSXMouseInput *m_pMouseInput;
   COSX1DMouseInput *m_p1DMouseInput;
diff --git a/Src/MacOSX/COSXDasherControl.mm b/Src/MacOSX/COSXDasherControl.mm
index f5b8cfe..075e66e 100644
--- a/Src/MacOSX/COSXDasherControl.mm
+++ b/Src/MacOSX/COSXDasherControl.mm
@@ -27,13 +27,8 @@
 using namespace std;
 using namespace Dasher::Settings;
 
-COSXDasherControl::COSXDasherControl(DasherApp *aDasherApp) : CDashIntfScreenMsgs(new COSXSettingsStore()){
-  
-  dasherApp = aDasherApp;
-  
-  dasherEdit = [[DasherEdit alloc] init];
-
-  
+COSXDasherControl::COSXDasherControl(DasherApp *aDasherApp)
+: CDashIntfScreenMsgs(new COSXSettingsStore()), dasherApp(aDasherApp), dasherEdit(nil) {
 }
 
 void COSXDasherControl::CreateModules() {
@@ -140,15 +135,22 @@ void COSXDasherControl::TimerFired(NSPoint p) {
   [[dasherApp dasherView] redisplay];
 }  
  
+void COSXDasherControl::SetEdit(id<DasherEdit> _dasherEdit) {
+  //These both produce warnings, as release/retain are not defined in the DasherEdit protocol...(??)
+  [dasherEdit release];
+  [(dasherEdit = _dasherEdit) retain];
+  SetBuffer([dasherEdit currentCursorPos]);
+}
+
 void COSXDasherControl::editOutput(const string &strText, CDasherNode *pNode) {
 //NSLog(@"ExternalEventHandler edit insert");
-  [dasherEdit outputCallback:NSStringFromStdString(strText) targetApp:[dasherApp targetAppUIElementRef]];
+  [dasherEdit outputCallback:NSStringFromStdString(strText)];
   CDasherInterfaceBase::editOutput(strText,pNode);
 }
 
 void COSXDasherControl::editDelete(const string &strText, CDasherNode *pNode) {
 // NSLog(@"ExternalEventHandler edit delete");
-  [dasherEdit deleteCallback:NSStringFromStdString(strText) targetApp:[dasherApp targetAppUIElementRef]];
+  [dasherEdit deleteCallback:NSStringFromStdString(strText)];
   CDasherInterfaceBase::editDelete(strText, pNode);
 }
 
@@ -163,30 +165,11 @@ void COSXDasherControl::editProtect(CDasherNode *pSource) {
 }
 
 unsigned int COSXDasherControl::ctrlMove(bool bForwards, CControlManager::EditDistance dist) {
-#ifdef DEBUG
-  std::cout << "Call to edit move, doing nothing" << std::endl;
-#endif
-  return [[dasherEdit allContext] length];
+  return [dasherEdit ctrlMove:dist forwards:bForwards];
 }
 
 unsigned int COSXDasherControl::ctrlDelete(bool bForwards, CControlManager::EditDistance dist) {
-  if (!bForwards) {
-    const unsigned int iCurrentOffset([[dasherEdit allContext] length]);
-    int iStartOffset;
-    if (dist==CControlManager::EDIT_CHAR)
-      iStartOffset=(iCurrentOffset==0) ? 0 : iCurrentOffset-1;
-    else if (dist==CControlManager::EDIT_FILE)
-      iStartOffset=0;
-    else {
-      const CAlphInfo *pAlph(GetActiveAlphabet());
-      const string &target(pAlph->GetText(dist==CControlManager::EDIT_WORD ? pAlph->GetSpaceSymbol() : pAlph->GetParagraphSymbol()));
-      NSRange range = [[dasherEdit allContext] rangeOfString:NSStringFromStdString(target) options:NSBackwardsSearch];
-      iStartOffset = (range.length==0) ? 0 : range.location; //0=> not found, so go to beginning
-    }
-    DASHER_ASSERT(iStartOffset<=[[dasherEdit allContext] length]);
-    [dasherEdit deleteCallback:[[dasherEdit allContext] substringFromIndex:iStartOffset] targetApp:[dasherApp targetAppUIElementRef]];
-  }
-  return [[dasherEdit allContext] length];
+  return [dasherEdit ctrlDelete:dist forwards:bForwards];
 }
 
 int COSXDasherControl::GetFileSize(const std::string &strFileName) {
diff --git a/Src/MacOSX/Dasher.xcodeproj/project.pbxproj b/Src/MacOSX/Dasher.xcodeproj/project.pbxproj
index 7f0cfd0..cffbba7 100755
--- a/Src/MacOSX/Dasher.xcodeproj/project.pbxproj
+++ b/Src/MacOSX/Dasher.xcodeproj/project.pbxproj
@@ -343,6 +343,8 @@
 		33B3431813A8A951009AE0D5 /* DashIntfScreenMsgs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 33B3431613A8A951009AE0D5 /* DashIntfScreenMsgs.cpp */; };
 		33B3431913A8A951009AE0D5 /* DashIntfScreenMsgs.h in Headers */ = {isa = PBXBuildFile; fileRef = 33B3431713A8A951009AE0D5 /* DashIntfScreenMsgs.h */; };
 		33B3431B13A8A970009AE0D5 /* Messages.h in Headers */ = {isa = PBXBuildFile; fileRef = 33B3431A13A8A970009AE0D5 /* Messages.h */; };
+		33C3BDD213854CC000C768E0 /* DasherTextView.h in Headers */ = {isa = PBXBuildFile; fileRef = 33C3BDD013854CC000C768E0 /* DasherTextView.h */; };
+		33C3BDD313854CC000C768E0 /* DasherTextView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 33C3BDD113854CC000C768E0 /* DasherTextView.mm */; };
 		33C88E1E1201D0A900727492 /* FileWordGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 33C88E1A1201D0A900727492 /* FileWordGenerator.cpp */; };
 		33C88E1F1201D0A900727492 /* FileWordGenerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 33C88E1B1201D0A900727492 /* FileWordGenerator.h */; };
 		33C88E201201D0A900727492 /* GameModule.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 33C88E1C1201D0A900727492 /* GameModule.cpp */; };
@@ -744,6 +746,8 @@
 		33B3431613A8A951009AE0D5 /* DashIntfScreenMsgs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DashIntfScreenMsgs.cpp; sourceTree = "<group>"; };
 		33B3431713A8A951009AE0D5 /* DashIntfScreenMsgs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DashIntfScreenMsgs.h; sourceTree = "<group>"; };
 		33B3431A13A8A970009AE0D5 /* Messages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Messages.h; sourceTree = "<group>"; };
+		33C3BDD013854CC000C768E0 /* DasherTextView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DasherTextView.h; sourceTree = "<group>"; };
+		33C3BDD113854CC000C768E0 /* DasherTextView.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DasherTextView.mm; sourceTree = "<group>"; };
 		33C88E1A1201D0A900727492 /* FileWordGenerator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FileWordGenerator.cpp; sourceTree = "<group>"; };
 		33C88E1B1201D0A900727492 /* FileWordGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FileWordGenerator.h; sourceTree = "<group>"; };
 		33C88E1C1201D0A900727492 /* GameModule.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GameModule.cpp; sourceTree = "<group>"; };
@@ -808,6 +812,8 @@
 		080E96DDFE201D6D7F000001 /* Mac OS X Classes */ = {
 			isa = PBXGroup;
 			children = (
+				33C3BDD013854CC000C768E0 /* DasherTextView.h */,
+				33C3BDD113854CC000C768E0 /* DasherTextView.mm */,
 				193731A70C8586F20022CBC7 /* config.h */,
 				19C1AE810B130F18005C68D3 /* COSXMouseInput.h */,
 				191180E90B0FC91A001CB987 /* COSXSettingsStore.h */,
@@ -1451,6 +1457,7 @@
 				33C88E211201D0A900727492 /* GameModule.h in Headers */,
 				33E756A41202D6180012A0E9 /* WordGeneratorBase.h in Headers */,
 				33FC1D2C13ACE7E7007642CD /* ScreenGameModule.h in Headers */,
+				33C3BDD213854CC000C768E0 /* DasherTextView.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -1801,6 +1808,7 @@
 				33C88E201201D0A900727492 /* GameModule.cpp in Sources */,
 				33CB6E80125E2C7A002DB8AD /* WordGeneratorBase.cpp in Sources */,
 				33FC1D2B13ACE7E7007642CD /* ScreenGameModule.cpp in Sources */,
+				33C3BDD313854CC000C768E0 /* DasherTextView.mm in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
diff --git a/Src/MacOSX/DasherApp.h b/Src/MacOSX/DasherApp.h
index 8ebc205..e366e30 100644
--- a/Src/MacOSX/DasherApp.h
+++ b/Src/MacOSX/DasherApp.h
@@ -13,22 +13,32 @@
 #import "COSXDasherControl.h"
 #import "DasherViewOpenGL.h"
 #import "Queue.h"
+#import "DasherEdit.h"
+#import "KeyboardHelper.h"
 
 @class AppWatcher;
- class DasherView;
+ class DasherTextView;
 
 @interface DasherApp : NSObject
 {
-  IBOutlet NSPanel *dasherPanelUI;
+  IBOutlet NSWindow *dasherPanelUI;
   
   COSXDasherControl *aquaDasherControl;
   DasherViewOpenGL *dasherView;
   
   IBOutlet AppWatcher *appWatcher;
+  IBOutlet DasherTextView *textView;
   NSTimer *_timer;
   Queue *spQ;
   NSSpeechSynthesizer *spSyn;
+  CKeyboardHelper *_keyboardHelper;
+  BOOL directMode;
+  NSString *filename;
+  BOOL modified;
 }
+ property BOOL directMode;
+ property (readonly,retain) NSString *filename;
+ property BOOL modified;
 
 - (void)start;
 - (void)redraw;
@@ -39,7 +49,6 @@
 - (NSArray *)permittedValuesForParameter:(int)aParameter;
 - (id)getParameterValueForKey:(NSString *)aKey;
 - (void)setParameterValue:(id)aValue forKey:(NSString *)aKey;
-- (AXUIElementRef)targetAppUIElementRef;
 - (id)init;
 - (IBAction)importTrainingText:(id)sender;
 - (IBAction)showPreferences:(id)sender;
@@ -57,6 +66,14 @@
 - (bool)supportsSpeech;
 - (void)speak:(NSString *)sText interrupt:(bool)bInt;
 - (void)copyToClipboard:(NSString *)sText;
+- (void)handleKeyDown:(NSEvent *)e;
+- (void)handleKeyUp:(NSEvent *)e;
+- (IBAction)newDoc:(id)sender;
+- (IBAction)openDoc:(id)sender;
+- (IBAction)saveDoc:(id)sender;
+- (IBAction)saveDocAs:(id)sender;
+- (IBAction)revertToSaved:(id)sender;
 
 @property (assign) DasherViewOpenGL *dasherView;
+
 @end
diff --git a/Src/MacOSX/DasherApp.mm b/Src/MacOSX/DasherApp.mm
index 9a3860e..2003e53 100644
--- a/Src/MacOSX/DasherApp.mm
+++ b/Src/MacOSX/DasherApp.mm
@@ -10,7 +10,6 @@
 #import "PreferencesController.h"
 #import "DasherEdit.h"
 #import "DasherUtil.h"
-#import "AppWatcher.h"
 
 /*
  * Created by Doug Dickinson (dasher AT DressTheMonkey DOT plus DOT com), 18 April 2003
@@ -18,10 +17,43 @@
 
 #import <Cocoa/Cocoa.h>
 
+ interface FilenameTransformer : NSValueTransformer {
+}
+ end
+ implementation FilenameTransformer
++(Class)transformedValueClass {
+  return [NSString class];
+}
++(BOOL)allowsReverseTransformation {
+  return NO;
+}
+-(id)transformedValue:(id)value {
+  return (value) ? value : @"Untitled";
+}
+ end
+static NSString *FilenameToUntitledName = @"NilToUntitled";
+
+ interface DasherApp ()
+ property (retain) NSString *filename;
+-(NSString *)filenameOrUntitled;
+//invokes selector on self with nil parameter, if successfully saved or user chose to discard
+-(void)promptToSave:(SEL)ifDone;
+ end
+
 
 @implementation DasherApp
 
 @synthesize dasherView;
+ synthesize modified;
+ synthesize filename;
+
++(void)initialize {
+  [NSValueTransformer setValueTransformer:[[[FilenameTransformer alloc] init] autorelease] forName:FilenameToUntitledName];
+}
+
+-(NSString *)filenameOrUntitled {
+  return [[NSValueTransformer valueTransformerForName:FilenameToUntitledName] transformedValue:self.filename];
+}
 
 - (void)start {
 //  aquaDasherControl->Start();
@@ -63,7 +95,6 @@
   return result;
 }
 
-
 - (id)getParameterValueForKey:(NSString *)aKey {
   return aquaDasherControl->GetParameter(aKey);
 }
@@ -72,16 +103,13 @@
   aquaDasherControl->SetParameter(aKey, aValue);
 }
 
-- (AXUIElementRef)targetAppUIElementRef {
-  return [appWatcher targetAppUIElementRef];
-}
-
 - (id)init
 {
   if (self = [super init])
     {
       [self setAquaDasherControl:new COSXDasherControl(self)];
       spQ = [[Queue alloc] init];
+      _keyboardHelper = new CKeyboardHelper();
     }
 
   return self;
@@ -89,11 +117,20 @@
 
 - (IBAction)importTrainingText:(id)sender {
   NSOpenPanel *op = [NSOpenPanel openPanel];
+  //[op setDirectory:<#(NSString *)path#>];
+  //[op setAllowedFileTypes:<#(NSArray *)types#>];
+  
+  //following method is deprecated in 10.6, and one should use
+  // beginSheetModalForWindow:CompletionHandler: instead. The new
+  // method (taking a closure/block) doesn't even exist before 10.6,
+  // so I'm sticking with:
+  [op beginSheetForDirectory:nil file:nil modalForWindow:dasherPanelUI modalDelegate:self didEndSelector:@selector(importPanelDidEnd:returnCode:contextInfo:) contextInfo:nil];
+}
 
-  int returnCode = [op runModalForDirectory:nil file:nil types:nil];
-
+- (void)importPanelDidEnd:(NSSavePanel *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo {
+  [sheet orderOut:dasherPanelUI];
   if (returnCode == NSOKButton) {
-    aquaDasherControl->Train([op filename]);
+    aquaDasherControl->Train([[sheet URL] path]);
     NSBeep();
   }
 }
@@ -102,18 +139,26 @@
   [[PreferencesController preferencesController] makeKeyAndOrderFront:sender];
 }
 
+-(void)setDirectMode:(BOOL)bVal {
+  //hidden-ness of textview / appwatcher controls are automatically linked to property changes
+  aquaDasherControl->SetEdit(bVal ? [[[DirectEdit alloc] initWithIntf:aquaDasherControl AppWatcher:appWatcher] autorelease] : textView);
+  self->directMode = bVal;
+}
+
+-(BOOL)directMode {
+  return self->directMode;
+}
+
 - (void)setPanelAlphaValue:(float)anAlphaValue {
   [dasherPanelUI setAlphaValue:anAlphaValue];
 }
 
 - (void)finishRealization {
   aquaDasherControl->Realize2();
+  [self setDirectMode:directMode];
 }
 
 - (void)awakeFromNib {
-  [dasherPanelUI setBecomesKeyOnlyIfNeeded:YES];
-  [dasherPanelUI setFloatingPanel:YES];
-
   // TODO leave out until defaults works properly
 //  [self setPanelAlphaValue:[[NSUserDefaults standardUserDefaults] floatForKey:DASHER_PANEL_OPACITY]];
 
@@ -172,6 +217,19 @@
   aquaDasherControl->TimerFired([dasherView mouseLocation]);
 }
 
+-(BOOL)windowShouldClose:(id)sender {
+  DASHER_ASSERT(sender == dasherPanelUI);
+  if (self.modified) {
+    [self promptToSave:@selector(doCloseWindow:)];
+    return NO;
+  }
+  return YES;
+}
+
+-(void)doCloseWindow:(id)none {
+  [dasherPanelUI performClose:nil];
+}
+
 - (void)applicationWillTerminate:(NSNotification *)aNotification {
   aquaDasherControl->StartShutdown();
   delete aquaDasherControl;
@@ -220,4 +278,120 @@
   [pboard setString:sText forType:NSStringPboardType];
 }
 
+-(void)handleKeyDown:(NSEvent *)e {
+  NSString *chars = [e characters];
+  if ([chars length] > 1)
+    NSLog(@"KeyDown event for %i chars %@ - what to do? Ignoring all but first...\n", [chars length], chars);
+  int keyCode = _keyboardHelper->ConvertKeyCode([chars characterAtIndex:0]);
+  if (keyCode != -1)
+    aquaDasherControl->KeyDown(get_time(), keyCode);
+}
+
+-(void)handleKeyUp:(NSEvent *)e {
+  NSString *chars = [e characters];
+  if ([chars length] > 1)
+    NSLog(@"KeyUp event for %i chars %@ - what to do? Ignoring all but first...\n", [chars length], chars);
+  int keyCode = _keyboardHelper->ConvertKeyCode([chars characterAtIndex:0]);
+  if (keyCode != -1)
+    aquaDasherControl->KeyUp(get_time(), keyCode);  
+}
+
+- (void)promptToSave:(SEL)continueSel {
+  DASHER_ASSERT(modified);
+  [[NSAlert alertWithMessageText:[NSString stringWithFormat:@"Do you want to save the changes you made to the document \"% \"", [self filenameOrUntitled]] defaultButton:@"Save" alternateButton:@"Cancel" otherButton:@"Discard" informativeTextWithFormat:@"Your changes will be lost if you don't save them"]
+   beginSheetModalForWindow:dasherPanelUI modalDelegate:self didEndSelector:@selector(promptedToSave:returnCode:contextInfo:) contextInfo:continueSel];
+}
+//contextInfo is a selector (taking a single 'id' param) of what to do once we have saved/discarded
+- (void)promptedToSave:(NSAlert *)alert returnCode:(int)returnCode contextInfo:(void *)contextInfo {
+  [[alert window] orderOut:dasherPanelUI];
+  switch (returnCode) {
+    case NSAlertDefaultReturn:
+      //Save
+      if (!filename){
+        [[NSSavePanel savePanel] beginSheetForDirectory:nil file:nil modalForWindow:dasherPanelUI modalDelegate:self didEndSelector:@selector(savePanelDidEnd:returnCode:contextInfo:) contextInfo:contextInfo];
+        return;
+      }
+      [self saveDoc:nil];
+      break;
+    case NSAlertAlternateReturn:
+      return; //cancel => abort
+    case NSAlertOtherReturn:
+      //don't save => continue
+      self.modified=NO;
+      break;
+  }
+  DASHER_ASSERT(!modified);
+  [self performSelector:(SEL)contextInfo withObject:nil];
+}
+
+- (IBAction)newDoc:(id)sender {
+  if (self.modified) {
+    [self promptToSave:@selector(newDoc:)];
+    return;
+  }
+  [textView setString:@""];
+  aquaDasherControl->SetOffset(0, true);
+}
+
+- (IBAction)openDoc:(id)sender {
+  if (self.modified) {
+    [self promptToSave:@selector(openDoc:)];
+    return;
+  }
+  NSOpenPanel *op = [NSOpenPanel openPanel];
+  //[op setDirectory:<#(NSString *)path#>];
+  //[op setAllowedFileTypes:<#(NSArray *)types#>];
+  [op beginSheetForDirectory:nil file:nil modalForWindow:dasherPanelUI modalDelegate:self didEndSelector:@selector(openPanelDidEnd:returnCode:contextInfo:) contextInfo:nil];
+}
+
+- (void)openPanelDidEnd:(NSSavePanel *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo {
+  [sheet orderOut:dasherPanelUI];
+  if (returnCode == NSOKButton) {
+    self.filename = [[sheet URL] path];
+    self.modified = NO;
+    [self revertToSaved:nil];
+  }
+}
+
+- (IBAction)saveDoc:(id)sender {
+  if (!filename) {
+    [self saveDocAs:nil];
+    return;
+  }
+  //TODO errors
+  [[textView string] writeToFile:filename atomically:YES encoding:NSUTF8StringEncoding error:nil];
+  self.modified = NO;
+}
+
+- (IBAction)saveDocAs:(id)sender {
+  [[NSSavePanel savePanel] beginSheetForDirectory:nil file:nil modalForWindow:dasherPanelUI modalDelegate:self didEndSelector:@selector(savePanelDidEnd:returnCode:contextInfo:) contextInfo:nil];
+}
+
+- (void)savePanelDidEnd:(NSSavePanel *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo {
+  [sheet orderOut:dasherPanelUI];
+  if (returnCode == NSOKButton) {
+    self.filename = [[sheet URL] path];
+    [self saveDoc:nil];
+    if (contextInfo) [self performSelector:(SEL)contextInfo withObject:nil];
+  }
+}
+
+- (IBAction)revertToSaved:(id)sender {
+  DASHER_ASSERT(filename);
+  if (self.modified) {
+    NSString *msg = [NSString stringWithFormat:@"Do you want to revert to the most recently saved version of the document \"% \"",[self filenameOrUntitled]];
+    [[NSAlert alertWithMessageText:msg defaultButton:@"Revert" alternateButton:@"Cancel" otherButton:nil informativeTextWithFormat:@"Your current changes will be lost"]
+     beginSheetModalForWindow:dasherPanelUI modalDelegate:self didEndSelector:@selector(promptedToRevert:returnCode:contextInfo:) contextInfo:nil];
+  } else
+    [textView setString:[NSString stringWithContentsOfFile:filename encoding:NSUTF8StringEncoding error:NULL]]; //TODO error
+}
+
+-(void)promptedToRevert:(NSAlert *)panel returnCode:(int)returnCode contextInfo:(void *)contextInfo {
+  if (returnCode==NSAlertDefaultReturn) {
+    //revert
+    self.modified=NO;
+    [self revertToSaved:nil];
+  } //else, cancel - do nothing
+}
+
 @end
diff --git a/Src/MacOSX/DasherEdit.h b/Src/MacOSX/DasherEdit.h
index b6bc7d0..92fd12c 100644
--- a/Src/MacOSX/DasherEdit.h
+++ b/Src/MacOSX/DasherEdit.h
@@ -7,19 +7,34 @@
 //
 
 #import <AppKit/AppKit.h>
+#import "AppWatcher.h"
+#import "ControlManager.h"
 
- interface DasherEdit : NSObject 
-{
-  BOOL dasherIsModifyingText;
-  NSMutableString *allTextEntered;
-}
+ protocol DasherEdit
 
-- init;
-- (void)sendString:(NSString *)aString toTargetApp:(AXUIElementRef)aTargetApp;
-- (void)outputCallback:(NSString *)aString targetApp:(AXUIElementRef)aTargetApp;
-- (void)deleteCallback:(NSString *)s targetApp:(AXUIElementRef)aTargetApp;
+- (void)outputCallback:(NSString *)aString;
+- (void)deleteCallback:(NSString *)s;
+- (unsigned int)currentCursorPos;
 - (NSString *)textAtOffset:(unsigned int)iOffset Length:(unsigned int)iLength;
 - (NSString *)allContext;
 - (void)clearContext;
+-(unsigned int)ctrlMove:(Dasher::CControlManager::EditDistance)dist forwards:(BOOL)bForwards;
+-(unsigned int)ctrlDelete:(Dasher::CControlManager::EditDistance)dist forwards:(BOOL)bForwards;
+ end
 
+///Editing functions by sending keystrokes to named app. No picking up context:
+/// stores text entered in Dasher and can delete (only) that; control-mode editing
+/// functions not currently supported except for backwards deletion (we look for
+/// space/paragraph characters and send corresponding # of (char-)deletes.)
+/// so just return the current offset unchanged.
+///Could try to send arrow keys or complex keypresses (option-delete=word,
+/// line/file... = select then delete?) via LowLevelKeyboardHandling,
+/// but at best we'd lose our context.
+///Really this will have to wait for implementing the MacOSX input method API.
+ interface DirectEdit : NSObject<DasherEdit> {
+  NSMutableString *allTextEntered;
+  AppWatcher *appWatcher;
+  Dasher::CDasherInterfaceBase *pIntf;
+}
+-(id)initWithIntf:(Dasher::CDasherInterfaceBase *)_pIntf AppWatcher:(AppWatcher *)_appWatcher;
 @end
diff --git a/Src/MacOSX/DasherEdit.mm b/Src/MacOSX/DasherEdit.mm
index c49948f..1d0da9f 100644
--- a/Src/MacOSX/DasherEdit.mm
+++ b/Src/MacOSX/DasherEdit.mm
@@ -10,46 +10,46 @@
 #import "UnicharGenerator.h"
 #import "../Common/Common.h"
 #import <Carbon/Carbon.h>
+#import "AlphInfo.h"
+#import "DasherUtil.h"
+#import "DasherInterfaceBase.h"
 
- implementation DasherEdit
+using namespace Dasher;
 
+ interface DirectEdit ()
+- (void)sendString:(NSString *)aString;
+ end
 
-- init
-{
-  if (self = [super init]) 
-    {
-      allTextEntered = [[NSMutableString alloc] initWithCapacity:1024];
-    }
-  
+ implementation DirectEdit
+
+
+-(id)initWithIntf:(CDasherInterfaceBase *)_pIntf AppWatcher:(AppWatcher *)_appWatcher {
+  if (self = [super init]) {
+    allTextEntered = [[NSMutableString alloc] initWithCapacity:1024];
+    pIntf = _pIntf;
+    appWatcher = _appWatcher;
+  }
   return self;
 }
 
-- (void)sendString:(NSString *)aString toTargetApp:(AXUIElementRef)aTargetApp {
-  if (aTargetApp != NULL) {
+- (void)sendString:(NSString *)aString {
+  if (AXUIElementRef aTargetApp = [appWatcher targetAppUIElementRef]) {
     [[UnicharGenerator sharedInstance] postKeyboardEventsToUIElementRef:aTargetApp unicharString:aString];
   }
 }
 
-- (void)outputCallback:(NSString *)aString targetApp:(AXUIElementRef)aTargetApp
-{
-  dasherIsModifyingText = YES;
-  [self sendString:aString toTargetApp:aTargetApp];
-  dasherIsModifyingText = NO;
+- (void)outputCallback:(NSString *)aString {
+  [self sendString:aString];
   [allTextEntered appendString:aString];
 }
 
-- (void)deleteCallback:(NSString *)s targetApp:(AXUIElementRef)aTargetApp
-{
+- (void)deleteCallback:(NSString *)s {
   // just send the app a number of backspace characters equal to [s length]
   int len = [s length];
-  int i;
   
-  dasherIsModifyingText = YES;
-  for (i = 0; i < len; i++)
-    {
-    [self sendString:@"\b" toTargetApp:aTargetApp];
-    }
-  dasherIsModifyingText = NO;
+  for (int i = 0; i < len; i++) {
+    [self sendString:@"\b"];
+  }
   [allTextEntered deleteCharactersInRange:NSMakeRange([allTextEntered length]-len, len)];
 }
 
@@ -72,4 +72,35 @@
   [allTextEntered setString:@""];
 }
 
- end
+-(unsigned int)currentCursorPos {
+  return [allTextEntered length];
+}
+
+-(unsigned int)ctrlMove:(CControlManager::EditDistance)dist forwards:(BOOL)bForwards {
+#ifdef DEBUG
+std::cout << "Call to edit move, doing nothing" << std::endl;
+#endif
+  return [allTextEntered length];
+}
+
+-(unsigned int)ctrlDelete:(CControlManager::EditDistance)dist forwards:(BOOL)bForwards {
+  if (!bForwards) {
+    const unsigned int iCurrentOffset([allTextEntered length]);
+    unsigned int numChars;
+    if (dist==CControlManager::EDIT_CHAR)
+      numChars=1;
+    else if (dist==CControlManager::EDIT_FILE)
+      numChars = iCurrentOffset;
+    else {
+      const CAlphInfo *pAlph(pIntf->GetActiveAlphabet());
+      const string &target(pAlph->GetText(dist==CControlManager::EDIT_WORD ? pAlph->GetSpaceSymbol() : pAlph->GetParagraphSymbol()));
+      NSRange range = [allTextEntered rangeOfString:NSStringFromStdString(target) options:NSBackwardsSearch];
+      numChars = (range.length==0) ? iCurrentOffset : iCurrentOffset-range.location; //0=> not found, so go to beginning
+    }
+    for (unsigned int i=0; i<numChars; i++)
+      [self sendString:@"\b"];
+  }
+  return [allTextEntered length];
+}
+
+ end
\ No newline at end of file
diff --git a/Src/MacOSX/DasherTextView.h b/Src/MacOSX/DasherTextView.h
new file mode 100644
index 0000000..201d149
--- /dev/null
+++ b/Src/MacOSX/DasherTextView.h
@@ -0,0 +1,18 @@
+//
+//  DasherTextView.h
+//  Dasher
+//
+//  Created by Alan Lawrence on 19/05/2011.
+//  Copyright 2011 Cavendish Laboratory. All rights reserved.
+//
+
+#import <Cocoa/Cocoa.h>
+#import "DasherApp.h"
+#import "DasherEdit.h"
+
+ interface DasherTextView : NSTextView<DasherEdit> {
+  IBOutlet DasherApp *dasherApp;
+  BOOL suppressCursorEvents;
+}
+
+ end
diff --git a/Src/MacOSX/DasherTextView.mm b/Src/MacOSX/DasherTextView.mm
new file mode 100644
index 0000000..329a185
--- /dev/null
+++ b/Src/MacOSX/DasherTextView.mm
@@ -0,0 +1,177 @@
+//
+//  DasherTextView.mm
+//  Dasher
+//
+//  Created by Alan Lawrence on 19/05/2011.
+//  Copyright 2011 Cavendish Laboratory. All rights reserved.
+//
+
+#import "DasherTextView.h"
+
+
+ implementation DasherTextView
+
+- (id)initWithFrame:(NSRect)frame {    
+    if (self = [super initWithFrame:frame]) {
+      self.delegate=self;
+    }
+    return self;
+}
+
+- (id)initWithCoder:(NSCoder *)aDecoder {
+  if (self = [super initWithCoder:aDecoder]) {
+    self.delegate = self;
+  }
+  return self;
+}
+
+- (void)keyDown:(NSEvent *)e {
+  /*TODO, note that this isn't really "key down", rather it's "character entered"
+   or similar - if the key is held down long enough to repeat, we get multiple keyDowns
+   before a keyUp, and we just send them all along to the DasherCore code...*/
+  [dasherApp handleKeyDown:e];
+}
+
+- (void)keyUp:(NSEvent *)e {
+  [dasherApp handleKeyUp:e];
+}
+
+#pragma mark DasherEdit methods
+
+- (void)outputCallback:(NSString *)aString {
+  //offsets are wrong after any control mode node has been executed; since _any_
+  // adding of text (at least by following method) generally causes textViewDidChangeSelection
+  // callbacks, we have to suppress these during text adding in all cases...
+  suppressCursorEvents=YES;
+  [self replaceCharactersInRange:[self selectedRange] withString:aString];
+  [self scrollRangeToVisible:[self selectedRange]];
+  suppressCursorEvents=NO;
+  dasherApp.modified=YES;
+}
+
+- (void)deleteCallback:(NSString *)s {
+  suppressCursorEvents=YES; //similarly to outputCallback
+  int len = [s length];
+  NSRange curSelection = [self selectedRange];
+  //delete current selection and preceding character(s)
+  [self replaceCharactersInRange:NSMakeRange(curSelection.location-len, curSelection.length+len) withString:@""];
+  [self scrollRangeToVisible:(self.selectedRange = NSMakeRange(curSelection.location-len, 0))];
+  suppressCursorEvents=NO;
+  dasherApp.modified=YES;
+}
+
+-(NSString *)textAtOffset:(unsigned int)iOffset Length:(unsigned int)iLength {
+  //This does not hold if using control mode since it gets the offsets wrong...
+  //DASHER_ASSERT(iOffset+iLength <= [allTextEntered length]);
+  //Instead we shall handle all the out-of-bounds cases ourselves
+  // (substringWithRange is not at all forgiving!)
+  NSString *s = [self string];
+  if (iOffset >= [s length]) return @"";
+  if (iOffset+iLength > [s length])
+    iLength = [s length]-iOffset;
+  return [s substringWithRange:NSMakeRange(iOffset,iLength)];
+}
+
+-(NSString *)allContext {
+  return [self string];
+}
+
+-(void)clearContext {
+  [self replaceCharactersInRange:NSMakeRange(0, [[self string] length]) withString:@""];
+}
+
+-(unsigned int)currentCursorPos {
+  return [self selectedRange].location;
+}
+
+-(unsigned int)ctrlMove:(CControlManager::EditDistance)dist forwards:(BOOL)bForwards {
+  suppressCursorEvents=YES;
+  //According to the Key Bindings documentation, http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/TextEditing/Concepts/KeyBindings.html%23//apple_ref/doc/uid/TP40008900-BAJCDFFI
+  // keypresses such as (up arrow) are mapped to strings by consulting a dictionary, /System/Library/Frameworks/AppKit.framework/Resources/StandardKeyBinding.dict (user may provide alternative)
+  // and these strings are then sent to the NSTextView's doCommandBySelector: method.
+  // Hence, we will send the same strings directly, regardless of their key bindings...
+  switch (dist) {
+    case CControlManager::EDIT_CHAR:
+      [self doCommandBySelector:(bForwards ? @selector(moveForward:) : @selector(moveBackward:))];
+      break;
+    case CControlManager::EDIT_WORD:
+      [self doCommandBySelector:(bForwards ? @selector(moveWordForward:) : @selector(moveWordBackward:))];
+      break;
+    case CControlManager::EDIT_LINE: {
+      NSRange curRange = [self selectedRange];
+      SEL sel(bForwards ? @selector(moveToBeginningOfLine:) : @selector(moveToEndOfLine:));
+      [self doCommandBySelector:sel];
+      if (NSEqualRanges([self selectedRange], curRange)) {
+        //already at beginning/end of line. move a character first
+        [self doCommandBySelector:(bForwards ? @selector(moveForward:) : @selector(moveBackward:))];  
+        //then try it again
+        [self doCommandBySelector:sel];
+      }
+    }
+      break;
+    case CControlManager::EDIT_FILE:
+      [self doCommandBySelector:(bForwards ? @selector(moveToBeginningOfDocument:) : @selector(moveToEndOfDocument:))];
+      break;
+    default:
+      break;
+  }
+  NSRange newRange=[self selectedRange];
+  DASHER_ASSERT(newRange.length==0);
+  suppressCursorEvents=NO;
+  return newRange.location;
+}
+
+-(unsigned int)ctrlDelete:(CControlManager::EditDistance)dist forwards:(BOOL)bForwards {
+  suppressCursorEvents=YES;
+  //According to the Key Bindings documentation, http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/TextEditing/Concepts/KeyBindings.html%23//apple_ref/doc/uid/TP40008900-BAJCDFFI
+  // keypresses such as (up arrow) are mapped to strings by consulting a dictionary, /System/Library/Frameworks/AppKit.framework/Resources/StandardKeyBinding.dict (user may provide alternative)
+  // and these strings are then sent to the NSTextView's doCommandBySelector: method.
+  // Hence, we will send the same strings directly, regardless of their key bindings...
+  switch (dist) {
+    case CControlManager::EDIT_CHAR:
+      [self doCommandBySelector:(bForwards ? @selector(deleteForward:) : @selector(deleteBackward:))];
+      break;
+    case CControlManager::EDIT_WORD:
+      [self doCommandBySelector:(bForwards ? @selector(deleteWordForward:) : @selector(deleteWordBackward:))];
+      break;
+    case CControlManager::EDIT_LINE: {
+      NSRange curRange = [self selectedRange];
+      SEL sel(bForwards ? @selector(deleteToBeginningOfLine:) : @selector(deleteToEndOfLine:));
+      [self doCommandBySelector:sel];
+      if (NSEqualRanges([self selectedRange],curRange)) {
+        //already at beginning/end of line. move a character first
+        [self doCommandBySelector:(bForwards ? @selector(deleteForward:) : @selector(deleteBackward:))];  
+        //then try it again
+        [self doCommandBySelector:sel];
+      }
+    }
+      break;
+    case CControlManager::EDIT_FILE:
+      //deleteTo{Beginning,End}OfDocument: do not exist...
+      self.selectedRange=NSMakeRange([self selectedRange].location, 0);
+      [self doCommandBySelector:(bForwards ? @selector(moveToBeginningOfDocumentAndModifySelection:) : @selector(moveToEndOfDocumentAndModifySelection:))];
+      [self replaceCharactersInRange:[self selectedRange] withString:@""];
+      break;
+    default:
+      break;
+  }
+  NSRange newRange=[self selectedRange];
+  DASHER_ASSERT(newRange.length==0);
+  suppressCursorEvents=NO;
+  dasherApp.modified=YES;
+  return newRange.location;
+}
+
+#pragma mark NSTextViewDelegate methods
+
+- (void)textView:(NSTextView *)aTextView clickedOnCell:(id < NSTextAttachmentCell >)cell inRect:(NSRect)cellFrame atIndex:(NSUInteger)charIndex {
+  NSLog(@"clicked on %@ rect %f,%f,%f,%f idx %i",cell,cellFrame.origin.x,cellFrame.origin.y,cellFrame.size.width,cellFrame.size.height,charIndex);
+}
+
+-(void)textViewDidChangeSelection:(NSNotification *)notification {
+  //NSLog(@"DidChangeSelection %i+%i",[textView selectedRange].location,[textView selectedRange].length);
+  if (!suppressCursorEvents)
+    [dasherApp aquaDasherControl]->SetOffset([self selectedRange].location, false);
+}
+
+ end
diff --git a/Src/MacOSX/DasherViewOpenGL.h b/Src/MacOSX/DasherViewOpenGL.h
index 6258ebd..e76c2db 100755
--- a/Src/MacOSX/DasherViewOpenGL.h
+++ b/Src/MacOSX/DasherViewOpenGL.h
@@ -11,7 +11,6 @@
 #import <AppKit/NSOpenGLView.h>
 #import <AppKit/NSNibDeclarations.h>
 #import "ColourIO.h"
-#import "KeyboardHelper.h"
 
 @class NSString;
 @class DasherApp;
@@ -34,7 +33,6 @@ class COSXDasherScreen;
   ///current (last successful) framebuffer width & height
 	int fw,fh;
   
-  CKeyboardHelper *_keyboardHelper;
 }
 
 - (void)drawRect:(NSRect)rect;
diff --git a/Src/MacOSX/DasherViewOpenGL.mm b/Src/MacOSX/DasherViewOpenGL.mm
index f3383cf..c4995e4 100755
--- a/Src/MacOSX/DasherViewOpenGL.mm
+++ b/Src/MacOSX/DasherViewOpenGL.mm
@@ -139,24 +139,11 @@ protected:
 
 
 - (void)keyDown:(NSEvent *)e {
-  /*TODO, note that this isn't really "key down", rather it's "character entered"
-	or similar - if the key is held down long enough to repeat, we get multiple keyDowns
-   before a keyUp, and we just send them all along to the DasherCore code...*/
-  NSString *chars = [e characters];
-  if ([chars length] > 1)
-    NSLog(@"KeyDown event for %i chars %@ - what to do? Ignoring all but first...\n", [chars length], chars);
-  int keyCode = _keyboardHelper->ConvertKeyCode([chars characterAtIndex:0]);
-  if (keyCode != -1)
-    [dasherApp aquaDasherControl]->KeyDown(get_time(), keyCode);
+  [dasherApp handleKeyDown:e];
 }
 
 - (void)keyUp:(NSEvent *)e {
-  NSString *chars = [e characters];
-  if ([chars length] > 1)
-    NSLog(@"KeyUp event for %i chars %@ - what to do? Ignoring all but first...\n", [chars length], chars);
-  int keyCode = _keyboardHelper->ConvertKeyCode([chars characterAtIndex:0]);
-  if (keyCode != -1)
-    [dasherApp aquaDasherControl]->KeyUp(get_time(), keyCode);
+  [dasherApp handleKeyUp:e];
 }
 
 - (id)initWithFrame:(NSRect)aFrame {
@@ -187,7 +174,6 @@ protected:
     glClearColor(1.0, 1.0, 1.0, 1.0);
     glClear(GL_COLOR_BUFFER_BIT);
 	  
-    _keyboardHelper = new CKeyboardHelper();
   }
   return self;
 }
@@ -231,7 +217,7 @@ protected:
 }
 
 - (BOOL)acceptsFirstResponder {
-  return YES;
+  return NO;
 }
 
 - (void)dealloc {
diff --git a/Src/MacOSX/English.lproj/MainMenu.nib/designable.nib b/Src/MacOSX/English.lproj/MainMenu.nib/designable.nib
new file mode 100644
index 0000000..abdf7fb
--- /dev/null
+++ b/Src/MacOSX/English.lproj/MainMenu.nib/designable.nib
@@ -0,0 +1,3819 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10">
+	<data>
+		<int key="IBDocument.SystemTarget">1050</int>
+		<string key="IBDocument.SystemVersion">10J869</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="526"/>
+			<integer value="2"/>
+			<integer value="29"/>
+		</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="139870953">
+			<bool key="EncodedWithXMLCoder">YES</bool>
+			<object class="NSCustomObject" id="217732779">
+				<string key="NSClassName">NSApplication</string>
+			</object>
+			<object class="NSCustomObject" id="388652252">
+				<string key="NSClassName">FirstResponder</string>
+			</object>
+			<object class="NSCustomObject" id="915167754">
+				<string key="NSClassName">NSApplication</string>
+			</object>
+			<object class="NSWindowTemplate" id="350678226">
+				<int key="NSWindowStyleMask">15</int>
+				<int key="NSWindowBacking">2</int>
+				<string key="NSWindowRect">{{503, 367}, {398, 357}}</string>
+				<int key="NSWTFlags">813178880</int>
+				<string key="NSWindowTitle">Dasher</string>
+				<string key="NSWindowClass">NSWindow</string>
+				<object class="NSMutableString" key="NSViewClass">
+					<characters key="NS.bytes">View</characters>
+				</object>
+				<string key="NSWindowContentMaxSize">{1.79769e+308, 1.79769e+308}</string>
+				<string key="NSWindowContentMinSize">{112, 50}</string>
+				<object class="NSView" key="NSWindowView" id="417172531">
+					<reference key="NSNextResponder"/>
+					<int key="NSvFlags">256</int>
+					<object class="NSMutableArray" key="NSSubviews">
+						<bool key="EncodedWithXMLCoder">YES</bool>
+						<object class="NSPopUpButton" id="179303831">
+							<reference key="NSNextResponder" ref="417172531"/>
+							<int key="NSvFlags">268</int>
+							<string key="NSFrame">{{17, 320}, {135, 26}}</string>
+							<reference key="NSSuperview" ref="417172531"/>
+							<int key="NSViewLayerContentsRedrawPolicy">2</int>
+							<bool key="NSEnabled">YES</bool>
+							<object class="NSPopUpButtonCell" key="NSCell" id="840328209">
+								<int key="NSCellFlags">-2076049856</int>
+								<int key="NSCellFlags2">1024</int>
+								<object class="NSFont" key="NSSupport">
+									<string key="NSName">LucidaGrande</string>
+									<double key="NSSize">13</double>
+									<int key="NSfFlags">1044</int>
+								</object>
+								<reference key="NSControlView" ref="179303831"/>
+								<int key="NSButtonFlags">109199615</int>
+								<int key="NSButtonFlags2">1</int>
+								<object class="NSFont" key="NSAlternateImage">
+									<string key="NSName">LucidaGrande</string>
+									<double key="NSSize">13</double>
+									<int key="NSfFlags">16</int>
+								</object>
+								<object class="NSMutableString" key="NSAlternateContents">
+									<characters key="NS.bytes"/>
+								</object>
+								<object class="NSMutableString" key="NSKeyEquivalent">
+									<characters key="NS.bytes"/>
+								</object>
+								<int key="NSPeriodicDelay">400</int>
+								<int key="NSPeriodicInterval">75</int>
+								<object class="NSMenuItem" key="NSMenuItem" id="1058730312">
+									<reference key="NSMenu" ref="34995641"/>
+									<string key="NSTitle">Item1</string>
+									<string key="NSKeyEquiv"/>
+									<int key="NSKeyEquivModMask">1048576</int>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<int key="NSState">1</int>
+									<object class="NSCustomResource" key="NSOnImage" id="482857697">
+										<string key="NSClassName">NSImage</string>
+										<string key="NSResourceName">NSMenuCheckmark</string>
+									</object>
+									<object class="NSCustomResource" key="NSMixedImage" id="552066134">
+										<string key="NSClassName">NSImage</string>
+										<string key="NSResourceName">NSMenuMixedState</string>
+									</object>
+									<string key="NSAction">_popUpItemAction:</string>
+									<reference key="NSTarget" ref="840328209"/>
+								</object>
+								<bool key="NSMenuItemRespectAlignment">YES</bool>
+								<object class="NSMenu" key="NSMenu" id="34995641">
+									<object class="NSMutableString" key="NSTitle">
+										<characters key="NS.bytes">OtherViews</characters>
+									</object>
+									<object class="NSMutableArray" key="NSMenuItems">
+										<bool key="EncodedWithXMLCoder">YES</bool>
+										<reference ref="1058730312"/>
+										<object class="NSMenuItem" id="625953320">
+											<reference key="NSMenu" ref="34995641"/>
+											<string key="NSTitle">Item2</string>
+											<string key="NSKeyEquiv"/>
+											<int key="NSKeyEquivModMask">1048576</int>
+											<int key="NSMnemonicLoc">2147483647</int>
+											<reference key="NSOnImage" ref="482857697"/>
+											<reference key="NSMixedImage" ref="552066134"/>
+											<string key="NSAction">_popUpItemAction:</string>
+											<reference key="NSTarget" ref="840328209"/>
+										</object>
+										<object class="NSMenuItem" id="396979410">
+											<reference key="NSMenu" ref="34995641"/>
+											<string key="NSTitle">Item3</string>
+											<string key="NSKeyEquiv"/>
+											<int key="NSKeyEquivModMask">1048576</int>
+											<int key="NSMnemonicLoc">2147483647</int>
+											<reference key="NSOnImage" ref="482857697"/>
+											<reference key="NSMixedImage" ref="552066134"/>
+											<string key="NSAction">_popUpItemAction:</string>
+											<reference key="NSTarget" ref="840328209"/>
+										</object>
+									</object>
+								</object>
+								<int key="NSPreferredEdge">3</int>
+								<bool key="NSUsesItemFromMenu">YES</bool>
+								<bool key="NSAltersState">YES</bool>
+								<int key="NSArrowPosition">1</int>
+							</object>
+						</object>
+						<object class="NSCustomView" id="531587681">
+							<reference key="NSNextResponder" ref="417172531"/>
+							<int key="NSvFlags">274</int>
+							<string key="NSFrameSize">{398, 304}</string>
+							<reference key="NSSuperview" ref="417172531"/>
+							<int key="NSViewLayerContentsRedrawPolicy">2</int>
+							<string key="NSClassName">DasherViewOpenGL</string>
+							<string key="NSExtension">NSOpenGLView</string>
+						</object>
+						<object class="NSScrollView" id="927114913">
+							<reference key="NSNextResponder" ref="417172531"/>
+							<int key="NSvFlags">271</int>
+							<object class="NSMutableArray" key="NSSubviews">
+								<bool key="EncodedWithXMLCoder">YES</bool>
+								<object class="NSClipView" id="352247726">
+									<reference key="NSNextResponder" ref="927114913"/>
+									<int key="NSvFlags">2304</int>
+									<object class="NSMutableArray" key="NSSubviews">
+										<bool key="EncodedWithXMLCoder">YES</bool>
+										<object class="NSTextView" id="630166701">
+											<reference key="NSNextResponder" ref="352247726"/>
+											<int key="NSvFlags">2322</int>
+											<object class="NSMutableSet" key="NSDragTypes">
+												<bool key="EncodedWithXMLCoder">YES</bool>
+												<object class="NSArray" key="set.sortedObjects">
+													<bool key="EncodedWithXMLCoder">YES</bool>
+													<string>Apple HTML pasteboard type</string>
+													<string>Apple PDF pasteboard type</string>
+													<string>Apple PICT pasteboard type</string>
+													<string>Apple PNG pasteboard type</string>
+													<string>Apple URL pasteboard type</string>
+													<string>CorePasteboardFlavorType 0x6D6F6F76</string>
+													<string>NSColor pasteboard type</string>
+													<string>NSFilenamesPboardType</string>
+													<string>NSStringPboardType</string>
+													<string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
+													<string>NeXT RTFD pasteboard type</string>
+													<string>NeXT Rich Text Format v1.0 pasteboard type</string>
+													<string>NeXT TIFF v4.0 pasteboard type</string>
+													<string>NeXT font pasteboard type</string>
+													<string>NeXT ruler pasteboard type</string>
+													<string>WebURLsWithTitlesPboardType</string>
+													<string>public.url</string>
+												</object>
+											</object>
+											<string key="NSFrame">{{0, 1}, {382, 14}}</string>
+											<reference key="NSSuperview" ref="352247726"/>
+											<object class="NSTextContainer" key="NSTextContainer" id="978406844">
+												<object class="NSLayoutManager" key="NSLayoutManager">
+													<object class="NSTextStorage" key="NSTextStorage">
+														<object class="NSMutableString" key="NSString">
+															<characters key="NS.bytes"/>
+														</object>
+														<nil key="NSDelegate"/>
+													</object>
+													<object class="NSMutableArray" key="NSTextContainers">
+														<bool key="EncodedWithXMLCoder">YES</bool>
+														<reference ref="978406844"/>
+													</object>
+													<int key="NSLMFlags">134</int>
+													<nil key="NSDelegate"/>
+												</object>
+												<reference key="NSTextView" ref="630166701"/>
+												<double key="NSWidth">382</double>
+												<int key="NSTCFlags">1</int>
+											</object>
+											<object class="NSTextViewSharedData" key="NSSharedData">
+												<int key="NSFlags">11235</int>
+												<int key="NSTextCheckingTypes">0</int>
+												<nil key="NSMarkedAttributes"/>
+												<object class="NSColor" key="NSBackgroundColor" id="29678397">
+													<int key="NSColorSpace">3</int>
+													<bytes key="NSWhite">MQA</bytes>
+												</object>
+												<object class="NSDictionary" key="NSSelectedAttributes">
+													<bool key="EncodedWithXMLCoder">YES</bool>
+													<object class="NSArray" key="dict.sortedKeys">
+														<bool key="EncodedWithXMLCoder">YES</bool>
+														<string>NSBackgroundColor</string>
+														<string>NSColor</string>
+													</object>
+													<object class="NSMutableArray" key="dict.values">
+														<bool key="EncodedWithXMLCoder">YES</bool>
+														<object class="NSColor">
+															<int key="NSColorSpace">6</int>
+															<string key="NSCatalogName">System</string>
+															<string key="NSColorName">selectedTextBackgroundColor</string>
+															<object class="NSColor" key="NSColor">
+																<int key="NSColorSpace">3</int>
+																<bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes>
+															</object>
+														</object>
+														<object class="NSColor">
+															<int key="NSColorSpace">6</int>
+															<string key="NSCatalogName">System</string>
+															<string key="NSColorName">selectedTextColor</string>
+															<object class="NSColor" key="NSColor" id="755860903">
+																<int key="NSColorSpace">3</int>
+																<bytes key="NSWhite">MAA</bytes>
+															</object>
+														</object>
+													</object>
+												</object>
+												<reference key="NSInsertionColor" ref="755860903"/>
+												<object class="NSDictionary" key="NSLinkAttributes">
+													<bool key="EncodedWithXMLCoder">YES</bool>
+													<object class="NSArray" key="dict.sortedKeys">
+														<bool key="EncodedWithXMLCoder">YES</bool>
+														<string>NSColor</string>
+														<string>NSCursor</string>
+														<string>NSUnderline</string>
+													</object>
+													<object class="NSMutableArray" key="dict.values">
+														<bool key="EncodedWithXMLCoder">YES</bool>
+														<object class="NSColor">
+															<int key="NSColorSpace">1</int>
+															<bytes key="NSRGB">MCAwIDEAA</bytes>
+														</object>
+														<object class="NSCursor">
+															<string key="NSHotSpot">{8, -8}</string>
+															<int key="NSCursorType">13</int>
+														</object>
+														<integer value="1"/>
+													</object>
+												</object>
+												<nil key="NSDefaultParagraphStyle"/>
+											</object>
+											<int key="NSTVFlags">6</int>
+											<string key="NSMaxSize">{463, 1e+07}</string>
+											<string key="NSMinize">{223, 12}</string>
+											<nil key="NSDelegate"/>
+										</object>
+									</object>
+									<string key="NSFrame">{{1, 1}, {382, 52}}</string>
+									<reference key="NSSuperview" ref="927114913"/>
+									<reference key="NSNextKeyView" ref="630166701"/>
+									<reference key="NSDocView" ref="630166701"/>
+									<reference key="NSBGColor" ref="29678397"/>
+									<object class="NSCursor" key="NSCursor">
+										<string key="NSHotSpot">{4, -5}</string>
+										<int key="NSCursorType">1</int>
+									</object>
+									<int key="NScvFlags">4</int>
+								</object>
+								<object class="NSScroller" id="772493981">
+									<reference key="NSNextResponder" ref="927114913"/>
+									<int key="NSvFlags">256</int>
+									<string key="NSFrame">{{383, 1}, {15, 52}}</string>
+									<reference key="NSSuperview" ref="927114913"/>
+									<reference key="NSTarget" ref="927114913"/>
+									<string key="NSAction">_doScroller:</string>
+									<double key="NSCurValue">1</double>
+									<double key="NSPercent">0.85256409645080566</double>
+								</object>
+								<object class="NSScroller" id="952670276">
+									<reference key="NSNextResponder" ref="927114913"/>
+									<int key="NSvFlags">-2147483392</int>
+									<string key="NSFrame">{{-100, -100}, {87, 18}}</string>
+									<reference key="NSSuperview" ref="927114913"/>
+									<int key="NSsFlags">1</int>
+									<reference key="NSTarget" ref="927114913"/>
+									<string key="NSAction">_doScroller:</string>
+									<double key="NSCurValue">1</double>
+									<double key="NSPercent">0.94565218687057495</double>
+								</object>
+							</object>
+							<string key="NSFrame">{{0, 304}, {399, 54}}</string>
+							<reference key="NSSuperview" ref="417172531"/>
+							<reference key="NSNextKeyView" ref="352247726"/>
+							<int key="NSsFlags">18</int>
+							<reference key="NSVScroller" ref="772493981"/>
+							<reference key="NSHScroller" ref="952670276"/>
+							<reference key="NSContentView" ref="352247726"/>
+						</object>
+					</object>
+					<string key="NSFrameSize">{398, 357}</string>
+					<reference key="NSSuperview"/>
+					<int key="NSViewLayerContentsRedrawPolicy">2</int>
+				</object>
+				<string key="NSScreenRect">{{0, 0}, {1680, 1028}}</string>
+				<string key="NSMinSize">{112, 72}</string>
+				<string key="NSMaxSize">{1.79769e+308, 1.79769e+308}</string>
+				<string key="NSFrameAutosaveName">DasherMain</string>
+			</object>
+			<object class="NSMenu" id="258167094">
+				<string key="NSTitle">MainMenu</string>
+				<object class="NSMutableArray" key="NSMenuItems">
+					<bool key="EncodedWithXMLCoder">YES</bool>
+					<object class="NSMenuItem" id="270706303">
+						<reference key="NSMenu" ref="258167094"/>
+						<string key="NSTitle">Dasher</string>
+						<string key="NSKeyEquiv"/>
+						<int key="NSKeyEquivModMask">1048576</int>
+						<int key="NSMnemonicLoc">2147483647</int>
+						<reference key="NSOnImage" ref="482857697"/>
+						<reference key="NSMixedImage" ref="552066134"/>
+						<string key="NSAction">submenuAction:</string>
+						<object class="NSMenu" key="NSSubmenu" id="449074099">
+							<string key="NSTitle">Dasher</string>
+							<object class="NSMutableArray" key="NSMenuItems">
+								<bool key="EncodedWithXMLCoder">YES</bool>
+								<object class="NSMenuItem" id="997709799">
+									<reference key="NSMenu" ref="449074099"/>
+									<string key="NSTitle">About Dasher</string>
+									<string key="NSKeyEquiv"/>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="701985345">
+									<reference key="NSMenu" ref="449074099"/>
+									<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="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="873194676">
+									<reference key="NSMenu" ref="449074099"/>
+									<string key="NSTitle">Preferences...</string>
+									<string key="NSKeyEquiv">,</string>
+									<int key="NSKeyEquivModMask">1048576</int>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="661546643">
+									<reference key="NSMenu" ref="449074099"/>
+									<string key="NSTitle">Direct Mode</string>
+									<string key="NSKeyEquiv">d</string>
+									<int key="NSKeyEquivModMask">1048576</int>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="890774057">
+									<reference key="NSMenu" ref="449074099"/>
+									<string key="NSTitle">Import Training Text...</string>
+									<string key="NSKeyEquiv"/>
+									<int key="NSKeyEquivModMask">1048576</int>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="521644777">
+									<reference key="NSMenu" ref="449074099"/>
+									<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="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="961194366">
+									<reference key="NSMenu" ref="449074099"/>
+									<string key="NSTitle">Services</string>
+									<string key="NSKeyEquiv"/>
+									<int key="NSKeyEquivModMask">1048576</int>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+									<string key="NSAction">submenuAction:</string>
+									<object class="NSMenu" key="NSSubmenu" id="584686175">
+										<object class="NSMutableString" key="NSTitle">
+											<characters key="NS.bytes">Services</characters>
+										</object>
+										<object class="NSMutableArray" key="NSMenuItems">
+											<bool key="EncodedWithXMLCoder">YES</bool>
+										</object>
+										<string key="NSName">_NSServicesMenu</string>
+									</object>
+								</object>
+								<object class="NSMenuItem" id="366954395">
+									<reference key="NSMenu" ref="449074099"/>
+									<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="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="961323029">
+									<reference key="NSMenu" ref="449074099"/>
+									<string key="NSTitle">Hide Dasher</string>
+									<string key="NSKeyEquiv">h</string>
+									<int key="NSKeyEquivModMask">1048576</int>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="886037058">
+									<reference key="NSMenu" ref="449074099"/>
+									<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="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="967558012">
+									<reference key="NSMenu" ref="449074099"/>
+									<string key="NSTitle">Show All</string>
+									<string key="NSKeyEquiv"/>
+									<int key="NSKeyEquivModMask">1048576</int>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="276104793">
+									<reference key="NSMenu" ref="449074099"/>
+									<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="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="1019752160">
+									<reference key="NSMenu" ref="449074099"/>
+									<string key="NSTitle">Quit Dasher</string>
+									<string key="NSKeyEquiv">q</string>
+									<int key="NSKeyEquivModMask">1048576</int>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+							</object>
+							<string key="NSName">_NSAppleMenu</string>
+						</object>
+					</object>
+					<object class="NSMenuItem" id="890412385">
+						<reference key="NSMenu" ref="258167094"/>
+						<string key="NSTitle">File</string>
+						<string key="NSKeyEquiv"/>
+						<int key="NSMnemonicLoc">2147483647</int>
+						<reference key="NSOnImage" ref="482857697"/>
+						<reference key="NSMixedImage" ref="552066134"/>
+						<string key="NSAction">submenuAction:</string>
+						<object class="NSMenu" key="NSSubmenu" id="206247208">
+							<string key="NSTitle">File</string>
+							<object class="NSMutableArray" key="NSMenuItems">
+								<bool key="EncodedWithXMLCoder">YES</bool>
+								<object class="NSMenuItem" id="876438146">
+									<reference key="NSMenu" ref="206247208"/>
+									<string key="NSTitle">New</string>
+									<string key="NSKeyEquiv">n</string>
+									<int key="NSKeyEquivModMask">1048576</int>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="917009379">
+									<reference key="NSMenu" ref="206247208"/>
+									<string key="NSTitle">Openâ</string>
+									<string key="NSKeyEquiv">o</string>
+									<int key="NSKeyEquivModMask">1048576</int>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="369989512">
+									<reference key="NSMenu" ref="206247208"/>
+									<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="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="1048935310">
+									<reference key="NSMenu" ref="206247208"/>
+									<string key="NSTitle">Save</string>
+									<string key="NSKeyEquiv">s</string>
+									<int key="NSKeyEquivModMask">1048576</int>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="640913993">
+									<reference key="NSMenu" ref="206247208"/>
+									<string key="NSTitle">Save Asâ</string>
+									<string key="NSKeyEquiv">S</string>
+									<int key="NSKeyEquivModMask">1048576</int>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="404512045">
+									<reference key="NSMenu" ref="206247208"/>
+									<string key="NSTitle">Revert to Saved</string>
+									<string key="NSKeyEquiv"/>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+							</object>
+						</object>
+					</object>
+					<object class="NSMenuItem" id="175069030">
+						<reference key="NSMenu" ref="258167094"/>
+						<string key="NSTitle">Edit</string>
+						<string key="NSKeyEquiv"/>
+						<int key="NSMnemonicLoc">2147483647</int>
+						<reference key="NSOnImage" ref="482857697"/>
+						<reference key="NSMixedImage" ref="552066134"/>
+						<string key="NSAction">submenuAction:</string>
+						<object class="NSMenu" key="NSSubmenu" id="960096799">
+							<string key="NSTitle">Edit</string>
+							<object class="NSMutableArray" key="NSMenuItems">
+								<bool key="EncodedWithXMLCoder">YES</bool>
+								<object class="NSMenuItem" id="682981514">
+									<reference key="NSMenu" ref="960096799"/>
+									<string key="NSTitle">Cut</string>
+									<string key="NSKeyEquiv">x</string>
+									<int key="NSKeyEquivModMask">1048576</int>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="322496368">
+									<reference key="NSMenu" ref="960096799"/>
+									<string key="NSTitle">Copy</string>
+									<string key="NSKeyEquiv">c</string>
+									<int key="NSKeyEquivModMask">1048576</int>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="181327138">
+									<reference key="NSMenu" ref="960096799"/>
+									<string key="NSTitle">Paste</string>
+									<string key="NSKeyEquiv">v</string>
+									<int key="NSKeyEquivModMask">1048576</int>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+								<object class="NSMenuItem" id="402015018">
+									<reference key="NSMenu" ref="960096799"/>
+									<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="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+							</object>
+						</object>
+					</object>
+					<object class="NSMenuItem" id="351121993">
+						<reference key="NSMenu" ref="258167094"/>
+						<string key="NSTitle">View</string>
+						<string key="NSKeyEquiv"/>
+						<int key="NSKeyEquivModMask">1048576</int>
+						<int key="NSMnemonicLoc">2147483647</int>
+						<reference key="NSOnImage" ref="482857697"/>
+						<reference key="NSMixedImage" ref="552066134"/>
+						<string key="NSAction">submenuAction:</string>
+						<object class="NSMenu" key="NSSubmenu" id="343243408">
+							<string key="NSTitle">View</string>
+							<object class="NSMutableArray" key="NSMenuItems">
+								<bool key="EncodedWithXMLCoder">YES</bool>
+								<object class="NSMenuItem" id="94954202">
+									<reference key="NSMenu" ref="343243408"/>
+									<string key="NSTitle">Font</string>
+									<string key="NSKeyEquiv"/>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+									<string key="NSAction">submenuAction:</string>
+									<object class="NSMenu" key="NSSubmenu" id="42064401">
+										<string key="NSTitle">Font</string>
+										<object class="NSMutableArray" key="NSMenuItems">
+											<bool key="EncodedWithXMLCoder">YES</bool>
+											<object class="NSMenuItem" id="709236401">
+												<reference key="NSMenu" ref="42064401"/>
+												<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="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+											</object>
+											<object class="NSMenuItem" id="591600646">
+												<reference key="NSMenu" ref="42064401"/>
+												<string key="NSTitle">Bold</string>
+												<string key="NSKeyEquiv">b</string>
+												<int key="NSKeyEquivModMask">1048576</int>
+												<int key="NSMnemonicLoc">2147483647</int>
+												<reference key="NSOnImage" ref="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+												<int key="NSTag">2</int>
+											</object>
+											<object class="NSMenuItem" id="763043035">
+												<reference key="NSMenu" ref="42064401"/>
+												<string key="NSTitle">Italic</string>
+												<string key="NSKeyEquiv">i</string>
+												<int key="NSKeyEquivModMask">1048576</int>
+												<int key="NSMnemonicLoc">2147483647</int>
+												<reference key="NSOnImage" ref="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+												<int key="NSTag">1</int>
+											</object>
+											<object class="NSMenuItem" id="1067485714">
+												<reference key="NSMenu" ref="42064401"/>
+												<string key="NSTitle">Underline</string>
+												<string key="NSKeyEquiv">u</string>
+												<int key="NSKeyEquivModMask">1048576</int>
+												<int key="NSMnemonicLoc">2147483647</int>
+												<reference key="NSOnImage" ref="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+											</object>
+											<object class="NSMenuItem" id="554521307">
+												<reference key="NSMenu" ref="42064401"/>
+												<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="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+											</object>
+											<object class="NSMenuItem" id="727887990">
+												<reference key="NSMenu" ref="42064401"/>
+												<string key="NSTitle">Bigger</string>
+												<string key="NSKeyEquiv">+</string>
+												<int key="NSKeyEquivModMask">1048576</int>
+												<int key="NSMnemonicLoc">2147483647</int>
+												<reference key="NSOnImage" ref="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+												<int key="NSTag">3</int>
+											</object>
+											<object class="NSMenuItem" id="31194485">
+												<reference key="NSMenu" ref="42064401"/>
+												<string key="NSTitle">Smaller</string>
+												<string key="NSKeyEquiv">-</string>
+												<int key="NSKeyEquivModMask">1048576</int>
+												<int key="NSMnemonicLoc">2147483647</int>
+												<reference key="NSOnImage" ref="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+												<int key="NSTag">4</int>
+											</object>
+											<object class="NSMenuItem" id="716405709">
+												<reference key="NSMenu" ref="42064401"/>
+												<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="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+											</object>
+											<object class="NSMenuItem" id="236015873">
+												<reference key="NSMenu" ref="42064401"/>
+												<string key="NSTitle">Kern</string>
+												<string key="NSKeyEquiv"/>
+												<int key="NSMnemonicLoc">2147483647</int>
+												<reference key="NSOnImage" ref="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+												<string key="NSAction">submenuAction:</string>
+												<object class="NSMenu" key="NSSubmenu" id="727748054">
+													<string key="NSTitle">Kern</string>
+													<object class="NSMutableArray" key="NSMenuItems">
+														<bool key="EncodedWithXMLCoder">YES</bool>
+														<object class="NSMenuItem" id="744761073">
+															<reference key="NSMenu" ref="727748054"/>
+															<string key="NSTitle">Use Default</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+														<object class="NSMenuItem" id="198603781">
+															<reference key="NSMenu" ref="727748054"/>
+															<string key="NSTitle">Use None</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+														<object class="NSMenuItem" id="359110773">
+															<reference key="NSMenu" ref="727748054"/>
+															<string key="NSTitle">Tighten</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+														<object class="NSMenuItem" id="686186712">
+															<reference key="NSMenu" ref="727748054"/>
+															<string key="NSTitle">Loosen</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+													</object>
+												</object>
+											</object>
+											<object class="NSMenuItem" id="795185491">
+												<reference key="NSMenu" ref="42064401"/>
+												<string key="NSTitle">Ligature</string>
+												<string key="NSKeyEquiv"/>
+												<int key="NSMnemonicLoc">2147483647</int>
+												<reference key="NSOnImage" ref="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+												<string key="NSAction">submenuAction:</string>
+												<object class="NSMenu" key="NSSubmenu" id="443850060">
+													<string key="NSTitle">Ligature</string>
+													<object class="NSMutableArray" key="NSMenuItems">
+														<bool key="EncodedWithXMLCoder">YES</bool>
+														<object class="NSMenuItem" id="735099531">
+															<reference key="NSMenu" ref="443850060"/>
+															<string key="NSTitle">Use Default</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+														<object class="NSMenuItem" id="891361609">
+															<reference key="NSMenu" ref="443850060"/>
+															<string key="NSTitle">Use None</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+														<object class="NSMenuItem" id="657649278">
+															<reference key="NSMenu" ref="443850060"/>
+															<string key="NSTitle">Use All</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+													</object>
+												</object>
+											</object>
+											<object class="NSMenuItem" id="991863445">
+												<reference key="NSMenu" ref="42064401"/>
+												<string key="NSTitle">Baseline</string>
+												<string key="NSKeyEquiv"/>
+												<int key="NSMnemonicLoc">2147483647</int>
+												<reference key="NSOnImage" ref="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+												<string key="NSAction">submenuAction:</string>
+												<object class="NSMenu" key="NSSubmenu" id="344386239">
+													<string key="NSTitle">Baseline</string>
+													<object class="NSMutableArray" key="NSMenuItems">
+														<bool key="EncodedWithXMLCoder">YES</bool>
+														<object class="NSMenuItem" id="315391326">
+															<reference key="NSMenu" ref="344386239"/>
+															<string key="NSTitle">Use Default</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+														<object class="NSMenuItem" id="150723472">
+															<reference key="NSMenu" ref="344386239"/>
+															<string key="NSTitle">Superscript</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+														<object class="NSMenuItem" id="63469293">
+															<reference key="NSMenu" ref="344386239"/>
+															<string key="NSTitle">Subscript</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+														<object class="NSMenuItem" id="741882304">
+															<reference key="NSMenu" ref="344386239"/>
+															<string key="NSTitle">Raise</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+														<object class="NSMenuItem" id="601301102">
+															<reference key="NSMenu" ref="344386239"/>
+															<string key="NSTitle">Lower</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+													</object>
+												</object>
+											</object>
+											<object class="NSMenuItem" id="840723130">
+												<reference key="NSMenu" ref="42064401"/>
+												<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="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+											</object>
+											<object class="NSMenuItem" id="79519650">
+												<reference key="NSMenu" ref="42064401"/>
+												<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="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+											</object>
+											<object class="NSMenuItem" id="306494089">
+												<reference key="NSMenu" ref="42064401"/>
+												<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="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+											</object>
+											<object class="NSMenuItem" id="80374930">
+												<reference key="NSMenu" ref="42064401"/>
+												<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="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+											</object>
+											<object class="NSMenuItem" id="367305090">
+												<reference key="NSMenu" ref="42064401"/>
+												<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="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+											</object>
+										</object>
+										<string key="NSName">_NSFontMenu</string>
+									</object>
+								</object>
+								<object class="NSMenuItem" id="75155678">
+									<reference key="NSMenu" ref="343243408"/>
+									<string key="NSTitle">Text</string>
+									<string key="NSKeyEquiv"/>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+									<string key="NSAction">submenuAction:</string>
+									<object class="NSMenu" key="NSSubmenu" id="874034083">
+										<string key="NSTitle">Text</string>
+										<object class="NSMutableArray" key="NSMenuItems">
+											<bool key="EncodedWithXMLCoder">YES</bool>
+											<object class="NSMenuItem" id="75748996">
+												<reference key="NSMenu" ref="874034083"/>
+												<string key="NSTitle">Align Left</string>
+												<string key="NSKeyEquiv">{</string>
+												<int key="NSKeyEquivModMask">1048576</int>
+												<int key="NSMnemonicLoc">2147483647</int>
+												<reference key="NSOnImage" ref="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+											</object>
+											<object class="NSMenuItem" id="621454505">
+												<reference key="NSMenu" ref="874034083"/>
+												<string key="NSTitle">Center</string>
+												<string key="NSKeyEquiv">|</string>
+												<int key="NSKeyEquivModMask">1048576</int>
+												<int key="NSMnemonicLoc">2147483647</int>
+												<reference key="NSOnImage" ref="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+											</object>
+											<object class="NSMenuItem" id="160861194">
+												<reference key="NSMenu" ref="874034083"/>
+												<string key="NSTitle">Justify</string>
+												<string key="NSKeyEquiv"/>
+												<int key="NSMnemonicLoc">2147483647</int>
+												<reference key="NSOnImage" ref="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+											</object>
+											<object class="NSMenuItem" id="604710255">
+												<reference key="NSMenu" ref="874034083"/>
+												<string key="NSTitle">Align Right</string>
+												<string key="NSKeyEquiv">}</string>
+												<int key="NSKeyEquivModMask">1048576</int>
+												<int key="NSMnemonicLoc">2147483647</int>
+												<reference key="NSOnImage" ref="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+											</object>
+											<object class="NSMenuItem" id="1067611442">
+												<reference key="NSMenu" ref="874034083"/>
+												<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="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+											</object>
+											<object class="NSMenuItem" id="799840928">
+												<reference key="NSMenu" ref="874034083"/>
+												<string key="NSTitle">Writing Direction</string>
+												<string key="NSKeyEquiv"/>
+												<int key="NSMnemonicLoc">2147483647</int>
+												<reference key="NSOnImage" ref="482857697"/>
+												<reference key="NSMixedImage" ref="552066134"/>
+												<string key="NSAction">submenuAction:</string>
+												<object class="NSMenu" key="NSSubmenu" id="428152366">
+													<string key="NSTitle">Writing Direction</string>
+													<object class="NSMutableArray" key="NSMenuItems">
+														<bool key="EncodedWithXMLCoder">YES</bool>
+														<object class="NSMenuItem" id="531560381">
+															<reference key="NSMenu" ref="428152366"/>
+															<bool key="NSIsDisabled">YES</bool>
+															<string key="NSTitle">Paragraph</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+														<object class="NSMenuItem" id="1032859623">
+															<reference key="NSMenu" ref="428152366"/>
+															<string type="base64-UTF8" key="NSTitle">CURlZmF1bHQ</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+														<object class="NSMenuItem" id="402082655">
+															<reference key="NSMenu" ref="428152366"/>
+															<string type="base64-UTF8" key="NSTitle">CUxlZnQgdG8gUmlnaHQ</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+														<object class="NSMenuItem" id="537690764">
+															<reference key="NSMenu" ref="428152366"/>
+															<string type="base64-UTF8" key="NSTitle">CVJpZ2h0IHRvIExlZnQ</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+														<object class="NSMenuItem" id="413100895">
+															<reference key="NSMenu" ref="428152366"/>
+															<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="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+														<object class="NSMenuItem" id="799954615">
+															<reference key="NSMenu" ref="428152366"/>
+															<bool key="NSIsDisabled">YES</bool>
+															<string key="NSTitle">Selection</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+														<object class="NSMenuItem" id="687003790">
+															<reference key="NSMenu" ref="428152366"/>
+															<string type="base64-UTF8" key="NSTitle">CURlZmF1bHQ</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+														<object class="NSMenuItem" id="91381868">
+															<reference key="NSMenu" ref="428152366"/>
+															<string type="base64-UTF8" key="NSTitle">CUxlZnQgdG8gUmlnaHQ</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+														<object class="NSMenuItem" id="568884249">
+															<reference key="NSMenu" ref="428152366"/>
+															<string type="base64-UTF8" key="NSTitle">CVJpZ2h0IHRvIExlZnQ</string>
+															<string key="NSKeyEquiv"/>
+															<int key="NSMnemonicLoc">2147483647</int>
+															<reference key="NSOnImage" ref="482857697"/>
+															<reference key="NSMixedImage" ref="552066134"/>
+														</object>
+													</object>
+												</object>
+											</object>
+										</object>
+									</object>
+								</object>
+							</object>
+						</object>
+					</object>
+					<object class="NSMenuItem" id="46722276">
+						<reference key="NSMenu" ref="258167094"/>
+						<string key="NSTitle">Help</string>
+						<string key="NSKeyEquiv"/>
+						<int key="NSKeyEquivModMask">1048576</int>
+						<int key="NSMnemonicLoc">2147483647</int>
+						<reference key="NSOnImage" ref="482857697"/>
+						<reference key="NSMixedImage" ref="552066134"/>
+						<string key="NSAction">submenuAction:</string>
+						<object class="NSMenu" key="NSSubmenu" id="422054752">
+							<string key="NSTitle">Help</string>
+							<object class="NSMutableArray" key="NSMenuItems">
+								<bool key="EncodedWithXMLCoder">YES</bool>
+								<object class="NSMenuItem" id="180343566">
+									<reference key="NSMenu" ref="422054752"/>
+									<string key="NSTitle">Dasher Help</string>
+									<string key="NSKeyEquiv">?</string>
+									<int key="NSKeyEquivModMask">1048576</int>
+									<int key="NSMnemonicLoc">2147483647</int>
+									<reference key="NSOnImage" ref="482857697"/>
+									<reference key="NSMixedImage" ref="552066134"/>
+								</object>
+							</object>
+						</object>
+					</object>
+				</object>
+				<string key="NSName">_NSMainMenu</string>
+			</object>
+			<object class="NSCustomObject" id="814937114">
+				<string key="NSClassName">DasherApp</string>
+			</object>
+			<object class="NSCustomObject" id="222113130">
+				<string key="NSClassName">NSFontManager</string>
+			</object>
+			<object class="NSCustomObject" id="477790726">
+				<string key="NSClassName">AppWatcher</string>
+			</object>
+			<object class="NSObjectController" id="404044439">
+				<object class="NSMutableArray" key="NSDeclaredKeys">
+					<bool key="EncodedWithXMLCoder">YES</bool>
+					<string>apps.items</string>
+					<string>targetAppInfo</string>
+					<string>lockTargetApp</string>
+					<string>apps</string>
+				</object>
+				<bool key="NSEditable">YES</bool>
+				<object class="_NSManagedProxy" key="_NSManagedProxy"/>
+			</object>
+			<object class="NSArrayController" id="352284850">
+				<object class="NSMutableArray" key="NSDeclaredKeys">
+					<bool key="EncodedWithXMLCoder">YES</bool>
+					<string>NSApplicationName</string>
+				</object>
+				<bool key="NSEditable">YES</bool>
+				<object class="_NSManagedProxy" key="_NSManagedProxy"/>
+				<bool key="NSAvoidsEmptySelection">YES</bool>
+				<bool key="NSPreservesSelection">YES</bool>
+				<bool key="NSSelectsInsertedObjects">YES</bool>
+				<bool key="NSFilterRestrictsInsertion">YES</bool>
+			</object>
+			<object class="NSMenu" id="320235117">
+				<string key="NSTitle"/>
+				<object class="NSMutableArray" key="NSMenuItems">
+					<bool key="EncodedWithXMLCoder">YES</bool>
+					<object class="NSMenuItem" id="257147646">
+						<reference key="NSMenu" ref="320235117"/>
+						<string key="NSTitle">Preferences...</string>
+						<string key="NSKeyEquiv"/>
+						<int key="NSKeyEquivModMask">1048576</int>
+						<int key="NSMnemonicLoc">2147483647</int>
+						<reference key="NSOnImage" ref="482857697"/>
+						<reference key="NSMixedImage" ref="552066134"/>
+					</object>
+					<object class="NSMenuItem" id="881221781">
+						<reference key="NSMenu" ref="320235117"/>
+						<string key="NSTitle">Direct Mode</string>
+						<string key="NSKeyEquiv">d</string>
+						<int key="NSKeyEquivModMask">1048576</int>
+						<int key="NSMnemonicLoc">2147483647</int>
+						<reference key="NSOnImage" ref="482857697"/>
+						<reference key="NSMixedImage" ref="552066134"/>
+					</object>
+				</object>
+			</object>
+			<object class="NSUserDefaultsController" id="516574171">
+				<bool key="NSSharedInstance">YES</bool>
+			</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">showHelp:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="180343566"/>
+					</object>
+					<int key="connectionID">122</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">terminate:</string>
+						<reference key="source" ref="217732779"/>
+						<reference key="destination" ref="1019752160"/>
+					</object>
+					<int key="connectionID">139</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">orderFrontStandardAboutPanel:</string>
+						<reference key="source" ref="217732779"/>
+						<reference key="destination" ref="997709799"/>
+					</object>
+					<int key="connectionID">142</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">hideOtherApplications:</string>
+						<reference key="source" ref="217732779"/>
+						<reference key="destination" ref="886037058"/>
+					</object>
+					<int key="connectionID">146</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">hide:</string>
+						<reference key="source" ref="217732779"/>
+						<reference key="destination" ref="961323029"/>
+					</object>
+					<int key="connectionID">152</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">unhideAllApplications:</string>
+						<reference key="source" ref="217732779"/>
+						<reference key="destination" ref="967558012"/>
+					</object>
+					<int key="connectionID">153</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBOutletConnection" key="connection">
+						<string key="label">delegate</string>
+						<reference key="source" ref="217732779"/>
+						<reference key="destination" ref="814937114"/>
+					</object>
+					<int key="connectionID">227</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">showPreferences:</string>
+						<reference key="source" ref="814937114"/>
+						<reference key="destination" ref="873194676"/>
+					</object>
+					<int key="connectionID">390</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBOutletConnection" key="connection">
+						<string key="label">dasherPanelUI</string>
+						<reference key="source" ref="814937114"/>
+						<reference key="destination" ref="350678226"/>
+					</object>
+					<int key="connectionID">480</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBOutletConnection" key="connection">
+						<string key="label">delegate</string>
+						<reference key="source" ref="350678226"/>
+						<reference key="destination" ref="814937114"/>
+					</object>
+					<int key="connectionID">492</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBOutletConnection" key="connection">
+						<string key="label">content</string>
+						<reference key="source" ref="404044439"/>
+						<reference key="destination" ref="477790726"/>
+					</object>
+					<int key="connectionID">502</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBOutletConnection" key="connection">
+						<string key="label">appsController</string>
+						<reference key="source" ref="477790726"/>
+						<reference key="destination" ref="352284850"/>
+					</object>
+					<int key="connectionID">504</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBOutletConnection" key="connection">
+						<string key="label">appWatcher</string>
+						<reference key="source" ref="814937114"/>
+						<reference key="destination" ref="477790726"/>
+					</object>
+					<int key="connectionID">514</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBBindingConnection" key="connection">
+						<string key="label">content: arrangedObjects</string>
+						<reference key="source" ref="179303831"/>
+						<reference key="destination" ref="352284850"/>
+						<object class="NSNibBindingConnector" key="connector" id="222153004">
+							<reference key="NSSource" ref="179303831"/>
+							<reference key="NSDestination" ref="352284850"/>
+							<string key="NSLabel">content: arrangedObjects</string>
+							<string key="NSBinding">content</string>
+							<string key="NSKeyPath">arrangedObjects</string>
+							<object class="NSDictionary" key="NSOptions">
+								<string key="NS.key.0">NSInsertsNullPlaceholder</string>
+								<boolean value="YES" key="NS.object.0"/>
+							</object>
+							<int key="NSNibBindingConnectorVersion">2</int>
+						</object>
+					</object>
+					<int key="connectionID">515</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBBindingConnection" key="connection">
+						<string key="label">contentValues: arrangedObjects.NSApplicationName</string>
+						<reference key="source" ref="179303831"/>
+						<reference key="destination" ref="352284850"/>
+						<object class="NSNibBindingConnector" key="connector" id="894962257">
+							<reference key="NSSource" ref="179303831"/>
+							<reference key="NSDestination" ref="352284850"/>
+							<string key="NSLabel">contentValues: arrangedObjects.NSApplicationName</string>
+							<string key="NSBinding">contentValues</string>
+							<string key="NSKeyPath">arrangedObjects.NSApplicationName</string>
+							<object class="NSDictionary" key="NSOptions">
+								<bool key="EncodedWithXMLCoder">YES</bool>
+								<object class="NSArray" key="dict.sortedKeys">
+									<bool key="EncodedWithXMLCoder">YES</bool>
+									<string>NSInsertsNullPlaceholder</string>
+									<string>NSNullPlaceholder</string>
+								</object>
+								<object class="NSMutableArray" key="dict.values">
+									<bool key="EncodedWithXMLCoder">YES</bool>
+									<boolean value="YES"/>
+									<string>NONE</string>
+								</object>
+							</object>
+							<reference key="NSPreviousConnector" ref="222153004"/>
+							<int key="NSNibBindingConnectorVersion">2</int>
+						</object>
+					</object>
+					<int key="connectionID">518</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBBindingConnection" key="connection">
+						<string key="label">selectedObject: selection.targetAppInfo</string>
+						<reference key="source" ref="179303831"/>
+						<reference key="destination" ref="404044439"/>
+						<object class="NSNibBindingConnector" key="connector">
+							<reference key="NSSource" ref="179303831"/>
+							<reference key="NSDestination" ref="404044439"/>
+							<string key="NSLabel">selectedObject: selection.targetAppInfo</string>
+							<string key="NSBinding">selectedObject</string>
+							<string key="NSKeyPath">selection.targetAppInfo</string>
+							<reference key="NSPreviousConnector" ref="894962257"/>
+							<int key="NSNibBindingConnectorVersion">2</int>
+						</object>
+					</object>
+					<int key="connectionID">519</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBBindingConnection" key="connection">
+						<string key="label">contentArray: selection.apps</string>
+						<reference key="source" ref="352284850"/>
+						<reference key="destination" ref="404044439"/>
+						<object class="NSNibBindingConnector" key="connector">
+							<reference key="NSSource" ref="352284850"/>
+							<reference key="NSDestination" ref="404044439"/>
+							<string key="NSLabel">contentArray: selection.apps</string>
+							<string key="NSBinding">contentArray</string>
+							<string key="NSKeyPath">selection.apps</string>
+							<int key="NSNibBindingConnectorVersion">2</int>
+						</object>
+					</object>
+					<int key="connectionID">520</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBOutletConnection" key="connection">
+						<string key="label">dasherApp</string>
+						<reference key="source" ref="531587681"/>
+						<reference key="destination" ref="814937114"/>
+					</object>
+					<int key="connectionID">522</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBOutletConnection" key="connection">
+						<string key="label">dockMenu</string>
+						<reference key="source" ref="217732779"/>
+						<reference key="destination" ref="320235117"/>
+					</object>
+					<int key="connectionID">530</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">showPreferences:</string>
+						<reference key="source" ref="814937114"/>
+						<reference key="destination" ref="257147646"/>
+					</object>
+					<int key="connectionID">531</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBBindingConnection" key="connection">
+						<string key="label">hidden: directMode</string>
+						<reference key="source" ref="179303831"/>
+						<reference key="destination" ref="814937114"/>
+						<object class="NSNibBindingConnector" key="connector">
+							<reference key="NSSource" ref="179303831"/>
+							<reference key="NSDestination" ref="814937114"/>
+							<string key="NSLabel">hidden: directMode</string>
+							<string key="NSBinding">hidden</string>
+							<string key="NSKeyPath">directMode</string>
+							<object class="NSDictionary" key="NSOptions">
+								<string key="NS.key.0">NSValueTransformerName</string>
+								<string key="NS.object.0">NSNegateBoolean</string>
+							</object>
+							<int key="NSNibBindingConnectorVersion">2</int>
+						</object>
+					</object>
+					<int key="connectionID">559</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBBindingConnection" key="connection">
+						<string key="label">value: directMode</string>
+						<reference key="source" ref="661546643"/>
+						<reference key="destination" ref="814937114"/>
+						<object class="NSNibBindingConnector" key="connector">
+							<reference key="NSSource" ref="661546643"/>
+							<reference key="NSDestination" ref="814937114"/>
+							<string key="NSLabel">value: directMode</string>
+							<string key="NSBinding">value</string>
+							<string key="NSKeyPath">directMode</string>
+							<object class="NSDictionary" key="NSOptions">
+								<bool key="EncodedWithXMLCoder">YES</bool>
+								<object class="NSArray" key="dict.sortedKeys">
+									<bool key="EncodedWithXMLCoder">YES</bool>
+									<string>NSAllowsEditingMultipleValuesSelection</string>
+									<string>NSConditionallySetsEnabled</string>
+									<string>NSValidatesImmediately</string>
+								</object>
+								<object class="NSMutableArray" key="dict.values">
+									<bool key="EncodedWithXMLCoder">YES</bool>
+									<boolean value="NO"/>
+									<boolean value="NO"/>
+									<boolean value="YES"/>
+								</object>
+							</object>
+							<int key="NSNibBindingConnectorVersion">2</int>
+						</object>
+					</object>
+					<int key="connectionID">566</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBBindingConnection" key="connection">
+						<string key="label">value: directMode</string>
+						<reference key="source" ref="881221781"/>
+						<reference key="destination" ref="814937114"/>
+						<object class="NSNibBindingConnector" key="connector">
+							<reference key="NSSource" ref="881221781"/>
+							<reference key="NSDestination" ref="814937114"/>
+							<string key="NSLabel">value: directMode</string>
+							<string key="NSBinding">value</string>
+							<string key="NSKeyPath">directMode</string>
+							<object class="NSDictionary" key="NSOptions">
+								<bool key="EncodedWithXMLCoder">YES</bool>
+								<object class="NSArray" key="dict.sortedKeys">
+									<bool key="EncodedWithXMLCoder">YES</bool>
+									<string>NSAllowsEditingMultipleValuesSelection</string>
+									<string>NSConditionallySetsEnabled</string>
+									<string>NSValidatesImmediately</string>
+								</object>
+								<object class="NSMutableArray" key="dict.values">
+									<bool key="EncodedWithXMLCoder">YES</bool>
+									<boolean value="NO"/>
+									<boolean value="NO"/>
+									<boolean value="YES"/>
+								</object>
+							</object>
+							<int key="NSNibBindingConnectorVersion">2</int>
+						</object>
+					</object>
+					<int key="connectionID">568</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBBindingConnection" key="connection">
+						<string key="label">hidden: directMode</string>
+						<reference key="source" ref="927114913"/>
+						<reference key="destination" ref="814937114"/>
+						<object class="NSNibBindingConnector" key="connector">
+							<reference key="NSSource" ref="927114913"/>
+							<reference key="NSDestination" ref="814937114"/>
+							<string key="NSLabel">hidden: directMode</string>
+							<string key="NSBinding">hidden</string>
+							<string key="NSKeyPath">directMode</string>
+							<int key="NSNibBindingConnectorVersion">2</int>
+						</object>
+					</object>
+					<int key="connectionID">582</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBOutletConnection" key="connection">
+						<string key="label">textView</string>
+						<reference key="source" ref="814937114"/>
+						<reference key="destination" ref="630166701"/>
+					</object>
+					<int key="connectionID">583</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">importTrainingText:</string>
+						<reference key="source" ref="814937114"/>
+						<reference key="destination" ref="890774057"/>
+					</object>
+					<int key="connectionID">764</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">modifyFont:</string>
+						<reference key="source" ref="222113130"/>
+						<reference key="destination" ref="727887990"/>
+					</object>
+					<int key="connectionID">847</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">addFontTrait:</string>
+						<reference key="source" ref="222113130"/>
+						<reference key="destination" ref="763043035"/>
+					</object>
+					<int key="connectionID">848</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">modifyFont:</string>
+						<reference key="source" ref="222113130"/>
+						<reference key="destination" ref="31194485"/>
+					</object>
+					<int key="connectionID">849</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">orderFrontFontPanel:</string>
+						<reference key="source" ref="222113130"/>
+						<reference key="destination" ref="709236401"/>
+					</object>
+					<int key="connectionID">850</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">addFontTrait:</string>
+						<reference key="source" ref="222113130"/>
+						<reference key="destination" ref="591600646"/>
+					</object>
+					<int key="connectionID">851</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">loosenKerning:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="686186712"/>
+					</object>
+					<int key="connectionID">852</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">orderFrontColorPanel:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="79519650"/>
+					</object>
+					<int key="connectionID">853</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">raiseBaseline:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="741882304"/>
+					</object>
+					<int key="connectionID">854</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">underline:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="1067485714"/>
+					</object>
+					<int key="connectionID">855</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">copyFont:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="80374930"/>
+					</object>
+					<int key="connectionID">856</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">lowerBaseline:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="601301102"/>
+					</object>
+					<int key="connectionID">857</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">superscript:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="150723472"/>
+					</object>
+					<int key="connectionID">858</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">pasteFont:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="367305090"/>
+					</object>
+					<int key="connectionID">859</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">subscript:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="63469293"/>
+					</object>
+					<int key="connectionID">860</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">tightenKerning:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="359110773"/>
+					</object>
+					<int key="connectionID">861</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">useAllLigatures:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="657649278"/>
+					</object>
+					<int key="connectionID">862</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">unscript:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="315391326"/>
+					</object>
+					<int key="connectionID">863</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">useStandardKerning:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="744761073"/>
+					</object>
+					<int key="connectionID">864</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">useStandardLigatures:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="735099531"/>
+					</object>
+					<int key="connectionID">865</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">turnOffLigatures:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="891361609"/>
+					</object>
+					<int key="connectionID">866</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">turnOffKerning:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="198603781"/>
+					</object>
+					<int key="connectionID">867</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">alignCenter:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="621454505"/>
+					</object>
+					<int key="connectionID">890</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">alignJustified:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="160861194"/>
+					</object>
+					<int key="connectionID">891</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">alignRight:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="604710255"/>
+					</object>
+					<int key="connectionID">894</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">alignLeft:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="75748996"/>
+					</object>
+					<int key="connectionID">896</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">makeBaseWritingDirectionNatural:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="1032859623"/>
+					</object>
+					<int key="connectionID">897</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">makeBaseWritingDirectionLeftToRight:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="402082655"/>
+					</object>
+					<int key="connectionID">898</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">makeBaseWritingDirectionRightToLeft:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="537690764"/>
+					</object>
+					<int key="connectionID">899</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">makeTextWritingDirectionNatural:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="687003790"/>
+					</object>
+					<int key="connectionID">900</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">makeTextWritingDirectionLeftToRight:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="91381868"/>
+					</object>
+					<int key="connectionID">901</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">makeTextWritingDirectionRightToLeft:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="568884249"/>
+					</object>
+					<int key="connectionID">902</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">copy:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="322496368"/>
+					</object>
+					<int key="connectionID">950</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">cut:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="682981514"/>
+					</object>
+					<int key="connectionID">951</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">paste:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="181327138"/>
+					</object>
+					<int key="connectionID">956</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">selectAll:</string>
+						<reference key="source" ref="388652252"/>
+						<reference key="destination" ref="402015018"/>
+					</object>
+					<int key="connectionID">969</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBOutletConnection" key="connection">
+						<string key="label">dasherApp</string>
+						<reference key="source" ref="630166701"/>
+						<reference key="destination" ref="814937114"/>
+					</object>
+					<int key="connectionID">979</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">newDoc:</string>
+						<reference key="source" ref="814937114"/>
+						<reference key="destination" ref="876438146"/>
+					</object>
+					<int key="connectionID">1006</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">openDoc:</string>
+						<reference key="source" ref="814937114"/>
+						<reference key="destination" ref="917009379"/>
+					</object>
+					<int key="connectionID">1007</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">saveDoc:</string>
+						<reference key="source" ref="814937114"/>
+						<reference key="destination" ref="1048935310"/>
+					</object>
+					<int key="connectionID">1008</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">saveDocAs:</string>
+						<reference key="source" ref="814937114"/>
+						<reference key="destination" ref="640913993"/>
+					</object>
+					<int key="connectionID">1009</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBActionConnection" key="connection">
+						<string key="label">revertToSaved:</string>
+						<reference key="source" ref="814937114"/>
+						<reference key="destination" ref="404512045"/>
+					</object>
+					<int key="connectionID">1010</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBBindingConnection" key="connection">
+						<string key="label">enabled: filename</string>
+						<reference key="source" ref="1048935310"/>
+						<reference key="destination" ref="814937114"/>
+						<object class="NSNibBindingConnector" key="connector">
+							<reference key="NSSource" ref="1048935310"/>
+							<reference key="NSDestination" ref="814937114"/>
+							<string key="NSLabel">enabled: filename</string>
+							<string key="NSBinding">enabled</string>
+							<string key="NSKeyPath">filename</string>
+							<object class="NSDictionary" key="NSOptions">
+								<string key="NS.key.0">NSValueTransformerName</string>
+								<string key="NS.object.0">NSIsNotNil</string>
+							</object>
+							<int key="NSNibBindingConnectorVersion">2</int>
+						</object>
+					</object>
+					<int key="connectionID">1012</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBBindingConnection" key="connection">
+						<string key="label">displayPatternTitle1: filename</string>
+						<reference key="source" ref="350678226"/>
+						<reference key="destination" ref="814937114"/>
+						<object class="NSNibBindingConnector" key="connector">
+							<reference key="NSSource" ref="350678226"/>
+							<reference key="NSDestination" ref="814937114"/>
+							<string key="NSLabel">displayPatternTitle1: filename</string>
+							<string key="NSBinding">displayPatternTitle1</string>
+							<string key="NSKeyPath">filename</string>
+							<object class="NSDictionary" key="NSOptions">
+								<bool key="EncodedWithXMLCoder">YES</bool>
+								<object class="NSArray" key="dict.sortedKeys">
+									<bool key="EncodedWithXMLCoder">YES</bool>
+									<string>NSDisplayPattern</string>
+									<string>NSValueTransformerName</string>
+								</object>
+								<object class="NSMutableArray" key="dict.values">
+									<bool key="EncodedWithXMLCoder">YES</bool>
+									<string>%{title1}@ - Dasher</string>
+									<string>NilToUntitled</string>
+								</object>
+							</object>
+							<int key="NSNibBindingConnectorVersion">2</int>
+						</object>
+					</object>
+					<int key="connectionID">1018</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBBindingConnection" key="connection">
+						<string key="label">documentEdited: modified</string>
+						<reference key="source" ref="350678226"/>
+						<reference key="destination" ref="814937114"/>
+						<object class="NSNibBindingConnector" key="connector">
+							<reference key="NSSource" ref="350678226"/>
+							<reference key="NSDestination" ref="814937114"/>
+							<string key="NSLabel">documentEdited: modified</string>
+							<string key="NSBinding">documentEdited</string>
+							<string key="NSKeyPath">modified</string>
+							<int key="NSNibBindingConnectorVersion">2</int>
+						</object>
+					</object>
+					<int key="connectionID">1020</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBBindingConnection" key="connection">
+						<string key="label">enabled: filename</string>
+						<reference key="source" ref="404512045"/>
+						<reference key="destination" ref="814937114"/>
+						<object class="NSNibBindingConnector" key="connector">
+							<reference key="NSSource" ref="404512045"/>
+							<reference key="NSDestination" ref="814937114"/>
+							<string key="NSLabel">enabled: filename</string>
+							<string key="NSBinding">enabled</string>
+							<string key="NSKeyPath">filename</string>
+							<object class="NSDictionary" key="NSOptions">
+								<string key="NS.key.0">NSValueTransformerName</string>
+								<string key="NS.object.0">NSIsNotNil</string>
+							</object>
+							<int key="NSNibBindingConnectorVersion">2</int>
+						</object>
+					</object>
+					<int key="connectionID">1024</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBBindingConnection" key="connection">
+						<string key="label">enabled: directMode</string>
+						<reference key="source" ref="890412385"/>
+						<reference key="destination" ref="814937114"/>
+						<object class="NSNibBindingConnector" key="connector">
+							<reference key="NSSource" ref="890412385"/>
+							<reference key="NSDestination" ref="814937114"/>
+							<string key="NSLabel">enabled: directMode</string>
+							<string key="NSBinding">enabled</string>
+							<string key="NSKeyPath">directMode</string>
+							<object class="NSDictionary" key="NSOptions">
+								<string key="NS.key.0">NSValueTransformerName</string>
+								<string key="NS.object.0">NSNegateBoolean</string>
+							</object>
+							<int key="NSNibBindingConnectorVersion">2</int>
+						</object>
+					</object>
+					<int key="connectionID">1028</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="139870953"/>
+						<nil key="parent"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">-2</int>
+						<reference key="object" ref="217732779"/>
+						<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="388652252"/>
+						<reference key="parent" ref="0"/>
+						<string key="objectName">First Responder</string>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">-3</int>
+						<reference key="object" ref="915167754"/>
+						<reference key="parent" ref="0"/>
+						<string key="objectName">Application</string>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">21</int>
+						<reference key="object" ref="350678226"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="417172531"/>
+						</object>
+						<reference key="parent" ref="0"/>
+						<string key="objectName">Window</string>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">2</int>
+						<reference key="object" ref="417172531"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="179303831"/>
+							<reference ref="531587681"/>
+							<reference ref="927114913"/>
+						</object>
+						<reference key="parent" ref="350678226"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">493</int>
+						<reference key="object" ref="179303831"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="840328209"/>
+						</object>
+						<reference key="parent" ref="417172531"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">521</int>
+						<reference key="object" ref="531587681"/>
+						<reference key="parent" ref="417172531"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">29</int>
+						<reference key="object" ref="258167094"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="270706303"/>
+							<reference ref="46722276"/>
+							<reference ref="351121993"/>
+							<reference ref="175069030"/>
+							<reference ref="890412385"/>
+						</object>
+						<reference key="parent" ref="0"/>
+						<string key="objectName">MainMenu</string>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">56</int>
+						<reference key="object" ref="270706303"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="449074099"/>
+						</object>
+						<reference key="parent" ref="258167094"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">57</int>
+						<reference key="object" ref="449074099"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="997709799"/>
+							<reference ref="873194676"/>
+							<reference ref="961194366"/>
+							<reference ref="961323029"/>
+							<reference ref="1019752160"/>
+							<reference ref="521644777"/>
+							<reference ref="366954395"/>
+							<reference ref="886037058"/>
+							<reference ref="276104793"/>
+							<reference ref="967558012"/>
+							<reference ref="701985345"/>
+							<reference ref="661546643"/>
+							<reference ref="890774057"/>
+						</object>
+						<reference key="parent" ref="270706303"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">58</int>
+						<reference key="object" ref="997709799"/>
+						<reference key="parent" ref="449074099"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">129</int>
+						<reference key="object" ref="873194676"/>
+						<reference key="parent" ref="449074099"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">131</int>
+						<reference key="object" ref="961194366"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="584686175"/>
+						</object>
+						<reference key="parent" ref="449074099"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">130</int>
+						<reference key="object" ref="584686175"/>
+						<reference key="parent" ref="961194366"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">134</int>
+						<reference key="object" ref="961323029"/>
+						<reference key="parent" ref="449074099"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">136</int>
+						<reference key="object" ref="1019752160"/>
+						<reference key="parent" ref="449074099"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">143</int>
+						<reference key="object" ref="521644777"/>
+						<reference key="parent" ref="449074099"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">144</int>
+						<reference key="object" ref="366954395"/>
+						<reference key="parent" ref="449074099"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">145</int>
+						<reference key="object" ref="886037058"/>
+						<reference key="parent" ref="449074099"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">149</int>
+						<reference key="object" ref="276104793"/>
+						<reference key="parent" ref="449074099"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">150</int>
+						<reference key="object" ref="967558012"/>
+						<reference key="parent" ref="449074099"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">196</int>
+						<reference key="object" ref="701985345"/>
+						<reference key="parent" ref="449074099"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">103</int>
+						<reference key="object" ref="46722276"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="422054752"/>
+						</object>
+						<reference key="parent" ref="258167094"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">106</int>
+						<reference key="object" ref="422054752"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="180343566"/>
+						</object>
+						<reference key="parent" ref="46722276"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">111</int>
+						<reference key="object" ref="180343566"/>
+						<reference key="parent" ref="422054752"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">226</int>
+						<reference key="object" ref="814937114"/>
+						<reference key="parent" ref="0"/>
+						<string key="objectName">DasherApp</string>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">438</int>
+						<reference key="object" ref="222113130"/>
+						<reference key="parent" ref="0"/>
+						<string key="objectName">Font Manager</string>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">499</int>
+						<reference key="object" ref="477790726"/>
+						<reference key="parent" ref="0"/>
+						<string key="objectName">AppWatcher</string>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">500</int>
+						<reference key="object" ref="404044439"/>
+						<reference key="parent" ref="0"/>
+						<string key="objectName">Object Controller</string>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">503</int>
+						<reference key="object" ref="352284850"/>
+						<reference key="parent" ref="0"/>
+						<string key="objectName">Array Controller</string>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">526</int>
+						<reference key="object" ref="320235117"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="257147646"/>
+							<reference ref="881221781"/>
+						</object>
+						<reference key="parent" ref="0"/>
+						<string key="objectName">Menu</string>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">527</int>
+						<reference key="object" ref="257147646"/>
+						<reference key="parent" ref="320235117"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">534</int>
+						<reference key="object" ref="840328209"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="34995641"/>
+						</object>
+						<reference key="parent" ref="179303831"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">496</int>
+						<reference key="object" ref="34995641"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="1058730312"/>
+							<reference ref="625953320"/>
+							<reference ref="396979410"/>
+						</object>
+						<reference key="parent" ref="840328209"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">497</int>
+						<reference key="object" ref="1058730312"/>
+						<reference key="parent" ref="34995641"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">495</int>
+						<reference key="object" ref="625953320"/>
+						<reference key="parent" ref="34995641"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">494</int>
+						<reference key="object" ref="396979410"/>
+						<reference key="parent" ref="34995641"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">536</int>
+						<reference key="object" ref="661546643"/>
+						<reference key="parent" ref="449074099"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">540</int>
+						<reference key="object" ref="516574171"/>
+						<reference key="parent" ref="0"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">567</int>
+						<reference key="object" ref="881221781"/>
+						<reference key="parent" ref="320235117"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">578</int>
+						<reference key="object" ref="927114913"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="772493981"/>
+							<reference ref="952670276"/>
+							<reference ref="630166701"/>
+						</object>
+						<reference key="parent" ref="417172531"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">579</int>
+						<reference key="object" ref="772493981"/>
+						<reference key="parent" ref="927114913"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">580</int>
+						<reference key="object" ref="952670276"/>
+						<reference key="parent" ref="927114913"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">581</int>
+						<reference key="object" ref="630166701"/>
+						<reference key="parent" ref="927114913"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">763</int>
+						<reference key="object" ref="890774057"/>
+						<reference key="parent" ref="449074099"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">767</int>
+						<reference key="object" ref="351121993"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="343243408"/>
+						</object>
+						<reference key="parent" ref="258167094"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">768</int>
+						<reference key="object" ref="343243408"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="94954202"/>
+							<reference ref="75155678"/>
+						</object>
+						<reference key="parent" ref="351121993"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">814</int>
+						<reference key="object" ref="94954202"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="42064401"/>
+						</object>
+						<reference key="parent" ref="343243408"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">815</int>
+						<reference key="object" ref="42064401"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="709236401"/>
+							<reference ref="591600646"/>
+							<reference ref="763043035"/>
+							<reference ref="1067485714"/>
+							<reference ref="554521307"/>
+							<reference ref="727887990"/>
+							<reference ref="31194485"/>
+							<reference ref="716405709"/>
+							<reference ref="236015873"/>
+							<reference ref="795185491"/>
+							<reference ref="991863445"/>
+							<reference ref="840723130"/>
+							<reference ref="79519650"/>
+							<reference ref="306494089"/>
+							<reference ref="80374930"/>
+							<reference ref="367305090"/>
+						</object>
+						<reference key="parent" ref="94954202"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">816</int>
+						<reference key="object" ref="709236401"/>
+						<reference key="parent" ref="42064401"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">817</int>
+						<reference key="object" ref="591600646"/>
+						<reference key="parent" ref="42064401"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">818</int>
+						<reference key="object" ref="763043035"/>
+						<reference key="parent" ref="42064401"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">819</int>
+						<reference key="object" ref="1067485714"/>
+						<reference key="parent" ref="42064401"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">820</int>
+						<reference key="object" ref="554521307"/>
+						<reference key="parent" ref="42064401"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">821</int>
+						<reference key="object" ref="727887990"/>
+						<reference key="parent" ref="42064401"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">822</int>
+						<reference key="object" ref="31194485"/>
+						<reference key="parent" ref="42064401"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">823</int>
+						<reference key="object" ref="716405709"/>
+						<reference key="parent" ref="42064401"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">824</int>
+						<reference key="object" ref="236015873"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="727748054"/>
+						</object>
+						<reference key="parent" ref="42064401"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">825</int>
+						<reference key="object" ref="795185491"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="443850060"/>
+						</object>
+						<reference key="parent" ref="42064401"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">826</int>
+						<reference key="object" ref="991863445"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="344386239"/>
+						</object>
+						<reference key="parent" ref="42064401"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">827</int>
+						<reference key="object" ref="840723130"/>
+						<reference key="parent" ref="42064401"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">828</int>
+						<reference key="object" ref="79519650"/>
+						<reference key="parent" ref="42064401"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">829</int>
+						<reference key="object" ref="306494089"/>
+						<reference key="parent" ref="42064401"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">830</int>
+						<reference key="object" ref="80374930"/>
+						<reference key="parent" ref="42064401"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">831</int>
+						<reference key="object" ref="367305090"/>
+						<reference key="parent" ref="42064401"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">832</int>
+						<reference key="object" ref="344386239"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="315391326"/>
+							<reference ref="150723472"/>
+							<reference ref="63469293"/>
+							<reference ref="741882304"/>
+							<reference ref="601301102"/>
+						</object>
+						<reference key="parent" ref="991863445"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">833</int>
+						<reference key="object" ref="315391326"/>
+						<reference key="parent" ref="344386239"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">834</int>
+						<reference key="object" ref="150723472"/>
+						<reference key="parent" ref="344386239"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">835</int>
+						<reference key="object" ref="63469293"/>
+						<reference key="parent" ref="344386239"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">836</int>
+						<reference key="object" ref="741882304"/>
+						<reference key="parent" ref="344386239"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">837</int>
+						<reference key="object" ref="601301102"/>
+						<reference key="parent" ref="344386239"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">838</int>
+						<reference key="object" ref="443850060"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="735099531"/>
+							<reference ref="891361609"/>
+							<reference ref="657649278"/>
+						</object>
+						<reference key="parent" ref="795185491"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">839</int>
+						<reference key="object" ref="735099531"/>
+						<reference key="parent" ref="443850060"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">840</int>
+						<reference key="object" ref="891361609"/>
+						<reference key="parent" ref="443850060"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">841</int>
+						<reference key="object" ref="657649278"/>
+						<reference key="parent" ref="443850060"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">842</int>
+						<reference key="object" ref="727748054"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="744761073"/>
+							<reference ref="198603781"/>
+							<reference ref="359110773"/>
+							<reference ref="686186712"/>
+						</object>
+						<reference key="parent" ref="236015873"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">843</int>
+						<reference key="object" ref="744761073"/>
+						<reference key="parent" ref="727748054"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">844</int>
+						<reference key="object" ref="198603781"/>
+						<reference key="parent" ref="727748054"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">845</int>
+						<reference key="object" ref="359110773"/>
+						<reference key="parent" ref="727748054"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">846</int>
+						<reference key="object" ref="686186712"/>
+						<reference key="parent" ref="727748054"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">868</int>
+						<reference key="object" ref="75155678"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="874034083"/>
+						</object>
+						<reference key="parent" ref="343243408"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">869</int>
+						<reference key="object" ref="874034083"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="75748996"/>
+							<reference ref="621454505"/>
+							<reference ref="160861194"/>
+							<reference ref="604710255"/>
+							<reference ref="1067611442"/>
+							<reference ref="799840928"/>
+						</object>
+						<reference key="parent" ref="75155678"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">870</int>
+						<reference key="object" ref="75748996"/>
+						<reference key="parent" ref="874034083"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">871</int>
+						<reference key="object" ref="621454505"/>
+						<reference key="parent" ref="874034083"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">872</int>
+						<reference key="object" ref="160861194"/>
+						<reference key="parent" ref="874034083"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">873</int>
+						<reference key="object" ref="604710255"/>
+						<reference key="parent" ref="874034083"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">874</int>
+						<reference key="object" ref="1067611442"/>
+						<reference key="parent" ref="874034083"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">875</int>
+						<reference key="object" ref="799840928"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="428152366"/>
+						</object>
+						<reference key="parent" ref="874034083"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">880</int>
+						<reference key="object" ref="428152366"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="531560381"/>
+							<reference ref="1032859623"/>
+							<reference ref="402082655"/>
+							<reference ref="537690764"/>
+							<reference ref="413100895"/>
+							<reference ref="799954615"/>
+							<reference ref="687003790"/>
+							<reference ref="91381868"/>
+							<reference ref="568884249"/>
+						</object>
+						<reference key="parent" ref="799840928"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">881</int>
+						<reference key="object" ref="531560381"/>
+						<reference key="parent" ref="428152366"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">882</int>
+						<reference key="object" ref="1032859623"/>
+						<reference key="parent" ref="428152366"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">883</int>
+						<reference key="object" ref="402082655"/>
+						<reference key="parent" ref="428152366"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">884</int>
+						<reference key="object" ref="537690764"/>
+						<reference key="parent" ref="428152366"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">885</int>
+						<reference key="object" ref="413100895"/>
+						<reference key="parent" ref="428152366"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">886</int>
+						<reference key="object" ref="799954615"/>
+						<reference key="parent" ref="428152366"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">887</int>
+						<reference key="object" ref="687003790"/>
+						<reference key="parent" ref="428152366"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">888</int>
+						<reference key="object" ref="91381868"/>
+						<reference key="parent" ref="428152366"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">889</int>
+						<reference key="object" ref="568884249"/>
+						<reference key="parent" ref="428152366"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">903</int>
+						<reference key="object" ref="175069030"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="960096799"/>
+						</object>
+						<reference key="parent" ref="258167094"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">904</int>
+						<reference key="object" ref="960096799"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="682981514"/>
+							<reference ref="322496368"/>
+							<reference ref="181327138"/>
+							<reference ref="402015018"/>
+						</object>
+						<reference key="parent" ref="175069030"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">908</int>
+						<reference key="object" ref="682981514"/>
+						<reference key="parent" ref="960096799"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">909</int>
+						<reference key="object" ref="322496368"/>
+						<reference key="parent" ref="960096799"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">910</int>
+						<reference key="object" ref="181327138"/>
+						<reference key="parent" ref="960096799"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">913</int>
+						<reference key="object" ref="402015018"/>
+						<reference key="parent" ref="960096799"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">980</int>
+						<reference key="object" ref="890412385"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="206247208"/>
+						</object>
+						<reference key="parent" ref="258167094"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">981</int>
+						<reference key="object" ref="206247208"/>
+						<object class="NSMutableArray" key="children">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<reference ref="876438146"/>
+							<reference ref="917009379"/>
+							<reference ref="369989512"/>
+							<reference ref="1048935310"/>
+							<reference ref="640913993"/>
+							<reference ref="404512045"/>
+						</object>
+						<reference key="parent" ref="890412385"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">982</int>
+						<reference key="object" ref="876438146"/>
+						<reference key="parent" ref="206247208"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">983</int>
+						<reference key="object" ref="917009379"/>
+						<reference key="parent" ref="206247208"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">985</int>
+						<reference key="object" ref="369989512"/>
+						<reference key="parent" ref="206247208"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">987</int>
+						<reference key="object" ref="1048935310"/>
+						<reference key="parent" ref="206247208"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">988</int>
+						<reference key="object" ref="640913993"/>
+						<reference key="parent" ref="206247208"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">989</int>
+						<reference key="object" ref="404512045"/>
+						<reference key="parent" ref="206247208"/>
+					</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>-3.ImportedFromIB2</string>
+					<string>103.IBPluginDependency</string>
+					<string>103.ImportedFromIB2</string>
+					<string>106.IBEditorWindowLastContentRect</string>
+					<string>106.IBPluginDependency</string>
+					<string>106.ImportedFromIB2</string>
+					<string>111.IBPluginDependency</string>
+					<string>111.ImportedFromIB2</string>
+					<string>129.IBPluginDependency</string>
+					<string>129.ImportedFromIB2</string>
+					<string>130.IBPluginDependency</string>
+					<string>130.ImportedFromIB2</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>196.IBPluginDependency</string>
+					<string>196.ImportedFromIB2</string>
+					<string>2.IBPluginDependency</string>
+					<string>2.ImportedFromIB2</string>
+					<string>21.IBEditorWindowLastContentRect</string>
+					<string>21.IBPluginDependency</string>
+					<string>21.IBWindowTemplateEditedContentRect</string>
+					<string>21.ImportedFromIB2</string>
+					<string>21.NSWindowTemplate.visibleAtLaunch</string>
+					<string>21.windowTemplate.hasMinSize</string>
+					<string>21.windowTemplate.minSize</string>
+					<string>226.ImportedFromIB2</string>
+					<string>29.IBEditorWindowLastContentRect</string>
+					<string>29.IBPluginDependency</string>
+					<string>29.ImportedFromIB2</string>
+					<string>438.ImportedFromIB2</string>
+					<string>493.IBPluginDependency</string>
+					<string>493.ImportedFromIB2</string>
+					<string>494.IBPluginDependency</string>
+					<string>494.ImportedFromIB2</string>
+					<string>495.IBPluginDependency</string>
+					<string>495.ImportedFromIB2</string>
+					<string>496.IBPluginDependency</string>
+					<string>496.ImportedFromIB2</string>
+					<string>497.IBPluginDependency</string>
+					<string>497.ImportedFromIB2</string>
+					<string>499.ImportedFromIB2</string>
+					<string>500.IBPluginDependency</string>
+					<string>500.ImportedFromIB2</string>
+					<string>503.IBPluginDependency</string>
+					<string>503.ImportedFromIB2</string>
+					<string>521.IBPluginDependency</string>
+					<string>521.ImportedFromIB2</string>
+					<string>526.IBEditorWindowLastContentRect</string>
+					<string>526.IBPluginDependency</string>
+					<string>526.ImportedFromIB2</string>
+					<string>527.IBPluginDependency</string>
+					<string>527.ImportedFromIB2</string>
+					<string>536.IBPluginDependency</string>
+					<string>536.ImportedFromIB2</string>
+					<string>56.IBPluginDependency</string>
+					<string>56.ImportedFromIB2</string>
+					<string>567.IBPluginDependency</string>
+					<string>567.ImportedFromIB2</string>
+					<string>57.IBEditorWindowLastContentRect</string>
+					<string>57.IBPluginDependency</string>
+					<string>57.ImportedFromIB2</string>
+					<string>578.IBPluginDependency</string>
+					<string>579.IBPluginDependency</string>
+					<string>58.IBPluginDependency</string>
+					<string>58.ImportedFromIB2</string>
+					<string>580.IBPluginDependency</string>
+					<string>581.CustomClassName</string>
+					<string>581.IBPluginDependency</string>
+					<string>763.IBPluginDependency</string>
+					<string>763.ImportedFromIB2</string>
+					<string>767.IBPluginDependency</string>
+					<string>767.ImportedFromIB2</string>
+					<string>768.IBEditorWindowLastContentRect</string>
+					<string>768.IBPluginDependency</string>
+					<string>768.ImportedFromIB2</string>
+					<string>768.editorWindowContentRectSynchronizationRect</string>
+					<string>814.IBPluginDependency</string>
+					<string>815.IBEditorWindowLastContentRect</string>
+					<string>815.IBPluginDependency</string>
+					<string>816.IBPluginDependency</string>
+					<string>817.IBPluginDependency</string>
+					<string>818.IBPluginDependency</string>
+					<string>819.IBPluginDependency</string>
+					<string>820.IBPluginDependency</string>
+					<string>821.IBPluginDependency</string>
+					<string>822.IBPluginDependency</string>
+					<string>823.IBPluginDependency</string>
+					<string>824.IBPluginDependency</string>
+					<string>825.IBPluginDependency</string>
+					<string>826.IBPluginDependency</string>
+					<string>827.IBPluginDependency</string>
+					<string>828.IBPluginDependency</string>
+					<string>829.IBPluginDependency</string>
+					<string>830.IBPluginDependency</string>
+					<string>831.IBPluginDependency</string>
+					<string>832.IBPluginDependency</string>
+					<string>833.IBPluginDependency</string>
+					<string>834.IBPluginDependency</string>
+					<string>835.IBPluginDependency</string>
+					<string>836.IBPluginDependency</string>
+					<string>837.IBPluginDependency</string>
+					<string>838.IBPluginDependency</string>
+					<string>839.IBPluginDependency</string>
+					<string>840.IBPluginDependency</string>
+					<string>841.IBPluginDependency</string>
+					<string>842.IBEditorWindowLastContentRect</string>
+					<string>842.IBPluginDependency</string>
+					<string>843.IBPluginDependency</string>
+					<string>844.IBPluginDependency</string>
+					<string>845.IBPluginDependency</string>
+					<string>846.IBPluginDependency</string>
+					<string>868.IBPluginDependency</string>
+					<string>869.IBEditorWindowLastContentRect</string>
+					<string>869.IBPluginDependency</string>
+					<string>870.IBPluginDependency</string>
+					<string>871.IBPluginDependency</string>
+					<string>872.IBPluginDependency</string>
+					<string>873.IBPluginDependency</string>
+					<string>874.IBPluginDependency</string>
+					<string>875.IBPluginDependency</string>
+					<string>880.IBPluginDependency</string>
+					<string>881.IBPluginDependency</string>
+					<string>882.IBPluginDependency</string>
+					<string>883.IBPluginDependency</string>
+					<string>884.IBPluginDependency</string>
+					<string>885.IBPluginDependency</string>
+					<string>886.IBPluginDependency</string>
+					<string>887.IBPluginDependency</string>
+					<string>888.IBPluginDependency</string>
+					<string>889.IBPluginDependency</string>
+					<string>903.IBPluginDependency</string>
+					<string>904.IBEditorWindowLastContentRect</string>
+					<string>904.IBPluginDependency</string>
+					<string>908.IBPluginDependency</string>
+					<string>909.IBPluginDependency</string>
+					<string>910.IBPluginDependency</string>
+					<string>913.IBPluginDependency</string>
+					<string>980.IBPluginDependency</string>
+					<string>981.IBEditorWindowLastContentRect</string>
+					<string>981.IBPluginDependency</string>
+					<string>982.IBPluginDependency</string>
+					<string>983.IBPluginDependency</string>
+					<string>985.IBPluginDependency</string>
+					<string>987.IBPluginDependency</string>
+					<string>988.IBPluginDependency</string>
+					<string>989.IBPluginDependency</string>
+				</object>
+				<object class="NSMutableArray" key="dict.values">
+					<bool key="EncodedWithXMLCoder">YES</bool>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>{{316, 638}, {154, 23}}</string>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>{{4, 166}, {398, 357}}</string>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<string>{{4, 166}, {398, 357}}</string>
+					<boolean value="YES"/>
+					<boolean value="YES"/>
+					<boolean value="YES"/>
+					<string>{112, 50}</string>
+					<boolean value="YES"/>
+					<string>{{98, 661}, {279, 20}}</string>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>{{0, 680}, {168, 43}}</string>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>{{110, 438}, {245, 223}}</string>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<string>DasherTextView</string>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<boolean value="YES"/>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<integer value="1"/>
+					<string>{{266, 618}, {83, 43}}</string>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<integer value="1"/>
+					<string>{{197, 734}, {243, 243}}</string>
+					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+					<string>{{349, 378}, {175, 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>{{524, 438}, {131, 83}}</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>{{349, 528}, {186, 113}}</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>{{222, 578}, {137, 83}}</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>{{180, 548}, {195, 113}}</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>
+				</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">1028</int>
+		</object>
+		<object class="IBClassDescriber" key="IBDocument.Classes">
+			<object class="NSMutableArray" key="referencedPartialClassDescriptions">
+				<bool key="EncodedWithXMLCoder">YES</bool>
+				<object class="IBPartialClassDescription">
+					<string key="className">AppWatcher</string>
+					<string key="superclassName">NSObject</string>
+					<object class="NSMutableDictionary" key="outlets">
+						<string key="NS.key.0">appsController</string>
+						<string key="NS.object.0">NSArrayController</string>
+					</object>
+					<object class="NSMutableDictionary" key="toOneOutletInfosByName">
+						<string key="NS.key.0">appsController</string>
+						<object class="IBToOneOutletInfo" key="NS.object.0">
+							<string key="name">appsController</string>
+							<string key="candidateClassName">NSArrayController</string>
+						</object>
+					</object>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBProjectSource</string>
+						<string key="minorKey">AppWatcher.h</string>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">AppWatcher</string>
+					<string key="superclassName">NSObject</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBUserSource</string>
+						<string key="minorKey"/>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">DasherApp</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>importTrainingText:</string>
+							<string>newDoc:</string>
+							<string>openDoc:</string>
+							<string>revertToSaved:</string>
+							<string>saveDoc:</string>
+							<string>saveDocAs:</string>
+							<string>showPreferences:</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>
+							<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>importTrainingText:</string>
+							<string>newDoc:</string>
+							<string>openDoc:</string>
+							<string>revertToSaved:</string>
+							<string>saveDoc:</string>
+							<string>saveDocAs:</string>
+							<string>showPreferences:</string>
+						</object>
+						<object class="NSMutableArray" key="dict.values">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<object class="IBActionInfo">
+								<string key="name">importTrainingText:</string>
+								<string key="candidateClassName">id</string>
+							</object>
+							<object class="IBActionInfo">
+								<string key="name">newDoc:</string>
+								<string key="candidateClassName">id</string>
+							</object>
+							<object class="IBActionInfo">
+								<string key="name">openDoc:</string>
+								<string key="candidateClassName">id</string>
+							</object>
+							<object class="IBActionInfo">
+								<string key="name">revertToSaved:</string>
+								<string key="candidateClassName">id</string>
+							</object>
+							<object class="IBActionInfo">
+								<string key="name">saveDoc:</string>
+								<string key="candidateClassName">id</string>
+							</object>
+							<object class="IBActionInfo">
+								<string key="name">saveDocAs:</string>
+								<string key="candidateClassName">id</string>
+							</object>
+							<object class="IBActionInfo">
+								<string key="name">showPreferences:</string>
+								<string key="candidateClassName">id</string>
+							</object>
+						</object>
+					</object>
+					<object class="NSMutableDictionary" key="outlets">
+						<bool key="EncodedWithXMLCoder">YES</bool>
+						<object class="NSArray" key="dict.sortedKeys">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<string>appWatcher</string>
+							<string>dasherPanelUI</string>
+							<string>dasherView</string>
+							<string>textView</string>
+						</object>
+						<object class="NSMutableArray" key="dict.values">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<string>AppWatcher</string>
+							<string>NSWindow</string>
+							<string>id</string>
+							<string>DasherTextView</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>appWatcher</string>
+							<string>dasherPanelUI</string>
+							<string>dasherView</string>
+							<string>textView</string>
+						</object>
+						<object class="NSMutableArray" key="dict.values">
+							<bool key="EncodedWithXMLCoder">YES</bool>
+							<object class="IBToOneOutletInfo">
+								<string key="name">appWatcher</string>
+								<string key="candidateClassName">AppWatcher</string>
+							</object>
+							<object class="IBToOneOutletInfo">
+								<string key="name">dasherPanelUI</string>
+								<string key="candidateClassName">NSWindow</string>
+							</object>
+							<object class="IBToOneOutletInfo">
+								<string key="name">dasherView</string>
+								<string key="candidateClassName">id</string>
+							</object>
+							<object class="IBToOneOutletInfo">
+								<string key="name">textView</string>
+								<string key="candidateClassName">DasherTextView</string>
+							</object>
+						</object>
+					</object>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBProjectSource</string>
+						<string key="minorKey">DasherApp.h</string>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">DasherApp</string>
+					<string key="superclassName">NSObject</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBUserSource</string>
+						<string key="minorKey"/>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">DasherTextView</string>
+					<string key="superclassName">NSTextView</string>
+					<object class="NSMutableDictionary" key="outlets">
+						<string key="NS.key.0">dasherApp</string>
+						<string key="NS.object.0">DasherApp</string>
+					</object>
+					<object class="NSMutableDictionary" key="toOneOutletInfosByName">
+						<string key="NS.key.0">dasherApp</string>
+						<object class="IBToOneOutletInfo" key="NS.object.0">
+							<string key="name">dasherApp</string>
+							<string key="candidateClassName">DasherApp</string>
+						</object>
+					</object>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBProjectSource</string>
+						<string key="minorKey">DasherTextView.h</string>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">DasherViewOpenGL</string>
+					<string key="superclassName">NSOpenGLView</string>
+					<object class="NSMutableDictionary" key="outlets">
+						<string key="NS.key.0">dasherApp</string>
+						<string key="NS.object.0">DasherApp</string>
+					</object>
+					<object class="NSMutableDictionary" key="toOneOutletInfosByName">
+						<string key="NS.key.0">dasherApp</string>
+						<object class="IBToOneOutletInfo" key="NS.object.0">
+							<string key="name">dasherApp</string>
+							<string key="candidateClassName">DasherApp</string>
+						</object>
+					</object>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBProjectSource</string>
+						<string key="minorKey">DasherViewOpenGL.h</string>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">DasherViewOpenGL</string>
+					<string key="superclassName">NSOpenGLView</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBUserSource</string>
+						<string key="minorKey"/>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">FirstResponder</string>
+					<string key="superclassName">NSObject</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBUserSource</string>
+						<string key="minorKey"/>
+					</object>
+				</object>
+			</object>
+			<object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
+				<bool key="EncodedWithXMLCoder">YES</bool>
+				<object class="IBPartialClassDescription">
+					<string key="className">NSActionCell</string>
+					<string key="superclassName">NSCell</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBFrameworkSource</string>
+						<string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">NSApplication</string>
+					<string key="superclassName">NSResponder</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier" id="109692337">
+						<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="519767509">
+						<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="138172701">
+						<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">NSArrayController</string>
+					<string key="superclassName">NSObjectController</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBFrameworkSource</string>
+						<string key="minorKey">AppKit.framework/Headers/NSArrayController.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">NSButton</string>
+					<string key="superclassName">NSControl</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBFrameworkSource</string>
+						<string key="minorKey">AppKit.framework/Headers/NSButton.h</string>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">NSButtonCell</string>
+					<string key="superclassName">NSActionCell</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBFrameworkSource</string>
+						<string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">NSCell</string>
+					<string key="superclassName">NSObject</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBFrameworkSource</string>
+						<string key="minorKey">AppKit.framework/Headers/NSCell.h</string>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">NSControl</string>
+					<string key="superclassName">NSView</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier" id="64113082">
+						<string key="majorKey">IBFrameworkSource</string>
+						<string key="minorKey">AppKit.framework/Headers/NSControl.h</string>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">NSController</string>
+					<string key="superclassName">NSObject</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBFrameworkSource</string>
+						<string key="minorKey">AppKit.framework/Headers/NSController.h</string>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">NSFontManager</string>
+					<string key="superclassName">NSObject</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier" id="319218362">
+						<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="488847929">
+						<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="468156521">
+						<string key="majorKey">IBFrameworkSource</string>
+						<string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">NSMenuItemCell</string>
+					<string key="superclassName">NSButtonCell</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBFrameworkSource</string>
+						<string key="minorKey">AppKit.framework/Headers/NSMenuItemCell.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="109692337"/>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">NSObject</string>
+					<reference key="sourceIdentifier" ref="519767509"/>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">NSObject</string>
+					<reference key="sourceIdentifier" ref="138172701"/>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">NSObject</string>
+					<reference key="sourceIdentifier" ref="64113082"/>
+				</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="319218362"/>
+				</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="488847929"/>
+				</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="383092978">
+						<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="797006090">
+						<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">NSObject</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBFrameworkSource</string>
+						<string key="minorKey">PrintCore.framework/Headers/PDEPluginInterface.h</string>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">NSObjectController</string>
+					<string key="superclassName">NSController</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBFrameworkSource</string>
+						<string key="minorKey">AppKit.framework/Headers/NSObjectController.h</string>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">NSOpenGLView</string>
+					<string key="superclassName">NSView</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBFrameworkSource</string>
+						<string key="minorKey">AppKit.framework/Headers/NSOpenGLView.h</string>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">NSPopUpButton</string>
+					<string key="superclassName">NSButton</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBFrameworkSource</string>
+						<string key="minorKey">AppKit.framework/Headers/NSPopUpButton.h</string>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">NSPopUpButtonCell</string>
+					<string key="superclassName">NSMenuItemCell</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBFrameworkSource</string>
+						<string key="minorKey">AppKit.framework/Headers/NSPopUpButtonCell.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">NSScrollView</string>
+					<string key="superclassName">NSView</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBFrameworkSource</string>
+						<string key="minorKey">AppKit.framework/Headers/NSScrollView.h</string>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">NSScroller</string>
+					<string key="superclassName">NSControl</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBFrameworkSource</string>
+						<string key="minorKey">AppKit.framework/Headers/NSScroller.h</string>
+					</object>
+				</object>
+				<object class="IBPartialClassDescription">
+					<string key="className">NSTableView</string>
+					<string key="superclassName">NSControl</string>
+					<reference key="sourceIdentifier" ref="383092978"/>
+				</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">NSUserDefaultsController</string>
+					<string key="superclassName">NSController</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBFrameworkSource</string>
+						<string key="minorKey">AppKit.framework/Headers/NSUserDefaultsController.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="468156521"/>
+				</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="797006090"/>
+				</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.PluginDeclaredDependencies">
+			<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
+			<integer value="1050" 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">../Dasher.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/Src/MacOSX/English.lproj/MainMenu.nib/keyedobjects.nib b/Src/MacOSX/English.lproj/MainMenu.nib/keyedobjects.nib
index b3a7f26..466c80d 100644
Binary files a/Src/MacOSX/English.lproj/MainMenu.nib/keyedobjects.nib and b/Src/MacOSX/English.lproj/MainMenu.nib/keyedobjects.nib differ



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]