diff --git a/.gitignore b/.gitignore index bda9ca5e6..0239170a8 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,5 @@ xcuserdata/ !*.xcodeproj/project.pbxproj *.xCodeSupport/ *.XcodeSupport/ +*.sublime-project +*.sublime-workspace diff --git a/.travis.yml b/.travis.yml index 6d91686ba..30fda1ba8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,4 +3,4 @@ node_js: - 0.8 install: ./bootstrap.sh --quiet --noprompt --directory ./narwhal script: jake test -env: PATH=$HOME/build/$TRAVIS_REPO_SLUG/narwhal/bin:$PATH CAPP_BUILD=$HOME/build/$TRAVIS_REPO_SLUG/Build NARWHAL_ENGINE=rhino +env: PATH="$TRAVIS_BUILD_DIR/narwhal/bin:$PATH" CAPP_BUILD="$TRAVIS_BUILD_DIR/Build" NARWHAL_ENGINE=rhino diff --git a/AppKit/CPAlert.j b/AppKit/CPAlert.j index cee71593b..4df69bc0e 100644 --- a/AppKit/CPAlert.j +++ b/AppKit/CPAlert.j @@ -717,40 +717,40 @@ var bottomHeight = 71; + (id)themeAttributes { - return [CPDictionary dictionaryWithObjectsAndKeys: - CGSizeMake(400.0, 110.0), @"size", - CGInsetMake(15, 15, 15, 50), @"content-inset", - 6, @"informative-offset", - 10, @"button-offset", - CPJustifiedTextAlignment, @"message-text-alignment", - [CPColor blackColor], @"message-text-color", - [CPFont boldSystemFontOfSize:13.0], @"message-text-font", - [CPNull null], @"message-text-shadow-color", - CGSizeMakeZero(), @"message-text-shadow-offset", - CPJustifiedTextAlignment, @"informative-text-alignment", - [CPColor blackColor], @"informative-text-color", - [CPFont systemFontOfSize:12.0], @"informative-text-font", - [CPNull null], @"informative-text-shadow-color", - CGSizeMakeZero(), @"informative-text-shadow-offset", - CGPointMake(15, 12), @"image-offset", - [CPNull null], @"information-image", - [CPNull null], @"warning-image", - [CPNull null], @"error-image", - [CPNull null], @"help-image", - 15, @"help-image-left-offset", - [CPNull null], @"help-image-pressed", - 0.0, @"suppression-button-y-offset", - 0.0, @"suppression-button-x-offset", - 3.0, @"default-elements-margin", - [CPColor blackColor], @"suppression-button-text-color", - [CPFont systemFontOfSize:12.0], @"suppression-button-text-font", - [CPNull null], @"suppression-button-text-shadow-color", - 0.0, @"suppression-button-text-shadow-offset", - 0.0, @"modal-window-button-margin-y", - 0.0, @"modal-window-button-margin-x", - 0.0, @"standard-window-button-margin-y", - 0.0, @"standard-window-button-margin-x" - ]; + return @{ + @"size": CGSizeMake(400.0, 110.0), + @"content-inset": CGInsetMake(15, 15, 15, 50), + @"informative-offset": 6, + @"button-offset": 10, + @"message-text-alignment": CPJustifiedTextAlignment, + @"message-text-color": [CPColor blackColor], + @"message-text-font": [CPFont boldSystemFontOfSize:13.0], + @"message-text-shadow-color": [CPNull null], + @"message-text-shadow-offset": CGSizeMakeZero(), + @"informative-text-alignment": CPJustifiedTextAlignment, + @"informative-text-color": [CPColor blackColor], + @"informative-text-font": [CPFont systemFontOfSize:12.0], + @"informative-text-shadow-color": [CPNull null], + @"informative-text-shadow-offset": CGSizeMakeZero(), + @"image-offset": CGPointMake(15, 12), + @"information-image": [CPNull null], + @"warning-image": [CPNull null], + @"error-image": [CPNull null], + @"help-image": [CPNull null], + @"help-image-left-offset": 15, + @"help-image-pressed": [CPNull null], + @"suppression-button-y-offset": 0.0, + @"suppression-button-x-offset": 0.0, + @"default-elements-margin": 3.0, + @"suppression-button-text-color": [CPColor blackColor], + @"suppression-button-text-font": [CPFont systemFontOfSize:12.0], + @"suppression-button-text-shadow-color": [CPNull null], + @"suppression-button-text-shadow-offset": 0.0, + @"modal-window-button-margin-y": 0.0, + @"modal-window-button-margin-x": 0.0, + @"standard-window-button-margin-y": 0.0, + @"standard-window-button-margin-x": 0.0, + }; } @end diff --git a/AppKit/CPApplication.j b/AppKit/CPApplication.j index e5663c7f8..01132ecd4 100644 --- a/AppKit/CPApplication.j +++ b/AppKit/CPApplication.j @@ -1358,7 +1358,7 @@ var _CPAppBootstrapperActions = nil; if (mainCibFile) { [mainBundle loadCibFile:mainCibFile - externalNameTable:[CPDictionary dictionaryWithObject:CPApp forKey:CPCibOwner] + externalNameTable:@{ CPCibOwner: CPApp } loadDelegate:self]; return YES; diff --git a/AppKit/CPBox.j b/AppKit/CPBox.j index 06696c1da..9dc3742b2 100644 --- a/AppKit/CPBox.j +++ b/AppKit/CPBox.j @@ -78,15 +78,16 @@ CPBelowBottom = 6; + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[[CPNull null], [CPNull null], 1.0, 3.0, CGSizeMakeZero(), 6.0, [CPNull null], CGSizeMakeZero()] - forKeys:[ @"background-color", - @"border-color", - @"border-width", - @"corner-radius", - @"inner-shadow-offset", - @"inner-shadow-size", - @"inner-shadow-color", - @"content-margin"]]; + return @{ + @"background-color": [CPNull null], + @"border-color": [CPNull null], + @"border-width": 1.0, + @"corner-radius": 3.0, + @"inner-shadow-offset": CGSizeMakeZero(), + @"inner-shadow-size": 6.0, + @"inner-shadow-color": [CPNull null], + @"content-margin": CGSizeMakeZero(), + }; } + (id)boxEnclosingView:(CPView)aView diff --git a/AppKit/CPBrowser.j b/AppKit/CPBrowser.j index fcd0c9075..ac827d890 100644 --- a/AppKit/CPBrowser.j +++ b/AppKit/CPBrowser.j @@ -73,11 +73,11 @@ + (id)themeAttributes { - return [CPDictionary dictionaryWithJSObject:{ + return @{ @"image-control-resize": [CPNull null], @"image-control-leaf": [CPNull null], @"image-control-leaf-pressed": [CPNull null] - }]; + }; } - (id)initWithFrame:(CGRect)aFrame diff --git a/AppKit/CPButton.j b/AppKit/CPButton.j index b92127a7e..ca041056e 100644 --- a/AppKit/CPButton.j +++ b/AppKit/CPButton.j @@ -76,9 +76,10 @@ CPButtonStateMixed = CPThemeState("mixed"); CPButtonStateBezelStyleRounded = CPThemeState("rounded"); // add all future correspondance between bezel styles and theme state here. -var CPButtonBezelStyleStateMap = [CPDictionary dictionaryWithObjectsAndKeys: - CPButtonStateBezelStyleRounded, CPRoundedBezelStyle, - [CPNull null], CPRoundRectBezelStyle]; +var CPButtonBezelStyleStateMap = @{ + CPRoundedBezelStyle: CPButtonStateBezelStyleRounded, + CPRoundRectBezelStyle: [CPNull null], + }; /// @cond IGNORE CPButtonDefaultHeight = 25.0; @@ -150,8 +151,13 @@ CPButtonImageOffset = 3.0; + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[[CPNull null], 0.0, _CGInsetMakeZero(), _CGInsetMakeZero(), [CPNull null]] - forKeys:[@"image", @"image-offset", @"bezel-inset", @"content-inset", @"bezel-color"]]; + return @{ + @"image": [CPNull null], + @"image-offset": 0.0, + @"bezel-inset": _CGInsetMakeZero(), + @"content-inset": _CGInsetMakeZero(), + @"bezel-color": [CPNull null], + }; } /*! diff --git a/AppKit/CPButtonBar.j b/AppKit/CPButtonBar.j index 8a0249881..c96a01d76 100644 --- a/AppKit/CPButtonBar.j +++ b/AppKit/CPButtonBar.j @@ -81,24 +81,17 @@ + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[ CGInsetMake(0.0, 0.0, 0.0, 0.0), - CGSizeMakeZero(), - [CPNull null], - [CPNull null], - [CPNull null], - [CPNull null], - [CPNull null], - [CPNull null], - [CPNull null]] - forKeys:[ @"resize-control-inset", - @"resize-control-size", - @"resize-control-color", - @"bezel-color", - @"button-bezel-color", - @"button-text-color", - @"button-image-plus", - @"button-image-minus", - @"button-image-action"]]; + return @{ + @"resize-control-inset": CGInsetMake(0.0, 0.0, 0.0, 0.0), + @"resize-control-size": CGSizeMakeZero(), + @"resize-control-color": [CPNull null], + @"bezel-color": [CPNull null], + @"button-bezel-color": [CPNull null], + @"button-text-color": [CPNull null], + @"button-image-plus": [CPNull null], + @"button-image-minus": [CPNull null], + @"button-image-action": [CPNull null], + }; } - (id)initWithFrame:(CGRect)aFrame diff --git a/AppKit/CPClipView.j b/AppKit/CPClipView.j index 72d4311a7..6d3518e73 100644 --- a/AppKit/CPClipView.j +++ b/AppKit/CPClipView.j @@ -45,10 +45,10 @@ if (_documentView == aView) return; - var defaultCenter = [CPNotificationCenter defaultCenter]; - if (_documentView) { + var defaultCenter = [CPNotificationCenter defaultCenter]; + [defaultCenter removeObserver:self name:CPViewFrameDidChangeNotification @@ -67,24 +67,30 @@ if (_documentView) { [self addSubview:_documentView]; - - [_documentView setPostsFrameChangedNotifications:YES]; - [_documentView setPostsBoundsChangedNotifications:YES]; - - [defaultCenter - addObserver:self - selector:@selector(viewFrameChanged:) - name:CPViewFrameDidChangeNotification - object:_documentView]; - - [defaultCenter - addObserver:self - selector:@selector(viewBoundsChanged:) - name:CPViewBoundsDidChangeNotification - object:_documentView]; + [self _observeDocumentView]; } } +- (void)_observeDocumentView +{ + var defaultCenter = [CPNotificationCenter defaultCenter]; + + [_documentView setPostsFrameChangedNotifications:YES]; + [_documentView setPostsBoundsChangedNotifications:YES]; + + [defaultCenter + addObserver:self + selector:@selector(viewFrameChanged:) + name:CPViewFrameDidChangeNotification + object:_documentView]; + + [defaultCenter + addObserver:self + selector:@selector(viewBoundsChanged:) + name:CPViewBoundsDidChangeNotification + object:_documentView]; +} + /*! Returns the document view. */ @@ -234,7 +240,12 @@ var CPClipViewDocumentViewKey = @"CPScrollViewDocumentView"; - (id)initWithCoder:(CPCoder)aCoder { if (self = [super initWithCoder:aCoder]) - [self setDocumentView:[aCoder decodeObjectForKey:CPClipViewDocumentViewKey]]; + { + // Don't call setDocumentView: here. It calls addSubview:, but it's A) not necessary since the + // view hierarchy is fully encoded and B) dangerous if the subview is not fully decoded. + _documentView = [aCoder decodeObjectForKey:CPClipViewDocumentViewKey]; + [self _observeDocumentView]; + } return self; } diff --git a/AppKit/CPCollectionView.j b/AppKit/CPCollectionView.j index 4e1de01ea..16f289bb7 100644 --- a/AppKit/CPCollectionView.j +++ b/AppKit/CPCollectionView.j @@ -21,7 +21,6 @@ */ #import "../Foundation/CPRange.h" -#import "../Foundation/Ref.h" @import @import @@ -35,9 +34,6 @@ @import "CPPasteboard.j" @import "CPView.j" -@class CPClipView - - /*! @ingroup appkit @class CPCollectionView @@ -49,7 +45,7 @@ @par Delegate Methods @delegate - (void)collectionViewDidChangeSelection:(CPCollectionView)collectionView; - Called when the selection in the collection view has changed. + DEPRECATED: Please do not use. @param collectionView the collection view who's selection changed @delegate - (void)collectionView:(CPCollectionView)collectionView didDoubleClickOnItemAtIndex:(int)index; @@ -176,50 +172,47 @@ var HORIZONTAL_MARGIN = 2; /*! Sets the item prototype to \c anItem + @param anItem the new item prototype. - The item prototype should implement the CPCoding protocol - because the item is copied by archiving and unarchiving the - prototypal view. + @note + - If anItem is located in an external cib file, representedObject, outlets, and bindings will be automatically restored when an item is created. + - If anItem and its view belong to the same cib as the collection view, the item prototype should implement the CPCoding protocol because the item is copied by archiving and unarchiving the prototypal view. + @note + Bindings won't be restored through archiving, instead you need to subclass the -representedObject: method and update the view there. - Example: + @par Example: -
-      @implement MyCustomView : CPCollectionViewItem
-      {
-          CPArray   items   @accessors;
-      }
+@code
+@implementation MyCustomPrototypeItem: CPCollectionViewItem
+{
+    @outlet CPTextField textField;
+}
 
-      - (id)initWithFrame:(CGRect)aFrame
-      {
-        self = [super initWithFrame:aFrame];
-        if (self)
-        {
-          items = [];
-        }
-        return self;
-      }
+- (id)initWithCoder:(CPCoder)aCoder
+{
+    self = [super initWithCoder:aCoder];
 
-      - (id)initWithCoder:(CPCoder)aCoder
-      {
-        self = [super initWithCoder:aCoder];
-        items = [aCoder decodeObjectForKey:@"KEY"];
-        return self;
-      }
+    textField = [aCoder decodeObjectForKey:@"TextField"];
 
-      - (void)encodeWithCoder:(CPCoder)aCoder
-      {
-        [aCoder encodeObject:items forKey:@"KEY"];
-        [super encodeWithCoder:aCoder];
-      }
+    return self;
+}
 
-      @end
-    
+- (void)encodeWithCoder:(CPCoder)aCoder +{ + [super encodeWithCoder:aCoder]; + [aCoder encodeConditionalObject:textField forKey:@"TextField"]; +} - This will allow the collection view to create multiple 'clean' copies - of the item prototype which will maintain the original values for item - and all of the properties archived by the super class. +- (void)setRepresentedObject:(id)anObject +{ + [super setRepresentedObject:anObject]; + [textField setStringValue:[anObject objectForKey:@"value"]]; + [[self view] setColor:[anObject objectForKey:@"color"]]; +} + +@end +@endcode - @param anItem the new item prototype */ - (void)setItemPrototype:(CPCollectionViewItem)anItem { @@ -406,7 +399,10 @@ var HORIZONTAL_MARGIN = 2; [[binderClass getBinding:@"selectionIndexes" forObject:self] reverseSetValueFor:@"selectionIndexes"]; if ([_delegate respondsToSelector:@selector(collectionViewDidChangeSelection:)]) + { + CPLog.warn("The delegate method collectionViewDidChangeSelection: is deprecated and will be removed in a future version, please bind to selectionIndexes instead."); [_delegate collectionViewDidChangeSelection:self]; + } } /*! @@ -498,7 +494,7 @@ var HORIZONTAL_MARGIN = 2; [self _updateMinMaxItemSizeIfNeeded]; - [self _computeGridWithSize:frameSize count:AT_REF(count)]; + [self _computeGridWithSize:frameSize count:@ref(count)]; //CPLog.debug("frameSize="+CPStringFromSize(frameSize) + "itemSize="+CPStringFromSize(itemSize) + " ncols=" + colsRowsCount[0] +" nrows="+ colsRowsCount[1]+" displayCount="+ colsRowsCount[2]); @@ -1029,7 +1025,7 @@ var HORIZONTAL_MARGIN = 2; - (CPDragOperation)draggingEntered:(id)draggingInfo { var dropIndex = -1, - dropIndexRef = AT_REF(dropIndex), + dropIndexRef = @ref(dropIndex), dragOp = [self _validateDragWithInfo:draggingInfo dropIndex:dropIndexRef dropOperation:1]; dropIndex = dropIndexRef(); @@ -1047,7 +1043,7 @@ var HORIZONTAL_MARGIN = 2; return _currentDragOperation; var dropIndex, - dropIndexRef = AT_REF(dropIndex); + dropIndexRef = @ref(dropIndex); var dragOperation = [self _validateDragWithInfo:draggingInfo dropIndex:dropIndexRef dropOperation:1]; @@ -1065,7 +1061,7 @@ var HORIZONTAL_MARGIN = 2; if ([_delegate respondsToSelector:@selector(collectionView:validateDrop:proposedIndex:dropOperation:)]) { - var dropIndexRef2 = AT_REF(dropIndex); + var dropIndexRef2 = @ref(dropIndex); result = [_delegate collectionView:self validateDrop:draggingInfo proposedIndex:dropIndexRef2 dropOperation:dropOperation]; diff --git a/AppKit/CPColorWell.j b/AppKit/CPColorWell.j index 474a2b756..274f9c04e 100644 --- a/AppKit/CPColorWell.j +++ b/AppKit/CPColorWell.j @@ -60,8 +60,13 @@ var _CPColorWellDidBecomeExclusiveNotification = @"_CPColorWellDidBecomeExclusiv + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[_CGInsetMakeZero(), [CPNull null], _CGInsetMake(3.0, 3.0, 3.0, 3.0), _CGInsetMakeZero(), [CPNull null]] - forKeys:[@"bezel-inset", @"bezel-color", @"content-inset", @"content-border-inset", @"content-border-color"]]; + return @{ + @"bezel-inset": _CGInsetMakeZero(), + @"bezel-color": [CPNull null], + @"content-inset": _CGInsetMake(3.0, 3.0, 3.0, 3.0), + @"content-border-inset": _CGInsetMakeZero(), + @"content-border-color": [CPNull null], + }; } - (void)_reverseSetBinding diff --git a/AppKit/CPComboBox.j b/AppKit/CPComboBox.j index 7ec88bc45..73e3097e5 100644 --- a/AppKit/CPComboBox.j +++ b/AppKit/CPComboBox.j @@ -60,7 +60,10 @@ var CPComboBoxTextSubview = @"text", + (id)themeAttributes { - return [CPDictionary dictionaryWithObjectsAndKeys:_CGSizeMake(21.0, 29.0), @"popup-button-size", _CGInsetMake(3.0, 3.0, 3.0, 3.0), @"border-inset"]; + return @{ + @"popup-button-size": _CGSizeMake(21.0, 29.0), + @"border-inset": _CGInsetMake(3.0, 3.0, 3.0, 3.0), + }; } + (Class)_binderClassForBinding:(CPString)aBinding diff --git a/AppKit/CPControl.j b/AppKit/CPControl.j index f547f2be9..8481c864d 100644 --- a/AppKit/CPControl.j +++ b/AppKit/CPControl.j @@ -20,8 +20,6 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#import "../Foundation/Ref.h" - @import @import @@ -112,28 +110,19 @@ var CPControlBlackColor = [CPColor blackColor]; + (CPDictionary)themeAttributes { - return [CPDictionary dictionaryWithObjects:[CPLeftTextAlignment, - CPTopVerticalTextAlignment, - CPLineBreakByClipping, - [CPColor blackColor], - [CPFont systemFontOfSize:CPFontCurrentSystemSize], - [CPNull null], - _CGSizeMakeZero(), - CPImageLeft, - CPScaleToFit, - _CGSizeMakeZero(), - _CGSizeMake(-1.0, -1.0)] - forKeys:[@"alignment", - @"vertical-alignment", - @"line-break-mode", - @"text-color", - @"font", - @"text-shadow-color", - @"text-shadow-offset", - @"image-position", - @"image-scaling", - @"min-size", - @"max-size"]]; + return @{ + @"alignment": CPLeftTextAlignment, + @"vertical-alignment": CPTopVerticalTextAlignment, + @"line-break-mode": CPLineBreakByClipping, + @"text-color": [CPColor blackColor], + @"font": [CPFont systemFontOfSize:CPFontCurrentSystemSize], + @"text-shadow-color": [CPNull null], + @"text-shadow-offset": _CGSizeMakeZero(), + @"image-position": CPImageLeft, + @"image-scaling": CPScaleToFit, + @"min-size": _CGSizeMakeZero(), + @"max-size": _CGSizeMake(-1.0, -1.0), + }; } + (void)initialize @@ -562,10 +551,10 @@ var CPControlBlackColor = [CPColor blackColor]; { value = nil; - if ([_formatter getObjectValue:AT_REF(value) forString:aString errorDescription:nil] === NO) + if ([_formatter getObjectValue:@ref(value) forString:aString errorDescription:nil] === NO) { // If the given string is non-empty and doesn't work, Cocoa tries an empty string. - if (!aString || [_formatter getObjectValue:AT_REF(value) forString:@"" errorDescription:nil] === NO) + if (!aString || [_formatter getObjectValue:@ref(value) forString:@"" errorDescription:nil] === NO) value = undefined; // Means the value is invalid } } @@ -618,7 +607,7 @@ var CPControlBlackColor = [CPColor blackColor]; if ([note object] != self) return; - [[CPNotificationCenter defaultCenter] postNotificationName:CPControlTextDidBeginEditingNotification object:self userInfo:[CPDictionary dictionaryWithObject:[note object] forKey:"CPFieldEditor"]]; + [[CPNotificationCenter defaultCenter] postNotificationName:CPControlTextDidBeginEditingNotification object:self userInfo:@{ "CPFieldEditor": [note object] }]; } - (void)textDidChange:(CPNotification)note @@ -627,7 +616,7 @@ var CPControlBlackColor = [CPColor blackColor]; if ([note object] != self) return; - [[CPNotificationCenter defaultCenter] postNotificationName:CPControlTextDidChangeNotification object:self userInfo:[CPDictionary dictionaryWithObject:[note object] forKey:"CPFieldEditor"]]; + [[CPNotificationCenter defaultCenter] postNotificationName:CPControlTextDidChangeNotification object:self userInfo:@{ "CPFieldEditor": [note object] }]; } - (void)textDidEndEditing:(CPNotification)note @@ -638,7 +627,7 @@ var CPControlBlackColor = [CPColor blackColor]; [self _reverseSetBinding]; - [[CPNotificationCenter defaultCenter] postNotificationName:CPControlTextDidEndEditingNotification object:self userInfo:[CPDictionary dictionaryWithObject:[note object] forKey:"CPFieldEditor"]]; + [[CPNotificationCenter defaultCenter] postNotificationName:CPControlTextDidEndEditingNotification object:self userInfo:@{ "CPFieldEditor": [note object] }]; } /*! diff --git a/AppKit/CPDocument.j b/AppKit/CPDocument.j index e8dfaed6c..5c316f801 100644 --- a/AppKit/CPDocument.j +++ b/AppKit/CPDocument.j @@ -129,7 +129,7 @@ var CPDocumentUntitledCount = 0; if (self) { _windowControllers = []; - _viewControllersForWindowControllers = [CPDictionary dictionary]; + _viewControllersForWindowControllers = @{}; _hasUndoManager = YES; _changeCount = 0; diff --git a/AppKit/CPDocumentController.j b/AppKit/CPDocumentController.j index f85574fe7..a36e96e4c 100644 --- a/AppKit/CPDocumentController.j +++ b/AppKit/CPDocumentController.j @@ -148,7 +148,7 @@ var CPSharedDocumentController = nil; { var type = [self typeForContentsOfURL:anAbsoluteURL error:anError]; - result = [self makeDocumentWithContentsOfURL:anAbsoluteURL ofType:type delegate:self didReadSelector:@selector(document:didRead:contextInfo:) contextInfo:[CPDictionary dictionaryWithObject:shouldDisplay forKey:@"shouldDisplay"]]; + result = [self makeDocumentWithContentsOfURL:anAbsoluteURL ofType:type delegate:self didReadSelector:@selector(document:didRead:contextInfo:) contextInfo:@{ @"shouldDisplay": shouldDisplay }]; [self addDocument:result]; diff --git a/AppKit/CPDragServer.j b/AppKit/CPDragServer.j index 54ad7cb54..e96bd56aa 100644 --- a/AppKit/CPDragServer.j +++ b/AppKit/CPDragServer.j @@ -248,7 +248,7 @@ var CPDraggingSource_draggedImage_movedTo_ = 1 << 0, _draggingUpdateTimer = [CPTimer scheduledTimerWithTimeInterval:CPDragServerPeriodicUpdateInterval target:self selector:@selector(_sendPeriodicDraggingUpdate:) - userInfo:[CPDictionary dictionaryWithJSObject:{platformWindow:aPlatformWindow, location:aLocation}] + userInfo:@{ "platformWindow":aPlatformWindow, "location":aLocation } repeats:NO]; var scrollView = [_draggingDestination isKindOfClass:[CPView class]] ? [_draggingDestination enclosingScrollView] : nil; diff --git a/AppKit/CPFlashView.j b/AppKit/CPFlashView.j index c9505b8e9..071ad0ee2 100644 --- a/AppKit/CPFlashView.j +++ b/AppKit/CPFlashView.j @@ -107,7 +107,7 @@ var IEFlashCLSID = "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"; varString = [varString stringByAppendingFormat:@"&%@=%@", key, [aDictionary objectForKey:key]]; if (!_params) - _params = [CPDictionary dictionary]; + _params = @{}; [_params setObject:varString forKey:@"flashvars"]; [self setParameters:_params]; @@ -137,7 +137,7 @@ var IEFlashCLSID = "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"; #if PLATFORM(DOM) if (!CPBrowserIsEngine(CPInternetExplorerBrowserEngine)) { - _paramElements = [CPDictionary dictionary]; + _paramElements = @{}; var enumerator = [_params keyEnumerator], key; diff --git a/AppKit/CPFontManager.j b/AppKit/CPFontManager.j index fc352bf0b..b470025ba 100644 --- a/AppKit/CPFontManager.j +++ b/AppKit/CPFontManager.j @@ -208,7 +208,8 @@ var CPSharedFontManager = nil, - (@action)addFontTrait:(id)sender { - _activeChange = [CPDictionary dictionaryWithObject:[sender tag] forKey:@"addTraits"]; + var tag = [sender tag]; + _activeChange = tag === nil ? @{} : @{ @"addTraits": tag }; [self sendAction]; } diff --git a/AppKit/CPKeyValueBinding.j b/AppKit/CPKeyValueBinding.j index 2444ed8dd..db0b238da 100644 --- a/AppKit/CPKeyValueBinding.j +++ b/AppKit/CPKeyValueBinding.j @@ -32,8 +32,8 @@ @class CPButton -var exposedBindingsMap = [CPDictionary new], - bindingsMap = [CPDictionary new]; +var exposedBindingsMap = @{}, + bindingsMap = @{}; var CPBindingOperationAnd = 0, CPBindingOperationOr = 1; @@ -130,7 +130,10 @@ var CPBindingOperationAnd = 0, if (self) { _source = aSource; - _info = [CPDictionary dictionaryWithObjects:[aDestination, aKeyPath] forKeys:[CPObservedObjectKey, CPObservedKeyPathKey]]; + _info = @{ + CPObservedObjectKey: aDestination, + CPObservedKeyPathKey: aKeyPath, + }; _suppressedNotifications = {}; _placeholderForMarker = {}; @@ -145,7 +148,7 @@ var CPBindingOperationAnd = 0, if (!bindings) { - bindings = [CPDictionary new]; + bindings = @{}; [bindingsMap setObject:bindings forKey:[_source UID]]; } @@ -342,12 +345,12 @@ var CPBindingOperationAnd = 0, [self _updatePlaceholdersWithOptions:options]; } -- (void)_placeholderForMarker:aMarker +- (JSObject)_placeholderForMarker:(id)aMarker { - var placeholder = _placeholderForMarker[aMarker]; + var placeholder = _placeholderForMarker[[aMarker UID]]; if (placeholder) - return placeholder['value']; + return placeholder.value; return nil; } @@ -356,14 +359,14 @@ var CPBindingOperationAnd = 0, { if (isDefault) { - var existingPlaceholder = _placeholderForMarker[aMarker]; + var existingPlaceholder = _placeholderForMarker[[aMarker UID]]; // Don't overwrite an explicitly set placeholder with a default. - if (existingPlaceholder && !existingPlaceholder['isDefault']) + if (existingPlaceholder && !existingPlaceholder.isDefault) return; } - _placeholderForMarker[aMarker] = { 'isDefault': isDefault, 'value': aPlaceholder }; + _placeholderForMarker[[aMarker UID]] = { 'isDefault': isDefault, 'value': aPlaceholder }; } @end @@ -799,6 +802,26 @@ var CPBindingOperationAnd = 0, @end +@implementation _CPStateMarker : CPObject +{ + CPString _name; +} + +- (id)initWithName:(CPString)aName +{ + if (self = [super init]) + _name = aName + + return self; +} + +- (CPString)description +{ + return "<" + _name + ">"; +} + +@end + // Keys in options dictionary @@ -808,10 +831,10 @@ CPObservedKeyPathKey = @"CPObservedKeyPathKey"; CPOptionsKey = @"CPOptionsKey"; // special markers -CPMultipleValuesMarker = @"CPMultipleValuesMarker"; -CPNoSelectionMarker = @"CPNoSelectionMarker"; -CPNotApplicableMarker = @"CPNotApplicableMarker"; -CPNullMarker = @"CPNullMarker"; +CPNoSelectionMarker = [[_CPStateMarker alloc] initWithName:@"NO SELECTION MARKER"]; +CPMultipleValuesMarker = [[_CPStateMarker alloc] initWithName:@"MULTIPLE VALUES MARKER"]; +CPNotApplicableMarker = [[_CPStateMarker alloc] initWithName:@"NOT APPLICABLE MARKER"]; +CPNullMarker = [[_CPStateMarker alloc] initWithName:@"NULL MARKER"]; // Binding name constants CPAlignmentBinding = @"alignment"; diff --git a/AppKit/CPLevelIndicator.j b/AppKit/CPLevelIndicator.j index 7483f7c4a..aa0cb9c76 100644 --- a/AppKit/CPLevelIndicator.j +++ b/AppKit/CPLevelIndicator.j @@ -64,12 +64,14 @@ CPRatingLevelIndicatorStyle = 3; + (id)themeAttributes { - return [CPDictionary dictionaryWithObjectsAndKeys:[CPNull null], @"bezel-color", - [CPNull null], @"color-empty", - [CPNull null], @"color-normal", - [CPNull null], @"color-warning", - [CPNull null], @"color-critical", - 1.0, @"spacing"]; + return @{ + @"bezel-color": [CPNull null], + @"color-empty": [CPNull null], + @"color-normal": [CPNull null], + @"color-warning": [CPNull null], + @"color-critical": [CPNull null], + @"spacing": 1.0, + }; } - (id)initWithFrame:(CGRect)aFrame diff --git a/AppKit/CPMenu/CPMenu.j b/AppKit/CPMenu/CPMenu.j index 1037a6f1d..26ae6da2b 100644 --- a/AppKit/CPMenu/CPMenu.j +++ b/AppKit/CPMenu/CPMenu.j @@ -77,7 +77,7 @@ var _CPMenuBarVisible = NO, if (self !== [CPMenu class]) return; - [[self class] setMenuBarAttributes:[CPDictionary dictionary]]; + [[self class] setMenuBarAttributes:@{}]; } + (BOOL)menuBarVisible @@ -148,6 +148,13 @@ var _CPMenuBarVisible = NO, return _CPMenuBarImage; } ++ (void)_setOrRemoveMenuBarAttribute:(id)aValue forKey:(id)aKey +{ + if (aValue === nil) + [_CPMenuBarAttributes removeObjectForKey:aKey]; + else + [_CPMenuBarAttributes setObject:aValue forKey:aKey]; +} + (void)setMenuBarAttributes:(CPDictionary)attributes { @@ -172,8 +179,8 @@ var _CPMenuBarVisible = NO, else if (!textColor && !titleColor) { - [_CPMenuBarAttributes setObject:[[CPTheme defaultTheme] valueForAttributeWithName:@"menu-bar-text-color" forClass:_CPMenuView] forKey:@"CPMenuBarTextColor"]; - [_CPMenuBarAttributes setObject:[[CPTheme defaultTheme] valueForAttributeWithName:@"menu-bar-title-color" forClass:_CPMenuView] forKey:@"CPMenuBarTitleColor"]; + [self _setOrRemoveMenuBarAttribute:[[CPTheme defaultTheme] valueForAttributeWithName:@"menu-bar-text-color" forClass:_CPMenuView] forKey:@"CPMenuBarTextColor"]; + [self _setOrRemoveMenuBarAttribute:[[CPTheme defaultTheme] valueForAttributeWithName:@"menu-bar-title-color" forClass:_CPMenuView] forKey:@"CPMenuBarTitleColor"]; } if (!textShadowColor && titleShadowColor) @@ -184,18 +191,18 @@ var _CPMenuBarVisible = NO, else if (!textShadowColor && !titleShadowColor) { - [_CPMenuBarAttributes setObject:[[CPTheme defaultTheme] valueForAttributeWithName:@"menu-bar-text-shadow-color" forClass:_CPMenuView] forKey:@"CPMenuBarTextShadowColor"]; - [_CPMenuBarAttributes setObject:[[CPTheme defaultTheme] valueForAttributeWithName:@"menu-bar-title-shadow-color" forClass:_CPMenuView] forKey:@"CPMenuBarTitleShadowColor"]; + [self _setOrRemoveMenuBarAttribute:[[CPTheme defaultTheme] valueForAttributeWithName:@"menu-bar-text-shadow-color" forClass:_CPMenuView] forKey:@"CPMenuBarTextShadowColor"]; + [self _setOrRemoveMenuBarAttribute:[[CPTheme defaultTheme] valueForAttributeWithName:@"menu-bar-title-shadow-color" forClass:_CPMenuView] forKey:@"CPMenuBarTitleShadowColor"]; } if (!highlightColor) - [_CPMenuBarAttributes setObject:[[CPTheme defaultTheme] valueForAttributeWithName:@"menu-bar-highlight-color" forClass:_CPMenuView] forKey:@"CPMenuBarHighlightColor"]; + [self _setOrRemoveMenuBarAttribute:[[CPTheme defaultTheme] valueForAttributeWithName:@"menu-bar-highlight-color" forClass:_CPMenuView] forKey:@"CPMenuBarHighlightColor"]; if (!highlightTextColor) - [_CPMenuBarAttributes setObject:[[CPTheme defaultTheme] valueForAttributeWithName:@"menu-bar-highlight-text-color" forClass:_CPMenuView] forKey:@"CPMenuBarHighlightTextColor"]; + [self _setOrRemoveMenuBarAttribute:[[CPTheme defaultTheme] valueForAttributeWithName:@"menu-bar-highlight-text-color" forClass:_CPMenuView] forKey:@"CPMenuBarHighlightTextColor"]; if (!highlightTextShadowColor) - [_CPMenuBarAttributes setObject:[[CPTheme defaultTheme] valueForAttributeWithName:@"menu-bar-highlight-text-shadow-color" forClass:_CPMenuView] forKey:@"CPMenuBarHighlightTextShadowColor"]; + [self _setOrRemoveMenuBarAttribute:[[CPTheme defaultTheme] valueForAttributeWithName:@"menu-bar-highlight-text-shadow-color" forClass:_CPMenuView] forKey:@"CPMenuBarHighlightTextShadowColor"]; if (_CPMenuBarSharedWindow) { @@ -373,7 +380,7 @@ var _CPMenuBarVisible = NO, [[CPNotificationCenter defaultCenter] postNotificationName:CPMenuDidChangeItemNotification object:self - userInfo:[CPDictionary dictionaryWithObject:[_items indexOfObjectIdenticalTo:aMenuItem] forKey:@"CPMenuItemIndex"]]; + userInfo:@{ @"CPMenuItemIndex": [_items indexOfObjectIdenticalTo:aMenuItem] }]; } // Finding Menu Items @@ -628,22 +635,27 @@ var _CPMenuBarVisible = NO, if (!validator) { - // Check to see if there is a target binding with a valid selector - var info = [CPBinder infoForBinding:CPTargetBinding forObject:item], - valid = NO; - - if (info) + // If targetForAction: returns nil, it could be that there is no action. + // If there is an action and nil is returned, no valid target could be found. + if ([item action] || [item target]) + [item setEnabled:NO]; + else { - var object = [info objectForKey:CPObservedObjectKey], - keyPath = [info objectForKey:CPObservedKeyPathKey], - options = [info objectForKey:CPOptionsKey], - target = [object valueForKeyPath:keyPath], - selector = [options valueForKey:CPSelectorNameBindingOption]; + // Check to see if there is a target binding with an invalid selector + var info = [CPBinder infoForBinding:CPTargetBinding forObject:item]; - valid = target && selector && [target respondsToSelector:CPSelectorFromString(selector)]; + if (info) + { + var object = [info objectForKey:CPObservedObjectKey], + keyPath = [info objectForKey:CPObservedKeyPathKey], + options = [info objectForKey:CPOptionsKey], + target = [object valueForKeyPath:keyPath], + selector = [options valueForKey:CPSelectorNameBindingOption]; + + if (target && selector && ![target respondsToSelector:CPSelectorFromString(selector)]) + [item setEnabled:NO]; + } } - - [item setEnabled:valid]; } else if (![validator respondsToSelector:[item action]]) [item setEnabled:NO]; @@ -1136,7 +1148,7 @@ var _CPMenuBarVisible = NO, [[CPNotificationCenter defaultCenter] postNotificationName:CPMenuDidAddItemNotification object:self - userInfo:[CPDictionary dictionaryWithObject:anIndex forKey:@"CPMenuItemIndex"]]; + userInfo:@{ @"CPMenuItemIndex": anIndex }]; } - (void)removeObjectFromItemsAtIndex:(CPUInteger)anIndex @@ -1150,7 +1162,7 @@ var _CPMenuBarVisible = NO, [[CPNotificationCenter defaultCenter] postNotificationName:CPMenuDidRemoveItemNotification object:self - userInfo:[CPDictionary dictionaryWithObject:anIndex forKey:@"CPMenuItemIndex"]]; + userInfo:@{ @"CPMenuItemIndex": anIndex }]; } @end diff --git a/AppKit/CPMenu/_CPMenuWindow.j b/AppKit/CPMenu/_CPMenuWindow.j index d4f01f238..ddd697051 100644 --- a/AppKit/CPMenu/_CPMenuWindow.j +++ b/AppKit/CPMenu/_CPMenuWindow.j @@ -434,39 +434,34 @@ _CPMenuWindowAttachedMenuBackgroundStyle = 2; + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[ [CPNull null], [CPNull null], [CPNull null], [CPNull null], CGInsetMake(5.0, 1.0, 1.0, 5.0), 16.0, - [CPNull null], [CPNull null], [CPNull null], 30.0, 10.0, 10.0, 10.0, - [CPNull null], [CPNull null], [CPNull null], [CPNull null], [CPNull null], [CPNull null], [CPNull null], 28.0, [CPNull null], 1.0, - [CPNull null], [CPNull null], [CPNull null]] - forKeys:[ @"menu-window-more-above-image", - @"menu-window-more-below-image", - @"menu-window-pop-up-background-style-color", - @"menu-window-menu-bar-background-style-color", - @"menu-window-margin-inset", - @"menu-window-scroll-indicator-height", - - @"menu-bar-window-background-color", - @"menu-bar-window-background-selected-color", - @"menu-bar-window-font", - @"menu-bar-window-height", - @"menu-bar-window-margin", - @"menu-bar-window-left-margin", - @"menu-bar-window-right-margin", - - @"menu-bar-text-color", - @"menu-bar-title-color", - @"menu-bar-text-shadow-color", - @"menu-bar-title-shadow-color", - @"menu-bar-highlight-color", - @"menu-bar-highlight-text-color", - @"menu-bar-highlight-text-shadow-color", - @"menu-bar-height", - @"menu-bar-icon-image", - @"menu-bar-icon-image-alpha-value", - - @"menu-general-icon-new", - @"menu-general-icon-save", - @"menu-general-icon-open"]]; + return @{ + @"menu-window-more-above-image": [CPNull null], + @"menu-window-more-below-image": [CPNull null], + @"menu-window-pop-up-background-style-color": [CPNull null], + @"menu-window-menu-bar-background-style-color": [CPNull null], + @"menu-window-margin-inset": CGInsetMake(5.0, 1.0, 1.0, 5.0), + @"menu-window-scroll-indicator-height": 16.0, + @"menu-bar-window-background-color": [CPNull null], + @"menu-bar-window-background-selected-color": [CPNull null], + @"menu-bar-window-font": [CPNull null], + @"menu-bar-window-height": 30.0, + @"menu-bar-window-margin": 10.0, + @"menu-bar-window-left-margin": 10.0, + @"menu-bar-window-right-margin": 10.0, + @"menu-bar-text-color": [CPNull null], + @"menu-bar-title-color": [CPNull null], + @"menu-bar-text-shadow-color": [CPNull null], + @"menu-bar-title-shadow-color": [CPNull null], + @"menu-bar-highlight-color": [CPNull null], + @"menu-bar-highlight-text-color": [CPNull null], + @"menu-bar-highlight-text-shadow-color": [CPNull null], + @"menu-bar-height": 28.0, + @"menu-bar-icon-image": [CPNull null], + @"menu-bar-icon-image-alpha-value": 1.0, + @"menu-general-icon-new": [CPNull null], + @"menu-general-icon-save": [CPNull null], + @"menu-general-icon-open": [CPNull null], + }; } - (unsigned)numberOfUnhiddenItems diff --git a/AppKit/CPMenuItem/CPMenuItem.j b/AppKit/CPMenuItem/CPMenuItem.j index 3f416c24b..4db407605 100644 --- a/AppKit/CPMenuItem/CPMenuItem.j +++ b/AppKit/CPMenuItem/CPMenuItem.j @@ -33,25 +33,25 @@ @global CPApp -var CPMenuItemStringRepresentationDictionary = [CPDictionary dictionaryWithObjectsAndKeys: - "\u238B", CPEscapeFunctionKey, - "\u21E5", CPTabCharacter, - "\u21E4", CPBackTabCharacter, - "\u2423", CPSpaceFunctionKey, - "\u23CE", CPCarriageReturnCharacter, - "\u232B", CPBackspaceCharacter, - "\u232B", CPDeleteFunctionKey, - "\u2326", CPDeleteCharacter, - "\u21F1", CPHomeFunctionKey, - "\u21F2", CPEndFunctionKey, - "\u21DE", CPPageUpFunctionKey, - "\u21DF", CPPageDownFunctionKey, - "\u2191", CPUpArrowFunctionKey, - "\u2193", CPDownArrowFunctionKey, - "\u2190", CPLeftArrowFunctionKey, - "\u2192", CPRightArrowFunctionKey, - "\u2327", CPClearDisplayFunctionKey - ]; +var CPMenuItemStringRepresentationDictionary = @{ + CPEscapeFunctionKey: "\u238B", + CPTabCharacter: "\u21E5", + CPBackTabCharacter: "\u21E4", + CPSpaceFunctionKey: "\u2423", + CPCarriageReturnCharacter: "\u23CE", + CPBackspaceCharacter: "\u232B", + CPDeleteFunctionKey: "\u232B", + CPDeleteCharacter: "\u2326", + CPHomeFunctionKey: "\u21F1", + CPEndFunctionKey: "\u21F2", + CPPageUpFunctionKey: "\u21DE", + CPPageDownFunctionKey: "\u21DF", + CPUpArrowFunctionKey: "\u2191", + CPDownArrowFunctionKey: "\u2193", + CPLeftArrowFunctionKey: "\u2190", + CPRightArrowFunctionKey: "\u2192", + CPClearDisplayFunctionKey: "\u2327", + }; /*! @ingroup appkit diff --git a/AppKit/CPMenuItem/_CPMenuItemMenuBarView.j b/AppKit/CPMenuItem/_CPMenuItemMenuBarView.j index e07d2423d..1dfd49441 100644 --- a/AppKit/CPMenuItem/_CPMenuItemMenuBarView.j +++ b/AppKit/CPMenuItem/_CPMenuItemMenuBarView.j @@ -46,12 +46,13 @@ + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[[CPNull null], [CPNull null], 12.0, 3.0, 4.0] - forKeys:[ @"menu-item-selection-color", - @"menu-item-text-shadow-color", - @"horizontal-margin", - @"submenu-indicator-margin", - @"vertical-margin"]]; + return @{ + @"menu-item-selection-color": [CPNull null], + @"menu-item-text-shadow-color": [CPNull null], + @"horizontal-margin": 12.0, + @"submenu-indicator-margin": 3.0, + @"vertical-margin": 4.0, + }; } + (id)view diff --git a/AppKit/CPMenuItem/_CPMenuItemStandardView.j b/AppKit/CPMenuItem/_CPMenuItemStandardView.j index 851dba7ea..5a71538b2 100644 --- a/AppKit/CPMenuItem/_CPMenuItemStandardView.j +++ b/AppKit/CPMenuItem/_CPMenuItemStandardView.j @@ -47,24 +47,25 @@ + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[[CPNull null], [CPNull null], [CPNull null], [CPNull null], [CPNull null], [CPNull null], [CPNull null], [CPNull null], [CPNull null], [CPNull null], [CPNull null], 3.0, 17.0, 14.0, 17.0, 4.0, 30.0] - forKeys:[ @"submenu-indicator-color", - @"menu-item-selection-color", - @"menu-item-text-shadow-color", - @"menu-item-text-color", - @"menu-item-default-off-state-image", - @"menu-item-default-off-state-highlighted-image", - @"menu-item-default-on-state-image", - @"menu-item-default-on-state-highlighted-image", - @"menu-item-default-mixed-state-image", - @"menu-item-default-mixed-state-highlighted-image", - @"menu-item-separator-color", - @"left-margin", - @"right-margin", - @"state-column-width", - @"indentation-width", - @"vertical-margin", - @"right-columns-margin"]]; + return @{ + @"submenu-indicator-color": [CPNull null], + @"menu-item-selection-color": [CPNull null], + @"menu-item-text-shadow-color": [CPNull null], + @"menu-item-text-color": [CPNull null], + @"menu-item-default-off-state-image": [CPNull null], + @"menu-item-default-off-state-highlighted-image": [CPNull null], + @"menu-item-default-on-state-image": [CPNull null], + @"menu-item-default-on-state-highlighted-image": [CPNull null], + @"menu-item-default-mixed-state-image": [CPNull null], + @"menu-item-default-mixed-state-highlighted-image": [CPNull null], + @"menu-item-separator-color": [CPNull null], + @"left-margin": 3.0, + @"right-margin": 17.0, + @"state-column-width": 14.0, + @"indentation-width": 17.0, + @"vertical-margin": 4.0, + @"right-columns-margin": 30.0, + }; } + (id)view diff --git a/AppKit/CPMenuItem/_CPMenuItemView.j b/AppKit/CPMenuItem/_CPMenuItemView.j index be59d79ab..a0311b333 100644 --- a/AppKit/CPMenuItem/_CPMenuItemView.j +++ b/AppKit/CPMenuItem/_CPMenuItemView.j @@ -55,8 +55,7 @@ + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[] - forKeys:[]]; + return @{}; } // Not used in the Appkit diff --git a/AppKit/CPObjectController.j b/AppKit/CPObjectController.j index 30eb73c55..497d35aed 100644 --- a/AppKit/CPObjectController.j +++ b/AppKit/CPObjectController.j @@ -106,11 +106,13 @@ { if (self = [super init]) { - [self setContent:aContent]; [self setEditable:YES]; [self setObjectClass:[CPMutableDictionary class]]; _observedKeys = [[CPCountedSet alloc] init]; + _selection = [[CPControllerSelectionProxy alloc] initWithController:self]; + + [self setContent:aContent]; } return self; @@ -667,7 +669,7 @@ var CPObjectControllerContentKey = @"CPObjectControllerCo { if (self = [super init]) { - _cachedValues = [CPDictionary dictionary]; + _cachedValues = @{}; _observationProxies = [CPArray array]; _controller = aController; _observedObjectsByKeyPath = {}; diff --git a/AppKit/CPOutlineView.j b/AppKit/CPOutlineView.j index b2d671203..079fb0099 100644 --- a/AppKit/CPOutlineView.j +++ b/AppKit/CPOutlineView.j @@ -35,20 +35,21 @@ CPOutlineViewItemWillExpandNotification = @"CPOutlineViewItemWillExpandN CPOutlineViewSelectionDidChangeNotification = @"CPOutlineViewSelectionDidChangeNotification"; CPOutlineViewSelectionIsChangingNotification = @"CPOutlineViewSelectionIsChangingNotification"; -var CPOutlineViewDataSource_outlineView_setObjectValue_forTableColumn_byItem_ = 1 << 1, - CPOutlineViewDataSource_outlineView_shouldDeferDisplayingChildrenOfItem_ = 1 << 2, +var CPOutlineViewDataSource_outlineView_objectValue_forTableColumn_byItem_ = 1 << 1, + CPOutlineViewDataSource_outlineView_setObjectValue_forTableColumn_byItem_ = 1 << 2, + CPOutlineViewDataSource_outlineView_shouldDeferDisplayingChildrenOfItem_ = 1 << 3, - CPOutlineViewDataSource_outlineView_acceptDrop_item_childIndex_ = 1 << 3, - CPOutlineViewDataSource_outlineView_validateDrop_proposedItem_proposedChildIndex_ = 1 << 4, - CPOutlineViewDataSource_outlineView_validateDrop_proposedRow_proposedDropOperation_ = 1 << 5, - CPOutlineViewDataSource_outlineView_namesOfPromisedFilesDroppedAtDestination_forDraggedItems_ = 1 << 6, + CPOutlineViewDataSource_outlineView_acceptDrop_item_childIndex_ = 1 << 4, + CPOutlineViewDataSource_outlineView_validateDrop_proposedItem_proposedChildIndex_ = 1 << 5, + CPOutlineViewDataSource_outlineView_validateDrop_proposedRow_proposedDropOperation_ = 1 << 6, + CPOutlineViewDataSource_outlineView_namesOfPromisedFilesDroppedAtDestination_forDraggedItems_ = 1 << 7, - CPOutlineViewDataSource_outlineView_itemForPersistentObject_ = 1 << 7, - CPOutlineViewDataSource_outlineView_persistentObjectForItem_ = 1 << 8, + CPOutlineViewDataSource_outlineView_itemForPersistentObject_ = 1 << 8, + CPOutlineViewDataSource_outlineView_persistentObjectForItem_ = 1 << 9, - CPOutlineViewDataSource_outlineView_writeItems_toPasteboard_ = 1 << 9, + CPOutlineViewDataSource_outlineView_writeItems_toPasteboard_ = 1 << 10, - CPOutlineViewDataSource_outlineView_sortDescriptorsDidChange_ = 1 << 10; + CPOutlineViewDataSource_outlineView_sortDescriptorsDidChange_ = 1 << 11; var CPOutlineViewDelegate_outlineView_dataViewForTableColumn_item_ = 1 << 1, CPOutlineViewDelegate_outlineView_didClickTableColumn_ = 1 << 2, @@ -230,12 +231,12 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0, if (![aDataSource respondsToSelector:@selector(outlineView:numberOfChildrenOfItem:)]) [CPException raise:CPInternalInconsistencyException reason:"Data source must implement 'outlineView:numberOfChildrenOfItem:'"]; - if (![aDataSource respondsToSelector:@selector(outlineView:objectValueForTableColumn:byItem:)]) - [CPException raise:CPInternalInconsistencyException reason:"Data source must implement 'outlineView:objectValueForTableColumn:byItem:'"]; - _outlineViewDataSource = aDataSource; _implementedOutlineViewDataSourceMethods = 0; + if ([_outlineViewDataSource respondsToSelector:@selector(outlineView:objectValueForTableColumn:byItem:)]) + _implementedOutlineViewDataSourceMethods |= CPOutlineViewDataSource_outlineView_objectValue_forTableColumn_byItem_; + if ([_outlineViewDataSource respondsToSelector:@selector(outlineView:setObjectValue:forTableColumn:byItem:)]) _implementedOutlineViewDataSourceMethods |= CPOutlineViewDataSource_outlineView_setObjectValue_forTableColumn_byItem_; @@ -1441,7 +1442,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0, [[CPNotificationCenter defaultCenter] postNotificationName:CPOutlineViewItemWillExpandNotification object:self - userInfo:[CPDictionary dictionaryWithObject:item forKey:"CPObject"]]; + userInfo:@{ "CPObject": item }]; } /*! @@ -1452,7 +1453,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0, [[CPNotificationCenter defaultCenter] postNotificationName:CPOutlineViewItemDidExpandNotification object:self - userInfo:[CPDictionary dictionaryWithObject:item forKey:"CPObject"]]; + userInfo:@{ "CPObject": item }]; } /*! @@ -1463,7 +1464,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0, [[CPNotificationCenter defaultCenter] postNotificationName:CPOutlineViewItemWillCollapseNotification object:self - userInfo:[CPDictionary dictionaryWithObject:item forKey:"CPObject"]]; + userInfo:@{ "CPObject": item }]; } /*! @@ -1474,7 +1475,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0, [[CPNotificationCenter defaultCenter] postNotificationName:CPOutlineViewItemDidCollapseNotification object:self - userInfo:[CPDictionary dictionaryWithObject:item forKey:"CPObject"]]; + userInfo:@{ "CPObject": item }]; } - (void)keyDown:(CPEvent)anEvent @@ -1533,6 +1534,16 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0, [super keyDown:anEvent]; } +- (BOOL)_dataSourceRespondsToObjectValueForTableColumn +{ + return _implementedOutlineViewDataSourceMethods & CPOutlineViewDataSource_outlineView_objectValue_forTableColumn_byItem_; +} + +- (BOOL)_delegateRespondsToDataViewForTableColumn +{ + return _implementedOutlineViewDelegateMethods & CPOutlineViewDelegate_outlineView_dataViewForTableColumn_item_; +} + @end // FIX ME: We're using with() here because Safari fails if we use anOutlineView._itemInfosForItems or whatever... @@ -1826,21 +1837,6 @@ var _loadItemInfoForItem = function(/*CPOutlineView*/ anOutlineView, /*id*/ anIt return self; } -- (CPView)tableView:(CPTableView)theTableView dataViewForTableColumn:(CPTableColumn)theTableColumn row:(int)theRow -{ - var dataView = nil; - - if ((_outlineView._implementedOutlineViewDelegateMethods & CPOutlineViewDelegate_outlineView_dataViewForTableColumn_item_)) - dataView = [_outlineView._outlineViewDelegate outlineView:_outlineView - dataViewForTableColumn:theTableColumn - item:[_outlineView itemAtRow:theRow]]; - - if (!dataView) - dataView = [theTableColumn dataViewForRow:theRow]; - - return dataView; -} - - (BOOL)tableView:(CPTableView)theTableView shouldSelectRow:(int)theRow { return SHOULD_SELECT_ITEM(_outlineView, [_outlineView itemAtRow:theRow]); @@ -1897,6 +1893,17 @@ var _loadItemInfoForItem = function(/*CPOutlineView*/ anOutlineView, /*id*/ anIt return [_outlineView menu] || [[_outlineView class] defaultMenu]; } +- (CPView)tableView:(CPTableView)aTableView dataViewForTableColumn:(CPTableColumn)aTableColumn row:(int)aRow +{ + if ((_outlineView._implementedOutlineViewDelegateMethods & CPOutlineViewDelegate_outlineView_dataViewForTableColumn_item_)) + { + var item = [_outlineView itemAtRow:aRow]; + return [_outlineView._outlineViewDelegate outlineView:_outlineView dataViewForTableColumn:aTableColumn item:item] + } + + return nil; +} + @end @implementation CPDisclosureButton : CPButton diff --git a/AppKit/CPPanel.j b/AppKit/CPPanel.j index b9dbe2ac6..ee335531f 100644 --- a/AppKit/CPPanel.j +++ b/AppKit/CPPanel.j @@ -116,7 +116,7 @@ CPDocModalWindowMask = 1 << 6; - (BOOL)canBecomeKeyWindow { - return YES; + return YES; } @end diff --git a/AppKit/CPPasteboard.j b/AppKit/CPPasteboard.j index 5554d9cfd..0e943dbaa 100644 --- a/AppKit/CPPasteboard.j +++ b/AppKit/CPPasteboard.j @@ -79,7 +79,7 @@ var CPPasteboards = nil, [self setVersion:1.0]; - CPPasteboards = [CPDictionary dictionary]; + CPPasteboards = @{}; if (typeof window.cpPasteboardWithName !== "undefined") supportsNativePasteboard = YES; @@ -121,8 +121,8 @@ var CPPasteboards = nil, // _name = aName; _types = []; - _owners = [CPDictionary dictionary]; - _provided = [CPDictionary dictionary]; + _owners = @{}; + _provided = @{}; _changeCount = 0; @@ -188,8 +188,8 @@ var CPPasteboards = nil, { [_types setArray:types]; - _owners = [CPDictionary dictionary]; - _provided = [CPDictionary dictionary]; + _owners = @{}; + _provided = @{}; var count = _types.length; diff --git a/AppKit/CPProgressIndicator.j b/AppKit/CPProgressIndicator.j index 2e1c62afe..1bc74dcaa 100644 --- a/AppKit/CPProgressIndicator.j +++ b/AppKit/CPProgressIndicator.j @@ -77,14 +77,15 @@ var CPProgressIndicatorSpinningStyleColors = []; + (CPDictionary)themeAttributes { - return [CPDictionary dictionaryWithObjectsAndKeys: - [CPNull null], @"indeterminate-bar-color", - [CPNull null], @"bar-color", - 20, @"default-height", - [CPNull null], @"bezel-color", - [CPNull null], @"spinning-mini-gif", - [CPNull null], @"spinning-small-gif", - [CPNull null], @"spinning-regular-gif"]; + return @{ + @"indeterminate-bar-color": [CPNull null], + @"bar-color": [CPNull null], + @"default-height": 20, + @"bezel-color": [CPNull null], + @"spinning-mini-gif": [CPNull null], + @"spinning-small-gif": [CPNull null], + @"spinning-regular-gif": [CPNull null], + }; } + (Class)_binderClassForBinding:(CPString)aBinding diff --git a/AppKit/CPRuleEditor/CPPredicateEditor.j b/AppKit/CPRuleEditor/CPPredicateEditor.j index c131707a1..097d4f1b1 100644 --- a/AppKit/CPRuleEditor/CPPredicateEditor.j +++ b/AppKit/CPRuleEditor/CPPredicateEditor.j @@ -360,7 +360,11 @@ rootItems = [treeChild children]; } - var row = [CPDictionary dictionaryWithObjectsAndKeys:criteria, @"criteria", values, @"displayValues", rowType, @"rowType"]; + var row = @{ + @"criteria": criteria, + @"displayValues": values, + @"rowType": rowType, + }; return row; } diff --git a/AppKit/CPRuleEditor/CPRuleEditor.j b/AppKit/CPRuleEditor/CPRuleEditor.j index d9ea81ba7..50e2905b8 100644 --- a/AppKit/CPRuleEditor/CPRuleEditor.j +++ b/AppKit/CPRuleEditor/CPRuleEditor.j @@ -124,8 +124,16 @@ var CPRuleEditorItemPBoardType = @"CPRuleEditorItemPBoardType", + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[[CPNull null], [CPNull null], [CPNull null], [CPNull null], [CPNull null], [CPNull null], [CPNull null], [CPNull null]] - forKeys:[@"alternating-row-colors", @"selected-color", @"slice-top-border-color", @"slice-bottom-border-color", @"slice-last-bottom-border-color", @"font", @"add-image", @"remove-image"]]; + return @{ + @"alternating-row-colors": [CPNull null], + @"selected-color": [CPNull null], + @"slice-top-border-color": [CPNull null], + @"slice-bottom-border-color": [CPNull null], + @"slice-last-bottom-border-color": [CPNull null], + @"font": [CPNull null], + @"add-image": [CPNull null], + @"remove-image": [CPNull null], + }; } - (id)initWithFrame:(CGRect)frame @@ -791,7 +799,7 @@ TODO: implement */ - (CPPredicate)predicateForRow:(CPInteger)aRow { - var predicateParts = [CPDictionary dictionary], + var predicateParts = @{}, items = [self criteriaForRow:aRow], count = [items count], predicate, @@ -1387,7 +1395,10 @@ TODO: implement { var item = [items objectAtIndex:i], value = [values objectAtIndex:i], - itemAndValue = [CPDictionary dictionaryWithObjects:[item, value] forKeys:["item", "value"]]; + itemAndValue = @{ + "item": item, + "value": value, + }; [itemsAndValues addObject:itemAndValue]; } @@ -1771,7 +1782,7 @@ TODO: implement if (animate) { - var animation = [CPDictionary dictionary]; + var animation = @{}; [animation setObject:aslice forKey:CPViewAnimationTargetKey]; [animation setObject:startRect forKey:CPViewAnimationStartFrameKey]; [animation setObject:targetRect forKey:CPViewAnimationEndFrameKey]; @@ -1866,17 +1877,17 @@ TODO: implement - (CPString)_toolTipForAddCompoundRowButton { - return @"Add Compound row"; + return [_standardLocalizer localizedStringForString:@"Add compound row"]; } - (CPString)_toolTipForAddSimpleRowButton { - return @"Add row"; + return [_standardLocalizer localizedStringForString:@"Add row"]; } - (CPString)_toolTipForDeleteRowButton { - return @"Delete row"; + return [_standardLocalizer localizedStringForString:@"Delete row"]; } - (void)_updateSliceIndentations @@ -2268,7 +2279,7 @@ TODO: implement - (void)_postRowCountChangedNotificationOfType:(CPString)notificationName indexes:indexes { - var userInfo = [CPDictionary dictionaryWithObject:indexes forKey:"indexes"]; + var userInfo = @{ "indexes": indexes }; [[CPNotificationCenter defaultCenter] postNotificationName:notificationName object:self userInfo:userInfo]; } diff --git a/AppKit/CPRuleEditor/_CPRuleEditorLocalizer.j b/AppKit/CPRuleEditor/_CPRuleEditorLocalizer.j index f1530dacd..a9c5d7da9 100644 --- a/AppKit/CPRuleEditor/_CPRuleEditorLocalizer.j +++ b/AppKit/CPRuleEditor/_CPRuleEditorLocalizer.j @@ -59,7 +59,7 @@ var LocalizerStringsRegex = new RegExp("\"(.+)\"\\s*=\\s*\"(.+)\"\\s*;\\s*(//.+) - (void)loadContent:(CPString)aContent { - var dict = [CPDictionary dictionary], + var dict = @{}, lines = [aContent componentsSeparatedByString:"\n"], count = [lines count]; diff --git a/AppKit/CPRuleEditor/_CPRuleEditorViewSliceRow.j b/AppKit/CPRuleEditor/_CPRuleEditorViewSliceRow.j index c70a6ba12..bb00c8e21 100644 --- a/AppKit/CPRuleEditor/_CPRuleEditorViewSliceRow.j +++ b/AppKit/CPRuleEditor/_CPRuleEditorViewSliceRow.j @@ -271,7 +271,11 @@ var CONTROL_HEIGHT = 16., } } - repObject = [CPDictionary dictionaryWithObjectsAndKeys:childItem, @"item", childValue, @"value", i, @"indexInCriteria"]; + repObject = @{ + @"item": childItem, + @"value": childValue, + @"indexInCriteria": i + }; [menuItem setRepresentedObject:repObject]; [menuItems addObject:menuItem]; } diff --git a/AppKit/CPScrollView.j b/AppKit/CPScrollView.j index a177d0651..fa957fc60 100644 --- a/AppKit/CPScrollView.j +++ b/AppKit/CPScrollView.j @@ -143,10 +143,10 @@ var CPScrollerStyleGlobal = CPScrollerStyleOverlay, + (CPDictionary)themeAttributes { - return [CPDictionary dictionaryWithJSObject:{ - @"bottom-corner-color": [CPColor whiteColor], - @"border-color": [CPColor blackColor] - }]; + return @{ + @"bottom-corner-color": [CPColor whiteColor], + @"border-color": [CPColor blackColor] + }; } + (CGSize)contentSizeForFrameSize:(CGSize)frameSize hasHorizontalScroller:(BOOL)hFlag hasVerticalScroller:(BOOL)vFlag borderType:(CPBorderType)borderType diff --git a/AppKit/CPScroller.j b/AppKit/CPScroller.j index 798af9e5c..92afb74ca 100644 --- a/AppKit/CPScroller.j +++ b/AppKit/CPScroller.j @@ -110,19 +110,19 @@ CPThemeStateScrollerKnobDark = CPThemeState("scroller-knob-dark"); + (id)themeAttributes { - return [CPDictionary dictionaryWithJSObject:{ - @"scroller-width": 7.0, - @"knob-slot-color": [CPNull null], - @"decrement-line-color": [CPNull null], - @"increment-line-color": [CPNull null], - @"knob-color": [CPNull null], - @"decrement-line-size":_CGSizeMakeZero(), - @"increment-line-size":_CGSizeMakeZero(), - @"track-inset":_CGInsetMakeZero(), - @"knob-inset": _CGInsetMakeZero(), - @"minimum-knob-length":21.0, - @"track-border-overlay": 9.0 - }]; + return @{ + @"scroller-width": 7.0, + @"knob-slot-color": [CPNull null], + @"decrement-line-color": [CPNull null], + @"increment-line-color": [CPNull null], + @"knob-color": [CPNull null], + @"decrement-line-size":_CGSizeMakeZero(), + @"increment-line-size":_CGSizeMakeZero(), + @"track-inset":_CGInsetMakeZero(), + @"knob-inset": _CGInsetMakeZero(), + @"minimum-knob-length":21.0, + @"track-border-overlay": 9.0 + }; } + (float)scrollerWidth @@ -182,8 +182,10 @@ CPThemeStateScrollerKnobDark = CPThemeState("scroller-knob-dark"); _allowFadingOut = YES; _isMouseOver = NO; _style = CPScrollerStyleOverlay; - var paramAnimFadeOut = [CPDictionary dictionaryWithObjects:[self, CPViewAnimationFadeOutEffect] - forKeys:[CPViewAnimationTargetKey, CPViewAnimationEffectKey]]; + var paramAnimFadeOut = @{ + CPViewAnimationTargetKey: self, + CPViewAnimationEffectKey: CPViewAnimationFadeOutEffect, + }; _animationScroller = [[CPViewAnimation alloc] initWithDuration:0.2 animationCurve:CPAnimationEaseInOut]; [_animationScroller setViewAnimations:[paramAnimFadeOut]]; @@ -826,8 +828,10 @@ var CPScrollerControlSizeKey = @"CPScrollerControlSize", _allowFadingOut = YES; _isMouseOver = NO; - var paramAnimFadeOut = [CPDictionary dictionaryWithObjects:[self, CPViewAnimationFadeOutEffect] - forKeys:[CPViewAnimationTargetKey, CPViewAnimationEffectKey]]; + var paramAnimFadeOut = @{ + CPViewAnimationTargetKey: self, + CPViewAnimationEffectKey: CPViewAnimationFadeOutEffect, + }; _animationScroller = [[CPViewAnimation alloc] initWithDuration:0.2 animationCurve:CPAnimationEaseInOut]; [_animationScroller setViewAnimations:[paramAnimFadeOut]]; diff --git a/AppKit/CPSearchField.j b/AppKit/CPSearchField.j index 4baef5dc8..11a2ce4ef 100644 --- a/AppKit/CPSearchField.j +++ b/AppKit/CPSearchField.j @@ -69,13 +69,12 @@ var RECENT_SEARCH_PREFIX = @" "; + (CPDictionary)themeAttributes { - return [CPDictionary dictionaryWithJSObject: - { + return @{ @"image-search": [CPNull null], @"image-find": [CPNull null], @"image-cancel": [CPNull null], @"image-cancel-pressed": [CPNull null] - }]; + }; } - (id)initWithFrame:(CGRect)frame diff --git a/AppKit/CPSegmentedControl.j b/AppKit/CPSegmentedControl.j index b94cc8ea0..2c04d19b8 100644 --- a/AppKit/CPSegmentedControl.j +++ b/AppKit/CPSegmentedControl.j @@ -58,8 +58,33 @@ CPSegmentSwitchTrackingMomentary = 2; + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[CPCenterTextAlignment, CPCenterVerticalTextAlignment, CPImageLeft, CPImageScaleNone, _CGInsetMakeZero(), _CGInsetMakeZero(), [CPNull null], [CPNull null], [CPNull null], [CPNull null], 1.0, 24.0] - forKeys:[@"alignment", @"vertical-alignment", @"image-position", @"image-scaling", @"bezel-inset", @"content-inset", @"left-segment-bezel-color", @"right-segment-bezel-color", @"center-segment-bezel-color", @"divider-bezel-color", @"divider-thickness", @"default-height"]]; + return @{ + @"alignment": CPCenterTextAlignment, + @"vertical-alignment": CPCenterVerticalTextAlignment, + @"image-position": CPImageLeft, + @"image-scaling": CPImageScaleNone, + @"bezel-inset": _CGInsetMakeZero(), + @"content-inset": _CGInsetMakeZero(), + @"left-segment-bezel-color": [CPNull null], + @"right-segment-bezel-color": [CPNull null], + @"center-segment-bezel-color": [CPNull null], + @"divider-bezel-color": [CPNull null], + @"divider-thickness": 1.0, + @"default-height": 24.0, + }; +} + ++ (Class)_binderClassForBinding:(CPString)aBinding +{ + if ([self _isSelectionBinding:aBinding]) + return [_CPSegmentedControlBinder class]; + + return [super _binderClassForBinding:aBinding]; +} + ++ (BOOL)_isSelectionBinding:(CPString)aBinding +{ + return (aBinding === CPSelectedIndexBinding || aBinding === CPSelectedLabelBinding || aBinding === CPSelectedTagBinding); } - (id)initWithFrame:(CGRect)aRect @@ -79,6 +104,19 @@ CPSegmentSwitchTrackingMomentary = 2; return self; } +- (void)bind:(CPString)aBinding toObject:(id)anObject withKeyPath:(CPString)aKeyPath options:(CPDictionary)options +{ + if ([[self class] _isSelectionBinding:aBinding] && _trackingMode !== CPSegmentSwitchTrackingSelectOne) + CPLog.warn("Binding " + aBinding + " needs CPSegmentSwitchTrackingSelectOne tracking mode"); + else + [super bind:aBinding toObject:anObject withKeyPath:aKeyPath options:options]; +} + +- (void)_reverseSetBinding +{ + [_CPSegmentedControlBinder reverseSetValueForObject:self]; +} + /*! Returns the tag of the selected segment. */ @@ -177,6 +215,21 @@ CPSegmentSwitchTrackingMomentary = 2; return NO; } +- (BOOL)_selectSegmentWithLabel:(CPString)aLabel +{ + var index = 0; + + for (; index < _segments.length; ++index) + if (_segments[index].label == aLabel) + { + [self setSelectedSegment:index]; + + return YES; + } + + return NO; +} + // Specifying Tracking Mode - (BOOL)isTracking @@ -891,6 +944,74 @@ var CPSegmentedControlSegmentsKey = "CPSegmentedControlSegmentsKey", @end +var CPSegmentedControlBindersMap = {}, + CPSegmentedControlNoSelectionPlaceholder = "CPSegmentedControlNoSelectionPlaceholder"; + +@implementation _CPSegmentedControlBinder : CPBinder +{ + CPString _selectionBinding @accessors(readonly, getter=selectionBinding); +} + ++ (void)reverseSetValueForObject:(id)aSource +{ + var binder = CPSegmentedControlBindersMap[[aSource UID]]; + [binder reverseSetValueFor:[binder selectionBinding]]; +} + +- (id)initWithBinding:(CPString)aBinding name:(CPString)aName to:(id)aDestination keyPath:(CPString)aKeyPath options:(CPDictionary)options from:(id)aSource +{ + self = [super initWithBinding:aBinding name:aName to:aDestination keyPath:aKeyPath options:options from:aSource]; + + if (self) + { + CPSegmentedControlBindersMap[[aSource UID]] = self; + _selectionBinding = aName; + } + + return self; +} + +- (void)_updatePlaceholdersWithOptions:(CPDictionary)options +{ + [super _updatePlaceholdersWithOptions:options]; + + [self _setPlaceholder:CPSegmentedControlNoSelectionPlaceholder forMarker:CPMultipleValuesMarker isDefault:YES]; + [self _setPlaceholder:CPSegmentedControlNoSelectionPlaceholder forMarker:CPNoSelectionMarker isDefault:YES]; + [self _setPlaceholder:CPSegmentedControlNoSelectionPlaceholder forMarker:CPNotApplicableMarker isDefault:YES]; + [self _setPlaceholder:CPSegmentedControlNoSelectionPlaceholder forMarker:CPNullMarker isDefault:YES]; +} + +- (void)setPlaceholderValue:(id)aValue withMarker:(CPString)aMarker forBinding:(CPString)aBinding +{ + if (aValue == CPSegmentedControlNoSelectionPlaceholder) + [_source setSelected:NO forSegment:[_source selectedSegment]]; + else + [self setValue:aValue forBinding:aBinding]; +} + +- (void)setValue:(id)aValue forBinding:(CPString)aBinding +{ + if (aBinding == CPSelectedIndexBinding) + [_source setSelectedSegment:aValue]; + else if (aBinding == CPSelectedTagBinding) + [_source selectSegmentWithTag:aValue]; + else if (aBinding == CPSelectedLabelBinding) + [_source _selectSegmentWithLabel:aValue]; +} + +- (id)valueForBinding:(CPString)aBinding +{ + var selectedIndex = [_source selectedSegment]; + + if (aBinding == CPSelectedIndexBinding) + return selectedIndex; + else if (aBinding == CPSelectedTagBinding) + return [_source tagForSegment:selectedIndex]; + else if (aBinding == CPSelectedLabelBinding) + return [_source labelForSegment:selectedIndex]; +} + +@end @implementation _CPSegmentItem : CPObject { diff --git a/AppKit/CPShadowView.j b/AppKit/CPShadowView.j index 7a3b8f261..fb1092022 100644 --- a/AppKit/CPShadowView.j +++ b/AppKit/CPShadowView.j @@ -49,11 +49,10 @@ CPThemeStateShadowViewHeavy = CPThemeState("shadowview-style-heavy"); + (id)themeAttributes { - return [CPDictionary dictionaryWithJSObject: - { + return @{ @"bezel-color": [CPNull null], @"content-inset": CGInsetMakeZero() - }]; + }; } + (CGRect)frameForContentFrame:(CGRect)aFrame withWeight:(CPShadowWeight)aWeight diff --git a/AppKit/CPSlider.j b/AppKit/CPSlider.j index ba291ac09..54bc0c36f 100644 --- a/AppKit/CPSlider.j +++ b/AppKit/CPSlider.j @@ -51,8 +51,12 @@ CPCircularSlider = 1; + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[[CPNull null], _CGSizeMakeZero(), 0.0, [CPNull null]] - forKeys:[@"knob-color", @"knob-size", @"track-width", @"track-color"]]; + return @{ + @"knob-color": [CPNull null], + @"knob-size": _CGSizeMakeZero(), + @"track-width": 0.0, + @"track-color": [CPNull null], + }; } - (id)initWithFrame:(CGRect)aFrame diff --git a/AppKit/CPSplitView.j b/AppKit/CPSplitView.j index cbd8b0bbe..f9090ea8a 100644 --- a/AppKit/CPSplitView.j +++ b/AppKit/CPSplitView.j @@ -105,16 +105,13 @@ var ShouldSuppressResizeNotifications = 1, + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[1.0, - 10.0, - [CPColor grayColor], - [CPNull null], - [CPNull null]] - forKeys:[@"divider-thickness", - @"pane-divider-thickness", - @"pane-divider-color", - @"horizontal-divider-color", - @"vertical-divider-color"]]; + return @{ + @"divider-thickness": 1.0, + @"pane-divider-thickness": 10.0, + @"pane-divider-color": [CPColor grayColor], + @"horizontal-divider-color": [CPNull null], + @"vertical-divider-color": [CPNull null], + }; } - (id)initWithFrame:(CGRect)aFrame @@ -1032,7 +1029,7 @@ The sum of the views and the sum of the dividers should be equal to the size of var userInfo = nil; if (_currentDivider !== CPNotFound) - userInfo = [CPDictionary dictionaryWithObject:_currentDivider forKey:@"CPSplitViewDividerIndex"]; + userInfo = @{ @"CPSplitViewDividerIndex": _currentDivider }; [[CPNotificationCenter defaultCenter] postNotificationName:CPSplitViewWillResizeSubviewsNotification object:self @@ -1044,7 +1041,7 @@ The sum of the views and the sum of the dividers should be equal to the size of var userInfo = nil; if (_currentDivider !== CPNotFound) - userInfo = [CPDictionary dictionaryWithObject:_currentDivider forKey:@"CPSplitViewDividerIndex"]; + userInfo = @{ @"CPSplitViewDividerIndex": _currentDivider }; [[CPNotificationCenter defaultCenter] postNotificationName:CPSplitViewDidResizeSubviewsNotification object:self @@ -1160,7 +1157,14 @@ The sum of the views and the sum of the dividers should be equal to the size of _preCollapsePositions = [CPMutableDictionary new]; for (var i = 0, count = [preCollapseArray count]; i < count; i++) - [_preCollapsePositions setObject:preCollapseArray[i] forKey:i + ""]; + { + var item = preCollapseArray[i]; + + if (item === nil) + [_preCollapsePositions removeObjectForKey:String(i)]; + else + [_preCollapsePositions setObject:item forKey:String(i)]; + } } } diff --git a/AppKit/CPStepper.j b/AppKit/CPStepper.j index 7edb9fdfd..15b16684b 100644 --- a/AppKit/CPStepper.j +++ b/AppKit/CPStepper.j @@ -269,8 +269,12 @@ + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[[CPNull null], [CPNull null], _CGSizeMakeZero(), _CGSizeMakeZero()] - forKeys:[@"bezel-color-up-button", @"bezel-color-down-button", @"up-button-size", @"down-button-size"]]; + return @{ + @"bezel-color-up-button": [CPNull null], + @"bezel-color-down-button": [CPNull null], + @"up-button-size": _CGSizeMakeZero(), + @"down-button-size": _CGSizeMakeZero(), + }; } @end diff --git a/AppKit/CPTabView.j b/AppKit/CPTabView.j index 7d9d943fe..c1959e439 100644 --- a/AppKit/CPTabView.j +++ b/AppKit/CPTabView.j @@ -508,13 +508,8 @@ var CPTabViewItemsKey = "CPTabViewItemsKey", [self setDelegate:[aCoder decodeObjectForKey:CPTabViewDelegateKey]]; - var selected = [aCoder decodeObjectForKey:CPTabViewSelectedItemKey]; - if (selected) - [self selectTabViewItem:selected]; - - [self setTabViewType:[aCoder decodeIntForKey:CPTabViewTypeKey]]; - - [self setNeedsLayout]; + self.selectOnAwake = [aCoder decodeObjectForKey:CPTabViewSelectedItemKey]; + _type = [aCoder decodeIntForKey:CPTabViewTypeKey]; } return self; @@ -522,13 +517,17 @@ var CPTabViewItemsKey = "CPTabViewItemsKey", - (void)awakeFromCib { - // This is a quick and dirty fix of the tab view item we decode and install in _box - // having a different _superview decoded later in the decoding process - e.g. the - // CPTabView itself as is the case when we're coming from an xib. This solution could - // probably be improved by fixing this in nib2cib instead, but the _box doesn't yet - // exist then so it's not totally clear what to change the superview to at that stage. - if ([_box contentView]) - _box._contentView._superview = _box; + if (self.selectOnAwake) + { + [self selectTabViewItem:self.selectOnAwake]; + delete self.selectOnAwake; + } + + var type = _type; + _type = nil; + [self setTabViewType:type]; + + [self setNeedsLayout]; } - (void)encodeWithCoder:(CPCoder)aCoder diff --git a/AppKit/CPTableColumn.j b/AppKit/CPTableColumn.j index 6cf191f2d..e0cf361f9 100644 --- a/AppKit/CPTableColumn.j +++ b/AppKit/CPTableColumn.j @@ -52,7 +52,7 @@ CPTableColumnUserResizingMask = 1 << 1; CPTableView _tableView; CPView _headerView; CPView _dataView; - Object _dataViewData; + CPData _dataViewData; float _width; float _minWidth; @@ -86,7 +86,7 @@ CPTableColumnUserResizingMask = 1 << 1; if (self) { - _dataViewData = { }; + _dataViewData = nil; _width = 100.0; _minWidth = 10.0; @@ -395,12 +395,12 @@ CPTableColumnUserResizingMask = 1 << 1; - (void)setDataView:(CPView)aView { if (_dataView) - _dataViewData[[_dataView UID]] = nil; + _dataViewData = nil; [aView setThemeState:CPThemeStateTableDataView]; _dataView = aView; - _dataViewData[[aView UID]] = [CPKeyedArchiver archivedDataWithRootObject:aView]; + _dataViewData = [CPKeyedArchiver archivedDataWithRootObject:aView]; } - (CPView)dataView @@ -424,24 +424,12 @@ CPTableColumnUserResizingMask = 1 << 1; /*! @ignore */ -- (id)_newDataViewForRow:(int)aRowIndex +- (id)_newDataView { - var dataView = [self dataViewForRow:aRowIndex], - dataViewUID = [dataView UID]; + if (!_dataViewData) + return nil; - var x = [self tableView]._cachedDataViews[dataViewUID]; - if (x && x.length) - return x.pop(); - - // if we haven't cached an archive of the data view, do it now - if (!_dataViewData[dataViewUID]) - _dataViewData[dataViewUID] = [CPKeyedArchiver archivedDataWithRootObject:dataView]; - - // unarchive the data view cache - var newDataView = [CPKeyedUnarchiver unarchiveObjectWithData:_dataViewData[dataViewUID]]; - newDataView.identifier = dataViewUID; - - // make sure only we have control over the size and placement + var newDataView = [CPKeyedUnarchiver unarchiveObjectWithData:_dataViewData]; [newDataView setAutoresizingMask:CPViewNotSizable]; return newDataView; @@ -560,7 +548,7 @@ CPTableColumnUserResizingMask = 1 << 1; [[CPNotificationCenter defaultCenter] postNotificationName:CPTableViewColumnDidResizeNotification object:[self tableView] - userInfo:[CPDictionary dictionaryWithObjects:[self, oldWidth] forKeys:[@"CPTableColumn", "CPOldWidth"]]]; + userInfo:@{ @"CPTableColumn": self, @"CPOldWidth": oldWidth }]; } @end @@ -757,7 +745,7 @@ var CPTableColumnIdentifierKey = @"CPTableColumnIdentifierKey", if (self) { - _dataViewData = { }; + _dataViewData = nil; _width = [aCoder decodeFloatForKey:CPTableColumnWidthKey]; _minWidth = [aCoder decodeFloatForKey:CPTableColumnMinWidthKey]; diff --git a/AppKit/CPTableHeaderView.j b/AppKit/CPTableHeaderView.j index 14a2b0220..44c34e1ac 100644 --- a/AppKit/CPTableHeaderView.j +++ b/AppKit/CPTableHeaderView.j @@ -45,8 +45,16 @@ + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[[CPNull null], CPLeftTextAlignment, CPLineBreakByTruncatingTail, CGInsetMakeZero(), [CPNull null], [CPNull null], [CPNull null], CGSizeMakeZero()] - forKeys:[@"background-color", @"text-alignment", @"line-break-mode", @"text-inset", @"text-color", @"font", @"text-shadow-color", @"text-shadow-offset"]]; + return @{ + @"background-color": [CPNull null], + @"text-alignment": CPLeftTextAlignment, + @"line-break-mode": CPLineBreakByTruncatingTail, + @"text-inset": CGInsetMakeZero(), + @"text-color": [CPNull null], + @"font": [CPNull null], + @"text-shadow-color": [CPNull null], + @"text-shadow-offset": CGSizeMakeZero(), + }; } - (void)initWithFrame:(CGRect)frame @@ -239,8 +247,10 @@ var _CPTableColumnHeaderViewStringValueKey = @"_CPTableColumnHeaderViewStringVal + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[[CPNull null], [CPColor grayColor]] - forKeys:[@"background-color", @"divider-color"]]; + return @{ + @"background-color": [CPNull null], + @"divider-color": [CPColor grayColor], + }; } - (void)_init @@ -321,6 +331,9 @@ var _CPTableColumnHeaderViewStringValueKey = @"_CPTableColumnHeaderViewStringVal { var headerView = [_tableView._tableColumns[column] headerView]; [headerView setThemeState:CPThemeStateHighlighted]; + + if (_tableView._editingColumn == column) + [[self window] makeFirstResponder:_tableView]; } _pressedColumn = column; diff --git a/AppKit/CPTableView.j b/AppKit/CPTableView.j index 93dd78f6c..7e6c9645a 100644 --- a/AppKit/CPTableView.j +++ b/AppKit/CPTableView.j @@ -25,6 +25,7 @@ @import "CPDragServer_Constants.j" @import "CGGradient.j" +@import "CPCib.j" @import "CPCompatibility.j" @import "CPControl.j" @import "CPImageView.j" @@ -188,6 +189,8 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5; Object _dataViewsForTableColumns; Object _cachedDataViews; + CPDictionary _archivedDataViews; + Object _unavailable_custom_cibs; //Configuring Behavior BOOL _allowsColumnReordering; @@ -230,6 +233,8 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5; CPDate _startTrackingTimestamp; BOOL _trackingPointMovedOutOfClickSlop; CGPoint _editingCellIndex; + CPInteger _editingRow; + CPInteger _editingColumn; _CPTableDrawView _tableDrawView; @@ -255,6 +260,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5; BOOL _disableAutomaticResizing @accessors(property=disableAutomaticResizing); BOOL _lastColumnShouldSnap; BOOL _implementsCustomDrawRow; + BOOL _isViewBased; BOOL _contentBindingExpicitelySet; CPTableColumn _draggedColumn; @@ -274,26 +280,18 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5; */ + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[[CPNull null], - [CPNull null], - [CPNull null], - [CPNull null], - [CPNull null], - [CPNull null], - [CPNull null], - [CPNull null], - [CPNull null], - 25.0] - forKeys:[@"alternating-row-colors", - @"grid-color", - @"highlighted-grid-color", - @"selection-color", - @"sourcelist-selection-color", - @"sort-image", - @"sort-image-reversed", - @"selection-radius", - @"image-generic-file", - @"default-row-height"]]; + return @{ + @"alternating-row-colors": [CPNull null], + @"grid-color": [CPNull null], + @"highlighted-grid-color": [CPNull null], + @"selection-color": [CPNull null], + @"sourcelist-selection-color": [CPNull null], + @"sort-image": [CPNull null], + @"sort-image-reversed": [CPNull null], + @"selection-radius": [CPNull null], + @"image-generic-file": [CPNull null], + @"default-row-height": 25.0, + }; } - (id)initWithFrame:(CGRect)aFrame @@ -380,7 +378,8 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5; _exposedRows = [CPIndexSet indexSet]; _exposedColumns = [CPIndexSet indexSet]; _cachedDataViews = { }; - + _archivedDataViews = nil; + _unavailable_custom_cibs = { }; _cachedRowHeights = []; _groupRows = [CPIndexSet indexSet]; @@ -392,6 +391,9 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5; _draggedColumn = nil; _draggingViews = [CPArray array]; + _editingRow = CPNotFound; + _editingColumn = CPNotFound; + /* //gradients for the source list when CPTableView is NOT first responder or the window is NOT key // FIX ME: we need to actually implement this. _sourceListInactiveGradient = CGGradientCreateWithColorComponents(CGColorSpaceCreateDeviceRGB(), [168.0/255.0,183.0/255.0,205.0/255.0,1.0,157.0/255.0,174.0/255.0,199.0/255.0,1.0], [0,1], 2); @@ -402,6 +404,8 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5; if (!_sortDescriptors) _sortDescriptors = []; + + [self _startObservingFirstResponder]; } /*! @@ -1029,8 +1033,7 @@ NOT YET IMPLEMENTED // TODO Only notify when a column drag operation ends, not each time a column reaches a new slot? [[CPNotificationCenter defaultCenter] postNotificationName:CPTableViewColumnDidMoveNotification object:self - userInfo:[CPDictionary dictionaryWithObjects:[fromIndex, toIndex] - forKeys:[@"CPOldColumn", @"CPNewColumn"]]]; + userInfo:@{ @"CPOldColumn": fromIndex, @"CPNewColumn": toIndex }]; } /*! @@ -1492,20 +1495,29 @@ NOT YET IMPLEMENTED { // FIX ME: Cocoa documentation says all this should be called in THIS method: // sets up the field editor, and sends selectWithFrame:inView:editor:delegate:start:length: and editWithFrame:inView:editor:delegate:event: to the field editor's NSCell object with the NSTableView as the text delegate. + if (_isViewBased) + { + var identifier = [_tableColumns[columnIndex] UID], + view = _dataViewsForTableColumns[identifier][rowIndex]; - if (![self isRowSelected:rowIndex]) - [[CPException exceptionWithName:@"Error" reason:@"Attempt to edit row="+rowIndex+" when not selected." userInfo:nil] raise]; + [[self window] makeFirstResponder:view]; + } + else + { + if (![self isRowSelected:rowIndex]) + [[CPException exceptionWithName:@"Error" reason:@"Attempt to edit row="+rowIndex+" when not selected." userInfo:nil] raise]; - [self scrollRowToVisible:rowIndex]; - [self scrollColumnToVisible:columnIndex]; + [self scrollRowToVisible:rowIndex]; + [self scrollColumnToVisible:columnIndex]; - // TODO Do something with flag. + // TODO Do something with flag. - _editingCellIndex = CGPointMake(columnIndex, rowIndex); - _editingCellIndex._shouldSelect = flag; + _editingCellIndex = CGPointMake(columnIndex, rowIndex); + _editingCellIndex._shouldSelect = flag; - [self reloadDataForRowIndexes:[CPIndexSet indexSetWithIndex:rowIndex] - columnIndexes:[CPIndexSet indexSetWithIndex:columnIndex]]; + [self reloadDataForRowIndexes:[CPIndexSet indexSetWithIndex:rowIndex] + columnIndexes:[CPIndexSet indexSetWithIndex:columnIndex]]; + } } /*! @@ -1902,6 +1914,90 @@ NOT YET IMPLEMENTED return row; } +/*! + Returns the index of the row for the specified view. + + @param view The view. + @return The index of the row corresponding to the view. Returns -1 if the view is not a dataView, or a subview of a dataView. + @discussion This is typically needed in the action method for a CPButton (or CPControl) to find out what row (and column) the action should be performed on. + The implementation is O(rxc) where r is the number of visible rows, and c is the number of visible columns, so this method should generally not be called within a loop. +*/ +- (CPInteger)rowForView:(CPView)aView +{ + return [self rowNotColumn:YES forView:aView]; +} + +/*! + Returns the index of the column for the specified view. + + @param view The view. + @return The index of the column corresponding to the view. Returns -1 if the view is not a dataView, or a subview of a dataView. + @discussion This is typically needed in the action method for a CPButton (or CPControl) to find out what row (and column) the action should be performed on. + The implementation is O(rxc) where r is the number of visible rows, and c is the number of visible columns, so this method should generally not be called within a loop. +*/ +- (CPInteger)columnForView:(CPView)aView +{ + return [self rowNotColumn:NO forView:aView]; +} + +/*! + @ignore +*/ +- (CPInteger)rowNotColumn:(BOOL)isRow forView:(CPView)aView +{ + if (![aView isKindOfClass:[CPView class]]) + return -1; + + var cellView = aView, + contentView = [[self window] contentView]; + + while (1) + { + if (cellView == contentView) + { + return -1; + } + else + { + var superview = [cellView superview]; + + if ([superview isKindOfClass:[CPTableView class]]) + { + break; + } + + cellView = superview; + } + } + + var exposedRows = [], + exposedColumns = []; + + [_exposedRows getIndexes:exposedRows maxCount:-1 inIndexRange:nil]; + [_exposedColumns getIndexes:exposedColumns maxCount:-1 inIndexRange:nil]; + + var colcount = exposedColumns.length, + countOfRows = exposedRows.length; + + while (colcount--) + { + var column = exposedColumns[colcount], + tableColumnUID = [_tableColumns[column] UID], + dataViewsInTableColumn = _dataViewsForTableColumns[tableColumnUID], + rowcount = countOfRows; + + while (rowcount--) + { + var row = exposedRows[rowcount]; + + if (cellView == dataViewsInTableColumn[row]) + return isRow ? row : column; + } + } + + return -1; +} + /*! Returns a rect for the dataview / cell at the column and row given. If the column or row index is greater than the number of columns or rows a CGZeroRect is returned @@ -2223,10 +2319,8 @@ NOT YET IMPLEMENTED var heightObject = _cachedRowHeights[_cachedRowHeights.length - 1], height = heightObject.heightAboveRow + heightObject.height + _intercellSpacing.height; - } - if ([superview isKindOfClass:[CPClipView class]]) { var superviewSize = [superview bounds].size; @@ -2355,10 +2449,10 @@ NOT YET IMPLEMENTED for (var i = 0; i < [columns count]; i++) { var column = [columns objectAtIndex:i], - metaData = [CPDictionary dictionaryWithJSObject:{ - @"identifier": [column identifier], - @"width": [column width] - }]; + metaData = @{ + @"identifier": [column identifier], + @"width": [column width] + }; [columnsSetup addObject:metaData]; } @@ -2401,9 +2495,29 @@ NOT YET IMPLEMENTED Sets the delegate of the receiver. @param aDelegate the delegate object for the tableview. - The delegate can provide easy notification for user interaction, display behaviour, contextual menus, and more. + The delegate can provide notification for user interaction, display behaviour, contextual menus, and more. +@section Providing Views for Rows and Columns: + +Returns the view used to display the specified row and column. +@code +- (CPView)tableView:(CPTableView)tableView viewForTableColumn:(CPTableColumn)tableColumn row:(CPInteger)row +@endcode + +@param +The view to display the specified column and row. Returning nil is acceptable, and a view will not be shown at that location. + +@discussion +This method is required if you wish to use a view-based table view in Interface builder or cell-based table views without using CPTableColumn's setDataView: method. + +It is recommended that the implementation of this method first call the CPTableView method makeViewWithIdentifier:owner: passing, respectively, the tableColumn parameter’s identifier and self as the owner to attempt to reuse a view that is no longer visible. The frame of the view returned by this method is not important, and it will be automatically set by the table. + +The view's properties should be properly set up before returning the result. The delegate do not need to implement tableview:objectValueforTableColumn:row:. + +When using bindings, this method is optional if at least one identifier has been associated with the table view at design time. If this method is not implemented, the table will automatically call the CPTableView method makeViewWithIdentifier:owner: with the tableColumn parameter’s identifier and the table view’s delegate respectively as parameters, to attempt to reuse a previous view, or automatically unarchive a prototype associated with the table view. + +The autoresizingMask of the returned view will automatically be set to CPViewNotSizable if the data view was created in Interface builder in a table column. Otherwise, for example if the view is created manually in code, this method expects the data view to have a CPViewNotSizable mask. @section displayingcells Displaying Cells: @@ -2419,8 +2533,6 @@ Group rows are a way to separate a groups of data in a tableview. Return YES if @endcode - - @section editingcells Editing Cells: Return YES if the dataview at a given index and column should be edited, otherwise NO. @@ -2429,9 +2541,6 @@ Return YES if the dataview at a given index and column should be edited, otherwi @endcode - - - @section sizes Setting Row and Column Size: Return the height of the row at a given index. Only implement this if you want variable row heights. Otherwise use setRowHeight: on the tableview. @@ -2440,8 +2549,6 @@ Return the height of the row at a given index. Only implement this if you want v @endcode - - @section selection Selecting in the TableView: @note These methods are only called when the user does something.@endnote @@ -2460,7 +2567,7 @@ Return YES if the table column given should be selected, otherwise NO to deny th - (BOOL)tableView:(CPTableView)aTableView shouldSelectTableColumn:(CPTableColumn)aTableColumn; @endcode -Inform the delegate that the tableview is in the process of chaining the selection. +Informs the delegate that the tableview is in the process of chaining the selection. This usually happens when the user is dragging their mouse across rows. @code - (void)tableViewSelectionIsChanging:(CPNotification)aNotification @@ -2472,10 +2579,7 @@ Informs the delegate that the tableview selection has changed. @endcode - - - -@section movingandresizingcolumsn Moving and Resizing Columns: +@section movingandresizingcolumns Moving and Resizing Columns: Return YES if the column at a given index should move to a new column index, otherwise NO. @code @@ -2483,13 +2587,13 @@ Return YES if the column at a given index should move to a new column index, oth @endcode -Notifies the delegate that the tableview drag occurred. This is send on mouse up. +Notifies the delegate that the tableview drag occurred. This is sent on mouse up. @code - (void)tableView:(CPTableView)tableView didDragTableColumn:(CPTableColumn)tableColumn; @endcode -Notifies the delegate that a tablecolumn was moved by the user. +Notifies the delegate that a table column was moved by the user. @code - (void)tableViewColumnDidMove:(CPNotification)aNotification; @endcode @@ -2500,8 +2604,6 @@ Notifies the delegate that the user resized the table column @endcode - - @section mousevents Responding to Mouse Events: Sent when the user clicks a table column but doesn't drag. @@ -2510,7 +2612,7 @@ Sent when the user clicks a table column but doesn't drag. @endcode -Notify the delegate that the user click the table header of a column. +Notify the delegate that the user has clicked the table header of a column. @code - (void)tableView:(CPTableView)tableView mouseDownInHeaderOfTableColumn:(CPTableColumn)tableColumn; @endcode @@ -2518,15 +2620,15 @@ Notify the delegate that the user click the table header of a column. @section contextualmenus Contextual Menus: -Called when the user right clicks on the tableview. -1 is passed for the row or column if the user doesn't right click on a real row or column -Return a CPMenu that should be displayed if the user right clicks. If you do not implement this the tableview will just call super on menuForEvent +Called when the user right-clicks on the tableview. -1 is passed for the row or column if the user doesn't right click on a real row or column +Return a CPMenu that should be displayed if the user right-clicks. If you do not implement this the tableview will call super on menuForEvent @code - (CPMenu)tableView:(CPTableView)aTableView menuForTableColumn:(CPTableColumn)aColumn row:(int)aRow; @endcode @section deletekey Delete Key -Called when the user presses the delete key. Many times you will want to delete data (or prompt for deletion) when the user hids the delete key. +Called when the user presses the delete key. Many times you will want to delete data (or prompt for deletion) when the user presses the delete key. Your delegate can implement this method to avoid subclassing the tableview to add this behaviour. @code @@ -2576,6 +2678,8 @@ Your delegate can implement this method to avoid subclassing the tableview to ad if ([_delegate respondsToSelector:@selector(tableView:dataViewForTableColumn:row:)]) _implementedDelegateMethods |= CPTableViewDelegate_tableView_dataViewForTableColumn_row_; + [self _updateIsViewBased]; + if ([_delegate respondsToSelector:@selector(tableView:didClickTableColumn:)]) _implementedDelegateMethods |= CPTableViewDelegate_tableView_didClickTableColumn_; @@ -2944,6 +3048,8 @@ Your delegate can implement this method to avoid subclassing the tableview to ad headerView = [tableColumn headerView], row = [_exposedRows firstIndex]; + [dragView setFrame:bounds]; + while (row !== CPNotFound) { var dataView = [self _newDataViewForRow:row tableColumn:tableColumn], @@ -2969,7 +3075,6 @@ Your delegate can implement this method to avoid subclassing the tableview to ad [dragView setBackgroundColor:[CPColor whiteColor]]; [dragView setAlphaValue:0.7]; - [dragView setFrame:bounds]; return dragView; } @@ -3000,7 +3105,6 @@ Your delegate can implement this method to avoid subclassing the tableview to ad [[CPException exceptionWithName:@"Error" reason:reason userInfo:nil] raise]; } - _retargetedDropRow = row; _retargetedDropOperation = operation; } @@ -3130,6 +3234,16 @@ Your delegate can implement this method to avoid subclassing the tableview to ad return _sortDescriptors; } +- (BOOL)_dataSourceRespondsToObjectValueForTableColumn +{ + return _implementedDataSourceMethods & CPTableViewDataSource_tableView_objectValueForTableColumn_row_; +} + +- (BOOL)_delegateRespondsToDataViewForTableColumn +{ + return _implementedDelegateMethods & CPTableViewDelegate_tableView_dataViewForTableColumn_row_; +} + /*! @ignore */ @@ -3149,12 +3263,12 @@ Your delegate can implement this method to avoid subclassing the tableview to ad // tableView:objectValueForTableColumn:row: is optional if content bindings are in place. if (objectValue === undefined) { - if (_implementedDataSourceMethods & CPTableViewDataSource_tableView_objectValueForTableColumn_row_) + if ([self _dataSourceRespondsToObjectValueForTableColumn]) { objectValue = [_dataSource tableView:self objectValueForTableColumn:aTableColumn row:aRowIndex]; tableColumnObjectValues[aRowIndex] = objectValue; } - else if (![self infoForBinding:@"content"]) + else if (![self _delegateRespondsToDataViewForTableColumn] && ![self infoForBinding:@"content"]) { CPLog.warn(@"no content binding established and data source " + [_dataSource description] + " does not implement tableView:objectValueForTableColumn:row:"); } @@ -3177,7 +3291,6 @@ Your delegate can implement this method to avoid subclassing the tableview to ad // there are multiple views in the clip view? if ([superview isKindOfClass:[CPClipView class]]) _exposedRect = [superview bounds]; - else _exposedRect = [self bounds]; } @@ -3301,7 +3414,8 @@ Your delegate can implement this method to avoid subclassing the tableview to ad [dataViews replaceObjectAtIndex:row withObject:nil]; - [self _enqueueReusableDataView:dataView]; + if (row !== _editingRow || column !== _editingColumn) + [self _enqueueReusableDataView:dataView]; } } } @@ -3373,7 +3487,7 @@ Your delegate can implement this method to avoid subclassing the tableview to ad [dataView unsetThemeState:CPThemeStateGroupRow]; } - [self setNeedsDisplay:YES] + [self setNeedsDisplay:YES]; } if (_implementedDelegateMethods & CPTableViewDelegate_tableView_willDisplayView_forTableColumn_row_) @@ -3384,6 +3498,9 @@ Your delegate can implement this method to avoid subclassing the tableview to ad _dataViewsForTableColumns[tableColumnUID][row] = dataView; + if (_isViewBased) + continue; + if (isButton || (_editingCellIndex && _editingCellIndex.x === column && _editingCellIndex.y === row)) { if (isTextField) @@ -3421,7 +3538,7 @@ Your delegate can implement this method to avoid subclassing the tableview to ad if (_contentBindingExpicitelySet) [self _prepareContentBindedDataView:aDataView forRow:aRow]; else - // For both cell-based and view-based + // For both cell-based and view-based [aTableColumn _prepareDataView:aDataView forRow:aRow]; } @@ -3534,17 +3651,124 @@ Your delegate can implement this method to avoid subclassing the tableview to ad /*! @ignore */ -- (CPView)_newDataViewForRow:(CPInteger)aRow tableColumn:(CPTableColumn)aTableColumn +- (CPView)_dataViewForTableColumn:(CPTableColumn)aTableColumn row:(CPInteger)aRow { - if ((_implementedDelegateMethods & CPTableViewDelegate_tableView_dataViewForTableColumn_row_)) + var view = nil; + + if ([self _delegateRespondsToDataViewForTableColumn]) { - var dataView = [_delegate tableView:self dataViewForTableColumn:aTableColumn row:aRow]; - [aTableColumn setDataView:dataView]; + view = [_delegate tableView:self dataViewForTableColumn:aTableColumn row:aRow]; + + if (!view) + [CPException raise:CPInternalInconsistencyException reason:"The view returned by -tableView:dataViewForTableColumn:row: should not be nil"]; } - return [aTableColumn _newDataViewForRow:aRow]; + return view; } +/*! + @ignore +*/ +- (CPView)_newDataViewForRow:(CPInteger)aRow tableColumn:(CPTableColumn)aTableColumn +{ + var view = [self _dataViewForTableColumn:aTableColumn row:aRow]; + + if (!view) + { + var columnIdentifier = [aTableColumn identifier]; + + // For Pre-Lion nibs, there is no automatic identifier for table column; use UID as identifier. + if (!columnIdentifier) + columnIdentifier = [aTableColumn UID]; + + view = [self makeViewWithIdentifier:columnIdentifier owner:_delegate]; + + if (!view) + view = [aTableColumn _newDataView]; + + [view setIdentifier:columnIdentifier]; + } + + return view; +} + +/* + Returns a view with the specified identifier. + + @param identifier The view identifier. Must not be nil. + @param owner The owner of the CIB that may be loaded and instituted to create a new view with the particular identifier. + @return A view for the row. + + @discussion + Typically identifier is associated with an external CIB and the table view will automatically instantiate the CIB with the provided owner. The owner of the CIB that may be loaded and instantiated to create a new view with the particular identifier is typically the table view’s delegate. The owner is useful in setting up outlets and target and actions from the view. + + This method will typically be called by the delegate in tableView:dataViewForTableColumn:row:, but it can also be overridden to provide custom views for the identifier. This method may also return a reused view with the same identifier that was no longer available on screen. +*/ +- (id)makeViewWithIdentifier:(CPString)anIdentifier owner:(id)anOwner +{ + if (!anIdentifier) + return nil; + + var view, + // See if we have some reusable view available + reusableViews = _cachedDataViews[anIdentifier]; + + if (reusableViews && reusableViews.length) + view = reusableViews.pop(); + // Otherwise see if we have a view in the cib with this identifier + else if (_isViewBased) + view = [self _unarchiveViewWithIdentifier:anIdentifier owner:anOwner]; + + return view; +} + +/*! + @ignore +*/ +- (CPView)_unarchiveViewWithIdentifier:(CPString)anIdentifier owner:(id)anOwner +{ + var cib = [_archivedDataViews objectForKey:anIdentifier]; + + if (!cib && !_unavailable_custom_cibs[anIdentifier]) + { + var bundle = anOwner ? [CPBundle bundleForClass:[anOwner class]] : [CPBundle mainBundle]; + cib = [[CPCib alloc] initWithCibNamed:anIdentifier bundle:bundle]; + } + + if (!cib) + { + _unavailable_custom_cibs[anIdentifier] = YES; + return nil; + } + + var objects = [], + load = [cib instantiateCibWithOwner:anOwner topLevelObjects:objects]; + + if (!load) + return nil; + + var count = objects.length; + + while (count--) + { + var obj = objects[count]; + + if ([obj isKindOfClass:[CPView class]]) + { + [obj setIdentifier:anIdentifier]; + [obj setAutoresizingMask:CPViewNotSizable]; + + return obj; + } + } + + return nil; +} + +- (void)_updateIsViewBased +{ + _isViewBased = (_implementedDelegateMethods & CPTableViewDelegate_tableView_dataViewForTableColumn_row_ || _archivedDataViews != nil); +} /*! @ignore */ @@ -3554,7 +3778,7 @@ Your delegate can implement this method to avoid subclassing the tableview to ad return; // FIXME: yuck! - var identifier = aDataView.identifier; + var identifier = [aDataView identifier]; if (!_cachedDataViews[identifier]) _cachedDataViews[identifier] = [aDataView]; @@ -4133,7 +4357,6 @@ Your delegate can implement this method to avoid subclassing the tableview to ad else _selectionAnchorRow = row; - //set ivars for startTrackingPoint and time... _startTrackingPoint = aPoint; _startTrackingTimestamp = new Date(); @@ -4199,7 +4422,6 @@ Your delegate can implement this method to avoid subclassing the tableview to ad else _draggedRowIndexes = [CPIndexSet indexSetWithIndex:row]; - //ask the datasource for the data var pboard = [CPPasteboard pasteboardWithName:CPDragPboard]; @@ -4294,7 +4516,7 @@ Your delegate can implement this method to avoid subclassing the tableview to ad } // Accept either tableView:setObjectValue:forTableColumn:row: delegate method, or a binding. - if (mouseIsUp + if (!_isViewBased && mouseIsUp && !_trackingPointMovedOutOfClickSlop && ([[CPApp currentEvent] clickCount] > 1) && ((_implementedDataSourceMethods & CPTableViewDataSource_tableView_setObjectValue_forTableColumn_row_) @@ -4406,7 +4628,7 @@ Your delegate can implement this method to avoid subclassing the tableview to ad var row = [self _proposedRowAtPoint:theDragPoint], rowRect = [self rectOfRow:row]; - // If there is no (the default) or to little inter cell spacing we create some room for the CPTableViewDropAbove indicator + // If there is no (the default) or too little inter-cell spacing we create some room for the CPTableViewDropAbove indicator // This probably doesn't work if the row height is smaller than or around 5.0 if ([self intercellSpacing].height < 5.0) rowRect = CGRectInset(rowRect, 0.0, 5.0 - [self intercellSpacing].height); @@ -4426,7 +4648,7 @@ Your delegate can implement this method to avoid subclassing the tableview to ad - (CPInteger)_proposedRowAtPoint:(CGPoint)dragPoint { var row = [self rowAtPoint:dragPoint], - // Determine if the mouse is currently closer to this row or the row below it + // Determine if the mouse is currently closer to this row or the row below it lowerRow = row + 1, rect = [self rectOfRow:row], bottomPoint = _CGRectGetMaxY(rect), @@ -4525,7 +4747,7 @@ Your delegate can implement this method to avoid subclassing the tableview to ad - (BOOL)prepareForDragOperation:(id)sender { // FIX ME: is there anything else that needs to happen here? - // actual validation is called in dragginUpdated: + // actual validation is called in draggingUpdated: [_dropOperationFeedbackView removeFromSuperview]; return (_implementedDataSourceMethods & CPTableViewDataSource_tableView_validateDrop_proposedRow_proposedDropOperation_); @@ -4705,7 +4927,6 @@ Your delegate can implement this method to avoid subclassing the tableview to ad { return YES; } - /*! @ignore */ @@ -4714,6 +4935,78 @@ Your delegate can implement this method to avoid subclassing the tableview to ad return YES; } +/*! + @ignore +*/ +- (id)hitTest:(CGPoint)aPoint +{ + var hit = [super hitTest:aPoint]; + + if ([[CPApp currentEvent] type] == CPLeftMouseDown && [hit acceptsFirstResponder] && ![self isRowSelected:[self rowForView:hit]]) + return self; + + return hit; +} + +- (void)_startObservingFirstResponder +{ + [[CPNotificationCenter defaultCenter] addObserver:self selector:@selector(_firstResponderDidChange:) name:_CPWindowDidChangeFirstResponderNotification object:[self window]]; +} + +- (void)_stopObservingFirstResponder +{ + [[CPNotificationCenter defaultCenter] removeObserver:self name:_CPWindowDidChangeFirstResponderNotification object:[self window]]; +} + +- (void)_firstResponderDidChange:(CPNotification)aNotification +{ + var responder = [[self window] firstResponder]; + + _editingRow = [self rowForView:responder]; + _editingColumn = [self columnForView:responder]; + + if (_editingRow !== CPNotFound && [responder isKindOfClass:[CPTextField class]] && ![responder isBezeled]) + { + [responder setBezeled:YES]; + [self _registerForEndEditingNote:responder]; + } +} + +- (void)_registerForEndEditingNote:(CPView)aTextField +{ + [[CPNotificationCenter defaultCenter] addObserver:self selector:@selector(_textFieldEditingDidEnd:) name:CPControlTextDidEndEditingNotification object:aTextField]; +} + +- (void)_unregisterForEndEditingNote:(CPView)aTextField +{ + [[CPNotificationCenter defaultCenter] removeObserver:self name:CPControlTextDidEndEditingNotification object:aTextField]; +} + +- (void)_textFieldEditingDidEnd:(CPNotification)aNote +{ + // FIXME: When you edit a text field and hit enter without any text modification, the CPControlTextDidEndEditingNotification + // is NOT sent. This is a bug in CPTextField or CPControl according to cocoa. + var textField = [aNote object]; + + [self _unregisterForEndEditingNote:textField]; + [textField setBezeled:NO]; + + var action = [self _disableActionIfExists:textField]; + [textField resignFirstResponder]; + [textField setAction:action]; +} + +- (SEL)_disableActionIfExists:(CPView)aView +{ + // TODO: We disable action to prevent it from beeing sent twice when we resign the FR inside a textEndEditing notification. + // Check if this is due to a bug in CPTextField. + var action = nil; + if ([aView respondsToSelector:@selector(action)] && (action = [aView action])) + [aView setAction:nil]; + + return action; +} + /*! @ignore */ @@ -4801,11 +5094,10 @@ Your delegate can implement this method to avoid subclassing the tableview to ad if (i >= [self numberOfRows] || i < 0) return; - if (_implementedDelegateMethods & CPTableViewDelegate_tableView_shouldSelectRow_) { - while (![_delegate tableView:self shouldSelectRow:i] && (i < [self numberOfRows] || i > 0)) + while (![_delegate tableView:self shouldSelectRow:i] && (i < [self numberOfRows] && i > 0)) shouldGoUpward ? i-- : i++; //check to see if the row can be selected if it can't be then see if the next row can be selected // If the index still can be selected after the loop then just return. @@ -4855,6 +5147,7 @@ Your delegate can implement this method to avoid subclassing the tableview to ad @end + @implementation CPTableView (Bindings) + (id)_binderClassForBinding:(CPString)aBinding @@ -4908,6 +5201,7 @@ Your delegate can implement this method to avoid subclassing the tableview to ad @end + @implementation CPTableContentBinder : CPBinder { id _content @accessors(property=content); @@ -4925,6 +5219,7 @@ Your delegate can implement this method to avoid subclassing the tableview to ad @end + var CPTableViewDataSourceKey = @"CPTableViewDataSourceKey", CPTableViewDelegateKey = @"CPTableViewDelegateKey", CPTableViewHeaderViewKey = @"CPTableViewHeaderViewKey", @@ -4944,7 +5239,8 @@ var CPTableViewDataSourceKey = @"CPTableViewDataSourceKey", CPTableViewAlternatingRowColorsKey = @"CPTableViewAlternatingRowColorsKey", CPTableViewHeaderViewKey = @"CPTableViewHeaderViewKey", CPTableViewCornerViewKey = @"CPTableViewCornerViewKey", - CPTableViewAutosaveNameKey = @"CPTableViewAutosaveNameKey"; + CPTableViewAutosaveNameKey = @"CPTableViewAutosaveNameKey", + CPTableViewArchivedReusableViewsKey = @"CPTableViewArchivedReusableViewsKey"; @implementation CPTableView (CPCoding) @@ -4988,6 +5284,11 @@ var CPTableViewDataSourceKey = @"CPTableViewDataSourceKey", [self _init]; + if ([aCoder containsValueForKey:CPTableViewArchivedReusableViewsKey]) + _archivedDataViews = [aCoder decodeObjectForKey:CPTableViewArchivedReusableViewsKey]; + + [self _updateIsViewBased]; + [self viewWillMoveToSuperview:[self superview]]; // Do this as late as possible to make sure the tableview is fully configured @@ -5028,10 +5329,14 @@ var CPTableViewDataSourceKey = @"CPTableViewDataSourceKey", [aCoder encodeObject:_headerView forKey:CPTableViewHeaderViewKey]; [aCoder encodeObject:_autosaveName forKey:CPTableViewAutosaveNameKey]; + + if (_archivedDataViews) + [aCoder encodeObject:_archivedDataViews forKey:CPTableViewArchivedReusableViewsKey]; } @end + @implementation CPIndexSet (tableview) - (void)removeMatches:(CPIndexSet)otherSet @@ -5162,6 +5467,7 @@ var CPTableViewDataSourceKey = @"CPTableViewDataSourceKey", @end + @implementation _CPColumnDragView : CPView { CPColor _lineColor; @@ -5199,3 +5505,47 @@ var CPTableViewDataSourceKey = @"CPTableViewDataSourceKey", } @end + + +@implementation CPTableCellView : CPView +{ + id _objectValue @accessors(property=objectValue); + + CPTextField _textField @accessors(property=textField); + CPImageView _imageView @accessors(property=imageView); +} + +- (void)awakeFromCib +{ + [self setThemeState:CPThemeStateTableDataView]; +} + +- (void)setThemeState:(CPThemeState)aState +{ + [super setThemeState:aState]; + [self recursivelyPerformSelector:@selector(setThemeState:) withObject:aState startingFrom:self]; +} + +- (void)unsetThemeState:(CPThemeState)aState +{ + [super unsetThemeState:aState]; + [self recursivelyPerformSelector:@selector(unsetThemeState:) withObject:aState startingFrom:self]; +} + +- (void)recursivelyPerformSelector:(SEL)selector withObject:(id)anObject startingFrom:(id)aView +{ + [[aView subviews] enumerateObjectsUsingBlock:function(view, idx) + { + [view performSelector:selector withObject:anObject]; + + if (![view isKindOfClass:[self class]]) // Avoid infinite loop if a subview is a CPTableCellView. + [self recursivelyPerformSelector:selector withObject:anObject startingFrom:view]; + }]; +} + +- (CPString)description +{ + return "<" + [self className] + " 0x" + [CPString stringWithHash:[self UID]] + " identifier=" + [self identifier] + ">"; +} + +@end diff --git a/AppKit/CPTextField.j b/AppKit/CPTextField.j index fbc667d9a..9180710f3 100644 --- a/AppKit/CPTextField.j +++ b/AppKit/CPTextField.j @@ -20,8 +20,6 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#import "../Foundation/Ref.h" - @import "CPControl.j" @import "CPStringDrawing.j" @import "CPCompatibility.j" @@ -72,15 +70,15 @@ function CPTextFieldBlurFunction(anEvent, owner, domElement, inputElement, resig }, 0.0); } - CPTextFieldHandleBlur(anEvent, AT_REF(owner)); - AT_DEREF(didBlurRef, YES); + CPTextFieldHandleBlur(anEvent, @ref(owner)); + @deref(didBlurRef) = YES; return true; } function CPTextFieldHandleBlur(anEvent, ownerRef) { - AT_DEREF(ownerRef, nil); + @deref(ownerRef) = nil; [[CPRunLoop currentRunLoop] limitDateForMode:CPDefaultRunLoopMode]; } @@ -206,8 +204,11 @@ CPTextFieldStatePlaceholder = CPThemeState("placeholder"); + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[_CGInsetMakeZero(), _CGInsetMake(1.0, 0.0, 0.0, 0.0), [CPNull null]] - forKeys:[@"bezel-inset", @"content-inset", @"bezel-color"]]; + return @{ + @"bezel-inset": _CGInsetMakeZero(), + @"content-inset": _CGInsetMake(1.0, 0.0, 0.0, 0.0), + @"bezel-color": [CPNull null], + }; } /* @ignore */ @@ -233,7 +234,7 @@ CPTextFieldStatePlaceholder = CPThemeState("placeholder"); CPTextFieldInputOwner._DOMElement, CPTextFieldDOMInputElement, CPTextFieldInputResigning, - AT_REF(CPTextFieldInputDidBlur)); + @ref(CPTextFieldInputDidBlur)); }; if (CPFeatureIsCompatible(CPInputOnInputEventFeature)) @@ -347,6 +348,11 @@ CPTextFieldStatePlaceholder = CPThemeState("placeholder"); // We only allow first responder status if the field is editable and enabled. if (!shouldBeEditable && [[self window] firstResponder] === self) [[self window] makeFirstResponder:nil]; + + if (shouldBeEditable) + [self setThemeState:CPThemeStateEditable]; + else + [self unsetThemeState:CPThemeStateEditable]; } /*! @@ -770,7 +776,7 @@ CPTextFieldStatePlaceholder = CPThemeState("placeholder"); var error = @""; - if ([self _setStringValue:aValue isNewValue:NO errorDescription:AT_REF(error)] === NO) + if ([self _setStringValue:aValue isNewValue:NO errorDescription:@ref(error)] === NO) { var acceptInvalidValue = NO; @@ -1037,7 +1043,7 @@ CPTextFieldStatePlaceholder = CPThemeState("placeholder"); { var object = nil; - if ([formatter getObjectValue:AT_REF(object) forString:aValue errorDescription:anError]) + if ([formatter getObjectValue:@ref(object) forString:aValue errorDescription:anError]) objectValue = object; else { @@ -1076,7 +1082,7 @@ CPTextFieldStatePlaceholder = CPThemeState("placeholder"); // Formatting failed, get an "empty" object by formatting an empty string. // If that fails, the value is undefined. - if ([formatter getObjectValue:AT_REF(value) forString:@"" errorDescription:nil] === NO) + if ([formatter getObjectValue:@ref(value) forString:@"" errorDescription:nil] === NO) value = undefined; [super setObjectValue:value]; @@ -1652,6 +1658,9 @@ var CPTextFieldIsEditableKey = "CPTextFieldIsEditableKey", - (void)setValue:(id)aValue forBinding:(CPString)aBinding { + if (!aValue || (aValue.isa && [aValue isMemberOfClass:CPNull])) + [_source setPlaceholderString:[self _placeholderForMarker:CPNullMarker]]; + [_source setObjectValue:aValue]; } @@ -1667,6 +1676,9 @@ var CPTextFieldIsEditableKey = "CPTextFieldIsEditableKey", - (void)setValue:(id)aValue forBinding:(CPString)aBinding { + if (!aValue || (aValue.isa && [aValue isMemberOfClass:CPNull])) + [_source setPlaceholderString:[self _placeholderForMarker:CPNullMarker]]; + [_source setObjectValue:aValue]; } diff --git a/AppKit/CPTheme.j b/AppKit/CPTheme.j index a50ec2502..9d6854206 100644 --- a/AppKit/CPTheme.j +++ b/AppKit/CPTheme.j @@ -85,7 +85,7 @@ var CPThemesByName = { }, if (self) { _name = aName; - _attributes = [CPDictionary dictionary]; + _attributes = @{}; CPThemesByName[_name] = self; } @@ -270,7 +270,7 @@ var CPThemesByName = { }, if (!attributes) { - attributes = [CPDictionary dictionary]; + attributes = @{}; [_attributes setObject:attributes forKey:aClass]; } @@ -443,7 +443,7 @@ CPThemeStateKeyWindow = CPThemeState("keyWindow"); _cache = { }; _name = aName; _defaultValue = aDefaultValue; - _values = [CPDictionary dictionary]; + _values = @{}; } return self; @@ -474,9 +474,9 @@ CPThemeStateKeyWindow = CPThemeState("keyWindow"); _cache = {}; if (aValue === undefined || aValue === nil) - _values = [CPDictionary dictionary]; + _values = @{}; else - _values = [CPDictionary dictionaryWithObject:aValue forKey:String(CPThemeStateNormal)]; + _values = @{ String(CPThemeStateNormal): aValue }; } - (void)setValue:(id)aValue forState:(CPThemeState)aState @@ -585,7 +585,7 @@ CPThemeStateKeyWindow = CPThemeState("keyWindow"); _name = [aCoder decodeObjectForKey:@"name"]; _defaultValue = [aCoder decodeObjectForKey:@"defaultValue"]; - _values = [CPDictionary dictionary]; + _values = @{}; if ([aCoder containsValueForKey:@"value"]) { @@ -633,7 +633,7 @@ CPThemeStateKeyWindow = CPThemeState("keyWindow"); } else { - var encodedValues = [CPDictionary dictionary]; + var encodedValues = @{}; while (count--) { diff --git a/AppKit/CPTokenField.j b/AppKit/CPTokenField.j index 090119065..2cbffc30e 100755 --- a/AppKit/CPTokenField.j +++ b/AppKit/CPTokenField.j @@ -21,7 +21,6 @@ */ #import "../Foundation/CPRange.h" -#import "../Foundation/Ref.h" @import @import @@ -101,7 +100,7 @@ CPTokenFieldDeleteButtonType = 1; + (id)themeAttributes { - return [CPDictionary dictionaryWithObject:_CGInsetMakeZero() forKey:@"editor-inset"]; + return @{ @"editor-inset": _CGInsetMakeZero() }; } - (id)initWithFrame:(CGRect)frame @@ -667,7 +666,7 @@ CPTokenFieldDeleteButtonType = 1; CPTokenFieldInputOwner ? [CPTokenFieldInputOwner._tokenScrollView documentView]._DOMElement : nil, CPTokenFieldDOMInputElement, CPTokenFieldInputResigning, - AT_REF(CPTokenFieldInputDidBlur)); + @ref(CPTokenFieldInputDidBlur)); }; // FIXME make this not onblur diff --git a/AppKit/CPToolbar.j b/AppKit/CPToolbar.j index 21fbd788d..fd97bf531 100644 --- a/AppKit/CPToolbar.j +++ b/AppKit/CPToolbar.j @@ -118,8 +118,8 @@ var CPToolbarsByIdentifier = nil, if (self !== [CPToolbar class]) return; - CPToolbarsByIdentifier = [CPDictionary dictionary]; - CPToolbarConfigurationsByIdentifier = [CPDictionary dictionary]; + CPToolbarsByIdentifier = @{}; + CPToolbarConfigurationsByIdentifier = @{}; } /* @ignore */ @@ -230,7 +230,7 @@ var CPToolbarsByIdentifier = nil, - (void)_setWindow:(CPWindow)aWindow { if (_window) - [[CPNotificationCenter defaultCenter] removeObserver:self object:_window]; + [[CPNotificationCenter defaultCenter] removeObserver:self name:_CPWindowDidChangeFirstResponderNotification object:_window]; _window = aWindow; @@ -605,25 +605,17 @@ var _CPToolbarItemInfoMake = function(anIndex, aView, aLabel, aMinWidth) + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[10.0, - 20.0, - [CPNull null], - [CPNull null], - _CGInsetMake(4.0, 4.0, 4.0, 10), - 59.0, - 46.0, - [CPNull null], - CGRectMake(0.0, 0.0, 2.0, 32.0)] - forKeys:[ - @"item-margin", - @"extra-item-width", - @"extra-item-extra-image", - @"extra-item-extra-alternate-image", - @"content-inset", - @"regular-size-height", - @"small-size-height", - @"image-item-separator-color", - @"image-item-separator-size"]]; + return @{ + @"item-margin": 10.0, + @"extra-item-width": 20.0, + @"extra-item-extra-image": [CPNull null], + @"extra-item-extra-alternate-image": [CPNull null], + @"content-inset": _CGInsetMake(4.0, 4.0, 4.0, 10), + @"regular-size-height": 59.0, + @"small-size-height": 46.0, + @"image-item-separator-color": [CPNull null], + @"image-item-separator-size": CGRectMake(0.0, 0.0, 2.0, 32.0), + }; } - (id)initWithFrame:(CGRect)aFrame diff --git a/AppKit/CPView.j b/AppKit/CPView.j index d309b0b4f..49e0e4aea 100644 --- a/AppKit/CPView.j +++ b/AppKit/CPView.j @@ -134,6 +134,7 @@ var CPViewFlags = { }, CPGraphicsContext _graphicsContext; int _tag; + CPString _identifier @accessors(property=identifier); CGRect _frame; CGRect _bounds; @@ -475,6 +476,10 @@ var CPViewFlags = { }, { if (aSubview === self) [CPException raise:CPInvalidArgumentException reason:"can't add a view as a subview of itself"]; +#if DEBUG + if (!aSubview._superview && _subviews.indexOf(aSubview) !== CPNotFound) + [CPException raise:CPInvalidArgumentException reason:"can't insert a subview in duplicate (probably partially decoded)"]; +#endif // We will have to adjust the z-index of all views starting at this index. var count = _subviews.length; @@ -565,10 +570,10 @@ var CPViewFlags = { }, [_superview willRemoveSubview:self]; - [_superview._subviews removeObject:self]; + [_superview._subviews removeObjectIdenticalTo:self]; #if PLATFORM(DOM) - CPDOMDisplayServerRemoveChild(_superview._DOMElement, _DOMElement); + CPDOMDisplayServerRemoveChild(_superview._DOMElement, _DOMElement); #endif _superview = nil; @@ -1365,6 +1370,7 @@ var CPViewFlags = { }, } else { + [self setNeedsDisplay:YES]; [self _notifyViewDidUnhide]; } } @@ -1500,7 +1506,7 @@ var CPViewFlags = { }, /*! Returns whether the receiver should be sent a \c -mouseDown: message for \c anEvent.
- Returns \c YES by default. + Returns \c NO by default. @return \c YES, if the view object accepts first mouse-down event. \c NO, otherwise. */ - (BOOL)acceptsFirstMouse:(CPEvent)anEvent @@ -2816,7 +2822,7 @@ setBoundsOrigin: - (CPDictionary)_themeAttributeDictionary { - var dictionary = [CPDictionary dictionary]; + var dictionary = @{}; if (_themeAttributes) { @@ -3009,7 +3015,8 @@ var CPViewAutoresizingMaskKey = @"CPViewAutoresizingMask", CPViewThemeStateKey = @"CPViewThemeStateKey", CPViewWindowKey = @"CPViewWindowKey", CPViewNextKeyViewKey = @"CPViewNextKeyViewKey", - CPViewPreviousKeyViewKey = @"CPViewPreviousKeyViewKey"; + CPViewPreviousKeyViewKey = @"CPViewPreviousKeyViewKey", + CPReuseIdentifierKey = @"CPReuseIdentifierKey"; @implementation CPView (CPCoding) @@ -3038,11 +3045,24 @@ var CPViewAutoresizingMaskKey = @"CPViewAutoresizingMask", { // We have to manually check because it may be 0, so we can't use || _tag = [aCoder containsValueForKey:CPViewTagKey] ? [aCoder decodeIntForKey:CPViewTagKey] : -1; + _identifier = [aCoder decodeObjectForKey:CPReuseIdentifierKey]; _window = [aCoder decodeObjectForKey:CPViewWindowKey]; - _subviews = [aCoder decodeObjectForKey:CPViewSubviewsKey] || []; _superview = [aCoder decodeObjectForKey:CPViewSuperviewKey]; + // We have to manually add the subviews so that they will receive + // viewWillMoveToSuperview: and viewDidMoveToSuperview: + _subviews = []; + + var subviews = [aCoder decodeObjectForKey:CPViewSubviewsKey] || []; + + for (var i = 0, count = [subviews count]; i < count; ++i) + { + // addSubview won't do anything if the superview is already self, so clear it + subviews[i]._superview = nil; + [self addSubview:subviews[i]]; + } + // FIXME: Should we encode/decode this? _registeredDraggedTypes = [CPSet set]; _registeredDraggedTypesArray = []; @@ -3188,6 +3208,9 @@ var CPViewAutoresizingMaskKey = @"CPViewAutoresizingMask", for (var attributeName in _themeAttributes) if (_themeAttributes.hasOwnProperty(attributeName)) CPThemeAttributeEncode(aCoder, _themeAttributes[attributeName]); + + if (_identifier) + [aCoder encodeObject:_identifier forKey:CPReuseIdentifierKey]; } @end diff --git a/AppKit/CPViewAnimation.j b/AppKit/CPViewAnimation.j index 46e3d4ead..932085442 100644 --- a/AppKit/CPViewAnimation.j +++ b/AppKit/CPViewAnimation.j @@ -59,8 +59,12 @@ CPViewAnimationFadeOutEffect = @"CPViewAnimationFadeOutEffect"; For example:
-    var animation = [CPDictionary dictionaryWithObjects:[myViewToAnimate, aStartFrame, anEndFrame, CPViewAnimationFadeInEffect]
-                                                forKeys:[CPViewAnimationTargetKey, CPViewAnimationStartFrameKey, CPViewAnimationEndFrameKey, CPViewAnimationEffectKey]];
+    var animation = @{
+            CPViewAnimationTargetKey: myViewToAnimate,
+            CPViewAnimationStartFrameKey: aStartFrame,
+            CPViewAnimationEndFrameKey: anEndFrame,
+            CPViewAnimationEffectKey: CPViewAnimationFadeInEffect,
+        };
     
If you pass nil instead of an array of dictionaries you should later call setViewAnimations:. diff --git a/AppKit/CPViewController.j b/AppKit/CPViewController.j index b47d118d1..2ea3a05de 100644 --- a/AppKit/CPViewController.j +++ b/AppKit/CPViewController.j @@ -85,7 +85,7 @@ var CPViewControllerCachedCibs; if (self !== [CPViewController class]) return; - CPViewControllerCachedCibs = [CPDictionary dictionary]; + CPViewControllerCachedCibs = @{}; } /*! @@ -103,7 +103,7 @@ var CPViewControllerCachedCibs; - (id)initWithCibName:(CPString)aCibNameOrNil bundle:(CPBundle)aCibBundleOrNil owner:(id)anOwner { - return [self initWithCibName:aCibNameOrNil bundle:aCibBundleOrNil externalNameTable:[CPDictionary dictionaryWithObject:anOwner forKey:CPCibOwner]]; + return [self initWithCibName:aCibNameOrNil bundle:aCibBundleOrNil externalNameTable:@{ CPCibOwner: anOwner }]; } /*! @@ -128,7 +128,7 @@ var CPViewControllerCachedCibs; // Don't load the cib until someone actually requests the view. The user may just be intending to use setView:. _cibName = aCibNameOrNil; _cibBundle = aCibBundleOrNil || [CPBundle mainBundle]; - _cibExternalNameTable = anExternalNameTable || [CPDictionary dictionaryWithObject:self forKey:CPCibOwner]; + _cibExternalNameTable = anExternalNameTable || @{ CPCibOwner: self }; _isLoading = NO; _isLazy = NO; @@ -298,7 +298,7 @@ var CPViewControllerViewKey = @"CPViewControllerViewKey", var bundlePath = [aCoder decodeObjectForKey:CPViewControllerBundleKey]; _cibBundle = bundlePath ? [CPBundle bundleWithPath:bundlePath] : [CPBundle mainBundle]; - _cibExternalNameTable = [CPDictionary dictionaryWithObject:self forKey:CPCibOwner]; + _cibExternalNameTable = @{ CPCibOwner: self }; _isLazy = YES; } diff --git a/AppKit/CPWebView.j b/AppKit/CPWebView.j index daacbc3c0..98cc59caa 100644 --- a/AppKit/CPWebView.j +++ b/AppKit/CPWebView.j @@ -962,7 +962,7 @@ CPWebViewAppKitScrollMaxPollCount = 3; { try { - return _window[methodName].apply(args); + return _window[methodName].apply(_window, args); } catch (e) { diff --git a/AppKit/CPWindow/CPWindow.j b/AppKit/CPWindow/CPWindow.j index da652923b..c1f8a677e 100644 --- a/AppKit/CPWindow/CPWindow.j +++ b/AppKit/CPWindow/CPWindow.j @@ -297,15 +297,16 @@ CPTexturedBackgroundWindowMask [self setLevel:CPNormalWindowLevel]; - _minSize = _CGSizeMake(0.0, 0.0); - _maxSize = _CGSizeMake(1000000.0, 1000000.0); - // Create our border view which is the actual root of our view hierarchy. _windowView = [[windowViewClass alloc] initWithFrame:_CGRectMake(0.0, 0.0, _CGRectGetWidth(_frame), _CGRectGetHeight(_frame)) styleMask:aStyleMask]; [_windowView _setWindow:self]; [_windowView setNextResponder:self]; + // Size calculation needs _windowView + _minSize = [self _calculateMinSizeForProposedSize:_CGSizeMake(0.0, 0.0)]; + _maxSize = _CGSizeMake(1000000.0, 1000000.0); + [self setMovableByWindowBackground:aStyleMask & CPHUDBackgroundWindowMask]; // Create a generic content view. @@ -393,7 +394,7 @@ CPTexturedBackgroundWindowMask return _CPDocModalWindowView; else if (aStyleMask & _CPModalWindowMask) - return _CPModalWindowView + return _CPModalWindowView; return _CPStandardWindowView; } @@ -630,20 +631,6 @@ CPTexturedBackgroundWindowMask return _CGRectMakeCopy(_frame); } -/*! - Sets the window's frame rectangle. Also tells the window whether it should animate - the resize operation, and redraw itself if necessary. - @param aFrame the new size and location for the window - @param shouldDisplay whether the window should redraw its views - @param shouldAnimate whether the window resize should be animated. -*/ -- (void)_setClippedFrame:(CGRect)aFrame display:(BOOL)shouldDisplay animate:(BOOL)shouldAnimate -{ - aFrame.size.width = MIN(MAX(aFrame.size.width, _minSize.width), _maxSize.width) - aFrame.size.height = MIN(MAX(aFrame.size.height, _minSize.height), _maxSize.height); - [self setFrame:aFrame display:shouldDisplay animate:shouldAnimate]; -} - /*! Sets the frame of the window. @@ -751,7 +738,7 @@ CPTexturedBackgroundWindowMask */ - (void)setFrame:(CGRect)aFrame display:(BOOL)shouldDisplay { - [self _setClippedFrame:aFrame display:shouldDisplay animate:NO]; + [self setFrame:aFrame display:shouldDisplay animate:NO]; } /*! @@ -760,7 +747,7 @@ CPTexturedBackgroundWindowMask */ - (void)setFrame:(CGRect)aFrame { - [self _setClippedFrame:aFrame display:YES animate:NO]; + [self setFrame:aFrame display:YES animate:NO]; } /*! @@ -769,7 +756,7 @@ CPTexturedBackgroundWindowMask */ - (void)setFrameOrigin:(CGPoint)anOrigin { - [self _setClippedFrame:_CGRectMake(anOrigin.x, anOrigin.y, _CGRectGetWidth(_frame), _CGRectGetHeight(_frame)) display:YES animate:NO]; + [self setFrame:_CGRectMake(anOrigin.x, anOrigin.y, _CGRectGetWidth(_frame), _CGRectGetHeight(_frame)) display:YES animate:NO]; // reposition sheet if ([self attachedSheet]) @@ -782,7 +769,7 @@ CPTexturedBackgroundWindowMask */ - (void)setFrameSize:(CGSize)aSize { - [self _setClippedFrame:_CGRectMake(_CGRectGetMinX(_frame), _CGRectGetMinY(_frame), aSize.width, aSize.height) display:YES animate:NO]; + [self setFrame:_CGRectMake(_CGRectGetMinX(_frame), _CGRectGetMinY(_frame), aSize.width, aSize.height) display:YES animate:NO]; } /*! @@ -1068,6 +1055,8 @@ CPTexturedBackgroundWindowMask /*! Sets the window's minimum size. If the provided size is the same as the current minimum size, the method simply returns. + The height is pinned to the difference in height between the frame rect + and content rect, to account for a title bar + toolbar. @param aSize the new minimum size for the window */ - (void)setMinSize:(CGSize)aSize @@ -1075,7 +1064,7 @@ CPTexturedBackgroundWindowMask if (_CGSizeEqualToSize(_minSize, aSize)) return; - _minSize = _CGSizeMakeCopy(aSize); + _minSize = [self _calculateMinSizeForProposedSize:aSize]; var size = _CGSizeMakeCopy([self frame].size), needsFrameChange = NO; @@ -1104,6 +1093,15 @@ CPTexturedBackgroundWindowMask return _minSize; } +/*! @ignore */ +- (CGSize)_calculateMinSizeForProposedSize:(CGSize)proposedSize +{ + var contentFrame = [self contentRectForFrameRect:_frame], + minHeight = _CGRectGetHeight(_frame) - _CGRectGetHeight(contentFrame); + + return _CGSizeMake(MAX(proposedSize.width, 0), MAX(proposedSize.height, minHeight)); +} + /*! Sets the window's maximum size. If the provided size is the same as the current maximum size, diff --git a/AppKit/CPWindow/_CPBorderlessBridgeWindowView.j b/AppKit/CPWindow/_CPBorderlessBridgeWindowView.j index c59b10e8c..b726343bb 100644 --- a/AppKit/CPWindow/_CPBorderlessBridgeWindowView.j +++ b/AppKit/CPWindow/_CPBorderlessBridgeWindowView.j @@ -34,8 +34,9 @@ + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[[CPColor grayColor]] - forKeys:[@"toolbar-background-color"]]; + return @{ + @"toolbar-background-color": [CPColor grayColor], + }; } - (void)setShowsResizeIndicator:(BOOL)shouldShowResizeIndicator diff --git a/AppKit/CPWindow/_CPDocModalWindowView.j b/AppKit/CPWindow/_CPDocModalWindowView.j index 1577a2d76..5a420b986 100644 --- a/AppKit/CPWindow/_CPDocModalWindowView.j +++ b/AppKit/CPWindow/_CPDocModalWindowView.j @@ -36,8 +36,21 @@ + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[[CPColor whiteColor], 8] - forKeys:[ @"body-color", @"height-shadow"]]; + return @{ + @"body-color": [CPColor whiteColor], + @"height-shadow": 8, + }; +} + ++ (CGRect)contentRectForFrameRect:(CGRect)aFrameRect +{ + /* + This window view class draws a frame. + So we have to inset the content rect to be inside the frame. + */ + var contentRect = [super contentRectForFrameRect:aFrameRect]; + + return _CGRectInset(contentRect, 1.0, 1.0); } - (id)initWithFrame:(CGRect)aFrame styleMask:(unsigned)aStyleMask @@ -65,12 +78,12 @@ - (CGRect)contentRectForFrameRect:(CGRect)aFrameRect { - return aFrameRect; + return [[self class] contentRectForFrameRect:aFrameRect]; } - (CGRect)frameRectForContentRect:(CGRect)aContentRect { - return aContentRect; + return [[self class] frameRectForContentRect:aContentRect]; } - (void)_enableSheet:(BOOL)enable diff --git a/AppKit/CPWindow/_CPHUDWindowView.j b/AppKit/CPWindow/_CPHUDWindowView.j index 28a0246dd..865b6c4d0 100644 --- a/AppKit/CPWindow/_CPHUDWindowView.j +++ b/AppKit/CPWindow/_CPHUDWindowView.j @@ -36,6 +36,22 @@ return @"hud-window-view"; } ++ (CGRect)contentRectForFrameRect:(CGRect)aFrameRect +{ + /* + This window view class draws a frame. + So we have to inset the content rect to be inside the frame. + The top coordinate has already been adjusted by _CPTitleableWindowView. + */ + var contentRect = [super contentRectForFrameRect:aFrameRect]; + + contentRect.origin.x += 1; + contentRect.size.width -= 2; + contentRect.size.height -= 1; + + return contentRect; +} + - (CGRect)contentRectForFrameRect:(CGRect)aFrameRect { var contentRect = [[self class] contentRectForFrameRect:aFrameRect]; diff --git a/AppKit/CPWindow/_CPPopoverWindowView.j b/AppKit/CPWindow/_CPPopoverWindowView.j index 09173e016..020896213 100644 --- a/AppKit/CPWindow/_CPPopoverWindowView.j +++ b/AppKit/CPWindow/_CPPopoverWindowView.j @@ -56,14 +56,12 @@ var _CPPopoverWindowViewDefaultCursorSize = _CGSizeMake(16, 10), + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[[CPNull null], - [CPNull null], - [CPNull null], - [CPNull null]] - forKeys:[@"background-gradient", - @"background-gradient-hud", - @"stroke-color", - @"stroke-color-hud"]]; + return @{ + @"background-gradient": [CPNull null], + @"background-gradient-hud": [CPNull null], + @"stroke-color": [CPNull null], + @"stroke-color-hud": [CPNull null], + }; } /*! diff --git a/AppKit/CPWindow/_CPShadowWindowView.j b/AppKit/CPWindow/_CPShadowWindowView.j index 5a0a27f03..c78811141 100644 --- a/AppKit/CPWindow/_CPShadowWindowView.j +++ b/AppKit/CPWindow/_CPShadowWindowView.j @@ -43,8 +43,7 @@ + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[] - forKeys:[]]; + return @{}; } - (void)layoutSubviews diff --git a/AppKit/CPWindow/_CPStandardWindowView.j b/AppKit/CPWindow/_CPStandardWindowView.j index 4cadb8508..be25f9f0b 100644 --- a/AppKit/CPWindow/_CPStandardWindowView.j +++ b/AppKit/CPWindow/_CPStandardWindowView.j @@ -25,12 +25,13 @@ @class _CPDocModalWindowView +var _CPStandardWindowViewDividerViewHeight = 1.0; + @implementation _CPTexturedWindowHeadView : CPView { _CPWindowView _parentView; CPView _gradientView; CPView _solidView; - CPView _dividerView; } + (CPString)defaultThemeClass @@ -40,8 +41,7 @@ + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[] - forKeys:[]]; + return @{}; } - (id)initWithFrame:(CGRect)aFrame windowView:(_CPWindowView)parentView @@ -51,10 +51,10 @@ if (self) { _parentView = parentView; - _gradientView = [[CPView alloc] initWithFrame:CGRectMakeZero()]; + _gradientView = [[CPView alloc] initWithFrame:_CGRectMakeZero()]; [self addSubview:_gradientView]; - _solidView = [[CPView alloc] initWithFrame:CGRectMakeZero()]; + _solidView = [[CPView alloc] initWithFrame:_CGRectMakeZero()]; [self addSubview:_solidView]; } @@ -68,10 +68,10 @@ var gradientHeight = [[CPTheme defaultTheme] valueForAttributeWithName:@"gradient-height" forClass:_CPStandardWindowView], bounds = [self bounds]; - [_gradientView setFrame:CGRectMake(0.0, 0.0, CGRectGetWidth(bounds), gradientHeight)]; + [_gradientView setFrame:_CGRectMake(0.0, 0.0, _CGRectGetWidth(bounds), gradientHeight)]; [_gradientView setBackgroundColor:[[CPTheme defaultTheme] valueForAttributeWithName:@"bezel-head-color" inState:[_parentView themeState] forClass:_CPStandardWindowView]]; - [_solidView setFrame:CGRectMake(0.0, gradientHeight, CGRectGetWidth(bounds), CGRectGetHeight(bounds) - gradientHeight)]; + [_solidView setFrame:_CGRectMake(0.0, gradientHeight, _CGRectGetWidth(bounds), _CGRectGetHeight(bounds) - gradientHeight)]; [_solidView setBackgroundColor:[[CPTheme defaultTheme] valueForAttributeWithName:@"solid-color" forClass:_CPStandardWindowView]]; } @@ -79,8 +79,8 @@ { var bounds = [self bounds]; - [_gradientView setFrameSize:CGSizeMake(CGRectGetWidth(bounds), [[CPTheme defaultTheme] valueForAttributeWithName:@"gradient-height" forClass:_CPStandardWindowView])]; - [_solidView setFrameSize:CGSizeMake(CGRectGetWidth(bounds), CGRectGetHeight(bounds) - [[CPTheme defaultTheme] valueForAttributeWithName:@"gradient-height" forClass:_CPStandardWindowView])]; + [_gradientView setFrameSize:_CGSizeMake(_CGRectGetWidth(bounds), [[CPTheme defaultTheme] valueForAttributeWithName:@"gradient-height" forClass:_CPStandardWindowView])]; + [_solidView setFrameSize:_CGSizeMake(_CGRectGetWidth(bounds), _CGRectGetHeight(bounds) - [[CPTheme defaultTheme] valueForAttributeWithName:@"gradient-height" forClass:_CPStandardWindowView])]; } @end @@ -106,19 +106,40 @@ + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[[CPNull null], [CPNull null], [CPNull null], [CPColor blackColor], [CPColor whiteColor], 32, [CPNull null], [CPNull null],[CPNull null], [CPNull null], [CPNull null], [CPNull null]] - forKeys:[ @"gradient-height", - @"solid-color", - @"bezel-head-color", - @"divider-color", - @"body-color", - @"title-bar-height", - @"minimize-image-highlighted-button", - @"minimize-image-button", - @"close-image-button", - @"close-image-highlighted-button", - @"unsaved-image-button", - @"unsaved-image-highlighted-button"]]; + return @{ + @"gradient-height": [CPNull null], + @"solid-color": [CPNull null], + @"bezel-head-color": [CPNull null], + @"divider-color": [CPColor blackColor], + @"body-color": [CPColor whiteColor], + @"title-bar-height": 32, + @"minimize-image-highlighted-button": [CPNull null], + @"minimize-image-button": [CPNull null], + @"close-image-button": [CPNull null], + @"close-image-highlighted-button": [CPNull null], + @"unsaved-image-button": [CPNull null], + @"unsaved-image-highlighted-button": [CPNull null], + }; +} + ++ (CGRect)contentRectForFrameRect:(CGRect)aFrameRect +{ + /* + This window view class draws a frame. + So we have to inset the content rect to be inside the frame. + The top coordinate has already been adjusted by _CPTitleableWindowView. + */ + var contentRect = [super contentRectForFrameRect:aFrameRect]; + + contentRect.origin.x += 1; + contentRect.size.width -= 2; + contentRect.size.height -= 1; + + // Adjust for the divider + contentRect.origin.y += _CPStandardWindowViewDividerViewHeight; + contentRect.size.height -= _CPStandardWindowViewDividerViewHeight; + + return contentRect; } - (id)initWithFrame:(CGRect)aFrame styleMask:(unsigned)aStyleMask @@ -130,34 +151,34 @@ var theClass = [self class], bounds = [self bounds]; - _headView = [[_CPTexturedWindowHeadView alloc] initWithFrame:CGRectMake(0.0, 0.0, CGRectGetWidth(bounds), [self valueForThemeAttribute:@"title-bar-height"]) windowView:self]; + _headView = [[_CPTexturedWindowHeadView alloc] initWithFrame:_CGRectMake(0.0, 0.0, _CGRectGetWidth(bounds), [self valueForThemeAttribute:@"title-bar-height"]) windowView:self]; [_headView setAutoresizingMask:CPViewWidthSizable];; [_headView setHitTests:NO]; [self addSubview:_headView positioned:CPWindowBelow relativeTo:_titleField]; - _dividerView = [[CPView alloc] initWithFrame:CGRectMake(0.0, CGRectGetMaxY([_headView frame]), CGRectGetWidth(bounds), 1.0)]; + _dividerView = [[CPView alloc] initWithFrame:_CGRectMake(0.0, _CGRectGetMaxY([_headView frame]), _CGRectGetWidth(bounds), _CPStandardWindowViewDividerViewHeight)]; [_dividerView setAutoresizingMask:CPViewWidthSizable]; [_dividerView setHitTests:NO]; [self addSubview:_dividerView]; - var y = CGRectGetMaxY([_dividerView frame]); + var y = _CGRectGetMaxY([_dividerView frame]); - _bodyView = [[CPView alloc] initWithFrame:CGRectMake(0.0, y, CGRectGetWidth(bounds), CGRectGetHeight(bounds) - y)]; + _bodyView = [[CPView alloc] initWithFrame:_CGRectMake(0.0, y, _CGRectGetWidth(bounds), _CGRectGetHeight(bounds) - y)]; [_bodyView setAutoresizingMask:CPViewWidthSizable | CPViewHeightSizable]; [_bodyView setHitTests:NO]; [self addSubview:_bodyView]; - [self setResizeIndicatorOffset:CGSizeMake(2.0, 2.0)]; + [self setResizeIndicatorOffset:_CGSizeMake(2.0, 2.0)]; if (_styleMask & CPClosableWindowMask) { - _closeButton = [[CPButton alloc] initWithFrame:CGRectMake(8.0, 8.0, 16.0, 16.0)]; + _closeButton = [[CPButton alloc] initWithFrame:_CGRectMake(8.0, 8.0, 16.0, 16.0)]; [_closeButton setButtonType:CPMomentaryChangeButton]; [_closeButton setBordered:NO]; @@ -168,7 +189,7 @@ if (_styleMask & CPMiniaturizableWindowMask && ![CPPlatform isBrowser]) { - _minimizeButton = [[CPButton alloc] initWithFrame:CGRectMake(27.0, 7.0, 16.0, 16.0)]; + _minimizeButton = [[CPButton alloc] initWithFrame:_CGRectMake(27.0, 7.0, 16.0, 16.0)]; [_minimizeButton setButtonType:CPMomentaryChangeButton]; [_minimizeButton setBordered:NO]; @@ -192,7 +213,7 @@ - (CGSize)toolbarOffset { - return CGSizeMake(0.0, [self valueForThemeAttribute:@"title-bar-height"]); + return _CGSizeMake(0.0, [self valueForThemeAttribute:@"title-bar-height"]); } - (void)tile @@ -286,7 +307,7 @@ - (BOOL)couldBeMoveEvent:(CPEvent)anEvent { if (![_headView isHidden]) - if (CGRectContainsPoint([_headView frame], [self convertPoint:[anEvent locationInWindow] fromView:nil])) + if (_CGRectContainsPoint([_headView frame], [self convertPoint:[anEvent locationInWindow] fromView:nil])) return YES; return [super couldBeMoveEvent:anEvent]; @@ -345,4 +366,18 @@ [_headView setNeedsLayout]; } +- (CGSize)_minimumResizeSize +{ + // The minimum width is such that the close button would always be visible. + // We give the same margin to the right of the button as there is to the left. + var size = [super _minimumResizeSize], + closeSize = [self valueForThemeAttribute:@"close-image-size"], + closeOrigin = [self valueForThemeAttribute:@"close-image-origin"]; + + size.width = closeSize.width + (closeOrigin.x * 2); + size.height += _CPStandardWindowViewDividerViewHeight; + + return size; +} + @end diff --git a/AppKit/CPWindow/_CPTitleableWindowView.j b/AppKit/CPWindow/_CPTitleableWindowView.j index 72a4b6aa8..34e597eab 100644 --- a/AppKit/CPWindow/_CPTitleableWindowView.j +++ b/AppKit/CPWindow/_CPTitleableWindowView.j @@ -36,8 +36,8 @@ + (CGRect)contentRectForFrameRect:(CGRect)aFrameRect { - var contentRect = CGRectMakeCopy(aFrameRect), - titleBarHeight = [[self class] titleBarHeight]; + var contentRect = [super contentRectForFrameRect:aFrameRect], + titleBarHeight = [self titleBarHeight]; contentRect.origin.y += titleBarHeight; contentRect.size.height -= titleBarHeight; @@ -48,7 +48,7 @@ + (CGRect)frameRectForContentRect:(CGRect)aContentRect { var frameRect = CGRectMakeCopy(aContentRect), - titleBarHeight = [[self class] titleBarHeight]; + titleBarHeight = [self titleBarHeight]; frameRect.origin.y -= titleBarHeight; frameRect.size.height += titleBarHeight; @@ -113,4 +113,12 @@ [_titleField setTextShadowOffset:[self currentValueForThemeAttribute:@"title-text-shadow-offset"]]; } +- (CGSize)_minimumResizeSize +{ + var size = [super _minimumResizeSize]; + + size.height += [[self class] titleBarHeight]; + return size; +} + @end diff --git a/AppKit/CPWindow/_CPToolTipWindowView.j b/AppKit/CPWindow/_CPToolTipWindowView.j index 289fb6abe..423725fb7 100644 --- a/AppKit/CPWindow/_CPToolTipWindowView.j +++ b/AppKit/CPWindow/_CPToolTipWindowView.j @@ -40,16 +40,13 @@ + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[[CPColor colorWithHexString:@"E3E3E3"], - [CPColor colorWithHexString:@"FFFFCA"], - 2.0, - 1.0, - [CPColor blackColor]] - forKeys:[@"stroke-color", - @"background-color", - @"border-radius", - @"stroke-width", - @"color"]]; + return @{ + @"stroke-color": [CPColor colorWithHexString:@"E3E3E3"], + @"background-color": [CPColor colorWithHexString:@"FFFFCA"], + @"border-radius": 2.0, + @"stroke-width": 1.0, + @"color": [CPColor blackColor], + }; } /*! compute the contentView frame from a given window frame @@ -57,7 +54,7 @@ */ + (CGRect)contentRectForFrameRect:(CGRect)aFrameRect { - var contentRect = CGRectMakeCopy(aFrameRect); + var contentRect = [super contentRectForFrameRect:aFrameRect]; contentRect.origin.x += 3; contentRect.origin.y += 3; diff --git a/AppKit/CPWindow/_CPWindowView.j b/AppKit/CPWindow/_CPWindowView.j index 40dfa42e7..9b49f8624 100644 --- a/AppKit/CPWindow/_CPWindowView.j +++ b/AppKit/CPWindow/_CPWindowView.j @@ -31,6 +31,7 @@ @global CPApp var _CPWindowViewCornerResizeRectWidth = 10, + _CPWindowViewMinContentHeight = 2, _CPWindowViewResizeRegionNone = -1, _CPWindowViewResizeRegionTopLeft = 0, @@ -82,26 +83,27 @@ _CPWindowViewResizeSlop = 3; + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[25, CGInsetMakeZero(), 5, [CPColor clearColor], CGSizeMakeZero(), [CPNull null], [CPColor blackColor], [CPNull null],[CPNull null], [CPNull null], [CPNull null], [CPNull null] , [CPColor blackColor], [CPFont systemFontOfSize:CPFontCurrentSystemSize], [CPNull null], _CGSizeMakeZero(), CPCenterTextAlignment, CPLineBreakByTruncatingTail, CPTopVerticalTextAlignment] - forKeys:[ @"title-bar-height", - @"shadow-inset", - @"shadow-distance", - @"window-shadow-color", - @"size-indicator", - @"resize-indicator", - @"attached-sheet-shadow-color", - @"close-image-origin", - @"close-image-size", - @"close-image", - @"close-active-image", - @"bezel-color", - @"title-text-color", - @"title-font", - @"title-text-shadow-color", - @"title-text-shadow-offset", - @"title-alignment", - @"title-line-break-mode", - @"title-vertical-alignment"]]; + return @{ + @"title-bar-height": 25, + @"shadow-inset": CGInsetMakeZero(), + @"shadow-distance": 5, + @"window-shadow-color": [CPColor clearColor], + @"size-indicator": CGSizeMakeZero(), + @"resize-indicator": [CPNull null], + @"attached-sheet-shadow-color": [CPColor blackColor], + @"close-image-origin": [CPNull null], + @"close-image-size": [CPNull null], + @"close-image": [CPNull null], + @"close-active-image": [CPNull null], + @"bezel-color": [CPNull null], + @"title-text-color": [CPColor blackColor], + @"title-font": [CPFont systemFontOfSize:CPFontCurrentSystemSize], + @"title-text-shadow-color": [CPNull null], + @"title-text-shadow-offset": _CGSizeMakeZero(), + @"title-alignment": CPCenterTextAlignment, + @"title-line-break-mode": CPLineBreakByTruncatingTail, + @"title-vertical-alignment": CPTopVerticalTextAlignment, + }; } - (CGRect)contentRectForFrameRect:(CGRect)aFrameRect @@ -465,34 +467,63 @@ _CPWindowViewResizeSlop = 3; { var deltaX = globalLocation.x - _mouseDraggedPoint.x, deltaY = globalLocation.y - _mouseDraggedPoint.y, - newX = _CGRectGetMinX(_resizeFrame), - newY = _CGRectGetMinY(_resizeFrame), - newWidth = _CGRectGetWidth(_resizeFrame), - newHeight = _CGRectGetHeight(_resizeFrame), + startX = _CGRectGetMinX(_resizeFrame), + startY = _CGRectGetMinY(_resizeFrame), + startWidth = _CGRectGetWidth(_resizeFrame), + startHeight = _CGRectGetHeight(_resizeFrame), + newX, + newY, + newWidth, + newHeight, platformFrame = [[theWindow platformWindow] usableContentFrame], + resizeMinSize = [self _minimumResizeSize], minSize = [theWindow minSize], maxSize = [theWindow maxSize]; + minSize = _CGSizeMake(MAX(minSize.width, resizeMinSize.width), MAX(minSize.height, resizeMinSize.height)); + // Calculate x and width first switch (_resizeRegion) { case _CPWindowViewResizeRegionTopLeft: case _CPWindowViewResizeRegionLeft: case _CPWindowViewResizeRegionBottomLeft: - if (minSize && deltaX > 0) - deltaX = MIN(newWidth - minSize.width, deltaX); - else if (maxSize && deltaX < 0) - deltaX = MAX(newWidth - maxSize.width, deltaX); + // If it is shrinking from the left edge, the maximum distance it can move + // is the distance between the original width and the min width. + if (deltaX > 0) + deltaX = MIN(startWidth - minSize.width, deltaX); - newX += deltaX, - newWidth -= deltaX; + // If it is growing from the left edge, the maximum distance it can move + // is the distance between the original width and the max width. + else if (deltaX < 0) + deltaX = -MIN(maxSize.width - startWidth, ABS(deltaX)); + + // When resizing from the left, we change the origin and the width + newX = startX + deltaX; + newWidth = startWidth - deltaX; break; case _CPWindowViewResizeRegionTopRight: case _CPWindowViewResizeRegionRight: case _CPWindowViewResizeRegionBottomRight: - newWidth += deltaX; + // If it is growing from the right edge, the maximum distance it can move + // is the distance between the original width and the max width. + if (deltaX > 0) + deltaX = MIN(maxSize.width - startWidth, deltaX); + + // If it is shrinking from the right edge, the maximum distance it can move + // is the distance between the original width and the min width. + else if (deltaX < 0) + deltaX = -MIN(startWidth - minSize.width, ABS(deltaX)); + + // When resizing from the right, change only the width + newX = startX; + newWidth = startWidth + deltaX; break; + + default: + newX = startX; + newWidth = startWidth; } // Now calculate y and height @@ -501,20 +532,42 @@ _CPWindowViewResizeSlop = 3; case _CPWindowViewResizeRegionTopLeft: case _CPWindowViewResizeRegionTop: case _CPWindowViewResizeRegionTopRight: - if (minSize && deltaY > 0) - deltaY = MIN(newHeight - minSize.height, deltaY); - else if (maxSize && deltaY < 0) - deltaY = MAX(newHeight - maxSize.height, deltaY); + // If it is shrinking from the top edge, the maximum distance it can move + // is the distance between the original height and the min height. + if (deltaY > 0) + deltaY = MIN(startHeight - minSize.height, deltaY); - newY += deltaY, - newHeight -= deltaY; + // If it is growing from the top edge, the maximum distance it can move + // is the distance between the original height and the max height. + else if (deltaY < 0) + deltaY = -MIN(maxSize.height - startHeight, ABS(deltaY)); + + // When resizing from the top, change the origin and the height + newY = startY + deltaY; + newHeight = startHeight - deltaY; break; case _CPWindowViewResizeRegionBottomLeft: case _CPWindowViewResizeRegionBottom: case _CPWindowViewResizeRegionBottomRight: - newHeight += deltaY; + // If it is growing from the bottom edge, the maximum distance it can move + // is the distance between the original height and the max height. + if (deltaY > 0) + deltaY = MIN(maxSize.height - startHeight, deltaY); + + // If it is shrinking from the bottom edge, the maximum distance it can move + // is the distance between the original height and the min height. + else if (deltaY < 0) + deltaY = -MIN(startHeight - minSize.height, ABS(deltaY)); + + // When resizing from the bottom, change only the height + newY = startY; + newHeight = startHeight + deltaY; break; + + default: + newY = startY; + newHeight = startHeight; } if (theWindow._isSheet && theWindow._parentView && (frame.size.width !== newWidth)) @@ -808,4 +861,9 @@ _CPWindowViewResizeSlop = 3; } } +- (CGSize)_minimumResizeSize +{ + return _CGSizeMake(0, _CPWindowViewMinContentHeight); +} + @end diff --git a/AppKit/CPWindowController.j b/AppKit/CPWindowController.j index 21b5e79c7..8fa7b527d 100644 --- a/AppKit/CPWindowController.j +++ b/AppKit/CPWindowController.j @@ -41,7 +41,7 @@ An instance of a CPWindowController manages a CPWindow. Windows are typically loaded via a cib, but they can also manage windows created in code. A CPWindowController can manage a window by - itself or work with AppKits's document-based architecture. + itself or work with AppKit's document-based architecture. In a Document based app, a CPWindowController instance is created and managed by a CPDocument subclass. @@ -144,7 +144,7 @@ if (_window) return; - [[CPBundle mainBundle] loadCibFile:[self windowCibPath] externalNameTable:[CPDictionary dictionaryWithObject:_cibOwner forKey:CPCibOwner]]; + [[CPBundle mainBundle] loadCibFile:[self windowCibPath] externalNameTable:@{ CPCibOwner: _cibOwner }]; } /*! diff --git a/AppKit/Cib/CPCib.j b/AppKit/Cib/CPCib.j index a2b5e7afa..a56b77897 100644 --- a/AppKit/Cib/CPCib.j +++ b/AppKit/Cib/CPCib.j @@ -165,7 +165,7 @@ var CPCibObjectDataKey = @"CPCibObjectDataKey"; - (BOOL)instantiateCibWithOwner:(id)anOwner topLevelObjects:(CPArray)topLevelObjects { - return [self instantiateCibWithExternalNameTable:[CPDictionary dictionaryWithObjects:[anOwner, topLevelObjects] forKeys:[CPCibOwner, CPCibTopLevelObjects]]]; + return [self instantiateCibWithExternalNameTable:@{ CPCibOwner: anOwner, CPCibTopLevelObjects: topLevelObjects }]; } @end @@ -198,3 +198,25 @@ var CPCibObjectDataKey = @"CPCibObjectDataKey"; } @end + +var CPCibDataFileKey = @"CPCibDataFileKey", + CPCibBundleIdentifierKey = @"CPCibBundleIdentifierKey"; + +@implementation CPCib (CPCoding) + +- (id)initWithCoder:(CPCoder)aCoder +{ + self = [super init]; + + var base64 = [aCoder decodeObjectForKey:CPCibDataFileKey]; + _data = [CPData dataWithBase64:base64]; + + return self; +} + +- (void)encodeWithCoder:(CPCoder)aCoder +{ + [aCoder encodeObject:[_data base64] forKey:CPCibDataFileKey]; +} + +@end diff --git a/AppKit/Cib/CPCibLoading.j b/AppKit/Cib/CPCibLoading.j index 02e91af1e..8a46e670f 100644 --- a/AppKit/Cib/CPCibLoading.j +++ b/AppKit/Cib/CPCibLoading.j @@ -52,7 +52,7 @@ var CPCibOwner = @"CPCibOwner"; var bundle = anOwner ? [CPBundle bundleForClass:[anOwner class]] : [CPBundle mainBundle], path = [bundle pathForResource:aName]; - return [self loadCibFile:path externalNameTable:[CPDictionary dictionaryWithObject:anOwner forKey:CPCibOwner]]; + return [self loadCibFile:path externalNameTable:@{ CPCibOwner: anOwner }]; } - (CPCib)loadCibFile:(CPString)aFileName externalNameTable:(CPDictionary)aNameTable @@ -78,7 +78,7 @@ var CPCibOwner = @"CPCibOwner"; var bundle = anOwner ? [CPBundle bundleForClass:[anOwner class]] : [CPBundle mainBundle], path = [bundle pathForResource:aName]; - return [self loadCibFile:path externalNameTable:[CPDictionary dictionaryWithObject:anOwner forKey:CPCibOwner] loadDelegate:aDelegate]; + return [self loadCibFile:path externalNameTable:@{ CPCibOwner: anOwner } loadDelegate:aDelegate]; } - (CPCib)loadCibFile:(CPString)aFileName externalNameTable:(CPDictionary)aNameTable loadDelegate:(id)aDelegate diff --git a/AppKit/Cib/_CPCibCustomResource.j b/AppKit/Cib/_CPCibCustomResource.j index 508c5e3c2..aefe07e67 100644 --- a/AppKit/Cib/_CPCibCustomResource.j +++ b/AppKit/Cib/_CPCibCustomResource.j @@ -46,12 +46,12 @@ var _CPCibCustomResourceClassNameKey = @"_CPCibCustomResourceClassNameKey", + (id)imageResourceWithName:(CPString)aResourceName size:(CGSize)aSize { - return [[self alloc] initWithClassName:@"CPImage" resourceName:aResourceName properties:[CPDictionary dictionaryWithObject:aSize forKey:@"size"]]; + return [[self alloc] initWithClassName:@"CPImage" resourceName:aResourceName properties:@{ @"size": aSize }]; } + (id)imageResourceWithName:(CPString)aResourceName size:(CGSize)aSize bundleClass:(CPString)aBundleClass { - return [[self alloc] initWithClassName:@"CPImage" resourceName:aResourceName properties:[CPDictionary dictionaryWithObjects:[aSize, aBundleClass] forKeys:[@"size", @"bundleClass"]]]; + return [[self alloc] initWithClassName:@"CPImage" resourceName:aResourceName properties:@{ @"size": aSize, @"bundleClass": aBundleClass }]; } - (id)initWithClassName:(CPString)aClassName resourceName:(CPString)aResourceName properties:(CPDictionary)properties diff --git a/AppKit/Cib/_CPCibCustomView.j b/AppKit/Cib/_CPCibCustomView.j index 76c333bbf..2ea71fe79 100644 --- a/AppKit/Cib/_CPCibCustomView.j +++ b/AppKit/Cib/_CPCibCustomView.j @@ -116,6 +116,7 @@ var _CPCibCustomViewClassNameKey = @"_CPCibCustomViewClassNameKey"; [view setHitTests:[self hitTests]]; [view setHidden:[self isHidden]]; [view setAlphaValue:[self alphaValue]]; + [view setIdentifier:[self identifier]]; [_superview replaceSubview:self with:view]; diff --git a/AppKit/CoreAnimation/CAMediaTimingFunction.j b/AppKit/CoreAnimation/CAMediaTimingFunction.j index 80c891d79..77d953921 100644 --- a/AppKit/CoreAnimation/CAMediaTimingFunction.j +++ b/AppKit/CoreAnimation/CAMediaTimingFunction.j @@ -44,7 +44,7 @@ var CAMediaNamedTimingFunctions = nil; { if (!CAMediaNamedTimingFunctions) { - CAMediaNamedTimingFunctions = [CPDictionary dictionary]; + CAMediaNamedTimingFunctions = @{}; [CAMediaNamedTimingFunctions setObject:[CAMediaTimingFunction functionWithControlPoints:0.0 :0.0 :1.0 :1.0] forKey:kCAMediaTimingFunctionLinear]; [CAMediaNamedTimingFunctions setObject:[CAMediaTimingFunction functionWithControlPoints:0.42 :0.0 :1.0 :1.0] forKey:kCAMediaTimingFunctionEaseIn]; diff --git a/AppKit/CoreGraphics/CGPath.j b/AppKit/CoreGraphics/CGPath.j index c56e72395..fb01d5c34 100644 --- a/AppKit/CoreGraphics/CGPath.j +++ b/AppKit/CoreGraphics/CGPath.j @@ -101,7 +101,7 @@ function CGPathAddArc(aPath, aTransform, x, y, aRadius, aStartAngle, anEndAngle, // Angles that equal "modulo" 2 pi return as equal after transforming them, // so we have to make sure to make them different again if they were different // to start out with. It's the difference between no circle and a full circle. - if (anEndAngle === aStartAngle && oldEndAngle != oldStartAngle) + if (anEndAngle === aStartAngle && oldEndAngle !== oldStartAngle) if (oldStartAngle > oldEndAngle) anEndAngle = anEndAngle - PI2; else @@ -204,7 +204,7 @@ function CGPathAddLineToPoint(aPath, aTransform, x, y) { var point = _CGPointMake(x, y); - if (aTransform != NULL) + if (aTransform !== NULL) point = _CGPointApplyAffineTransform(point, aTransform); aPath.elements[aPath.count++] = { type: kCGPathElementAddLineToPoint, x:point.x, y:point.y }; @@ -304,7 +304,7 @@ function CGPathMoveToPoint(aPath, aTransform, x, y) { var point = _CGPointMake(x, y); - if (aTransform != NULL) + if (aTransform !== NULL) point = _CGPointApplyAffineTransform(point, aTransform); aPath.start = aPath.current = point; @@ -312,16 +312,17 @@ function CGPathMoveToPoint(aPath, aTransform, x, y) // If the previous op was a move, just update that point if (aPath.count) { - var previous = aPath.elements[count - 1]; + var previous = aPath.elements[aPath.count - 1]; if (previous.type === kCGPathElementMoveToPoint) { previous.x = point.x; previous.y = point.y; + return; } } - else - aPath.elements[aPath.count++] = { type:kCGPathElementMoveToPoint, x:point.x, y:point.y }; + + aPath.elements[aPath.count++] = { type:kCGPathElementMoveToPoint, x:point.x, y:point.y }; } var KAPPA = 4.0 * ((SQRT2 - 1.0) / 3.0); @@ -407,7 +408,7 @@ function CGPathCloseSubpath(aPath) // After closing, the current point is the previous path's starting point aPath.current = _CGPointCreateCopy(aPath.start); - aPath.elements[aPath.count++] = { type:kCGPathElementCloseSubpath, points:[aPath.start] }; + aPath.elements[aPath.count++] = { type:kCGPathElementCloseSubpath, start:aPath.start }; } function CGPathEqualToPath(aPath, anotherPath) @@ -415,7 +416,7 @@ function CGPathEqualToPath(aPath, anotherPath) if (aPath === anotherPath) return YES; - if (aPath.count != anotherPath.count || !_CGPointEqualToPoint(aPath.start, anotherPath.start) || !_CGPointEqualToPoint(aPath.current, anotherPath.current)) + if (aPath.count !== anotherPath.count || !_CGPointEqualToPoint(aPath.start, anotherPath.start) || !_CGPointEqualToPoint(aPath.current, anotherPath.current)) return NO; var i = 0, @@ -426,18 +427,70 @@ function CGPathEqualToPath(aPath, anotherPath) var element = aPath[i], anotherElement = anotherPath[i]; - if (element.type != anotherElement.type) + if (element.type !== anotherElement.type) return NO; - if ((element.type === kCGPathElementAddArc || element.type === kCGPathElementAddArcToPoint) && - element.radius != anotherElement.radius) - return NO; + switch (element.type) + { + case kCGPathElementAddArc: + if (element.x !== anotherElement.x || + element.y !== anotherElement.y || + element.radius !== anotherElement.radius || + element.startAngle !== anotherElement.startAngle || + element.endAngle !== anotherElement.endAngle || + element.clockwise !== anotherElement.clockwise) + { + return NO; + } + break; - var j = element.points.length; + case kCGPathElementAddArcToPoint: + if (element.p1x !== anotherElement.p1x || + element.p1y !== anotherElement.p1y || + element.p2x !== anotherElement.p2x || + element.p2y !== anotherElement.p2y || + element.radius !== anotherElement.radius) + { + return NO; + } + break; - while (j--) - if (!_CGPointEqualToPoint(element.points[j], anotherElement.points[j])) - return NO; + case kCGPathElementAddCurveToPoint: + if (element.cp1x !== anotherElement.cp1x || + element.cp1y !== anotherElement.cp1y || + element.cp2x !== anotherElement.cp2x || + element.cp2y !== anotherElement.cp2y || + element.x !== anotherElement.x || + element.y !== anotherElement.y) + { + return NO; + } + break; + + case kCGPathElementAddLineToPoint: + case kCGPathElementMoveToPoint: + if (element.x !== anotherElement.x || + element.y !== anotherElement.y) + { + return NO; + } + break; + + case kCGPathElementAddQuadCurveToPoint: + if (element.cpx !== anotherElement.cpx || + element.cpy !== anotherElement.cpy || + element.x !== anotherElement.x || + element.y !== anotherElement.y) + { + return NO; + } + break; + + case kCGPathElementCloseSubpath: + if (!_CGPointEqualToPoint(element.start, anotherElement.start)) + return NO; + break; + } } return YES; diff --git a/AppKit/Platform/CPPlatformString.j b/AppKit/Platform/CPPlatformString.j index 8a8d15866..ddc7e29d1 100644 --- a/AppKit/Platform/CPPlatformString.j +++ b/AppKit/Platform/CPPlatformString.j @@ -50,7 +50,11 @@ + (CPDictionary)metricsOfFont:(CPFont)aFont { - return [CPDictionary dictionaryWithObjectsAndKeys:0, @"ascender", 0, @"descender", 0, @"lineHeight"]; + return @{ + @"ascender": 0, + @"descender": 0, + @"lineHeight": 0, + }; } @end diff --git a/AppKit/Platform/CPPlatformWindow.j b/AppKit/Platform/CPPlatformWindow.j index c53a50500..d5988787c 100644 --- a/AppKit/Platform/CPPlatformWindow.j +++ b/AppKit/Platform/CPPlatformWindow.j @@ -110,7 +110,7 @@ var PrimaryPlatformWindow = NULL; #if PLATFORM(DOM) _windowLevels = []; - _windowLayers = [CPDictionary dictionary]; + _windowLayers = @{}; _charCodes = {}; #endif diff --git a/AppKit/Platform/DOM/CPPlatformString.j b/AppKit/Platform/DOM/CPPlatformString.j index 1c99ebc53..aff149962 100644 --- a/AppKit/Platform/DOM/CPPlatformString.j +++ b/AppKit/Platform/DOM/CPPlatformString.j @@ -165,7 +165,11 @@ var DOMFixedWidthSpanElement = nil, baseline = DOMMetricsImgElement.offsetTop + DOMMetricsImgElement.offsetHeight, descender = baseline - lineHeight; - return [CPDictionary dictionaryWithObjectsAndKeys:baseline, @"ascender", descender, @"descender", lineHeight, @"lineHeight"]; + return @{ + @"ascender": baseline, + @"descender": descender, + @"lineHeight": lineHeight, + }; } @end diff --git a/AppKit/Platform/DOM/CPPlatformWindow+DOM.j b/AppKit/Platform/DOM/CPPlatformWindow+DOM.j index 0e1b250ad..b4af9d0de 100644 --- a/AppKit/Platform/DOM/CPPlatformWindow+DOM.j +++ b/AppKit/Platform/DOM/CPPlatformWindow+DOM.j @@ -213,7 +213,7 @@ var resizeTimer = nil; _contentRect = _CGRectMakeZero(); _windowLevels = []; - _windowLayers = [CPDictionary dictionary]; + _windowLayers = @{}; [self registerDOMWindow]; [self updateFromNativeContentRect]; diff --git a/AppKit/Themes/Aristo/ThemeDescriptors.j b/AppKit/Themes/Aristo/ThemeDescriptors.j index d471c2f9f..2a61a47d1 100755 --- a/AppKit/Themes/Aristo/ThemeDescriptors.j +++ b/AppKit/Themes/Aristo/ThemeDescriptors.j @@ -988,7 +988,9 @@ var themedButtonValues = nil, [@"text-color", [CPColor colorWithCalibratedWhite:51.0 / 255.0 alpha:1.0], CPThemeStateTableDataView], [@"text-color", [CPColor whiteColor], CPThemeStateTableDataView | CPThemeStateSelectedTableDataView], [@"font", [CPFont boldSystemFontOfSize:CPFontCurrentSystemSize], CPThemeStateTableDataView | CPThemeStateSelectedTableDataView], - [@"text-color", [CPColor blackColor], CPThemeStateTableDataView | CPThemeStateEditing], + [@"text-color", [CPColor blackColor], CPThemeStateTableDataView | CPThemeStateEditable], + [@"text-color", [CPColor blackColor], CPThemeStateTableDataView | CPThemeStateSelectedTableDataView | CPThemeStateEditing], + [@"text-color", [CPColor blackColor], CPThemeStateTableDataView | CPThemeStateBezeled], [@"content-inset", CGInsetMake(8.0, 8.0, 7.0, 5.0), CPThemeStateTableDataView | CPThemeStateEditing], [@"font", [CPFont systemFontOfSize:CPFontCurrentSystemSize], CPThemeStateTableDataView | CPThemeStateEditing], [@"bezel-inset", CGInsetMake(-1.0, -1.0, -1.0, -1.0), CPThemeStateTableDataView | CPThemeStateEditing], @@ -1838,11 +1840,11 @@ var themedButtonValues = nil, alternatingRowColors = [[CPColor whiteColor], [CPColor colorWithRed:245.0 / 255.0 green:249.0 / 255.0 blue:252.0 / 255.0 alpha:1.0]], gridColor = [CPColor colorWithHexString:@"cccccc"], selectionColor = [CPColor colorWithHexString:@"5f83b9"], - sourceListSelectionColor = [CPDictionary dictionaryWithObjects: [CGGradientCreateWithColorComponents(CGColorSpaceCreateDeviceRGB(), [98.0 / 255.0, 143.0 / 210.0, 209.0 / 255.0, 1.0, 46.0 / 255.0, 88.0 / 176.0, 208.0 / 255.0,1.0], [0,1], 2), - [CPColor colorWithCalibratedRed:81.0 / 255.0 green:127.0 / 255.0 blue:200.0 / 255.0 alpha:1.0], - [CPColor colorWithCalibratedRed:34.0 / 255.0 green:63.0 / 255.0 blue:123.0 / 255.0 alpha:1.0] - ] - forKeys: [CPSourceListGradient, CPSourceListTopLineColor, CPSourceListBottomLineColor]], + sourceListSelectionColor = @{ + CPSourceListGradient: CGGradientCreateWithColorComponents(CGColorSpaceCreateDeviceRGB(), [98.0 / 255.0, 143.0 / 210.0, 209.0 / 255.0, 1.0, 46.0 / 255.0, 88.0 / 176.0, 208.0 / 255.0,1.0], [0,1], 2), + CPSourceListTopLineColor: [CPColor colorWithCalibratedRed:81.0 / 255.0 green:127.0 / 255.0 blue:200.0 / 255.0 alpha:1.0], + CPSourceListBottomLineColor: [CPColor colorWithCalibratedRed:34.0 / 255.0 green:63.0 / 255.0 blue:123.0 / 255.0 alpha:1.0], + }, themedTableViewValues = [ diff --git a/AppKit/Themes/Aristo2/ThemeDescriptors.j b/AppKit/Themes/Aristo2/ThemeDescriptors.j index 4f5f8e44d..c24f57c68 100644 --- a/AppKit/Themes/Aristo2/ThemeDescriptors.j +++ b/AppKit/Themes/Aristo2/ThemeDescriptors.j @@ -549,7 +549,8 @@ var themedButtonValues = nil, [@"text-color", [CPColor whiteColor], CPThemeStateTableDataView | CPThemeStateSelectedTableDataView], [@"font", [CPFont boldSystemFontOfSize:12.0], CPThemeStateTableDataView | CPThemeStateSelectedTableDataView], [@"text-color", [CPColor blackColor], CPThemeStateTableDataView | CPThemeStateEditing], - [@"content-inset", CGInsetMake(7.0, 7.0, 5.0, 10.0), CPThemeStateTableDataView | CPThemeStateEditing], + [@"text-color", [CPColor blackColor], CPThemeStateTableDataView | CPThemeStateSelectedTableDataView | CPThemeStateEditable], + [@"content-inset", CGInsetMake(7.0, 7.0, 5.0, 10.0), CPThemeStateTableDataView | CPThemeStateEditable], [@"font", [CPFont systemFontOfSize:12.0], CPThemeStateTableDataView | CPThemeStateEditing], [@"bezel-inset", CGInsetMake(-2.0, -2.0, -2.0, -2.0), CPThemeStateTableDataView | CPThemeStateEditing], @@ -1295,19 +1296,16 @@ var themedButtonValues = nil, alternatingRowColors = [[CPColor whiteColor], [CPColor colorWithRed:245.0 / 255.0 green:249.0 / 255.0 blue:252.0 / 255.0 alpha:1.0]], gridColor = [CPColor colorWithHexString:@"dce0e2"], selectionColor = [CPColor colorWithHexString:@"5780d8"], - sourceListSelectionColor = [CPDictionary dictionaryWithObjectsAndKeys: - CGGradientCreateWithColorComponents( + sourceListSelectionColor = @{ + CPSourceListGradient: CGGradientCreateWithColorComponents( CGColorSpaceCreateDeviceRGB(), [109.0 / 255.0, 150.0 / 255.0, 238.0 / 255.0, 1.0, 72.0 / 255.0, 113.0 / 255.0, 201.0 / 255.0, 1.0], [0, 1], 2 ), - CPSourceListGradient, - [CPColor colorWithCalibratedRed:73.0 / 255.0 green:109.0 / 255.0 blue:187.0 / 255.0 alpha:1.0], - CPSourceListTopLineColor, - [CPColor colorWithCalibratedRed:44.0 / 255.0 green:79.0 / 255.0 blue:155.0 / 255.0 alpha:1.0], - CPSourceListBottomLineColor - ], + CPSourceListTopLineColor: [CPColor colorWithCalibratedRed:73.0 / 255.0 green:109.0 / 255.0 blue:187.0 / 255.0 alpha:1.0], + CPSourceListBottomLineColor: [CPColor colorWithCalibratedRed:44.0 / 255.0 green:79.0 / 255.0 blue:155.0 / 255.0 alpha:1.0], + }, themedTableViewValues = [ diff --git a/AppKit/Themes/CommonJS/blendtask.j b/AppKit/Themes/CommonJS/blendtask.j index 36cab5364..e167e4f45 100644 --- a/AppKit/Themes/CommonJS/blendtask.j +++ b/AppKit/Themes/CommonJS/blendtask.j @@ -162,7 +162,7 @@ function themeFromCibData(data) topLevelObjects = []; [cib _setAwakenCustomResources:NO]; - [cib instantiateCibWithExternalNameTable:[CPDictionary dictionaryWithObject:topLevelObjects forKey:CPCibTopLevelObjects]]; + [cib instantiateCibWithExternalNameTable:@{ CPCibTopLevelObjects: topLevelObjects }]; var count = topLevelObjects.length, theme = nil, diff --git a/AppKit/_CPAutocompleteMenu.j b/AppKit/_CPAutocompleteMenu.j index b65ec95bf..ebd174944 100644 --- a/AppKit/_CPAutocompleteMenu.j +++ b/AppKit/_CPAutocompleteMenu.j @@ -54,7 +54,7 @@ var _CPAutocompleteMenuMaximumHeight = 307; { textField = aTextField; - _menuWindow = [[CPWindow alloc] initWithContentRect:CGRectMake(0, 0, 100, 100) styleMask:CPBorderlessWindowMask]; + _menuWindow = [[_CPAutocompleteWindow alloc] initWithContentRect:CGRectMake(0, 0, 100, 100) styleMask:CPBorderlessWindowMask]; [_menuWindow setLevel:CPPopUpMenuWindowLevel]; [_menuWindow setHasShadow:YES]; @@ -83,9 +83,8 @@ var _CPAutocompleteMenuMaximumHeight = 307; [tableView setHeaderView:nil]; [tableView setCornerView:nil]; [tableView setRowHeight:24.0]; - [tableView setGridStyleMask:CPTableViewSolidHorizontalGridLineMask]; + [tableView setGridStyleMask:CPTableViewGridNone]; [tableView setBackgroundColor:[CPColor clearColor]]; - [tableView setGridColor:[CPColor colorWithRed:242.0 / 255.0 green:243.0 / 255.0 blue:245.0 / 255.0 alpha:1.0]]; [scrollView setDocumentView:tableView]; } @@ -269,9 +268,22 @@ var _CPAutocompleteMenuMaximumHeight = 307; @end +@implementation _CPAutocompleteWindow : CPPanel + +- (BOOL)becomesKeyOnlyIfNeeded +{ + return YES; +} + +@end @implementation _CPNonFirstResponderTableView : CPTableView +- (BOOL)needsPanelToBecomeKey +{ + return NO; +} + - (BOOL)acceptsFirstResponder { return NO; diff --git a/AppKit/_CPCornerView.j b/AppKit/_CPCornerView.j index 27df6c25c..da7dd48fe 100644 --- a/AppKit/_CPCornerView.j +++ b/AppKit/_CPCornerView.j @@ -33,8 +33,10 @@ + (id)themeAttributes { - return [CPDictionary dictionaryWithObjects:[[CPNull null], [CPNull null]] - forKeys:[@"background-color", @"divider-color"]]; + return @{ + @"background-color": [CPNull null], + @"divider-color": [CPNull null], + }; } - (void)drawRect:(CGRect)aRect diff --git a/Foundation/CPArray/CPMutableArray.j b/Foundation/CPArray/CPMutableArray.j index a1b3538ee..df9eed7cc 100644 --- a/Foundation/CPArray/CPMutableArray.j +++ b/Foundation/CPArray/CPMutableArray.j @@ -218,7 +218,7 @@ */ - (void)removeObject:(id)anObject { - [self removeObject:anObject inRange:CPMakeRange(0, self.length)]; + [self removeObject:anObject inRange:CPMakeRange(0, [self count])]; } /*! @@ -233,7 +233,7 @@ while ((index = [self indexOfObject:anObject inRange:aRange]) != CPNotFound) { [self removeObjectAtIndex:index]; - aRange = CPIntersectionRange(CPMakeRange(index, self.length - index), aRange); + aRange = CPIntersectionRange(CPMakeRange(index, [self count] - index), aRange); } } @@ -262,7 +262,7 @@ } /*! - Remove the first instance of \c anObject from the array. + Remove all instances of \c anObject from the array. The search for the object is done using \c ==. @param anObject the object to remove */ diff --git a/Foundation/CPArray/_CPArray.j b/Foundation/CPArray/_CPArray.j index 5154a2400..98759ea44 100755 --- a/Foundation/CPArray/_CPArray.j +++ b/Foundation/CPArray/_CPArray.j @@ -618,11 +618,12 @@ var concat = Array.prototype.concat, var index = 0, count = [self count], shouldStop = NO, - shouldStopRef = AT_REF(shouldStop); + shouldStopRef = @ref(shouldStop); for (; index < count; ++index) { aFunction([self objectAtIndex:index], index, shouldStopRef); + if (shouldStop) return; } @@ -630,8 +631,6 @@ var concat = Array.prototype.concat, - (void)enumerateObjectsWithOptions:(CPEnumerationOptions)options usingBlock:(Function /*(id anObject, int idx, @ref BOOL stop)*/)aFunction { - var shouldStop = NO; - if (options & CPEnumerationReverse) { var index = [self count] - 1, @@ -645,9 +644,13 @@ var concat = Array.prototype.concat, increment = 1; } + var shouldStop = NO, + shouldStopRef = @ref(shouldStop); + for (; index !== stop; index += increment) { - aFunction([self objectAtIndex:index], index, AT_REF(shouldStop)); + aFunction([self objectAtIndex:index], index, shouldStopRef); + if (shouldStop) return; } diff --git a/Foundation/CPArray/_CPJavaScriptArray.j b/Foundation/CPArray/_CPJavaScriptArray.j index 4feb98504..dbb917930 100644 --- a/Foundation/CPArray/_CPJavaScriptArray.j +++ b/Foundation/CPArray/_CPJavaScriptArray.j @@ -246,6 +246,26 @@ var concat = Array.prototype.concat, splice.call(self, anIndex, 1); } +- (void)removeObjectIdenticalTo:(id)anObject +{ + if (indexOf) + { + var anIndex; + while ((anIndex = indexOf.call(self, anObject)) !== -1) + splice.call(self, anIndex, 1); + } + else + [super removeObjectIdenticalTo:anObject inRange:CPMakeRange(0, self.length)]; +} + +- (void)removeObjectIdenticalTo:(id)anObject inRange:(CPRange)aRange +{ + if (indexOf && !aRange) + [self removeObjectIdenticalTo:anObject]; + + [super removeObjectIdenticalTo:anObject inRange:aRange]; +} + - (void)addObject:(id)anObject { push.call(self, anObject); diff --git a/Foundation/CPAttributedString.j b/Foundation/CPAttributedString.j index 546ca4f30..337ccc722 100644 --- a/Foundation/CPAttributedString.j +++ b/Foundation/CPAttributedString.j @@ -50,6 +50,15 @@ } // Creating a CPAttributedString Object +/*! + Creates an empty attributed string. + @return a new empty CPAttributedString. +*/ +- (id)init +{ + return [self initWithString:@"" attributes:nil]; +} + /*! Creates a new attributed string from a character string. @param aString is the string to initialise from. @@ -67,7 +76,7 @@ */ - (id)initWithAttributedString:(CPAttributedString)aString { - var string = [self initWithString:"" attributes:nil]; + var string = [self initWithString:@"" attributes:nil]; [string setAttributedString:aString]; @@ -89,9 +98,9 @@ if (self) { if (!attributes) - attributes = [CPDictionary dictionary]; + attributes = @{}; - _string = ""+aString; + _string = "" + aString; _rangeEntries = [makeRangeEntry(CPMakeRange(0, _string.length), attributes)]; } @@ -135,10 +144,11 @@ if (anIndex < 0 || anIndex > _string.length || anIndex === undefined) return CPNotFound; - //find the range entry that contains anIndex. + // find the range entry that contains anIndex. var sortFunction = function(index, entry) { - //index is the character index we're searching for, while range is the actual range entry we're comparing against + // index is the character index we're searching for, + // while range is the actual range entry we're comparing against if (CPLocationInRange(index, entry.range)) return CPOrderedSame; else if (CPMaxRange(entry.range) <= index) @@ -166,18 +176,19 @@ same as those at index, \c anIndex. If not required pass \c nil. @return a CPDictionary containing the attributes associated with the - character at index \c anIndex. Returns \c nil if index + character at index \c anIndex. Returns an empty dictionary if index is out of bounds. */ - (CPDictionary)attributesAtIndex:(unsigned)anIndex effectiveRange:(CPRangePointer)aRange { - //find the range entry that contains anIndex. + // find the range entry that contains anIndex. var entryIndex = [self _indexOfEntryWithIndex:anIndex]; - if (entryIndex == CPNotFound) - return nil; + if (entryIndex === CPNotFound) + return @{}; var matchingRange = _rangeEntries[entryIndex]; + if (aRange) { aRange.location = matchingRange.range.location; @@ -205,15 +216,15 @@ @param rangeLimit a range limiting the search for the attributes' applicable range. @return a CPDictionary containing the attributes associated with the - character at index \c anIndex. Returns \c nil if index + character at index \c anIndex. Returns an empty dictionary if index is out of bounds. */ - (CPDictionary)attributesAtIndex:(unsigned)anIndex longestEffectiveRange:(CPRangePointer)aRange inRange:(CPRange)rangeLimit { var startingEntryIndex = [self _indexOfEntryWithIndex:anIndex]; - if (startingEntryIndex == CPNotFound) - return nil; + if (startingEntryIndex === CPNotFound) + return @{}; if (!aRange) return _rangeEntries[startingEntryIndex].attributes; @@ -226,7 +237,7 @@ return _rangeEntries[startingEntryIndex].attributes; } - //scan backwards + // scan backwards var nextRangeIndex = startingEntryIndex - 1, currentEntry = _rangeEntries[startingEntryIndex], comparisonDict = currentEntry.attributes; @@ -246,7 +257,7 @@ aRange.location = MAX(currentEntry.range.location, rangeLimit.location); - //scan forwards + // scan forwards currentEntry = _rangeEntries[startingEntryIndex]; nextRangeIndex = startingEntryIndex + 1; @@ -323,10 +334,9 @@ */ - (id)attribute:(CPString)attribute atIndex:(unsigned)anIndex longestEffectiveRange:(CPRangePointer)aRange inRange:(CPRange)rangeLimit { - //find the range entry that contains anIndex. var startingEntryIndex = [self _indexOfEntryWithIndex:anIndex]; - if (startingEntryIndex == CPNotFound || !attribute) + if (startingEntryIndex === CPNotFound || !attribute) return nil; if (!aRange) @@ -340,7 +350,7 @@ return [_rangeEntries[startingEntryIndex].attributes objectForKey:attribute]; } - //scan backwards + // scan backwards var nextRangeIndex = startingEntryIndex - 1, currentEntry = _rangeEntries[startingEntryIndex], comparisonAttribute = [currentEntry.attributes objectForKey:attribute]; @@ -360,7 +370,7 @@ aRange.location = MAX(currentEntry.range.location, rangeLimit.location); - //scan forwards + // scan forwards currentEntry = _rangeEntries[startingEntryIndex]; nextRangeIndex = startingEntryIndex + 1; @@ -394,7 +404,7 @@ if (!aString) return NO; - if (_string != [aString string]) + if (_string !== [aString string]) return NO; var myRange = CPMakeRange(), @@ -405,9 +415,12 @@ while (CPMaxRange(CPUnionRange(myRange, comparisonRange)) < length) { - if (CPIntersectionRange(myRange, comparisonRange).length > 0 && ![myAttributes isEqualToDictionary:comparisonAttributes]) + if (CPIntersectionRange(myRange, comparisonRange).length > 0 && + ![myAttributes isEqualToDictionary:comparisonAttributes]) + { return NO; - if (CPMaxRange(myRange) < CPMaxRange(comparisonRange)) + } + else if (CPMaxRange(myRange) < CPMaxRange(comparisonRange)) myAttributes = [self attributesAtIndex:CPMaxRange(myRange) effectiveRange:myRange]; else comparisonAttributes = [aString attributesAtIndex:CPMaxRange(comparisonRange) effectiveRange:comparisonRange]; @@ -425,7 +438,7 @@ */ - (BOOL)isEqual:(id)anObject { - if (anObject == self) + if (anObject === self) return YES; if ([anObject isKindOfClass:[self class]]) @@ -449,8 +462,12 @@ reason:"tried to get attributedSubstring for an invalid range: "+(aRange?CPStringFromRange(aRange):"nil")]; var newString = [[CPAttributedString alloc] initWithString:_string.substring(aRange.location, CPMaxRange(aRange))], - entryIndex = [self _indexOfEntryWithIndex:aRange.location], - currentRangeEntry = _rangeEntries[entryIndex], + entryIndex = [self _indexOfEntryWithIndex:aRange.location]; + + if (entryIndex === CPNotFound) + _CPRaiseRangeException(self, _cmd, aRange.location, _string.length); + + var currentRangeEntry = _rangeEntries[entryIndex], lastIndex = CPMaxRange(aRange); newString._rangeEntries = []; @@ -507,17 +524,25 @@ - (void)replaceCharactersInRange:(CPRange)aRange withString:(CPString)aString { if (!aString) - aString = ""; + aString = @""; - var startingIndex = [self _indexOfEntryWithIndex:aRange.location], - startingRangeEntry = _rangeEntries[startingIndex], - endingIndex = [self _indexOfEntryWithIndex:MAX(CPMaxRange(aRange) - 1, 0)], - endingRangeEntry = _rangeEntries[endingIndex], + var startingIndex = [self _indexOfEntryWithIndex:aRange.location]; + + if (startingIndex === CPNotFound) + _CPRaiseRangeException(self, _cmd, aRange.location, _string.length); + + var startingRangeEntry = _rangeEntries[startingIndex], + endingIndex = [self _indexOfEntryWithIndex:MAX(CPMaxRange(aRange) - 1, 0)]; + + if (endingIndex === CPNotFound) + _CPRaiseRangeException(self, _cmd, MAX(CPMaxRange(aRange) - 1, 0), _string.length); + + var endingRangeEntry = _rangeEntries[endingIndex], additionalLength = aString.length - aRange.length; _string = _string.substring(0, aRange.location) + aString + _string.substring(CPMaxRange(aRange)); - if (startingIndex == endingIndex) + if (startingIndex === endingIndex) startingRangeEntry.range.length += additionalLength; else { @@ -562,7 +587,7 @@ endingEntryIndex = [self _indexOfRangeEntryForIndex:CPMaxRange(aRange) splitOnMaxIndex:YES], current = startingEntryIndex; - if (endingEntryIndex == CPNotFound) + if (endingEntryIndex === CPNotFound) endingEntryIndex = _rangeEntries.length; while (current < endingEntryIndex) @@ -588,7 +613,7 @@ endingEntryIndex = [self _indexOfRangeEntryForIndex:CPMaxRange(aRange) splitOnMaxIndex:YES], current = startingEntryIndex; - if (endingEntryIndex == CPNotFound) + if (endingEntryIndex === CPNotFound) endingEntryIndex = _rangeEntries.length; while (current < endingEntryIndex) @@ -620,7 +645,7 @@ */ - (void)addAttribute:(CPString)anAttribute value:(id)aValue range:(CPRange)aRange { - [self addAttributes:[CPDictionary dictionaryWithObject:aValue forKey:anAttribute] range:aRange]; + [self addAttributes:@{ anAttribute: aValue } range:aRange]; } /*! @@ -635,7 +660,7 @@ endingEntryIndex = [self _indexOfRangeEntryForIndex:CPMaxRange(aRange) splitOnMaxIndex:YES], current = startingEntryIndex; - if (endingEntryIndex == CPNotFound) + if (endingEntryIndex === CPNotFound) endingEntryIndex = _rangeEntries.length; while (current < endingEntryIndex) @@ -674,7 +699,7 @@ otherRangeEntries = aString._rangeEntries, length = [aString length]; - if (entryIndexOfNextEntry == CPNotFound) + if (entryIndexOfNextEntry === CPNotFound) entryIndexOfNextEntry = _rangeEntries.length; _string = _string.substring(0, anIndex) + aString._string + _string.substring(anIndex); @@ -734,12 +759,12 @@ { var index = [self _indexOfEntryWithIndex:characterIndex]; - if (index < 0) + if (index === CPNotFound) return index; var rangeEntry = _rangeEntries[index]; - if (rangeEntry.range.location == characterIndex || (CPMaxRange(rangeEntry.range) - 1 == characterIndex && !split)) + if (rangeEntry.range.location === characterIndex || (CPMaxRange(rangeEntry.range) - 1 === characterIndex && !split)) return index; var newEntries = splitRangeEntryAtIndex(rangeEntry, characterIndex); @@ -805,9 +830,9 @@ @end -var isEqual = function isEqual(a, b) +var isEqual = function(a, b) { - if (a == b) + if (a === b) return YES; if ([a respondsToSelector:@selector(isEqual:)] && [a isEqual:b]) @@ -816,17 +841,17 @@ var isEqual = function isEqual(a, b) return NO; }; -var makeRangeEntry = function makeRangeEntry(/*CPRange*/aRange, /*CPDictionary*/attributes) +var makeRangeEntry = function(/*CPRange*/aRange, /*CPDictionary*/attributes) { return {range:aRange, attributes:[attributes copy]}; }; -var copyRangeEntry = function copyRangeEntry(/*RangeEntry*/aRangeEntry) +var copyRangeEntry = function(/*RangeEntry*/aRangeEntry) { return makeRangeEntry(CPMakeRangeCopy(aRangeEntry.range), [aRangeEntry.attributes copy]); }; -var splitRangeEntryAtIndex = function splitRangeEntryAtIndex(/*RangeEntry*/aRangeEntry, /*unsigned*/anIndex) +var splitRangeEntryAtIndex = function(/*RangeEntry*/aRangeEntry, /*unsigned*/anIndex) { var newRangeEntry = copyRangeEntry(aRangeEntry), cachedIndex = CPMaxRange(aRangeEntry.range); diff --git a/Foundation/CPDateFormatter.j b/Foundation/CPDateFormatter.j index 80015bac0..eb28aeb8a 100644 --- a/Foundation/CPDateFormatter.j +++ b/Foundation/CPDateFormatter.j @@ -20,8 +20,6 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#import "Ref.h" - @import "CPDate.j" @import "CPString.j" @import "CPFormatter.j" @@ -104,7 +102,7 @@ CPDateFormatterFullStyle = 4; { // TODO Error handling. var value = [self dateFromString:aString]; - AT_DEREF(anObject, value); + @deref(anObject) = value; return YES; } diff --git a/Foundation/CPDecimal.j b/Foundation/CPDecimal.j index a38e556bb..15d2f817d 100644 --- a/Foundation/CPDecimal.j +++ b/Foundation/CPDecimal.j @@ -108,7 +108,7 @@ function CPDecimalMakeWithString(string, locale) // Regexp solution as found in JSON spec, with working regexp (I added groupings) // Test here: http://www.regexplanet.com/simple/index.html // Info from: http://stackoverflow.com/questions/638565/parsing-scientific-notation-sensibly - // ([+\-]?)((?:0|[1-9]\d*)) - integer part, cant have leading zeros + // ([+\-]?)((?:0|[0-9]\d*)) - integer part, can have leading zeros (follows Cocoa behaviour) // (?:\.(\d*))? - optional decimal part plus number in group // (?:[eE]([+\-]?)(\d+))? - optional exponent part plus number in group // group 0: string, 1: sign, 2: integer, 3: decimal, 4: exponent sign, 5: exponent @@ -116,7 +116,7 @@ function CPDecimalMakeWithString(string, locale) // Note: this doesn't accept .01 for example, should it? // If yes simply add '?' after integer part group, i.e. ([+\-]?)((?:0|[1-9]\d*)?) // Note: now it accept .01 style. - var matches = string.match(/^([+\-]?)((?:0|[1-9]\d*)?)(?:\.(\d*))?(?:[eE]([+\-]?)(\d+))?$/); + var matches = string.match(/^([+\-]?)((?:0|[0-9]\d*)?)(?:\.(\d*))?(?:[eE]([+\-]?)(\d+))?$/); if (!matches) return CPDecimalMakeNaN(); diff --git a/Foundation/CPDelayedPerform.j b/Foundation/CPDelayedPerform.j new file mode 100644 index 000000000..170595284 --- /dev/null +++ b/Foundation/CPDelayedPerform.j @@ -0,0 +1,153 @@ +/* + * CPDelayedPerform.j + * Foundation + * + * Portions based on NSDelayedPerform.m (2013-03-03) in Cocotron (http://www.cocotron.org/) + * Copyright (c) 2006-2007 Christopher J. W. Lloyd + * + * Created by Alexander Ljungberg. + * Copyright 2013, SlevenBits Ltd. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +@import "CPObject.j" +@import "CPRunLoop.j" +@import "CPString.j" + +@implementation CPDelayedPerform : CPObject +{ + id _object; + SEL _selector; + id _argument; +} + ++ (CPDelayedPerform)delayedPerformWithObject:anObject selector:(SEL)aSelector argument:anArgument +{ + return [[self alloc] initWithObject:anObject selector:aSelector argument:anArgument]; +} + +- (id)initWithObject:(id)anObject selector:(SEL)aSelector argument:(id)anArgument +{ + if (self = [super init]) + { + _object = anObject; + _selector = aSelector; + _argument = anArgument; + } + + return self; +} + +- (BOOL)isEqualToPerform:(CPDelayedPerform)anOther +{ + if (!anOther || !anOther.isa) + return NO; + + if (_object !== anOther._object) + return NO; + + if (!_selector || !anOther._selector) + return YES; + + if (_selector !== anOther._selector) + return NO; + + if (_argument !== anOther._argument) + return NO; + + return YES; +} + +- (void)perform +{ + try + { + [_object performSelector:_selector withObject:_argument]; + } + catch(ex) + { + CPLog(@"exception %@ raised during delayed perform", ex); + } +} + +@end + +@implementation CPRunLoop(CPDelayedPerform) + +- (void)invalidateTimerWithDelayedPerform:(CPDelayedPerform)aDelayedPerform +{ + for (var aKey in _timersForModes) + { + if (!_timersForModes.hasOwnProperty(aKey)) + continue; + + var timersForMode = _timersForModes[aKey]; + for (var i = 0, count = [timersForMode count]; i < count; i++) + { + var aTimer = [timersForMode objectAtIndex:i], + userInfo = [aTimer userInfo]; + + if ([userInfo isKindOfClass:CPDelayedPerform] && [userInfo isEqualToPerform:aDelayedPerform]) + [aTimer invalidate]; + } + } +} + +@end + +@implementation CPObject(CPDelayedPerform) + ++ (void)cancelPreviousPerformRequestsWithTarget:target selector:(SEL)selector object:argument +{ + var aDelayedPerform = [CPDelayedPerform delayedPerformWithObject:target selector:selector argument:argument]; + + [[CPRunLoop currentRunLoop] invalidateTimerWithDelayedPerform:aDelayedPerform]; +} + ++ (void)cancelPreviousPerformRequestsWithTarget:target +{ + var aDelayedPerform = [CPDelayedPerform delayedPerformWithObject:target selector:NULL argument:nil]; + + [[CPRunLoop currentRunLoop] invalidateTimerWithDelayedPerform:aDelayedPerform]; +} + ++ (void)_delayedPerform:(CPTimer)aTimer +{ + var aDelayedPerform = [aTimer userInfo]; + + [aDelayedPerform perform]; +} + ++ (void)object:object performSelector:(SEL)selector withObject:argument afterDelay:(CPTimeInterval)delay inModes:(CPArray)modes +{ + var aDelayedPerform = [CPDelayedPerform delayedPerformWithObject:object selector:selector argument:argument], + aTimer = [CPTimer timerWithTimeInterval:delay target:[CPObject class] selector:@selector(_delayedPerform:) userInfo:aDelayedPerform repeats:NO]; + + for (var i = 0, count = [modes count]; i < count; i++) + [[CPRunLoop currentRunLoop] addTimer:aTimer forMode:[modes objectAtIndex:i]]; +} + +- (void)performSelector:(SEL)selector withObject:object afterDelay:(CPTimeInterval)delay +{ + [[self class] object:self performSelector:selector withObject:object afterDelay:delay inModes:[CPArray arrayWithObject:CPDefaultRunLoopMode]]; +} + +- (void)performSelector:(SEL)selector withObject:object afterDelay:(CPTimeInterval)delay inModes:(CPArray)modes +{ + [[self class] object:self performSelector:selector withObject:object afterDelay:delay inModes:modes]; +} + +@end diff --git a/Foundation/CPDictionary.j b/Foundation/CPDictionary.j index dc0dc5307..3ee48a7bd 100755 --- a/Foundation/CPDictionary.j +++ b/Foundation/CPDictionary.j @@ -25,7 +25,9 @@ @import "CPException.j" @import "CPNull.j" @import "CPObject.j" -#import "Ref.h" + +//FIXME: After release of 0.9.7 remove below variable +var CPDictionaryShowNilDeprecationMessage = YES; /* @ignore */ @implementation _CPDictionaryValueEnumerator : CPEnumerator @@ -254,14 +256,43 @@ self = [super init]; if ([objects count] != [keyArray count]) - [CPException raise:CPInvalidArgumentException reason:"Counts are different.(" + [objects count] + "!=" + [keyArray count] + ")"]; + [CPException raise:CPInvalidArgumentException reason:[CPString stringWithFormat:@"Counts are different.(%d != %d)", [objects count], [keyArray count]]]; if (self) { var i = [keyArray count]; while (i--) - [self setObject:objects[i] forKey:keyArray[i]]; + { + var value = objects[i], + key = keyArray[i]; + + if (value === nil) + { + CPDictionaryShowNilDeprecationMessage = NO; + CPLog.warn([CPString stringWithFormat:@"[%s %s] DEPRECATED: Attempt to insert nil object from objects[%d]", [self className], _cmd, i]); + + if (typeof(objj_backtrace_print) === "function") + objj_backtrace_print(CPLog.warn); + + // FIXME: After release of 0.9.7 change this block to: + // [CPException raise:CPInvalidArgumentException reason:@"Attempt to insert nil object from objects[" + i + @"]"]; + } + + if (key === nil) + { + CPDictionaryShowNilDeprecationMessage = NO; + CPLog.warn([CPString stringWithFormat:@"[%s %s] DEPRECATED: Attempt to insert nil key from keys[%d]", [self className], _cmd, i]); + + if (typeof(objj_backtrace_print) === "function") + objj_backtrace_print(CPLog.warn); + + // FIXME: After release of 0.9.7 change this block to: + // [CPException raise:CPInvalidArgumentException reason:@"Attempt to insert nil key from keys[" + i + @"]"]; + } + + [self setObject:value forKey:key]; + } } return self; @@ -297,12 +328,34 @@ for (; index < argCount; index += 2) { - var value = arguments[index]; + var value = arguments[index], + key = arguments[index + 1]; if (value === nil) - continue; + { + CPDictionaryShowNilDeprecationMessage = NO; + CPLog.warn([CPString stringWithFormat:@"[%s %s] DEPRECATED: Attempt to insert nil object from objects[%d]", [self className], _cmd, (index / 2) - 1]); - [self setObject:value forKey:arguments[index + 1]]; + if (typeof(objj_backtrace_print) === "function") + objj_backtrace_print(CPLog.warn); + + // FIXME: After release of 0.9.7 change 3 lines above to this: + // [CPException raise:CPInvalidArgumentException reason:@"Attempt to insert nil object from objects[" + ((index / 2) - 1) + @"]"]; + } + + if (key === nil) + { + CPDictionaryShowNilDeprecationMessage = NO; + CPLog.warn([CPString stringWithFormat:@"[%s %s] DEPRECATED: Attempt to insert nil key from keys[%d]", [self className], _cmd, (index / 2) - 1]); + + if (typeof(objj_backtrace_print) === "function") + objj_backtrace_print(CPLog.warn); + + // FIXME: After release of 0.9.7 change 3 lines above to this: + // [CPException raise:CPInvalidArgumentException reason:@"Attempt to insert nil key from keys[" + ((index / 2) - 1) + @"]"]; + } + + [self setObject:value forKey:key]; } } @@ -405,7 +458,7 @@ key = nil, value = nil, shouldStop = NO, - stopRef = AT_REF(shouldStop); + stopRef = @ref(shouldStop); for (; index !== stop; index += increment) { @@ -611,6 +664,35 @@ */ - (void)setObject:(id)anObject forKey:(id)aKey { + // FIXME: After release of 0.9.7, remove this test and leave the contents of its block + if (CPDictionaryShowNilDeprecationMessage) + { + if (aKey === nil) + { + CPLog.warn([CPString stringWithFormat:@"[%s %s] DEPRECATED: key cannot be nil", [self className], _cmd]); + + if (typeof(objj_backtrace_print) === "function") + objj_backtrace_print(CPLog.warn); + + // FIXME: After release of 0.9.7 change this block to: + // [CPException raise:CPInvalidArgumentException reason:@"key cannot be nil"]; + } + + if (anObject === nil) + { + CPLog.warn([CPString stringWithFormat:@"[%s %s] DEPRECATED: object cannot be nil (key: %s)", [self className], _cmd, aKey]); + + if (typeof(objj_backtrace_print) === "function") + objj_backtrace_print(CPLog.warn); + + // FIXME: After release of 0.9.7 change this block to: + // [CPException raise:CPInvalidArgumentException reason:@"object cannot be nil (key: " + aKey + @")"]; + } + } + // FIXME: After release of 0.9.7 remove 2 lines below. + else + CPDictionaryShowNilDeprecationMessage = YES; + self.setValueForKey(aKey, anObject); } @@ -666,7 +748,7 @@ - (void)enumerateKeysAndObjectsUsingBlock:(Function /*(id aKey, id anObject, @ref BOOL stop)*/)aFunction { var shouldStop = NO, - shouldStopRef = AT_REF(shouldStop), + shouldStopRef = @ref(shouldStop), keys = self._keys, count = self._count; diff --git a/Foundation/CPFormatter.j b/Foundation/CPFormatter.j index d7cc4b11e..e0d72d43c 100644 --- a/Foundation/CPFormatter.j +++ b/Foundation/CPFormatter.j @@ -33,8 +33,6 @@ make sure that you cannot configure the public subclasses CPDateFormatter and CPNumberFormatter to satisfy your requirements. */ -#import "Ref.h" - @import "CPException.j" @import "CPObject.j" @@ -124,10 +122,10 @@ */ - (BOOL)isPartialStringValid:(CPString)aPartialString newEditingString:(CPStringRef)aNewString errorDescription:(CPStringRef)anError { - AT_DEREF(aPartialString, nil); + @deref(aPartialString) = nil; if (anError) - AT_DEREF(anError, nil); + @deref(anError) = nil; return YES; } @@ -137,32 +135,32 @@ not necessarily at the end of the string, and preserve the selection (or set a different one, such as selecting the erroneous part of the string the user has typed). - In a subclass implementation, evaluate aPartialString according to the context. Return \c YES if aPartialString is acceptable and \c NO if aPartialString - is unacceptable. Assign a new string by reference to aPartialString and a new range by reference to aProposedSelectedRange and return \c NO if you want to replace the string and + In a subclass implementation, evaluate aPartialStringRef according to the context. Return \c YES if aPartialStringRef is acceptable and \c NO if aPartialStringRef + is unacceptable. Assign a new string by reference to aPartialStringRef and a new range by reference to aProposedSelectedRangeRef and return \c NO if you want to replace the string and change the selection range. If you return \c NO, you can also return by reference a CPString object (in anError) that explains the reason why the validation failed; the delegate (if any) of the CPControl can then respond to the failure in control:didFailToValidatePartialString:errorDescription:. - @param aPartialString The new string to validate. - @param aProposedSelectedRange The selection range that will be used if the string is accepted or replaced. + @param aPartialStringRef The new string to validate. + @param aProposedSelectedRangeRef The selection range that will be used if the string is accepted or replaced. @param originalString The original string, before the proposed change. @param originalSelectedRange The selection range over which the change is to take place. @param anError If non-nil, if validation fails contains an CPString object that describes the problem. - @return \c YES if aPartialString is acceptable, otherwise \c NO. + @return \c YES if aPartialStringRef is acceptable, otherwise \c NO. */ -- (BOOL)isPartialStringValid:(CPStringRef)aPartialString proposedSelectedRange:(CPRangeRef)aProposedSelectedRange originalString:(CPString)originalString originalSelectedRange:(CPRange)originalSelectedRange errorDescription:(CPStringRef)anError +- (BOOL)isPartialStringValid:(CPStringRef)aPartialStringRef proposedSelectedRange:(CPRangeRef)aProposedSelectedRangeRef originalString:(CPString)originalString originalSelectedRange:(CPRange)originalSelectedRange errorDescription:(CPStringRef)anError { var newString = nil, - valid = [self isPartialStringValid:aPartialString newEditingString:AT_REF(newString) errorDescription:anError]; + valid = [self isPartialStringValid:aPartialStringRef newEditingString:@ref(newString) errorDescription:anError]; if (!valid) { - AT_DEREF(aPartialString, newString); + @deref(aPartialStringRef) = newString; // If a new string is passed back, the selection is always put at the end if (newString !== nil) - AT_DEREF(aProposedSelectedRange, CPMakeRange(newString.length, 0)); + @deref(aProposedSelectedRangeRef) = CPMakeRange(newString.length, 0); } return valid; diff --git a/Foundation/CPIndexSet.j b/Foundation/CPIndexSet.j index fcb208847..f00e1922d 100644 --- a/Foundation/CPIndexSet.j +++ b/Foundation/CPIndexSet.j @@ -548,7 +548,7 @@ { if (_CPLocationInRange(rangeIndex, enumerationRange)) { - aFunction(rangeIndex, AT_REF(shouldStop)); + aFunction(rangeIndex, @ref(shouldStop)); if (shouldStop) return; } @@ -629,7 +629,7 @@ { if (_CPLocationInRange(rangeIndex, aRange)) { - if (aPredicate(rangeIndex, AT_REF(shouldStop))) + if (aPredicate(rangeIndex, @ref(shouldStop))) return rangeIndex; if (shouldStop) @@ -690,7 +690,7 @@ { if (_CPLocationInRange(rangeIndex, aRange)) { - if (aPredicate(rangeIndex, AT_REF(shouldStop))) + if (aPredicate(rangeIndex, @ref(shouldStop))) [indexesPassingTest addIndex:rangeIndex]; if (shouldStop) diff --git a/Foundation/CPKeyValueCoding.j b/Foundation/CPKeyValueCoding.j index 30e48f951..9e7d319ba 100644 --- a/Foundation/CPKeyValueCoding.j +++ b/Foundation/CPKeyValueCoding.j @@ -144,7 +144,7 @@ var CPObjectAccessorsForClassKey = @"$CPObjectAccessorsForClassKey", { var index = 0, count = keys.length, - dictionary = [CPDictionary dictionary]; + dictionary = @{}; for (; index < count; ++index) { @@ -165,7 +165,7 @@ var CPObjectAccessorsForClassKey = @"$CPObjectAccessorsForClassKey", { [[CPException exceptionWithName:CPUndefinedKeyException reason:[self _objectDescription] + " is not key value coding-compliant for the key " + aKey - userInfo:[CPDictionary dictionaryWithObjects:[self, aKey] forKeys:[CPTargetObjectUserInfoKey, CPUnknownUserInfoKey]]] raise]; + userInfo:@{ CPTargetObjectUserInfoKey: self, CPUnknownUserInfoKey: aKey }] raise]; } - (void)setValue:(id)aValue forKeyPath:(CPString)aKeyPath @@ -258,7 +258,7 @@ var CPObjectAccessorsForClassKey = @"$CPObjectAccessorsForClassKey", { [[CPException exceptionWithName:CPUndefinedKeyException reason:[self _objectDescription] + " is not key value coding-compliant for the key " + aKey - userInfo:[CPDictionary dictionaryWithObjects:[self, aKey] forKeys:[CPTargetObjectUserInfoKey, CPUnknownUserInfoKey]]] raise]; + userInfo:@{ CPTargetObjectUserInfoKey: self, CPUnknownUserInfoKey: aKey }] raise]; } - (CPString)_objectDescription diff --git a/Foundation/CPKeyValueObserving.j b/Foundation/CPKeyValueObserving.j index 4a25f4d40..7cd74ca4c 100644 --- a/Foundation/CPKeyValueObserving.j +++ b/Foundation/CPKeyValueObserving.j @@ -755,7 +755,7 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew | CPKeyValueObservingOpti if (!observers) { - observers = [CPDictionary dictionary]; + observers = @{}; _observersForKey[aPath] = observers; _observersForKeyLength++; } @@ -769,7 +769,7 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew | CPKeyValueObservingOpti if (newValue === nil || newValue === undefined) newValue = [CPNull null]; - var changes = [CPDictionary dictionaryWithObject:newValue forKey:CPKeyValueChangeNewKey]; + var changes = @{ CPKeyValueChangeNewKey: newValue }; [anObserver observeValueForKeyPath:aPath ofObject:_targetObject change:changes context:aContext]; } } @@ -1006,7 +1006,7 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew | CPKeyValueObservingOpti if (!aKey) return; - var changeOptions = [CPDictionary dictionaryWithObject:CPKeyValueChangeSetting forKey:CPKeyValueChangeKindKey]; + var changeOptions = @{ CPKeyValueChangeKindKey: CPKeyValueChangeSetting }; [[_CPKVOProxy proxyForObject:self] _sendNotificationsForKey:aKey changeOptions:changeOptions isBefore:YES]; } @@ -1036,7 +1036,7 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew | CPKeyValueObservingOpti if (!aKey) return; - var changeOptions = [CPDictionary dictionaryWithObjects:[change, indexes] forKeys:[CPKeyValueChangeKindKey, CPKeyValueChangeIndexesKey]]; + var changeOptions = @{ CPKeyValueChangeKindKey: change, CPKeyValueChangeIndexesKey: indexes }; [[_CPKVOProxy proxyForObject:self] _sendNotificationsForKey:aKey changeOptions:changeOptions isBefore:YES]; } @@ -1067,7 +1067,7 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew | CPKeyValueObservingOpti return; var changeKind = _changeKindForSetMutationKind(mutationKind), - changeOptions = [CPDictionary dictionaryWithObject:changeKind forKey:CPKeyValueChangeKindKey]; + changeOptions = @{ CPKeyValueChangeKindKey: changeKind }; //set hidden change-dict ivars to support unordered to-many relationships changeOptions[_CPKeyValueChangeSetMutationObjectsKey] = objects; changeOptions[_CPKeyValueChangeSetMutationKindKey] = mutationKind; @@ -1215,10 +1215,11 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew | CPKeyValueObservingOpti { var oldValue = [_value valueForKeyPath:_secondPart], newValue = [_object valueForKeyPath:_firstPart + "." + _secondPart], - pathChanges = [CPDictionary dictionaryWithObjectsAndKeys: - newValue ? newValue : [CPNull null], CPKeyValueChangeNewKey, - oldValue ? oldValue : [CPNull null], CPKeyValueChangeOldKey, - CPKeyValueChangeSetting, CPKeyValueChangeKindKey]; + pathChanges = @{ + CPKeyValueChangeNewKey: newValue ? newValue : [CPNull null], + CPKeyValueChangeOldKey: oldValue ? oldValue : [CPNull null], + CPKeyValueChangeKindKey: CPKeyValueChangeSetting, + }; [_observer observeValueForKeyPath:_firstPart + "." + _secondPart ofObject:_object change:pathChanges context:_context]; diff --git a/Foundation/CPKeyedArchiver.j b/Foundation/CPKeyedArchiver.j index a039edd9d..e4e0d7bbd 100644 --- a/Foundation/CPKeyedArchiver.j +++ b/Foundation/CPKeyedArchiver.j @@ -132,7 +132,7 @@ var _CPKeyedArchiverStringClass = Nil, _CPKeyedArchiverStringClass = [CPString class]; _CPKeyedArchiverNumberClass = [CPNumber class]; - _CPKeyedArchiverNullReference = [CPDictionary dictionaryWithObject:0 forKey:_CPKeyedArchiverUIDKey]; + _CPKeyedArchiverNullReference = @{ _CPKeyedArchiverUIDKey: 0 }; } + (BOOL)allowsKeyedCoding @@ -172,12 +172,12 @@ var _CPKeyedArchiverStringClass = Nil, _objects = []; - _UIDs = [CPDictionary dictionary]; - _conditionalUIDs = [CPDictionary dictionary]; + _UIDs = @{}; + _conditionalUIDs = @{}; - _replacementObjects = [CPDictionary dictionary]; + _replacementObjects = @{}; - _plistObject = [CPDictionary dictionary]; + _plistObject = @{}; _plistObjects = [CPArray arrayWithObject:_CPKeyedArchiverNullString]; } @@ -212,7 +212,7 @@ var _CPKeyedArchiverStringClass = Nil, [_delegate archiver:self didEncodeObject:object]; } - _plistObject = [CPDictionary dictionary]; + _plistObject = @{}; [_plistObject setObject:topObject forKey:_CPKeyedArchiverTopKey]; [_plistObject setObject:_plistObjects forKey:_CPKeyedArchiverObjectsKey]; @@ -395,7 +395,7 @@ var _CPKeyedArchiverStringClass = Nil, { var key, keys = [aDictionary keyEnumerator], - references = [CPDictionary dictionary]; + references = @{}; while ((key = [keys nextObject]) !== nil) [references setObject:_CPKeyedArchiverEncodeObject(self, [aDictionary objectForKey:key], NO) forKey:key]; @@ -414,7 +414,7 @@ var _CPKeyedArchiverStringClass = Nil, + (void)setClassName:(CPString)aClassName forClass:(Class)aClass { if (!CPArchiverReplacementClassNames) - CPArchiverReplacementClassNames = [CPDictionary dictionary]; + CPArchiverReplacementClassNames = @{}; [CPArchiverReplacementClassNames setObject:aClassName forKey:CPStringFromClass(aClass)]; } @@ -446,7 +446,7 @@ var _CPKeyedArchiverStringClass = Nil, - (void)setClassName:(CPString)aClassName forClass:(Class)aClass { if (!_replacementClassNames) - _replacementClassNames = [CPDictionary dictionary]; + _replacementClassNames = @{}; [_replacementClassNames setObject:aClassName forKey:CPStringFromClass(aClass)]; } @@ -503,7 +503,8 @@ var _CPKeyedArchiverEncodeObject = function(self, anObject, isConditional) } } - [self._replacementObjects setObject:object forKey:GUID]; + if (object != nil && GUID != nil) + [self._replacementObjects setObject:object forKey:GUID]; } // If we still don't have an object by this point, then return a @@ -541,7 +542,7 @@ var _CPKeyedArchiverEncodeObject = function(self, anObject, isConditional) else { // Only actually encode the object and create a plist representation if it is not a simple type. - plistObject = [CPDictionary dictionary]; + plistObject = @{}; [self._objects addObject:object]; @@ -559,7 +560,7 @@ var _CPKeyedArchiverEncodeObject = function(self, anObject, isConditional) if (!classUID) { - var plistClass = [CPDictionary dictionary], + var plistClass = @{}, hierarchy = []; [plistClass setObject:className forKey:_CPKeyedArchiverClassNameKey]; @@ -576,7 +577,7 @@ var _CPKeyedArchiverEncodeObject = function(self, anObject, isConditional) [self._UIDs setObject:classUID forKey:className]; } - [plistObject setObject:[CPDictionary dictionaryWithObject:classUID forKey:_CPKeyedArchiverUIDKey] forKey:_CPKeyedArchiverClassKey]; + [plistObject setObject:@{ _CPKeyedArchiverUIDKey: classUID } forKey:_CPKeyedArchiverClassKey]; } UID = [self._conditionalUIDs objectForKey:GUID]; @@ -595,5 +596,5 @@ var _CPKeyedArchiverEncodeObject = function(self, anObject, isConditional) } } - return [CPDictionary dictionaryWithObject:UID forKey:_CPKeyedArchiverUIDKey]; + return @{ _CPKeyedArchiverUIDKey: UID }; }; diff --git a/Foundation/CPNotificationCenter.j b/Foundation/CPNotificationCenter.j index 25107027f..99ab18183 100644 --- a/Foundation/CPNotificationCenter.j +++ b/Foundation/CPNotificationCenter.j @@ -65,7 +65,7 @@ var CPNotificationDefaultCenter = nil; if (self) { - _namedRegistries = [CPDictionary dictionary]; + _namedRegistries = @{}; _unnamedRegistry = [[_CPNotificationRegistry alloc] init]; } return self; @@ -189,7 +189,7 @@ var _CPNotificationCenterPostNotification = function(/* CPNotificationCenter */ if (self) { - _objectObservers = [CPDictionary dictionary]; + _objectObservers = @{}; } return self; diff --git a/Foundation/CPNumberFormatter.j b/Foundation/CPNumberFormatter.j index b942b1d46..2299ea10e 100644 --- a/Foundation/CPNumberFormatter.j +++ b/Foundation/CPNumberFormatter.j @@ -20,8 +20,6 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#import "Ref.h" - @import "CPString.j" @import "CPFormatter.j" @import "CPDecimalNumber.j" @@ -63,6 +61,8 @@ var NumberRegex = new RegExp('(-)?(\\d*)(\\.(\\d*))?'); CPNumberFormatterRoundingMode _roundingMode @accessors(property=roundingMode); CPUInteger _minimumFractionDigits @accessors(property=minimumFractionDigits); CPUInteger _maximumFractionDigits @accessors(property=maximumFractionDigits); + CPUInteger _minimum @accessors(property=minimum); + CPUInteger _maximum @accessors(property=maximum); CPString _currencyCode @accessors(property=currencyCode); CPString _currencySymbol @accessors(property=currencySymbol); BOOL _generatesDecimalNumbers @accessors(property=generatesDecimalNumbers); @@ -81,6 +81,8 @@ var NumberRegex = new RegExp('(-)?(\\d*)(\\.(\\d*))?'); _maximumFractionDigits = 0; _groupingSeparator = @","; _generatesDecimalNumbers = YES; + _minimum = nil; + _maximum = nil; // FIXME Add locale support. _currencyCode = @"USD"; @@ -179,11 +181,35 @@ var NumberRegex = new RegExp('(-)?(\\d*)(\\.(\\d*))?'); return [self stringForObjectValue:anObject]; } -- (BOOL)getObjectValue:(id)anObject forString:(CPString)aString errorDescription:(CPString)anError +- (BOOL)getObjectValue:(id)anObjectRef forString:(CPString)aString errorDescription:(CPString)anErrorRef { - // TODO Error handling. - var value = [self numberFromString:aString]; - AT_DEREF(anObject, value); + // Interpret an empty string as nil, like in Cocoa. + if (aString === @"") + { + @deref(anObjectRef) = nil; + return YES; + } + + var value = [self numberFromString:aString], + error = @""; + + // this will return false if we've received anything but a number, most likely NaN + if (!isFinite(value)) + error = @"Value is not a number"; + else if (_minimum !== nil && value < _minimum) + error = @"Value is less than the minimum allowed value"; + else if (_maximum !== nil && value > _maximum) + error = @"Value is greater than the maximum allowed value"; + + if (error) + { + if (anErrorRef) + @deref(anErrorRef) = error; + + return NO; + } + + @deref(anObjectRef) = value; return YES; } @@ -226,12 +252,29 @@ var NumberRegex = new RegExp('(-)?(\\d*)(\\.(\\d*))?'); SET_NEEDS_NUMBER_HANDLER_UPDATE(); } +- (void)setMinimum:(CPUInteger)aNumber +{ + _minimum = aNumber; + SET_NEEDS_NUMBER_HANDLER_UPDATE(); +} + +- (void)setMaximum:(CPUInteger)aNumber +{ + _maximum = aNumber; + SET_NEEDS_NUMBER_HANDLER_UPDATE(); +} + #pragma mark Private - (void)_updateNumberHandlerIfNecessary { if (!_numberHandler) - _numberHandler = [CPDecimalNumberHandler decimalNumberHandlerWithRoundingMode:_roundingMode scale:_maximumFractionDigits raiseOnExactness:NO raiseOnOverflow:NO raiseOnUnderflow:NO raiseOnDivideByZero:YES]; + _numberHandler = [CPDecimalNumberHandler decimalNumberHandlerWithRoundingMode:_roundingMode + scale:_maximumFractionDigits + raiseOnExactness:NO + raiseOnOverflow:NO + raiseOnUnderflow:NO + raiseOnDivideByZero:YES]; } @end @@ -239,6 +282,8 @@ var NumberRegex = new RegExp('(-)?(\\d*)(\\.(\\d*))?'); var CPNumberFormatterStyleKey = @"CPNumberFormatterStyleKey", CPNumberFormatterMinimumFractionDigitsKey = @"CPNumberFormatterMinimumFractionDigitsKey", CPNumberFormatterMaximumFractionDigitsKey = @"CPNumberFormatterMaximumFractionDigitsKey", + CPNumberFormatterMinimumKey = @"CPNumberFormatterMinimumKey", + CPNumberFormatterMaximumKey = @"CPNumberFormatterMaximumKey", CPNumberFormatterRoundingModeKey = @"CPNumberFormatterRoundingModeKey", CPNumberFormatterGroupingSeparatorKey = @"CPNumberFormatterGroupingSeparatorKey", CPNumberFormatterCurrencyCodeKey = @"CPNumberFormatterCurrencyCodeKey", @@ -256,6 +301,8 @@ var CPNumberFormatterStyleKey = @"CPNumberFormatterStyleKey", _numberStyle = [aCoder decodeIntForKey:CPNumberFormatterStyleKey]; _minimumFractionDigits = [aCoder decodeIntForKey:CPNumberFormatterMinimumFractionDigitsKey]; _maximumFractionDigits = [aCoder decodeIntForKey:CPNumberFormatterMaximumFractionDigitsKey]; + _minimum = [aCoder decodeIntForKey:CPNumberFormatterMinimumKey]; + _maximum = [aCoder decodeIntForKey:CPNumberFormatterMaximumKey]; _roundingMode = [aCoder decodeIntForKey:CPNumberFormatterRoundingModeKey]; _groupingSeparator = [aCoder decodeObjectForKey:CPNumberFormatterGroupingSeparatorKey]; _currencyCode = [aCoder decodeObjectForKey:CPNumberFormatterCurrencyCodeKey]; @@ -273,6 +320,8 @@ var CPNumberFormatterStyleKey = @"CPNumberFormatterStyleKey", [aCoder encodeInt:_numberStyle forKey:CPNumberFormatterStyleKey]; [aCoder encodeInt:_minimumFractionDigits forKey:CPNumberFormatterMinimumFractionDigitsKey]; [aCoder encodeInt:_maximumFractionDigits forKey:CPNumberFormatterMaximumFractionDigitsKey]; + [aCoder encodeInt:_minimum forKey:CPNumberFormatterMinimumKey]; + [aCoder encodeInt:_maximum forKey:CPNumberFormatterMaximumKey]; [aCoder encodeInt:_roundingMode forKey:CPNumberFormatterRoundingModeKey]; [aCoder encodeObject:_groupingSeparator forKey:CPNumberFormatterGroupingSeparatorKey]; [aCoder encodeObject:_currencyCode forKey:CPNumberFormatterCurrencyCodeKey]; diff --git a/Foundation/CPPredicate/_CPPredicate.j b/Foundation/CPPredicate/_CPPredicate.j index 8b66d3126..d2d8544db 100644 --- a/Foundation/CPPredicate/_CPPredicate.j +++ b/Foundation/CPPredicate/_CPPredicate.j @@ -279,15 +279,6 @@ @end -#define REFERENCE(variable) \ -function(newValue)\ -{\ - var oldValue = variable;\ - if (typeof newValue != 'undefined')\ - variable = newValue;\ - return oldValue;\ -} - @implementation CPPredicateScanner : CPScanner { CPEnumerator _args; @@ -573,7 +564,7 @@ function(newValue)\ ident, dbl; - if ([self scanDouble:REFERENCE(dbl)]) + if ([self scanDouble:@ref(dbl)]) return [CPExpression expressionForConstantValue:dbl]; // FIXME: handle integer, hex constants, 0x 0o 0b @@ -706,7 +697,7 @@ function(newValue)\ str = @""; [self setCharactersToBeSkipped:nil]; - [self scanUpToString:@"\"" intoString:REFERENCE(str)]; + [self scanUpToString:@"\"" intoString:@ref(str)]; if ([self scanString:@"\"" intoString:NULL] == NO) CPRaiseParseError(self, @"expression"); @@ -722,7 +713,7 @@ function(newValue)\ str = @""; [self setCharactersToBeSkipped:nil]; - [self scanUpToString:@"'" intoString:REFERENCE(str)]; + [self scanUpToString:@"'" intoString:@ref(str)]; if ([self scanString:@"'" intoString:NULL] == NO) CPRaiseParseError(self, @"expression"); @@ -784,7 +775,7 @@ function(newValue)\ if (!identifier) identifier = [CPCharacterSet characterSetWithCharactersInString:@"_$abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"]; - if (![self scanCharactersFromSet:identifier intoString:REFERENCE(ident)]) + if (![self scanCharactersFromSet:identifier intoString:@ref(ident)]) CPRaiseParseError(self, @"expression"); return [CPExpression expressionForKeyPath:ident]; @@ -846,7 +837,7 @@ function(newValue)\ if (![self scanString:@"(" intoString:NULL]) { var str; - [self scanCharactersFromSet:[CPCharacterSet lowercaseLetterCharacterSet] intoString:REFERENCE(str)]; + [self scanCharactersFromSet:[CPCharacterSet lowercaseLetterCharacterSet] intoString:@ref(str)]; if (![self scanString:@":(" intoString:NULL]) CPRaiseParseError(self, @"expression"); diff --git a/Foundation/CPPredicate/_CPSubqueryExpression.j b/Foundation/CPPredicate/_CPSubqueryExpression.j index d1b0fa31f..78b50be94 100644 --- a/Foundation/CPPredicate/_CPSubqueryExpression.j +++ b/Foundation/CPPredicate/_CPSubqueryExpression.j @@ -55,7 +55,7 @@ var collection = [_collection expressionValueWithObject:object context:context], count = [collection count], result = [CPArray array], - bindings = [CPDictionary dictionaryWithObject:[CPExpression expressionForEvaluatedObject] forKey:[self variable]], + bindings = @{ [self variable]: [CPExpression expressionForEvaluatedObject] }, i = 0; for (; i < count; i++) diff --git a/Foundation/CPRunLoop.j b/Foundation/CPRunLoop.j index 056aa01e9..f12e4642c 100644 --- a/Foundation/CPRunLoop.j +++ b/Foundation/CPRunLoop.j @@ -270,7 +270,6 @@ var CPRunLoopLastNativeRunLoop = 0; aTimer._lastNativeRunLoopsForModes[aMode] = CPRunLoopLastNativeRunLoop; - // FIXME: Hack for not doing this in CommonJS if ([CFBundle.environments() indexOfObject:("Browser")] !== CPNotFound) { @@ -308,6 +307,7 @@ var CPRunLoopLastNativeRunLoop = 0; nextTimerFireDate = _nextTimerFireDatesForModes[aMode]; // Perform Timers if necessary + if (_didAddTimer || nextTimerFireDate && nextTimerFireDate <= now) { _didAddTimer = NO; @@ -326,12 +326,16 @@ var CPRunLoopLastNativeRunLoop = 0; _timersForModes[aMode] = nil; - // Loop through timers looking for ones that had fired + // If we're running in CommonJS (unit tests) we shouldn't wait for at least 1 native run loop + // since those will never happen. + var hasNativeTimers = [CFBundle.environments() indexOfObject:("Browser")] !== CPNotFound; + + // Loop through timers looking for ones that had fired while (index--) { var timer = timers[index]; - if (timer._lastNativeRunLoopsForModes[aMode] < CPRunLoopLastNativeRunLoop && timer._isValid && timer._fireDate <= now) + if ((!hasNativeTimers || timer._lastNativeRunLoopsForModes[aMode] < CPRunLoopLastNativeRunLoop) && timer._isValid && timer._fireDate <= now) [timer fire]; // Timer may or may not still be valid diff --git a/Foundation/CPURLRequest.j b/Foundation/CPURLRequest.j index f7fcf7439..703c81bcc 100644 --- a/Foundation/CPURLRequest.j +++ b/Foundation/CPURLRequest.j @@ -77,7 +77,7 @@ _HTTPBody = @""; _HTTPMethod = @"GET"; - _HTTPHeaderFields = [CPDictionary dictionary]; + _HTTPHeaderFields = @{}; [self setValue:"Thu, 01 Jan 1970 00:00:00 GMT" forHTTPHeaderField:"If-Modified-Since"]; [self setValue:"no-cache" forHTTPHeaderField:"Cache-Control"]; diff --git a/Foundation/CPUndoManager.j b/Foundation/CPUndoManager.j index 25006a4af..af2111170 100644 --- a/Foundation/CPUndoManager.j +++ b/Foundation/CPUndoManager.j @@ -218,6 +218,7 @@ var _CPUndoGroupingParentKey = @"_CPUndoGroupingParentKey", _redoStack = []; _undoStack = []; + _disableCount = 0; _state = CPUndoManagerNormal; [self setRunLoopModes:[CPDefaultRunLoopMode]]; diff --git a/Foundation/CPUserDefaults.j b/Foundation/CPUserDefaults.j index 4805aca51..205330d35 100644 --- a/Foundation/CPUserDefaults.j +++ b/Foundation/CPUserDefaults.j @@ -105,12 +105,12 @@ var StandardUserDefaults; if (self) { - _domains = [CPDictionary dictionary]; + _domains = @{}; [self _setupArgumentsDomain]; var defaultStore = [CPUserDefaultsLocalStore supportsLocalStorage] ? CPUserDefaultsLocalStore : CPUserDefaultsCookieStore; - _stores = [CPDictionary dictionary]; + _stores = @{}; [self setPersistentStoreClass:defaultStore forDomain:CPGlobalDomain reloadData:YES]; [self setPersistentStoreClass:defaultStore forDomain:CPApplicationDomain reloadData:YES]; } @@ -182,7 +182,7 @@ var StandardUserDefaults; var domain = [_domains objectForKey:aDomain]; if (!domain) { - domain = [CPDictionary dictionary]; + domain = @{}; [_domains setObject:domain forKey:aDomain]; } @@ -264,7 +264,7 @@ var StandardUserDefaults; count = [dicts count], i = 0; - _searchList = [CPDictionary dictionary]; + _searchList = @{}; for (; i < count; i++) { @@ -342,7 +342,10 @@ var StandardUserDefaults; var data = [[self persistentStoreForDomain:aDomain] data], domain = data ? [CPKeyedUnarchiver unarchiveObjectWithData:data] : nil; - [_domains setObject:domain forKey:aDomain]; + if (domain === nil) + [_domains removeObjectForKey:aDomain]; + else + [_domains setObject:domain forKey:aDomain]; _searchListNeedsReload = YES; } diff --git a/Foundation/CPValueTransformer.j b/Foundation/CPValueTransformer.j index 65b208a01..f8fb3d187 100644 --- a/Foundation/CPValueTransformer.j +++ b/Foundation/CPValueTransformer.j @@ -31,7 +31,7 @@ @import "CPNumber.j" @import "CPObject.j" -var transformerMap = [CPDictionary dictionary]; +var transformerMap = @{}; @implementation CPValueTransformer : CPObject { diff --git a/Foundation/CPWebDAVManager.j b/Foundation/CPWebDAVManager.j index 87cc5cd82..1e2c11177 100644 --- a/Foundation/CPWebDAVManager.j +++ b/Foundation/CPWebDAVManager.j @@ -65,7 +65,7 @@ CPWebDAVManagerNonCollectionResourceType = 0; self = [super init]; if (self) - _blocksForConnections = [CPDictionary dictionary]; + _blocksForConnections = @{}; return self; } @@ -198,7 +198,7 @@ var parsePROPFINDResponse = function(anXMLString) responses = XMLDocument.getElementsByTagNameNS("*", "response"), responseIndex = 0, responseCount = responses.length, - propertiesForURLs = [CPDictionary dictionary]; + propertiesForURLs = @{}; for (; responseIndex < responseCount; ++responseIndex) { @@ -206,7 +206,7 @@ var parsePROPFINDResponse = function(anXMLString) elements = response.getElementsByTagNameNS("*", "prop").item(0).childNodes, index = 0, count = elements.length, - properties = [CPDictionary dictionary]; + properties = @{}; for (; index < count; ++index) { diff --git a/Foundation/Foundation.j b/Foundation/Foundation.j index ad1e4637a..4ce7d451c 100755 --- a/Foundation/Foundation.j +++ b/Foundation/Foundation.j @@ -33,14 +33,15 @@ @import "CPDateFormatter.j" @import "CPDecimal.j" @import "CPDecimalNumber.j" +@import "CPDelayedPerform.j" @import "CPDictionary.j" @import "CPEnumerator.j" @import "CPError.j" @import "CPException.j" @import "CPExpression.j" @import "CPFormatter.j" -@import "CPIndexSet.j" @import "CPIndexPath.j" +@import "CPIndexSet.j" @import "CPInvocation.j" @import "CPJSONPConnection.j" @import "CPKeyedArchiver.j" diff --git a/Foundation/Ref.h b/Foundation/Ref.h deleted file mode 100644 index 4f4038fe6..000000000 --- a/Foundation/Ref.h +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Ref.h - * Foundation - * - * Created by Alexander Ljungberg. - * Copyright 2011, WireLoad Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -/* -Temporary macros to substitute for @ref and @deref functionality in a future version of Objective-J. Since these are C macros rather than a part of Preprocessor.js they can only be used within Cappuccino itself. -*/ - -// @ref -#define AT_REF(x) function(__input) { if (arguments.length) return x = __input; return x; } -// @deref (kind of) -#define AT_DEREF(x, ...) x(##__VA_ARGS__) diff --git a/Objective-J/CFHTTPRequest.js b/Objective-J/CFHTTPRequest.js index 5ba2725bc..8be9e8b2f 100644 --- a/Objective-J/CFHTTPRequest.js +++ b/Objective-J/CFHTTPRequest.js @@ -301,7 +301,7 @@ function FileRequest(/*CFURL*/ aURL, onsuccess, onfailure) request.overrideMimeType("text/xml"); #if COMMONJS - if (aURL.pathExtension() === "j") + if (aURL.pathExtension().toLowerCase() === "j") { var aFilePath = aURL.toString().substring(5), OS = require("os"), diff --git a/Objective-J/CommonJS/lib/objective-j/compiler.js b/Objective-J/CommonJS/lib/objective-j/compiler.js index 6243d7a1f..34e22c80d 100644 --- a/Objective-J/CommonJS/lib/objective-j/compiler.js +++ b/Objective-J/CommonJS/lib/objective-j/compiler.js @@ -90,6 +90,11 @@ function compileWithResolvedFlags(aFilePath, objjcFlags, gccFlags, asPlainJavasc document = { createElement: function(x) { return { innerText: "", style: {}}}}; rhinoUglyFix = true; } + if (typeof navigator == "undefined") + { + navigator = { "userAgent": "fakenavigator" }; + rhinoUglyFix = true; + } } ObjectiveJ.setCurrentCompilerFlags(objjcFlags); diff --git a/Objective-J/CommonJS/lib/objective-j/jake/bundletask.js b/Objective-J/CommonJS/lib/objective-j/jake/bundletask.js index 4b7c4e921..a31c5d781 100644 --- a/Objective-J/CommonJS/lib/objective-j/jake/bundletask.js +++ b/Objective-J/CommonJS/lib/objective-j/jake/bundletask.js @@ -878,11 +878,17 @@ BundleTask.prototype.defineSourceTasks = function() }; rhinoUglyFix = true; } + + if (typeof navigator == "undefined") + { + navigator = { "userAgent": "fakenavigator" }; + rhinoUglyFix = true; + } } var compile; // if this file doesn't exist or isn't a .j file, don't preprocess it. - if (FILE.extension(aFilename) !== ".j") + if (FILE.extension(aFilename).toLowerCase() !== ".j") { TERM.stream.write("Including [\0blue(" + anEnvironment + "\0)] \0purple(" + aFilename + "\0)").flush(); var compiled = FILE.read(aFilename, { charset:"UTF-8" }); diff --git a/Objective-J/FileExecutable.js b/Objective-J/FileExecutable.js index 002586f0f..6176ac6b1 100644 --- a/Objective-J/FileExecutable.js +++ b/Objective-J/FileExecutable.js @@ -36,7 +36,7 @@ function FileExecutable(/*CFURL|String*/ aURL, /*Dictionary*/ aFilenameTranslate var fileContents = StaticResource.resourceAtURL(aURL).contents(), executable = NULL, - extension = aURL.pathExtension(); + extension = aURL.pathExtension().toLowerCase(); if (fileContents.match(/^@STATIC;/)) executable = decompile(fileContents, aURL); diff --git a/Objective-J/ObjJAcornCompiler.js b/Objective-J/ObjJAcornCompiler.js index 8b30d9c92..3e67ea51a 100644 --- a/Objective-J/ObjJAcornCompiler.js +++ b/Objective-J/ObjJAcornCompiler.js @@ -356,11 +356,85 @@ function createMessage(/* String */ aMessage, /* SpiderMonkey AST node */ node, function compile(node, state, visitor) { function c(node, st, override) { - visitor[override || node.type](node, st, c); + visitor[override || node.type](node, st, c); } c(node, state); }; +function isIdempotentExpression(node) { + switch (node.type) { + case "Literal": + case "Identifier": + return true; + + case "ArrayExpression": + for (var i = 0; i < node.elements.length; ++i) { + if (!isIdempotentExpression(node.elements[i])) + return false; + } + + return true; + + case "DictionaryLiteral": + for (var i = 0; i < node.keys.length; ++i) { + if (!isIdempotentExpression(node.keys[i])) + return false; + if (!isIdempotentExpression(node.values[i])) + return false; + } + + return true; + + case "ObjectExpression": + for (var i = 0; i < node.properties.length; ++i) + if (!isIdempotentExpression(node.properties[i].value)) + return false; + + return true; + + case "FunctionExpression": + for (var i = 0; i < node.params.length; ++i) + if (!isIdempotentExpression(node.params[i])) + return false; + + return true; + + case "SequenceExpression": + for (var i = 0; i < node.expressions.length; ++i) + if (!isIdempotentExpression(node.expressions[i])) + return false; + + return true; + + case "UnaryExpression": + return isIdempotentExpression(node.argument); + + case "BinaryExpression": + return isIdempotentExpression(node.left) && isIdempotentExpression(node.right); + + case "ConditionalExpression": + return isIdempotentExpression(node.test) && isIdempotentExpression(node.consequent) && isIdempotentExpression(node.alternate); + + case "MemberExpression": + return isIdempotentExpression(node.object) && (!node.computed || isIdempotentExpression(node.property)); + + case "Dereference": + return isIdempotentExpression(node.expr); + + case "Reference": + return isIdempotentExpression(node.element); + + default: + return false; + } +} + +// We do not allow dereferencing of expressions with side effects because we might need to evaluate the expression twice in certain uses of deref, which is not obvious when you look at the deref operator in plain code. +function checkCanDereference(st, node) { + if (!isIdempotentExpression(node)) + throw st.compiler.error_message("Dereference of expression with side effects", node); +} + var pass1 = exports.acorn.walk.make({ ImportStatement: function(node, st, c) { var urlString = node.filename.value; @@ -377,6 +451,7 @@ Program: function(node, st, c) { c(node.body[i], st, "Statement"); } if (!generate) CONCAT(compiler.jsBuffer,compiler.source.substring(st.compiler.lastPos, node.end)); + // Check maybe warnings var maybeWarnings = st.maybeWarnings(); if (maybeWarnings) for (var i = 0; i < maybeWarnings.length; i++) { @@ -673,6 +748,30 @@ UnaryExpression: function(node, st, c) { UpdateExpression: function(node, st, c) { var compiler = st.compiler, generate = compiler.generate; + if (node.argument.type === "Dereference") { + checkCanDereference(st, node.argument); + + // @deref(x)++ and ++@deref(x) require special handling. + if (!generate) CONCAT(compiler.jsBuffer, compiler.source.substring(compiler.lastPos, node.start)); + + // Output the dereference function, "(...)(z)" + CONCAT(compiler.jsBuffer, (node.prefix ? "" : "(") + "("); + + // The thing being dereferenced. + if (!generate) compiler.lastPos = node.argument.expr.start; + c(node.argument.expr, st, "Expression"); + if (!generate) CONCAT(compiler.jsBuffer, compiler.source.substring(compiler.lastPos, node.argument.expr.end)); + CONCAT(compiler.jsBuffer, ")("); + + if (!generate) compiler.lastPos = node.argument.start; + c(node.argument, st, "Expression"); + if (!generate) CONCAT(compiler.jsBuffer, compiler.source.substring(compiler.lastPos, node.argument.end)); + CONCAT(compiler.jsBuffer, " " + node.operator.substring(0, 1) + " 1)" + (node.prefix ? "" : node.operator == '++' ? " - 1)" : " + 1)")); + + if (!generate) compiler.lastPos = node.end; + return; + } + if (node.prefix) { if (generate) { CONCAT(compiler.jsBuffer, node.operator); @@ -691,18 +790,48 @@ BinaryExpression: function(node, st, c) { if (compiler.generate) CONCAT(compiler.jsBuffer, node.operator); c(node.right, st, "Expression"); }, -AssignmentExpression: function(node, st, c) { - var compiler = st.compiler; - c(node.left, st, "Expression"); - if (compiler.generate) CONCAT(compiler.jsBuffer, node.operator); - c(node.right, st, "Expression"); -}, AssignmentExpression: function(node, st, c) { var compiler = st.compiler, + generate = compiler.generate, saveAssignment = st.assignment; + + if (node.left.type === "Dereference") { + checkCanDereference(st, node.left); + + // @deref(x) = z -> x(z) etc + if (!generate) CONCAT(compiler.jsBuffer, compiler.source.substring(compiler.lastPos, node.start)); + + // Output the dereference function, "(...)(z)" + CONCAT(compiler.jsBuffer, "("); + // What's being dereferenced could itself be an expression, such as when dereferencing a deref. + if (!generate) compiler.lastPos = node.left.expr.start; + c(node.left.expr, st, "Expression"); + if (!generate) CONCAT(compiler.jsBuffer, compiler.source.substring(compiler.lastPos, node.left.expr.end)); + CONCAT(compiler.jsBuffer, ")("); + + // Now "(x)(...)". We have to manually expand +=, -=, *= etc. + if (node.operator !== "=") { + // Output the whole .left, not just .left.expr. + if (!generate) compiler.lastPos = node.left.start; + c(node.left, st, "Expression"); + if (!generate) CONCAT(compiler.jsBuffer, compiler.source.substring(compiler.lastPos, node.left.end)); + CONCAT(compiler.jsBuffer, " " + node.operator.substring(0, 1) + " "); + } + + if (!generate) compiler.lastPos = node.right.start; + c(node.right, st, "Expression"); + if (!generate) CONCAT(compiler.jsBuffer, compiler.source.substring(compiler.lastPos, node.right.end)); + CONCAT(st.compiler.jsBuffer, ")"); + + if (!generate) compiler.lastPos = node.end; + + return; + } + + var saveAssignment = st.assignment; st.assignment = true; c(node.left, st, "Expression"); - if (compiler.generate) CONCAT(compiler.jsBuffer, node.operator); + if (generate) CONCAT(compiler.jsBuffer, node.operator); st.assignment = saveAssignment; c(node.right, st, "Expression"); if (st.isRootScope() && node.left.type === "Identifier" && !st.getLvar(node.left.name)) @@ -1239,6 +1368,34 @@ SelectorLiteralExpression: function(node, st, c) { CONCAT(compiler.jsBuffer, "\")"); if (!generate) compiler.lastPos = node.end; }, +Reference: function(node, st, c) { + var compiler = st.compiler, + generate = compiler.generate; + if (!generate) CONCAT(compiler.jsBuffer, compiler.source.substring(compiler.lastPos, node.start)); + CONCAT(compiler.jsBuffer, "function(__input) { if (arguments.length) return "); + CONCAT(compiler.jsBuffer, node.element.name); + CONCAT(compiler.jsBuffer, " = __input; return "); + CONCAT(compiler.jsBuffer, node.element.name); + CONCAT(compiler.jsBuffer, "; }"); + if (!generate) compiler.lastPos = node.end; +}, +Dereference: function(node, st, c) { + var compiler = st.compiler, + generate = compiler.generate; + + checkCanDereference(st, node.expr); + + // @deref(y) -> y() + // @deref(@deref(y)) -> y()() + if (!generate) { + CONCAT(compiler.jsBuffer, compiler.source.substring(compiler.lastPos, node.start)); + compiler.lastPos = node.expr.start; + } + c(node.expr, st, "Expression"); + if (!generate) CONCAT(compiler.jsBuffer, compiler.source.substring(compiler.lastPos, node.expr.end)); + CONCAT(compiler.jsBuffer, "()"); + if (!generate) compiler.lastPos = node.end; +}, ClassStatement: function(node, st, c) { var compiler = st.compiler; if (!compiler.generate) { diff --git a/Objective-J/Runtime.js b/Objective-J/Runtime.js index 5014fb2f8..7b1929384 100644 --- a/Objective-J/Runtime.js +++ b/Objective-J/Runtime.js @@ -400,7 +400,7 @@ GLOBAL(objj_allocateClassPair) = function(/*Class*/ superclass, /*String*/ aName // Give our current allocator all the instance variables of our super class' allocator. classObject.allocator.prototype = new superclass.allocator; - // "Inheret" parent properties. + // "Inherit" parent properties. classObject.ivar_dtable = classObject.ivar_store.prototype = new superclass.ivar_store; classObject.method_dtable = classObject.method_store.prototype = new superclass.method_store; diff --git a/Objective-J/acorn.js b/Objective-J/acorn.js index f761fd39e..0a9f87e29 100644 --- a/Objective-J/acorn.js +++ b/Objective-J/acorn.js @@ -358,6 +358,7 @@ if (typeof exports != "undefined" && !exports.acorn) { var _end = {keyword: "end"}, _import = {keyword: "import", afterImport: true}; var _action = {keyword: "action"}, _selector = {keyword: "selector"}, _class = {keyword: "class"}, _global = {keyword: "global"}; var _dictionaryLiteral = {keyword: "{"}, _arrayLiteral = {keyword: "["}; + var _ref = {keyword: "ref"}, _deref = {keyword: "deref"}; // Objective-J keywords @@ -393,7 +394,8 @@ if (typeof exports != "undefined" && !exports.acorn) { // Map Objective-J "@" keyword names to token types. var objJAtKeywordTypes = {"implementation": _implementation, "outlet": _outlet, "accessors": _accessors, "end": _end, - "import": _import, "action": _action, "selector": _selector, "class": _class, "global": _global}; + "import": _import, "action": _action, "selector": _selector, "class": _class, "global": _global, + "ref": _ref, "deref": _deref}; // Map Preprocessor keyword names to token types. @@ -1508,7 +1510,7 @@ if (typeof exports != "undefined" && !exports.acorn) { // to. function checkLVal(expr) { - if (expr.type !== "Identifier" && expr.type !== "MemberExpression") + if (expr.type !== "Identifier" && expr.type !== "MemberExpression" && expr.type !== "Dereference") raise(expr.start, "Assigning to rvalue"); if (strict && expr.type === "Identifier" && isStrictBadIdWord(expr.name)) raise(expr.start, "Assigning to " + expr.name + " in strict mode"); @@ -2186,7 +2188,7 @@ if (typeof exports != "undefined" && !exports.acorn) { case _null: case _true: case _false: var node = startNode(); node.value = tokType.atomValue; - node.raw = tokType.keyword + node.raw = tokType.keyword; next(); return finishNode(node, "Literal"); @@ -2258,6 +2260,22 @@ if (typeof exports != "undefined" && !exports.acorn) { expect(_parenR, "Expected closing ')' after selector"); return finishNode(node, "SelectorLiteralExpression"); + case _ref: + var node = startNode(); + next(); + expect(_parenL, "Expected '(' after '@ref'"); + node.element = parseIdent(node, _parenR); + expect(_parenR, "Expected closing ')' after ref"); + return finishNode(node, "Reference"); + + case _deref: + var node = startNode(); + next(); + expect(_parenL, "Expected '(' after '@deref'"); + node.expr = parseExpression(true, true); + expect(_parenR, "Expected closing ')' after deref"); + return finishNode(node, "Dereference"); + default: unexpected(); } diff --git a/Objective-J/acornwalk.js b/Objective-J/acornwalk.js index ca2295fbd..326d0dc72 100644 --- a/Objective-J/acornwalk.js +++ b/Objective-J/acornwalk.js @@ -149,12 +149,20 @@ if (!exports.acorn) { exports.Expression = skipThrough; exports.ThisExpression = ignore; - exports.ArrayExpression = function(node, st, c) { + exports.ArrayExpression = exports.ArrayLiteral = function(node, st, c) { for (var i = 0; i < node.elements.length; ++i) { var elt = node.elements[i]; if (elt) c(elt, st, "Expression"); } }; + exports.DictionaryLiteral = function(node, st, c) { + for (var i = 0; i < node.keys.length; i++) { + var key = node.keys[i]; + c(key, st, "Expression"); + var value = node.values[i]; + c(value, st, "Expression"); + } + }; exports.ObjectExpression = function(node, st, c) { for (var i = 0; i < node.properties.length; ++i) c(node.properties[i].value, st, "Expression"); @@ -195,7 +203,7 @@ if (!exports.acorn) { c(node.body[i], st, "Statement"); } } - + exports.ImportStatement = ignore; exports.IvarDeclaration = ignore; @@ -220,6 +228,14 @@ if (!exports.acorn) { exports.SelectorLiteralExpression = ignore; + exports.Reference = function(node, st, c) { + c(node.element, st, "Identifier"); + } + + exports.Dereference = function(node, st, c) { + c(node.expr, st, "Expression"); + } + // A custom walker that keeps track of the scope chain and the // variables defined in it. function makeScope(prev) { diff --git a/Tests/AppKit/CPArrayControllerTest.j b/Tests/AppKit/CPArrayControllerTest.j index a54bb5dad..3590f9f61 100644 --- a/Tests/AppKit/CPArrayControllerTest.j +++ b/Tests/AppKit/CPArrayControllerTest.j @@ -1040,7 +1040,7 @@ var arrayController1 = [CPArrayController new], arrayController2 = [CPArrayController new]; - [arrayController2 setContent:[CPDictionary dictionaryWithObject:[1, 2, 3] forKey:@"x"]]; + [arrayController2 setContent:@{ @"x": [1, 2, 3] }]; [arrayController1 bind:@"contentArray" toObject:arrayController2 withKeyPath:@"selection.x" options:nil]; // This used to cause a bug where the _CPKVCArray wrapping the selection proxy tried to call 'count' on @@ -1165,8 +1165,14 @@ if (self) { items = [CPMutableArray array]; - [items addObject:[CPDictionary dictionaryWithObjectsAndKeys:@"Spacely Sprockets", @"name", [CPArray arrayWithObjects:@"Tom", @"Dick", @"Harry"], @"employees"]]; - [items addObject:[CPDictionary dictionaryWithObjectsAndKeys:@"Cogswell Cogs", @"name", [CPArray arrayWithObjects:@"Jane", @"Mary", @"Vic"], @"employees"]]; + [items addObject:@{ + @"name": @"Spacely Sprockets", + @"employees": [CPArray arrayWithObjects:@"Tom", @"Dick", @"Harry"] + }]; + [items addObject:@{ + @"name": @"Cogswell Cogs", + @"employees": [CPArray arrayWithObjects:@"Jane", @"Mary", @"Vic"] + }]; } return self; diff --git a/Tests/AppKit/CPCheckBoxTest.j b/Tests/AppKit/CPCheckBoxTest.j index 178ecba35..528c7bd30 100644 --- a/Tests/AppKit/CPCheckBoxTest.j +++ b/Tests/AppKit/CPCheckBoxTest.j @@ -45,17 +45,12 @@ [control unbind:CPValueBinding]; // Set up a new binding with explicit placeholders, different from the default ones. - var options = [CPDictionary dictionaryWithObjects:[ - CPOffState, - CPOnState, - CPOnState, - CPMixedState - ] forKeys:[ - CPMultipleValuesPlaceholderBindingOption, - CPNoSelectionPlaceholderBindingOption, - CPNotApplicablePlaceholderBindingOption, - CPNullPlaceholderBindingOption - ]]; + var options = @{ + CPMultipleValuesPlaceholderBindingOption: CPOffState, + CPNoSelectionPlaceholderBindingOption: CPOnState, + CPNotApplicablePlaceholderBindingOption: CPOnState, + CPNullPlaceholderBindingOption: CPMixedState, + }; [control bind:CPValueBinding toObject:arrayController withKeyPath:@"selection.self" options:options]; @@ -81,13 +76,13 @@ var content = [ - [CPDictionary dictionaryWithObject:YES forKey:@"state"], - [CPDictionary dictionaryWithObject:NO forKey:@"state"] + @{ @"state": YES }, + @{ @"state": NO } ], arrayController = [[CPArrayController alloc] initWithContent:content]; // First test defaults. - [control bind:CPValueBinding toObject:arrayController withKeyPath:@"selection.state" options:[CPDictionary dictionaryWithObject:@"CPNegateBoolean" forKey:CPValueTransformerNameBindingOption]]; + [control bind:CPValueBinding toObject:arrayController withKeyPath:@"selection.state" options:@{ CPValueTransformerNameBindingOption: @"CPNegateBoolean" }]; [arrayController setSelectionIndexes:[CPIndexSet indexSetWithIndex:0]]; [self assert:CPOffState equals:[control objectValue] message:"content[0] is negated"] diff --git a/Tests/AppKit/CPKeyValueBindingSimpleBindingsTest.j b/Tests/AppKit/CPKeyValueBindingSimpleBindingsTest.j index 7475e0875..d9c0e06d1 100644 --- a/Tests/AppKit/CPKeyValueBindingSimpleBindingsTest.j +++ b/Tests/AppKit/CPKeyValueBindingSimpleBindingsTest.j @@ -105,7 +105,7 @@ { // Note: this cib will connect 'objectController'. This is only for debugging purposes, // this code should run with or without that connection. - var cib = [CPBundle loadCibFile:[[CPBundle bundleForClass:CPKeyValueBindingSimpleBindingsTest] pathForResource:"SimpleBindingsAdoption_03.cib"] externalNameTable:[CPDictionary dictionaryWithObject:self forKey:CPCibOwner]]; + var cib = [CPBundle loadCibFile:[[CPBundle bundleForClass:CPKeyValueBindingSimpleBindingsTest] pathForResource:"SimpleBindingsAdoption_03.cib"] externalNameTable:@{ CPCibOwner: self }]; // Test the interaction. [textField setStringValue:@"0.7"]; diff --git a/Tests/AppKit/CPKeyValueBindingTest.j b/Tests/AppKit/CPKeyValueBindingTest.j index 065e1d6dc..3d8e65ce2 100644 --- a/Tests/AppKit/CPKeyValueBindingTest.j +++ b/Tests/AppKit/CPKeyValueBindingTest.j @@ -49,7 +49,7 @@ var bindTesterA = [BindingTestWithBool new], bindTesterB = [BindingTestWithBool new]; - [bindTesterB bind:@"stringValue" toObject:bindTesterA withKeyPath:@"stringValue" options:[CPDictionary dictionary]]; + [bindTesterB bind:@"stringValue" toObject:bindTesterA withKeyPath:@"stringValue" options:@{}]; [self assert:nil equals:[bindTesterA stringValue] message:"initial A value unchanged"]; [self assert:nil equals:[bindTesterB stringValue] message:"initial B value unchanged"]; diff --git a/Tests/AppKit/CPPopUpButtonTest.j b/Tests/AppKit/CPPopUpButtonTest.j index b31366a42..9e07b8366 100644 --- a/Tests/AppKit/CPPopUpButtonTest.j +++ b/Tests/AppKit/CPPopUpButtonTest.j @@ -165,7 +165,7 @@ - (void)testBindingSelectedTag { - var dict = [CPDictionary dictionary], + var dict = @{}, item = nil; item = [[CPMenuItem alloc] initWithTitle:@"Mouse" action:nil keyEquivalent:nil]; @@ -412,7 +412,7 @@ [arrayController setContent:menuObjects]; [button bind:CPContentBinding toObject:arrayController withKeyPath:@"arrangedObjects" options:nil]; - var options = [CPDictionary dictionary]; + var options = @{}; [options setObject:[ContentValuesTransformer new] forKey:CPValueTransformerBindingOption]; [button bind:CPContentValuesBinding toObject:arrayController withKeyPath:@"arrangedObjects.name" options:options]; diff --git a/Tests/Foundation/CPArrayPerformanceTest.j b/Tests/Foundation/CPArrayPerformanceTest.j index b3b6715ef..368a1aecb 100644 --- a/Tests/Foundation/CPArrayPerformanceTest.j +++ b/Tests/Foundation/CPArrayPerformanceTest.j @@ -7,6 +7,14 @@ var FILE = require("file"); @global module +//+ Jonas Raoni Soares Silva +//@ http://jsfromhell.com/array/shuffle [v1.0] +function shuffle(o) +{ //v1.0 + for (var j, x, i = o.length; i; j = parseInt(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x); + return o; +}; + var ELEMENTS = 100, REPEATS = 10; @@ -225,7 +233,7 @@ var ELEMENTS = 100, indexes = [CPIndexSet indexSet]; while (c--) - array.push(""+c); + array.push("" + c); while (location < SIZE - 10) { @@ -254,6 +262,50 @@ var ELEMENTS = 100, [self fail:"_CPJavaScriptArray -objectsAtIndexes: returns an wrong value"]; } +- (void)testRemoveObjectIdenticalTo +{ + REPEATS = 200; + + var SIZE = 33 * 6, + allThings = [], + testSources = []; + + for (var c = 0; c < SIZE; c++) + allThings.push("" + c); + + var someThings = [allThings subarrayWithRange:CPMakeRange(SIZE / 3, SIZE / 3)], + removeThings = [allThings subarrayWithRange:(CPMakeRange(0, 2 * SIZE / 3))]; + + for (var r = 0; r < REPEATS * 2; r++) + testSources.push(shuffle(someThings)); + + var d = new Date(), + test1; + for (var r = 0; r < REPEATS; r++) + { + test1 = testSources.pop(); + for (var i = 0, count = [removeThings count]; i < count; i++) + [test1 _previous_removeObjectIdenticalTo:removeThings[i]]; + } + + var dd = new Date(), + test2; + for (var r = 0; r < REPEATS; r++) + { + test2 = testSources.pop(); + for (var i = 0, count = [removeThings count]; i < count; i++) + [test2 removeObjectIdenticalTo:removeThings[i]]; + } + var ddd = new Date(); + + CPLog.warn("\n_CPJavaScriptArray -removeObjectIdenticalTo:"); + CPLog.warn(" CPArray -removeObjectIdenticalTo: " + (dd - d) + "ms."); + CPLog.warn("_CPJavaScriptArray -removeObjectIdenticalTo: " + (ddd - dd) + "ms."); + + if (![test1 isEqual:test2]) + [self fail:"_CPJavaScriptArray -objectsAtIndexes: returns wrong value"]; +} + @end @implementation _CPJavaScriptArray (ObjectsAtIndexes) @@ -263,6 +315,16 @@ var ELEMENTS = 100, return [super objectsAtIndexes:indexes]; } +- (void)_previous_removeObjectIdenticalTo:(id)anObject +{ + [self _previous_removeObjectIdenticalTo:anObject inRange:CPMakeRange(0, [self count])]; +} + +- (void)_previous_removeObjectIdenticalTo:(id)anObject inRange:(CPRange)aRange +{ + [super removeObjectIdenticalTo:anObject inRange:aRange]; +} + @end @implementation CPArray (NativeSort) @@ -326,3 +388,4 @@ var ELEMENTS = 100, } @end + diff --git a/Tests/Foundation/CPArrayTest.j b/Tests/Foundation/CPArrayTest.j index e2fec2da7..2bdfe3129 100644 --- a/Tests/Foundation/CPArrayTest.j +++ b/Tests/Foundation/CPArrayTest.j @@ -1,5 +1,6 @@ @import +@import @implementation CPArrayTest : OJTestCase { @@ -620,7 +621,7 @@ { [output setValue:anObject forKey:"" + idx]; if ([output count] > 1) - stop(YES); // AT_DEREF(stop, YES) - FIXME Replace with proper @ref @deref when in ObjJ. + @deref(stop) = YES; } output = [CPMutableDictionary dictionary]; @@ -681,6 +682,13 @@ [self assertThrows:function() { [anArray removeObserver:self forKeyPath:@"self"]; }]; } +- (void)testArrayLiteral +{ + var anArray = @[1, [CPNull null], @"3"]; + + [self assert:[1, [CPNull null], "3"] equals:anArray]; +} + @end @implementation AlwaysEqual : CPObject diff --git a/Tests/Foundation/CPAttributedStringTest.j b/Tests/Foundation/CPAttributedStringTest.j index 0a88f8e06..64bb4d4de 100644 --- a/Tests/Foundation/CPAttributedStringTest.j +++ b/Tests/Foundation/CPAttributedStringTest.j @@ -55,7 +55,7 @@ var sharedObject = [CPObject new]; - (void)testIinitWithString_attributes { - var string = [[CPAttributedString alloc] initWithString:@"hi there" attributes:[CPDictionary dictionary]]; + var string = [[CPAttributedString alloc] initWithString:@"hi there" attributes:@{}]; [self assertTrue:([string string] === @"hi there") message:"testIinitWithString_attributes: expected:" + @"hi there" + " actual:" + [string string]]; @@ -370,7 +370,7 @@ var sharedObject = [CPObject new]; { var string = [self stringForTesting]; - [string setAttributes:[CPDictionary dictionary] range:CPMakeRange(0, [string length])]; + [string setAttributes:@{} range:CPMakeRange(0, [string length])]; testAttributesAtIndexWithValues(string, 10, {a:undefined, b:undefined, c:undefined, d:undefined, e:undefined, f:undefined}, self); diff --git a/Tests/Foundation/CPDecimalNumberTest.j b/Tests/Foundation/CPDecimalNumberTest.j index 724953039..c85873245 100644 --- a/Tests/Foundation/CPDecimalNumberTest.j +++ b/Tests/Foundation/CPDecimalNumberTest.j @@ -130,6 +130,9 @@ [self assert:[0] equals:dcm._mantissa message:"zero: - mantissa"]; [self assert:NO equals:dcm._isNegative message:"zero: - sign"]; + // this is Cocoa behaviour -- convert a decimal number with a leading zero to a number. + dcmn = [[CPDecimalNumber alloc] initWithString:@"0123"]; + [self assertTrue:[dcmn isEqualToNumber:123]]; // misc // decimalValue <- if it hasnt been working so far, you would know. @@ -147,14 +150,11 @@ dcmn = [[CPDecimalNumber alloc] initWithString:@"foo"]; [self assert:CPOrderedSame equals:[dcmn compare:[CPDecimalNumber notANumber]] message:"initWithString: 2 overflow should return NaN"]; - dcmn = [[CPDecimalNumber alloc] initWithString:@"0123"]; + dcmn = [[CPDecimalNumber alloc] initWithString:@"1e200"]; [self assert:CPOrderedSame equals:[dcmn compare:[CPDecimalNumber notANumber]] message:"initWithString: 3 overflow should return NaN"]; - dcmn = [[CPDecimalNumber alloc] initWithString:@"1e200"]; - [self assert:CPOrderedSame equals:[dcmn compare:[CPDecimalNumber notANumber]] message:"initWithString: 4 overflow should return NaN"]; - dcmn = [[CPDecimalNumber alloc] initWithString:@"12312e-23421"]; - [self assert:CPOrderedSame equals:[dcmn compare:[CPDecimalNumber notANumber]] message:"initWithString: 5 overflow should return NaN"]; + [self assert:CPOrderedSame equals:[dcmn compare:[CPDecimalNumber notANumber]] message:"initWithString: 4 overflow should return NaN"]; } - (void)testAdd diff --git a/Tests/Foundation/CPDecimalTest.j b/Tests/Foundation/CPDecimalTest.j index 6ba4c5fb1..7f88d8c14 100644 --- a/Tests/Foundation/CPDecimalTest.j +++ b/Tests/Foundation/CPDecimalTest.j @@ -68,7 +68,7 @@ [self assert:NO equals:dcm._isNaN message:"CPDecimalMakeWithString() Tf4: NaN is incorrectly set"]; dcm = CPDecimalMakeWithString(@"000000000000000000"); - [self assertTrue:dcm._isNaN message:"CPDecimalMakeWithString() Tf5: Should be invalid"]; + [self assertFalse:dcm._isNaN message:"CPDecimalMakeWithString() Tf5: Should be valid"]; // too large return NaN dcm = CPDecimalMakeWithString(@"111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111"); @@ -95,10 +95,12 @@ [self assertTrue:dcm._isNaN message:"CPDecimalMakeWithString() Ti7: catch of invalid number string. Should return NaN"]; dcm = CPDecimalMakeWithString(@"123ee"); [self assertTrue:dcm._isNaN message:"CPDecimalMakeWithString() Ti8: catch of invalid number string. Should return NaN"]; + + // this behaviour has changed to match Cocoa. Making a decimal with a leading zero should return the decimal. dcm = CPDecimalMakeWithString(@"0001"); - [self assertTrue:dcm._isNaN message:"CPDecimalMakeWithString() Ti9: catch of invalid number string. Should return NaN"]; + [self assertFalse:dcm._isNaN message:"CPDecimalMakeWithString() Ti9: Numbers with leading zeros are valid numbers. Expected False when evaluating against NaN, got True."]; dcm = CPDecimalMakeWithString(@"-0001"); - [self assertTrue:dcm._isNaN message:"CPDecimalMakeWithString() Ti10: catch of invalid number string. Should return NaN"]; + [self assertFalse:dcm._isNaN message:"CPDecimalMakeWithString() Ti10: Numbers with leading zeros are valid numbers. Expected False when evaluating against NaN, got True."]; //test make with parts dcm = CPDecimalMakeWithParts(10127658, 2); diff --git a/Tests/Foundation/CPDictionaryTest.j b/Tests/Foundation/CPDictionaryTest.j index a810aefbc..7795a7414 100644 --- a/Tests/Foundation/CPDictionaryTest.j +++ b/Tests/Foundation/CPDictionaryTest.j @@ -1,5 +1,7 @@ @import +@import + @implementation CPDictionaryTest : OJTestCase { CPDictionary string_dict; @@ -198,13 +200,14 @@ [self assertFalse:[dict containsKey:"4"]]; } +// FIXME: When CPDictionary will throw exception on nil value the following test case can be turn on again +/* - (void)testThrowsOnNilValue { [self assertThrows:function(){ var dict = [[CPDictionary alloc] initWithObjects:[1, nil] forKeys:["1", "2"]]; - [self assertFalse:dict]; }]; -} +}*/ - (void)testKeysOfEntriesPassingTest { @@ -350,7 +353,7 @@ - (void)testEnumerateKeysAndObjectsUsingBlock_ { - var input0 = [CPDictionary dictionary], + var input0 = @{}, input1 = [CPDictionary dictionaryWithJSObject:{a: 1, b: 3, c: "b"}], output = [CPMutableDictionary dictionary], outputFunction = function(aKey, anObject) @@ -371,7 +374,7 @@ { [output setValue:anObject forKey:aKey]; if ([output count] > 1) - stop(YES); // AT_DEREF(stop, YES) - FIXME Replace with proper @ref @deref when in ObjJ. + @deref(stop) = YES; } [input1 enumerateKeysAndObjectsUsingBlock:stoppingFunction]; @@ -403,9 +406,40 @@ { var dict = [[CPDictionary alloc] initWithObjectsAndKeys:@"Value1", @"Key1", nil, @"Key2", @"Value3", @"Key3"]; - [self assert:2 equals:[dict count]]; + [self assert:2 equals:[dict count]]; [self assert:@"Value1" equals:[dict objectForKey:@"Key1"]]; [self assert:nil equals:[dict objectForKey:@"Key2"]]; // No key/value pair [self assert:@"Value3" equals:[dict objectForKey:@"Key3"]]; } + +- (void)testDictionaryLiteral +{ + var dict = @{ + @"Key1": @"Value1", + @"Key2": [CPNull null], + @"Key3": 2 + }; + + [self assert:3 equals:[dict count]]; + [self assert:@"Value1" equals:[dict objectForKey:@"Key1"]]; + [self assert:[CPNull null] same:[dict objectForKey:@"Key2"]]; + [self assert:2 equals:[dict objectForKey:@"Key3"]]; +} + +- (void)testDictionaryLiteralExpressions +{ + var aKey = @"aKey", + aValue = 5, + dict = @{ + @"Key" + 1: @"Value" + 1, + @"Key2": NO ? 1 : 2, + aKey: aValue, // trailing comma is allowed + }; + + [self assert:3 equals:[dict count]]; + [self assert:@"Value1" equals:[dict objectForKey:@"Key1"]]; + [self assert:2 equals:[dict objectForKey:@"Key2"]]; + [self assert:5 equals:[dict objectForKey:@"aKey"]]; +} + @end diff --git a/Tests/Foundation/CPIndexSetTest.j b/Tests/Foundation/CPIndexSetTest.j index 0f1827a0d..c2b59d90e 100644 --- a/Tests/Foundation/CPIndexSetTest.j +++ b/Tests/Foundation/CPIndexSetTest.j @@ -542,7 +542,7 @@ function descriptionWithoutEntity(aString) { visitedIndexes.push(idx); if (visitedIndexes.length >= 2) - stop(YES); // AT_DEREF(stop, YES) - FIXME Replace with proper @ref @deref when in ObjJ. + @deref(stop) = YES; } [set0 enumerateIndexesUsingBlock:aBlock]; diff --git a/Tests/Foundation/CPKeyValueCodingTest.j b/Tests/Foundation/CPKeyValueCodingTest.j index d45f1f096..f750857a1 100644 --- a/Tests/Foundation/CPKeyValueCodingTest.j +++ b/Tests/Foundation/CPKeyValueCodingTest.j @@ -454,14 +454,14 @@ var accessIVARS = YES; - (void)testIfValueForKeyAccessesObjectForKey { - var testDictionary = [CPDictionary dictionary]; + var testDictionary = @{}; [testDictionary setObject:kvcTestObject forKey:@"testKey"]; [self assert: kvcTestObject same: [testDictionary valueForKey: @"testKey"]]; } - (void)testIfSetValueForKeyModifiesObjectForKey { - var testDictionary = [CPDictionary dictionary]; + var testDictionary = @{}; [testDictionary setValue:kvcTestObject forKey:@"testKey"]; [self assert: kvcTestObject same: [testDictionary objectForKey: @"testKey"]]; } diff --git a/Tests/Foundation/CPMutableArrayTest.j b/Tests/Foundation/CPMutableArrayTest.j index 1633f9fc1..30090b564 100644 --- a/Tests/Foundation/CPMutableArrayTest.j +++ b/Tests/Foundation/CPMutableArrayTest.j @@ -92,6 +92,29 @@ }]; } +- (void)test_removeObject_ +{ + var arrayClass = [[self class] arrayClass], + a = [CPDate distantFuture], + b = [a copy], + c = [CPDate distantPast], + array = [arrayClass arrayWithObjects:a, b, a, c, b]; + + [array removeObject:a]; + [self assert:array equals:[arrayClass arrayWithObjects:c]]; +} + +- (void)test_removeObjectIdenticalTo_ +{ + var arrayClass = [[self class] arrayClass], + a = [CPDate distantFuture], + b = [a copy], + array = [arrayClass arrayWithObjects:a, b, a, b, b]; + + [array removeObjectIdenticalTo:b]; + [self assert:array equals:[arrayClass arrayWithObjects:a, a]]; +} + - (void)test_removeObjectsAtIndexes_ { var arrayClass = [[self class] arrayClass], diff --git a/Tests/Foundation/CPNumberFormatterTest.j b/Tests/Foundation/CPNumberFormatterTest.j index 6063d881e..54338120d 100644 --- a/Tests/Foundation/CPNumberFormatterTest.j +++ b/Tests/Foundation/CPNumberFormatterTest.j @@ -48,6 +48,65 @@ [self assert:@"1 234 567" equals:[numberFormatter stringFromNumber:[CPNumber numberWithInt:1234567]]]; } +- (void)testMinimumMaximumValues +{ + var numberFormatter = [CPNumberFormatter new], + objectValue = nil, + objectValueRef = @ref(objectValue), + testErrorDescription = @"", + testErrorDescriptionRef = @ref(testErrorDescription); + + [numberFormatter setMinimum:10]; + [numberFormatter setMaximum:20]; + + [self assertTrue:[numberFormatter getObjectValue:objectValueRef forString:@"10" errorDescription:nil] + message:@"MinMax T1: Expected True."]; + [self assert:10 equals:objectValue]; + + [self assertTrue:[numberFormatter getObjectValue:objectValueRef forString:@"15" errorDescription:nil] + message:@"MinMax T2: Expected True."]; + [self assert:15 equals:objectValue]; + + [self assertTrue:[numberFormatter getObjectValue:objectValueRef forString:@"20" errorDescription:nil] + message:@"MinMax T3: Expected True."]; + [self assert:20 equals:objectValue]; + + [self assertTrue:[numberFormatter getObjectValue:objectValueRef forString:@"020" errorDescription:nil] + message:@"MinMax T4: Expected True."]; + [self assert:20 equals:objectValue]; + + // check if this formatter behaves like Cocoa, which allows a blank string to pass + [self assertTrue:[numberFormatter getObjectValue:objectValueRef forString:@"" errorDescription:nil] + message:@"MinMax T5: Expected True."]; + [self assert:nil equals:objectValue message:"MinMax T5: nil for @\"\"."]; + + [self assertFalse:[numberFormatter getObjectValue:objectValueRef forString:@"-1" errorDescription:nil] + message:@"MinMax T6: Expected False."]; + [self assert:nil equals:objectValue]; + + [self assertFalse:[numberFormatter getObjectValue:objectValueRef forString:@"1" errorDescription:testErrorDescriptionRef] + message:@"MinMax T7: Expected False."]; + [self assert:nil equals:objectValue]; + [self assert:testErrorDescription equals:@"Value is less than the minimum allowed value" message:@"MinMax T7: Error string does not match."]; + + [self assertFalse:[numberFormatter getObjectValue:objectValueRef forString:@"100" errorDescription:testErrorDescriptionRef] + message:@"MinMax T8: Expected False."]; + [self assert:nil equals:objectValue]; + [self assert:testErrorDescription equals:@"Value is greater than the maximum allowed value" message:@"MinMax T8: Error string does not match."]; + + var testWithString = [numberFormatter getObjectValue:objectValueRef + forString:@"Cappuccino" + errorDescription:@ref(testErrorDescription)]; + [self assert:nil equals:objectValue]; + + [self assertFalse:testWithString + message:@"MinMax T9: Expected False."]; + [self assert:testErrorDescription + equals:@"Value is not a number" + message:@"MinMax T10: Error string does not match."]; +} + + - (void)testRoundingMode { var numberFormatter = [[CPNumberFormatter alloc] init], diff --git a/Tests/Foundation/CPRunLoopTest.j b/Tests/Foundation/CPRunLoopTest.j new file mode 100644 index 000000000..321795e52 --- /dev/null +++ b/Tests/Foundation/CPRunLoopTest.j @@ -0,0 +1,52 @@ +@import +@import +@import + +@implementation CPRunLoopTest : OJTestCase +{ +} + +- (void)testDelayedPerform +{ + var aPerformer = [Performer new]; + + [aPerformer performSelector:@selector(performWithObject:) withObject:5 afterDelay:0]; + [aPerformer performSelector:@selector(performWithObject:) withObject:1 afterDelay:0 inModes:[CPDefaultRunLoopMode]]; + [aPerformer performSelector:@selector(performWithObject:) withObject:10 afterDelay:9999 inModes:[CPDefaultRunLoopMode]]; + + [[CPRunLoop currentRunLoop] limitDateForMode:CPDefaultRunLoopMode]; + + [self assertTrue:[aPerformer.callArgs containsObject:5]]; + [self assertTrue:[aPerformer.callArgs containsObject:1]]; + [CPObject cancelPreviousPerformRequestsWithTarget:aPerformer]; + + var performer1 = [Performer new], + performer2 = [Performer new]; + + [performer1 performSelector:@selector(performWithObject:) withObject:5 afterDelay:0 inModes:[CPDefaultRunLoopMode]]; + [performer2 performSelector:@selector(performWithObject:) withObject:10 afterDelay:0 inModes:[CPDefaultRunLoopMode]]; + [performer1 performSelector:@selector(performWithObject:) withObject:1 afterDelay:0 inModes:[CPDefaultRunLoopMode]]; + [CPObject cancelPreviousPerformRequestsWithTarget:performer1]; + + [[CPRunLoop currentRunLoop] limitDateForMode:CPDefaultRunLoopMode]; + + [self assert:nil equals:performer1.callArgs]; + [self assert:[10] equals:performer2.callArgs]; +} + +@end + +@implementation Performer : CPObject +{ + CPArray callArgs; +} + +- (void)performWithObject:(id)anObject +{ + if (!callArgs) + callArgs = []; + + [callArgs addObject:anObject]; +} + +@end diff --git a/Tests/Manual/ArrayController1/AppController.j b/Tests/Manual/ArrayController1/AppController.j index 680310150..056641151 100644 --- a/Tests/Manual/ArrayController1/AppController.j +++ b/Tests/Manual/ArrayController1/AppController.j @@ -96,14 +96,14 @@ CPLogRegister(CPLogConsole); [totalCountField bind:CPValueBinding toObject:arrayController withKeyPath:@"selectedObjects.@sum.price" options:nil]; - var bindingOptions = [CPDictionary dictionary]; + var bindingOptions = @{}; //[bindingOptions setObject:@"No Name" forKey:@"NSNullPlaceholder"]; [selectedNameField bind:CPValueBinding toObject:arrayController withKeyPath:@"selection.name" options:bindingOptions]; // binding for "name" column var tableColumn = [tableView tableColumnWithIdentifier:@"name"], - bindingOptions = [CPDictionary dictionary]; + bindingOptions = @{}; [tableColumn bind:CPValueBinding toObject:arrayController withKeyPath:@"arrangedObjects.name" options:bindingOptions]; @@ -111,7 +111,7 @@ CPLogRegister(CPLogConsole); // binding options for "price" // no need for placeholder as overridden by formatters - bindingOptions = [CPDictionary dictionary]; + bindingOptions = @{}; //[bindingOptions removeObjectForKey:@"NSNullPlaceholder"]; //[bindingOptions setObject:YES // forKey:CPValidatesImmediatelyBindingOption]; @@ -120,7 +120,7 @@ CPLogRegister(CPLogConsole); // binding for "price" column tableColumn = [tableView tableColumnWithIdentifier:@"price"]; - bindingOptions = [CPDictionary dictionary]; + bindingOptions = @{}; [tableColumn bind:CPValueBinding toObject:arrayController withKeyPath:@"arrangedObjects.price" options:bindingOptions]; diff --git a/Tests/Manual/ArrayControllerInitialSelectionTest/AppController.j b/Tests/Manual/ArrayControllerInitialSelectionTest/AppController.j new file mode 100644 index 000000000..30a44eb30 --- /dev/null +++ b/Tests/Manual/ArrayControllerInitialSelectionTest/AppController.j @@ -0,0 +1,130 @@ +/* + * AppController.j + * ArrayControllerSetContentTest + * + * Created by You on July 17, 2012. + * Copyright 2012, Your Company All rights reserved. + */ + +@import +@import +@import + +@implementation AppController : CPObject +{ + CPString log; + CPString selectedValue; +} + +- (void)applicationDidFinishLaunching:(CPNotification)aNotification +{ + var theWindow = [[CPWindow alloc] initWithContentRect:CGRectMakeZero() styleMask:CPBorderlessBridgeWindowMask], + contentView = [theWindow contentView], + contentWidth = [contentView frame].size.width; + + // instantiate a controller + var controller = [[CPArrayController alloc] init]; + var content = [CPMutableArray array], + message = [[Message alloc] initWithMessage:@"This is an initial content" withAppController:self]; + [content addObject:message]; + [controller setContent:content]; + + // listen to selectedIndex change + [controller addObserver:self forKeyPath:@"selectionIndex" options: nil context: nil]; + + // create a field, and establish a binding + var field = [CPTextField textFieldWithStringValue:@"" placeholder:@"bound value appears here..." width:contentWidth/2]; + [field setFrameOrigin:CGPointMake(20, 20)]; + [field bind:@"value" toObject:controller withKeyPath:@"selection.message" options:nil]; + [field setEditable:NO]; + [contentView addSubview:field]; + + var logField = [CPTextField textFieldWithStringValue:@"" placeholder:@"access to bound field is logged here..." width:contentWidth/2]; + [logField setFrameOrigin:CGPointMake(20, 50)]; + [logField bind:@"value" toObject:self withKeyPath:@"log" options:nil]; + [logField setEditable:NO]; + [contentView addSubview:logField]; + + var selectedField = [CPTextField textFieldWithStringValue:@"" placeholder:@"waiting for a selection" width:contentWidth/2]; + [selectedField setFrameOrigin:CGPointMake(20, 80)]; + [selectedField bind:@"value" toObject:self withKeyPath:@"selectedValue" options:nil]; + [selectedField setEditable:NO]; + [contentView addSubview:selectedField]; + + [theWindow orderFront:self]; + + // later, a content is retrieved from a server, and updated by setContent or contetnArray binding. + // Here, uses setContent + var newContent = [CPMutableArray array], + newMessage = [[Message alloc] initWithMessage:@"Successfully you see a new content" withAppController:self]; + [newContent addObject:newMessage]; + [controller setContent:newContent]; + + // Uncomment the following line to turn on the standard menu bar. + //[CPMenu setMenuBarVisible:YES]; +} + +- (CPArrayController)controller +{ + return controller; +} + +- (CPString)log +{ + return log; +} + +- (void)setLog:(CPString)aLog +{ + log = aLog; +} + +- (CPString)selectedValue +{ + return selectedValue; +} + +- (void)setSelectedValue:(CPString)aSelectedValue +{ + selectedValue = aSelectedValue; +} + +- (void)observeValueForKeyPath:(CPString)keyPath ofObject:(id)object change:(CPDictionary)change context:(id)context +{ + var newIndex = [change valueForKey:CPKeyValueChangeNewKey], + selectedObject = [[object content] objectAtIndex:newIndex]; + + return [self setSelectedValue:@"Current Value via selectionIndex: " + [selectedObject messageWithoutCheck]]; +} + +@end + +@implementation Message : CPObject +{ + CPString message; + AppController app; +} + +- (id)initWithMessage:(CPString)aMessage withAppController:(AppController)anApp +{ + self = [super init]; + if (self) + { + message = aMessage; + app = anApp; + } + return self; +} + +- (CPString)message +{ + [app setLog:@"the following message is about to be read: " + message]; + return message; +} + +- (CPString)messageWithoutCheck +{ + return message; +} + +@end diff --git a/Tests/Manual/ArrayControllerInitialSelectionTest/Info.plist b/Tests/Manual/ArrayControllerInitialSelectionTest/Info.plist new file mode 100644 index 000000000..3ce4a1551 --- /dev/null +++ b/Tests/Manual/ArrayControllerInitialSelectionTest/Info.plist @@ -0,0 +1,12 @@ + + + + + CPApplicationDelegateClass + AppController + CPBundleName + ArrayControllerInitialSelectionTest + CPPrincipalClass + CPApplication + + diff --git a/Tests/Manual/ArrayControllerInitialSelectionTest/Jakefile b/Tests/Manual/ArrayControllerInitialSelectionTest/Jakefile new file mode 100644 index 000000000..a0e64eac4 --- /dev/null +++ b/Tests/Manual/ArrayControllerInitialSelectionTest/Jakefile @@ -0,0 +1,93 @@ +/* + * Jakefile + * ArrayControllerInitialSelectionTest + * + * Created by You on July 21, 2012. + * Copyright 2012, Your Company All rights reserved. + */ + +var ENV = require("system").env, + FILE = require("file"), + JAKE = require("jake"), + task = JAKE.task, + FileList = JAKE.FileList, + app = require("cappuccino/jake").app, + configuration = ENV["CONFIG"] || ENV["CONFIGURATION"] || ENV["c"] || "Debug", + OS = require("os"); + +app ("ArrayControllerInitialSelectionTest", function(task) +{ + task.setBuildIntermediatesPath(FILE.join("Build", "ArrayControllerInitialSelectionTest.build", configuration)); + task.setBuildPath(FILE.join("Build", configuration)); + + task.setProductName("ArrayControllerInitialSelectionTest"); + task.setIdentifier("com.yourcompany.ArrayControllerInitialSelectionTest"); + task.setVersion("1.0"); + task.setAuthor("Your Company"); + task.setEmail("feedback @nospam@ yourcompany.com"); + task.setSummary("ArrayControllerInitialSelectionTest"); + task.setSources((new FileList("**/*.j")).exclude(FILE.join("Build", "**"))); + task.setResources(new FileList("Resources/**")); + task.setIndexFilePath("index.html"); + task.setInfoPlistPath("Info.plist"); + + if (configuration === "Debug") + task.setCompilerFlags("-DDEBUG -g"); + else + task.setCompilerFlags("-O"); +}); + +task ("default", ["ArrayControllerInitialSelectionTest"], function() +{ + printResults(configuration); +}); + +task ("build", ["default"]); + +task ("debug", function() +{ + ENV["CONFIGURATION"] = "Debug"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("release", function() +{ + ENV["CONFIGURATION"] = "Release"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("run", ["debug"], function() +{ + OS.system(["open", FILE.join("Build", "Debug", "ArrayControllerInitialSelectionTest", "index.html")]); +}); + +task ("run-release", ["release"], function() +{ + OS.system(["open", FILE.join("Build", "Release", "ArrayControllerInitialSelectionTest", "index.html")]); +}); + +task ("deploy", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Deployment", "ArrayControllerInitialSelectionTest")); + OS.system(["press", "-f", FILE.join("Build", "Release", "ArrayControllerInitialSelectionTest"), FILE.join("Build", "Deployment", "ArrayControllerInitialSelectionTest")]); + printResults("Deployment") +}); + +task ("desktop", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Desktop", "ArrayControllerInitialSelectionTest")); + require("cappuccino/nativehost").buildNativeHost(FILE.join("Build", "Release", "ArrayControllerInitialSelectionTest"), FILE.join("Build", "Desktop", "ArrayControllerInitialSelectionTest", "ArrayControllerInitialSelectionTest.app")); + printResults("Desktop") +}); + +task ("run-desktop", ["desktop"], function() +{ + OS.system([FILE.join("Build", "Desktop", "ArrayControllerInitialSelectionTest", "ArrayControllerInitialSelectionTest.app", "Contents", "MacOS", "NativeHost"), "-i"]); +}); + +function printResults(configuration) +{ + print("----------------------------"); + print(configuration+" app built at path: "+FILE.join("Build", configuration, "ArrayControllerInitialSelectionTest")); + print("----------------------------"); +} diff --git a/Tests/Manual/ArrayControllerInitialSelectionTest/Resources/spinner.gif b/Tests/Manual/ArrayControllerInitialSelectionTest/Resources/spinner.gif new file mode 100644 index 000000000..06dbc2bc2 Binary files /dev/null and b/Tests/Manual/ArrayControllerInitialSelectionTest/Resources/spinner.gif differ diff --git a/Tests/Manual/ArrayControllerInitialSelectionTest/index-debug.html b/Tests/Manual/ArrayControllerInitialSelectionTest/index-debug.html new file mode 100644 index 000000000..b1224f0f1 --- /dev/null +++ b/Tests/Manual/ArrayControllerInitialSelectionTest/index-debug.html @@ -0,0 +1,107 @@ + + + + + + + + + + + + + + + ArrayControllerInitialSelectionTest + + + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/ArrayControllerInitialSelectionTest/index.html b/Tests/Manual/ArrayControllerInitialSelectionTest/index.html new file mode 100644 index 000000000..d5bfff88b --- /dev/null +++ b/Tests/Manual/ArrayControllerInitialSelectionTest/index.html @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + ArrayControllerInitialSelectionTest + + + + + + + + + + + + +
+
+ + + +
+
+ + + + diff --git a/Tests/Manual/ArrayControllerInitialSelectionTest/main.j b/Tests/Manual/ArrayControllerInitialSelectionTest/main.j new file mode 100644 index 000000000..402ea8b60 --- /dev/null +++ b/Tests/Manual/ArrayControllerInitialSelectionTest/main.j @@ -0,0 +1,18 @@ +/* + * AppController.j + * ArrayControllerInitialSelectionTest + * + * Created by You on July 21, 2012. + * Copyright 2012, Your Company All rights reserved. + */ + +@import +@import + +@import "AppController.j" + + +function main(args, namedArgs) +{ + CPApplicationMain(args, namedArgs); +} diff --git a/Tests/Manual/CPFlashviewTest/AppController.j b/Tests/Manual/CPFlashviewTest/AppController.j index 28000bc5d..5a8745788 100644 --- a/Tests/Manual/CPFlashviewTest/AppController.j +++ b/Tests/Manual/CPFlashviewTest/AppController.j @@ -25,11 +25,11 @@ // note: // if both flashParams and flashVars are used flashParams must be setup first - var flashParameters = [CPDictionary dictionary]; + var flashParameters = @{}; [flashVars setObject:@"SampleParam" forKey:"SampleParamKey"]; [flashView setParameters:flashParameters]; - var flashVars = [CPDictionary dictionary]; + var flashVars = @{}; [flashVars setObject:@"SampleVar" forKey:"SampleVarKey"]; [flashView setFlashVars:flashVars]; diff --git a/Tests/Manual/CPGraphicsTest/AppController.j b/Tests/Manual/CPGraphicsTest/AppController.j index a433a6b44..f65bbe5eb 100644 --- a/Tests/Manual/CPGraphicsTest/AppController.j +++ b/Tests/Manual/CPGraphicsTest/AppController.j @@ -20,6 +20,8 @@ @outlet CustomDrawView gradientView1; @outlet CustomDrawView gradientView2; @outlet CustomDrawView gradientView3; + + @outlet CustomDrawView pathView0; } - (void)awakeFromCib @@ -29,7 +31,8 @@ - (void)viewWillDraw:(CPView)aView dirtyRect:(CGRect)dirtyRect { var context = [[CPGraphicsContext currentContext] graphicsPort], - innerRect; + innerRect, + bounds = [aView bounds]; var grad0 = aView == gradientView0, grad1 = aView == gradientView1, @@ -37,45 +40,51 @@ grad3 = aView == gradientView3, isGradient = (grad0 || grad1 || grad2 || grad3); - if (aView === view1 || aView === view2) + if (aView == view1 || aView == view2 || aView == view3 || aView == view4) { - var bounds = [aView bounds], - sides = [CPMinYEdge, CPMaxYEdge, CPMinXEdge, CPMaxXEdge], - grays = [192.0 / 255.0, 1.0, 192.0 / 255.0, 1.0], - clipRect = [aView bounds]; - - if (aView === view2) + if (aView === view1 || aView === view2) { - var remainder = CGRectMakeZero(); - CGRectDivide(bounds, clipRect, remainder, CGRectGetWidth(bounds) / 2, CGMinXEdge); + var bounds = [aView bounds], + sides = [CPMinYEdge, CPMaxYEdge, CPMinXEdge, CPMaxXEdge], + grays = [192.0 / 255.0, 1.0, 192.0 / 255.0, 1.0], + clipRect = [aView bounds]; + + if (aView === view2) + { + var remainder = CGRectMakeZero(); + CGRectDivide(bounds, clipRect, remainder, CGRectGetWidth(bounds) / 2, CGMinXEdge); + } + + innerRect = CPDrawTiledRects(bounds, clipRect, sides, grays); + } + else if (aView === view3) + { + var bounds = [aView bounds], + sides = [CPMinYEdge, CPMaxYEdge, CPMinXEdge, CPMaxXEdge], + colors = [[CPColor redColor], [CPColor blueColor], [CPColor whiteColor], [CPColor yellowColor]]; + + innerRect = CPDrawColorTiledRects(bounds, bounds, sides, colors); + } + else if (aView === view4) + { + var bounds = [aView bounds], + sides = [CPMinYEdge, CPMaxYEdge, CPMinXEdge, CPMaxXEdge, + CPMinYEdge, CPMaxYEdge, CPMinXEdge, CPMaxXEdge, + CPMinYEdge, CPMaxYEdge, CPMinXEdge, CPMaxXEdge], + colors = [[CPColor redColor], [CPColor blueColor], [CPColor whiteColor], [CPColor yellowColor], + [CPColor redColor], [CPColor blueColor], [CPColor whiteColor], [CPColor yellowColor], + [CPColor redColor], [CPColor blueColor], [CPColor whiteColor], [CPColor yellowColor]]; + + innerRect = CPDrawColorTiledRects(bounds, bounds, sides, colors); } - innerRect = CPDrawTiledRects(bounds, clipRect, sides, grays); + CGContextSetFillColor(context, [CPColor colorWithHexString:@"E1EAFF"]); + CGContextFillRect(context, innerRect); } - else if (aView === view3) - { - var bounds = [aView bounds], - sides = [CPMinYEdge, CPMaxYEdge, CPMinXEdge, CPMaxXEdge], - colors = [[CPColor redColor], [CPColor blueColor], [CPColor whiteColor], [CPColor yellowColor]]; - innerRect = CPDrawColorTiledRects(bounds, bounds, sides, colors); - } - else if (aView === view4) + if (isGradient) { - var bounds = [aView bounds], - sides = [CPMinYEdge, CPMaxYEdge, CPMinXEdge, CPMaxXEdge, - CPMinYEdge, CPMaxYEdge, CPMinXEdge, CPMaxXEdge, - CPMinYEdge, CPMaxYEdge, CPMinXEdge, CPMaxXEdge], - colors = [[CPColor redColor], [CPColor blueColor], [CPColor whiteColor], [CPColor yellowColor], - [CPColor redColor], [CPColor blueColor], [CPColor whiteColor], [CPColor yellowColor], - [CPColor redColor], [CPColor blueColor], [CPColor whiteColor], [CPColor yellowColor]]; - - innerRect = CPDrawColorTiledRects(bounds, bounds, sides, colors); - } - else if (isGradient) - { - var bounds = [aView bounds], - colors, + var colors, gradient; if (grad1 || grad3) @@ -107,17 +116,29 @@ } else { - colors = [CPArray arrayWithObjects:[[CPColor cyanColor] colorWithAlphaComponent:0.5], [CPColor magentaColor], [CPColor clearColor], [CPColor whiteColor]]; gradient = [[CPGradient alloc] initWithColors:colors]; [gradient drawInRect:bounds angle:-20]; } } - if (!isGradient) + if (aView === pathView0) { - CGContextSetFillColor(context, [CPColor colorWithHexString:@"E1EAFF"]); - CGContextFillRect(context, innerRect); + [[CPColor whiteColor] set]; + [[CPBezierPath bezierPathWithRect:bounds] fill]; + + var aPath = [CPBezierPath bezierPath]; + + [aPath moveToPoint:CGPointMake(10.0, 10.0)]; + [aPath lineToPoint:CGPointMake(4 * 10.0, 4 * 10.0)]; + [aPath moveToPoint:CGPointMake(60.0, 50.0)]; + [aPath curveToPoint:CGPointMake(8 * 18.0, 4 * 21.0) + controlPoint1:CGPointMake(8 * 6.0, 4 * 2.0) + controlPoint2:CGPointMake(8 * 28.0, 4* 10.0)]; + + [aPath appendBezierPathWithRect:CGRectMake(4 * 2.0 + 0.5, 4 * 16.0 + 0.5, 4 * 8.0, 4 * 5.0)]; + [[CPColor blackColor] set]; + [aPath stroke]; } } diff --git a/Tests/Manual/CPGraphicsTest/Resources/MainMenu.cib b/Tests/Manual/CPGraphicsTest/Resources/MainMenu.cib index a19c4e72c..39796ceb1 100644 --- a/Tests/Manual/CPGraphicsTest/Resources/MainMenu.cib +++ b/Tests/Manual/CPGraphicsTest/Resources/MainMenu.cib @@ -1 +1 @@ -280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;0E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;4E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;0E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;1;7E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;1;9E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;11E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;13E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;15E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;17E;D;K;6;CP$UIDd;2;18E;D;K;6;CP$UIDd;2;19E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;79E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;11E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;80E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;2;81E;E;D;K;10;$classnameS;20;CPCibOutletConnectorK;8;$classesA;S;20;CPCibOutletConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;11E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;79E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;82E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;79E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;61E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;83E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;79E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;62E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;84E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;79E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;71E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;85E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;79E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;72E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;86E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;79E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;35E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;87E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;79E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;43E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;88E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;79E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;44E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;89E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;79E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;42E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;79E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;45E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;43E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;79E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;92E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;44E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;79E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;92E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;42E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;79E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;92E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;45E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;79E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;92E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;61E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;79E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;92E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;62E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;79E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;92E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;71E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;79E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;92E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;72E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;79E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;92E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;80E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;2;93E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;2;94E;K;30;_CPCibWindowTemplateWTFlagsKeyD;K;6;CP$UIDd;2;95E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;2;96E;K;33;_CPCibWindowTemplateScreenRectKeyD;K;6;CP$UIDd;2;97E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;2;98E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;2;99E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;37E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;36E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;101E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;101E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;102E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;103E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;E;D;K;10;$classnameS;11;CPTextFieldK;8;$classesA;S;11;CPTextFieldS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;105E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;106E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;110E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;112E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;114E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;112E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;119E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;120E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;121E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;112E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;122E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;112E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;16;_CPCibCustomViewK;8;$classesA;S;16;_CPCibCustomViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;41E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;123E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;124E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;125E;E;D;K;6;$classD;K;6;CP$UIDd;2;41E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;126E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;124E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;125E;E;D;K;6;$classD;K;6;CP$UIDd;2;41E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;127E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;124E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;125E;E;D;K;6;$classD;K;6;CP$UIDd;2;41E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;128E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;124E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;125E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;129E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;130E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;131E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;111E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;132E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;111E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;133E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;134E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;135E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;111E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;136E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;111E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;137E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;130E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;138E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;111E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;139E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;111E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;140E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;134E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;141E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;111E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;142E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;111E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;5;CPBoxK;8;$classesA;S;5;CPBoxS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;143E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;144E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;100E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;145E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;16;$acontent-marginD;K;6;CP$UIDd;3;147E;K;15;$acorner-radiusD;K;6;CP$UIDd;3;100E;K;14;$aborder-widthD;K;6;CP$UIDd;3;100E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;111E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;148E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;149E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;100E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;150E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;151E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;152E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;112E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;153E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;112E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;154E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;130E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;155E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;111E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;132E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;111E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;156E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;134E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;157E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;111E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;136E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;111E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;158E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;130E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;159E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;111E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;139E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;111E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;160E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;134E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;161E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;111E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;142E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;111E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;11;CPImageViewK;8;$classesA;S;11;CPImageViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;162E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;163E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;111E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;100E;K;11;$aalignmentD;K;6;CP$UIDd;3;100E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;165E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;112E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;166E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;163E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;111E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;100E;K;11;$aalignmentD;K;6;CP$UIDd;3;100E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;167E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;112E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;168E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;169E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;170E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;112E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;171E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;112E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;41E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;172E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;124E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;125E;E;D;K;6;$classD;K;6;CP$UIDd;2;41E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;173E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;124E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;125E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;174E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;130E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;175E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;111E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;176E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;111E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;177E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;134E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;178E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;111E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;179E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;111E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;180E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;163E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;111E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;100E;K;11;$aalignmentD;K;6;CP$UIDd;3;100E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;181E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;112E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;182E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;130E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;183E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;111E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;176E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;111E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;184E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;134E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;185E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;111E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;179E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;111E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;186E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;163E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;111E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;100E;K;11;$aalignmentD;K;6;CP$UIDd;3;100E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;187E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;112E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;188E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;163E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;111E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;100E;K;11;$aalignmentD;K;6;CP$UIDd;3;100E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;189E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;112E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;190E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;163E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;111E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;100E;K;11;$aalignmentD;K;6;CP$UIDd;3;100E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;191E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;112E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;41E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;192E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;124E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;125E;E;D;K;6;$classD;K;6;CP$UIDd;2;41E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;193E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;124E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;125E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;194E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;130E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;195E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;111E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;196E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;111E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;197E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;134E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;198E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;111E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;199E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;111E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;200E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;130E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;201E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;111E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;196E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;111E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;202E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;134E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;6;$afontD;K;6;CP$UIDd;3;203E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;111E;K;11;$aalignmentD;K;6;CP$UIDd;3;111E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;199E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;115E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;116E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;116E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;118E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;111E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;111E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;204E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;163E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;111E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;100E;K;11;$aalignmentD;K;6;CP$UIDd;3;100E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;205E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;112E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;100E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;206E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;163E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;107E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;104E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;111E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;100E;K;11;$aalignmentD;K;6;CP$UIDd;3;100E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;207E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;112E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;208E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;35E;E;E;S;8;delegateS;13;gradientView0S;13;gradientView1S;13;gradientView2S;13;gradientView3S;9;theWindowS;5;view1S;5;view2S;5;view3S;5;view4S;9;_delegateS;32;{10000000000000, 10000000000000}S;8;CPWindowd;10;1946157056S;24;{{408, 148}, {840, 673}}S;22;{{0, 0}, {2560, 1418}}d;1;7S;15;CPGraphics Testd;1;0S;20;{{0, 0}, {840, 673}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;E;E;d;2;18S;6;normalS;21;{{20, 18}, {168, 22}}S;19;{{0, 0}, {168, 22}}d;2;36S;9;textfieldD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;103E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;113E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;d;1;2d;1;4T;S;16;CPDrawTiledRectsd;4;3072F;D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;117E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;210E;E;S;22;{{20, 199}, {217, 22}}S;19;{{0, 0}, {217, 22}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;103E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;113E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;21;CPDrawColorTiledRectsS;22;{{20, 230}, {163, 96}}S;19;{{0, 0}, {163, 96}}S;14;CustomDrawViewS;21;{{20, 49}, {163, 96}}S;22;{{234, 49}, {163, 96}}S;23;{{234, 230}, {163, 96}}S;22;{{20, 153}, {163, 14}}S;19;{{0, 0}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;211E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;23;Bezel using full boundsS;23;{{232, 153}, {167, 14}}S;19;{{0, 0}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;211E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;32;Bezel clipping half horizontallyS;22;{{18, 334}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;211E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;13;Single borderS;23;{{230, 334}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;211E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;13;Triple borderS;21;{{418, 12}, {5, 649}}S;18;{{0, 0}, {5, 649}}S;3;boxD;K;10;$classnameS;21;_CPKeyedArchiverValueK;8;$classesA;S;21;_CPKeyedArchiverValueS;7;CPValueS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;146E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;212E;E;d;1;3S;3;BoxS;22;{{441, 20}, {201, 22}}S;19;{{0, 0}, {201, 22}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;103E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;113E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;20;Reference RenderingsS;23;{{441, 155}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;211E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;23;{{653, 155}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;211E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;23;{{439, 336}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;211E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;23;{{651, 336}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;211E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;23;{{438, 46}, {169, 102}}S;20;{{0, 0}, {169, 102}}D;K;10;$classnameS;20;_CPCibCustomResourceK;8;$classesA;S;20;_CPCibCustomResourceS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;164E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;213E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;214E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;216E;E;S;24;{{648, 227}, {169, 102}}D;K;6;$classD;K;6;CP$UIDd;3;164E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;213E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;217E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;218E;E;S;22;{{22, 378}, {102, 22}}S;19;{{0, 0}, {102, 22}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;103E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;113E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;10;CPGradientS;22;{{22, 409}, {163, 96}}S;23;{{236, 409}, {163, 96}}S;22;{{20, 513}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;211E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;5;SolidS;23;{{232, 513}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;211E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;12;TransparencyS;24;{{438, 227}, {169, 102}}D;K;6;$classD;K;6;CP$UIDd;3;164E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;213E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;219E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;220E;E;S;23;{{441, 513}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;211E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;23;{{653, 513}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;211E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;23;{{648, 46}, {169, 102}}D;K;6;$classD;K;6;CP$UIDd;3;164E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;213E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;221E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;222E;E;S;24;{{438, 406}, {169, 102}}D;K;6;$classD;K;6;CP$UIDd;3;164E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;213E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;223E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;224E;E;S;24;{{648, 406}, {169, 102}}D;K;6;$classD;K;6;CP$UIDd;3;164E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;213E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;225E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;226E;E;S;22;{{22, 535}, {163, 96}}S;23;{{236, 535}, {163, 96}}S;22;{{20, 639}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;211E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;4;225ºS;23;{{232, 639}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;211E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;4;-20ºS;23;{{441, 642}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;211E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;23;{{653, 642}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;3;109E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;209E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;211E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;116E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;113E;E;S;24;{{438, 535}, {169, 102}}D;K;6;$classD;K;6;CP$UIDd;3;164E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;213E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;227E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;228E;E;S;24;{{648, 535}, {169, 102}}D;K;6;$classD;K;6;CP$UIDd;3;164E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;213E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;229E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;230E;E;S;13;AppControllerS;28;_CPFontSystemFacePlaceholderD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;231E;D;K;6;CP$UIDd;3;231E;D;K;6;CP$UIDd;3;231E;D;K;6;CP$UIDd;3;232E;E;E;d;2;11S;22;{"width":0,"height":0}S;7;CPImageS;9;view1.pngD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;215E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;233E;E;E;S;9;view4.pngD;K;6;$classD;K;6;CP$UIDd;3;215E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;234E;E;E;S;9;view3.pngD;K;6;$classD;K;6;CP$UIDd;3;215E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;235E;E;E;S;9;view2.pngD;K;6;$classD;K;6;CP$UIDd;3;215E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;236E;E;E;S;9;grad0.pngD;K;6;$classD;K;6;CP$UIDd;3;215E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;237E;E;E;S;9;grad1.pngD;K;6;$classD;K;6;CP$UIDd;3;215E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;238E;E;E;S;9;grad2.pngD;K;6;$classD;K;6;CP$UIDd;3;215E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;239E;E;E;S;9;grad3.pngD;K;6;$classD;K;6;CP$UIDd;3;215E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;240E;E;E;f;18;0.6862745098039216d;1;1D;K;6;$classD;K;6;CP$UIDd;3;146E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;241E;E;D;K;6;$classD;K;6;CP$UIDd;3;146E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;241E;E;D;K;6;$classD;K;6;CP$UIDd;3;146E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;241E;E;D;K;6;$classD;K;6;CP$UIDd;3;146E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;241E;E;D;K;6;$classD;K;6;CP$UIDd;3;146E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;241E;E;D;K;6;$classD;K;6;CP$UIDd;3;146E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;241E;E;D;K;6;$classD;K;6;CP$UIDd;3;146E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;241E;E;D;K;6;$classD;K;6;CP$UIDd;3;146E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;241E;E;S;25;{"width":163,"height":96}E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file +280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;0E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;4E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;0E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;1;7E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;1;9E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;11E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;13E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;15E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;17E;D;K;6;CP$UIDd;2;18E;D;K;6;CP$UIDd;2;19E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;86E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;11E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;87E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;2;88E;E;D;K;10;$classnameS;20;CPCibOutletConnectorK;8;$classesA;S;20;CPCibOutletConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;11E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;86E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;89E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;86E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;63E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;86E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;64E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;86E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;73E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;92E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;86E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;74E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;93E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;86E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;82E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;94E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;86E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;37E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;95E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;86E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;45E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;96E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;86E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;46E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;97E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;86E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;44E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;86E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;47E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;99E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;45E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;86E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;46E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;86E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;44E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;86E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;47E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;86E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;63E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;86E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;64E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;86E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;73E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;86E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;74E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;86E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;82E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;86E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;87E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;36E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;101E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;102E;K;30;_CPCibWindowTemplateWTFlagsKeyD;K;6;CP$UIDd;3;103E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;104E;K;33;_CPCibWindowTemplateScreenRectKeyD;K;6;CP$UIDd;3;105E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;106E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;107E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;39E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;109E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;109E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;110E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;111E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;E;D;K;10;$classnameS;11;CPTextFieldK;8;$classesA;S;11;CPTextFieldS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;113E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;114E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;118E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;120E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;122E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;120E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;127E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;128E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;129E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;120E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;130E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;120E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;16;_CPCibCustomViewK;8;$classesA;S;16;_CPCibCustomViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;43E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;131E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;132E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;43E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;134E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;132E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;43E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;135E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;132E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;43E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;136E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;132E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;137E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;138E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;139E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;140E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;141E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;142E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;143E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;145E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;138E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;147E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;148E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;142E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;149E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;150E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;5;CPBoxK;8;$classesA;S;5;CPBoxS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;151E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;152E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;153E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;154E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;16;$acontent-marginD;K;6;CP$UIDd;3;156E;K;15;$acorner-radiusD;K;6;CP$UIDd;3;108E;K;14;$aborder-widthD;K;6;CP$UIDd;3;108E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;119E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;157E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;158E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;108E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;159E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;160E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;161E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;120E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;162E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;120E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;163E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;138E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;164E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;140E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;165E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;142E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;166E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;167E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;138E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;168E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;147E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;169E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;142E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;170E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;150E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;11;CPImageViewK;8;$classesA;S;11;CPImageViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;59E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;171E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;172E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;119E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;108E;K;11;$aalignmentD;K;6;CP$UIDd;3;108E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;174E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;108E;E;D;K;6;$classD;K;6;CP$UIDd;2;59E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;175E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;172E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;119E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;108E;K;11;$aalignmentD;K;6;CP$UIDd;3;108E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;176E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;108E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;177E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;178E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;179E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;120E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;180E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;120E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;43E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;181E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;132E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;43E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;182E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;132E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;183E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;138E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;184E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;185E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;186E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;142E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;187E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;188E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;59E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;189E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;172E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;119E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;108E;K;11;$aalignmentD;K;6;CP$UIDd;3;108E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;190E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;108E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;191E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;138E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;192E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;185E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;193E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;142E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;194E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;188E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;59E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;195E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;172E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;119E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;108E;K;11;$aalignmentD;K;6;CP$UIDd;3;108E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;196E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;108E;E;D;K;6;$classD;K;6;CP$UIDd;2;59E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;197E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;172E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;119E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;108E;K;11;$aalignmentD;K;6;CP$UIDd;3;108E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;198E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;108E;E;D;K;6;$classD;K;6;CP$UIDd;2;59E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;199E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;172E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;119E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;108E;K;11;$aalignmentD;K;6;CP$UIDd;3;108E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;200E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;108E;E;D;K;6;$classD;K;6;CP$UIDd;2;43E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;201E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;132E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;43E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;202E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;132E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;203E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;138E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;204E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;205E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;206E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;142E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;207E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;208E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;209E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;138E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;210E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;205E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;211E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;142E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;212E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;208E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;59E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;213E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;172E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;119E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;108E;K;11;$aalignmentD;K;6;CP$UIDd;3;108E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;214E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;108E;E;D;K;6;$classD;K;6;CP$UIDd;2;59E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;215E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;172E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;119E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;108E;K;11;$aalignmentD;K;6;CP$UIDd;3;108E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;216E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;108E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;217E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;218E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;219E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;120E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;220E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;120E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;43E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;221E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;132E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;222E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;138E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;223E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;224E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;225E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;138E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;116E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;226E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;119E;K;11;$aalignmentD;K;6;CP$UIDd;3;119E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;224E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;124E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;124E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;126E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;119E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;119E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;59E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;108E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;227E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;172E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;112E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;119E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;108E;K;11;$aalignmentD;K;6;CP$UIDd;3;108E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;228E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;108E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;229E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;37E;E;E;S;8;delegateS;13;gradientView0S;13;gradientView1S;13;gradientView2S;13;gradientView3S;9;pathView0S;9;theWindowS;5;view1S;5;view2S;5;view3S;5;view4S;9;_delegateS;32;{10000000000000, 10000000000000}S;8;CPWindowd;10;1948778496S;22;{{27, 37}, {840, 815}}S;22;{{0, 0}, {2560, 1418}}d;1;7S;15;CPGraphics Testd;1;0S;20;{{0, 0}, {840, 815}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;85E;E;E;d;2;18S;6;normalS;21;{{20, 18}, {168, 22}}S;19;{{0, 0}, {168, 22}}d;2;36S;9;textfieldD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;111E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;121E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;d;1;2d;1;4T;S;16;CPDrawTiledRectsd;4;3072F;D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;125E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;231E;E;S;22;{{20, 184}, {217, 22}}S;19;{{0, 0}, {217, 22}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;111E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;121E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;21;CPDrawColorTiledRectsS;22;{{20, 215}, {163, 96}}S;19;{{0, 0}, {163, 96}}S;14;CustomDrawViewS;21;{{20, 49}, {163, 96}}S;22;{{234, 49}, {163, 96}}S;23;{{234, 215}, {163, 96}}S;22;{{20, 153}, {163, 14}}S;19;{{0, 0}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;23;Bezel using full boundsS;23;{{232, 153}, {167, 14}}S;19;{{0, 0}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;32;Bezel clipping half horizontallyS;22;{{18, 319}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;13;Single borderS;23;{{230, 319}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;13;Triple borderS;21;{{418, 12}, {5, 791}}S;18;{{0, 0}, {5, 791}}d;2;20S;3;boxD;K;10;$classnameS;21;_CPKeyedArchiverValueK;8;$classesA;S;21;_CPKeyedArchiverValueS;7;CPValueS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;155E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;233E;E;d;1;3S;3;BoxS;22;{{441, 20}, {201, 22}}S;19;{{0, 0}, {201, 22}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;111E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;121E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;20;Reference RenderingsS;23;{{441, 155}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;23;{{653, 155}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;23;{{439, 321}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;23;{{651, 321}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;23;{{438, 46}, {169, 102}}S;20;{{0, 0}, {169, 102}}D;K;10;$classnameS;20;_CPCibCustomResourceK;8;$classesA;S;20;_CPCibCustomResourceS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;173E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;234E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;235E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;237E;E;S;24;{{648, 212}, {169, 102}}D;K;6;$classD;K;6;CP$UIDd;3;173E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;234E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;238E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;239E;E;S;22;{{22, 348}, {102, 22}}S;19;{{0, 0}, {102, 22}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;111E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;121E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;10;CPGradientS;22;{{22, 379}, {163, 96}}S;23;{{236, 379}, {163, 96}}S;22;{{20, 483}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;5;SolidS;23;{{232, 483}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;12;TransparencyS;24;{{438, 212}, {169, 102}}D;K;6;$classD;K;6;CP$UIDd;3;173E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;234E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;240E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;241E;E;S;23;{{441, 488}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;23;{{653, 488}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;23;{{648, 46}, {169, 102}}D;K;6;$classD;K;6;CP$UIDd;3;173E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;234E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;242E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;243E;E;S;24;{{438, 376}, {169, 102}}D;K;6;$classD;K;6;CP$UIDd;3;173E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;234E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;244E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;245E;E;S;24;{{648, 376}, {169, 102}}D;K;6;$classD;K;6;CP$UIDd;3;173E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;234E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;246E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;247E;E;S;22;{{22, 505}, {163, 96}}S;23;{{236, 505}, {163, 96}}S;22;{{20, 609}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;4;225ºS;23;{{232, 609}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;4;-20ºS;23;{{441, 617}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;23;{{653, 617}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;24;{{438, 502}, {169, 102}}D;K;6;$classD;K;6;CP$UIDd;3;173E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;234E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;248E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;249E;E;S;24;{{648, 502}, {169, 102}}D;K;6;$classD;K;6;CP$UIDd;3;173E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;234E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;250E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;251E;E;S;22;{{22, 641}, {120, 22}}S;19;{{0, 0}, {120, 22}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;111E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;121E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;12;CPBezierPathS;22;{{22, 672}, {163, 96}}S;22;{{20, 776}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;15;General drawingS;23;{{441, 781}, {163, 14}}D;K;6;$classD;K;6;CP$UIDd;3;117E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;230E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;232E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;124E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;121E;E;S;24;{{441, 669}, {169, 102}}D;K;6;$classD;K;6;CP$UIDd;3;173E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;234E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;252E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;253E;E;S;13;AppControllerS;28;_CPFontSystemFacePlaceholderD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;254E;D;K;6;CP$UIDd;3;254E;D;K;6;CP$UIDd;3;254E;D;K;6;CP$UIDd;3;255E;E;E;d;2;11S;22;{"width":0,"height":0}S;7;CPImageS;9;view1.pngD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;236E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;256E;E;E;S;9;view4.pngD;K;6;$classD;K;6;CP$UIDd;3;236E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;257E;E;E;S;9;view3.pngD;K;6;$classD;K;6;CP$UIDd;3;236E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;258E;E;E;S;9;view2.pngD;K;6;$classD;K;6;CP$UIDd;3;236E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;259E;E;E;S;9;grad0.pngD;K;6;$classD;K;6;CP$UIDd;3;236E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;260E;E;E;S;9;grad1.pngD;K;6;$classD;K;6;CP$UIDd;3;236E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;261E;E;E;S;9;grad2.pngD;K;6;$classD;K;6;CP$UIDd;3;236E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;262E;E;E;S;9;grad3.pngD;K;6;$classD;K;6;CP$UIDd;3;236E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;263E;E;E;S;13;pathView0.pngD;K;6;$classD;K;6;CP$UIDd;3;236E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;264E;E;E;f;18;0.6862745098039216d;1;1D;K;6;$classD;K;6;CP$UIDd;3;155E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;265E;E;D;K;6;$classD;K;6;CP$UIDd;3;155E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;265E;E;D;K;6;$classD;K;6;CP$UIDd;3;155E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;265E;E;D;K;6;$classD;K;6;CP$UIDd;3;155E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;265E;E;D;K;6;$classD;K;6;CP$UIDd;3;155E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;265E;E;D;K;6;$classD;K;6;CP$UIDd;3;155E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;265E;E;D;K;6;$classD;K;6;CP$UIDd;3;155E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;265E;E;D;K;6;$classD;K;6;CP$UIDd;3;155E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;265E;E;D;K;6;$classD;K;6;CP$UIDd;3;155E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;265E;E;S;25;{"width":163,"height":96}E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Tests/Manual/CPGraphicsTest/Resources/MainMenu.xib b/Tests/Manual/CPGraphicsTest/Resources/MainMenu.xib index 432befe48..38295347c 100644 --- a/Tests/Manual/CPGraphicsTest/Resources/MainMenu.xib +++ b/Tests/Manual/CPGraphicsTest/Resources/MainMenu.xib @@ -1,25 +1,25 @@ - 1070 - 11D50 - 1938 - 1138.32 - 568.00 + 1080 + 12C60 + 3084 + 1187.34 + 625.00 com.apple.InterfaceBuilder.CocoaPlugin - 1938 + 3084 - NSTextField - NSView - NSWindowTemplate - NSCustomObject NSBox + NSCustomObject NSCustomView NSImageCell NSImageView + NSTextField NSTextFieldCell + NSView + NSWindowTemplate com.apple.InterfaceBuilder.CocoaPlugin @@ -41,8 +41,8 @@ 7 2 - {{408, 597}, {840, 673}} - 1946157056 + {{27, 566}, {840, 815}} + 1948778496 CPGraphics Test NSWindow @@ -54,13 +54,13 @@ 268 - {{17, 633}, {174, 22}} + {{17, 775}, {174, 22}} - + YES - 68288064 + 68157504 272630784 CPDrawTiledRects @@ -88,11 +88,12 @@ + NO 268 - {{20, 528}, {163, 96}} + {{20, 670}, {163, 96}} @@ -101,22 +102,22 @@ 268 - {{234, 528}, {163, 96}} + {{234, 670}, {163, 96}} - + CustomDrawView 268 - {{17, 452}, {223, 22}} + {{17, 609}, {223, 22}} YES - 68288064 + 68157504 272630784 CPDrawColorTiledRects @@ -124,11 +125,12 @@ + NO 268 - {{20, 347}, {163, 96}} + {{20, 504}, {163, 96}} @@ -137,22 +139,22 @@ 268 - {{234, 347}, {163, 96}} + {{234, 504}, {163, 96}} - + CustomDrawView 268 - {{17, 506}, {169, 14}} + {{17, 648}, {169, 14}} YES - 68288064 + 68157504 138544128 Bezel using full bounds @@ -164,17 +166,18 @@ + NO 268 - {{229, 506}, {173, 14}} + {{229, 648}, {173, 14}} - + YES - 68288064 + 68157504 138544128 Bezel clipping half horizontally @@ -182,17 +185,18 @@ + NO 268 - {{15, 325}, {169, 14}} + {{15, 482}, {169, 14}} YES - 68288064 + 68157504 138544128 Single border @@ -200,17 +204,18 @@ + NO 268 - {{227, 325}, {173, 14}} + {{227, 482}, {173, 14}} - + YES - 68288064 + 68157504 138544128 Triple border @@ -218,18 +223,19 @@ + NO - 12 - {{418, 12}, {5, 649}} + 20 + {{418, 12}, {5, 791}} - + _NS:2168 {0, 0} - 67239424 + 67108864 0 Box @@ -259,13 +265,13 @@ 268 - {{438, 631}, {207, 22}} + {{438, 773}, {207, 22}} - + YES - 68288064 + 68157504 272630784 Reference Renderings @@ -273,6 +279,7 @@ + NO @@ -285,14 +292,14 @@ NeXT Encapsulated PostScript v1.2 pasteboard type NeXT TIFF v4.0 pasteboard type - {{438, 525}, {169, 102}} + {{438, 667}, {169, 102}} _NS:2141 YES - 130560 + 134217728 33554432 NSImage @@ -304,18 +311,19 @@ 0 NO + NO YES 268 - {{438, 504}, {169, 14}} + {{438, 646}, {169, 14}} YES - 68288064 + 68157504 138544128 Bezel using full bounds @@ -323,17 +331,18 @@ + NO 268 - {{650, 504}, {173, 14}} + {{650, 646}, {173, 14}} - + YES - 68288064 + 68157504 138544128 Bezel clipping half horizontally @@ -341,17 +350,18 @@ + NO 268 - {{436, 323}, {169, 14}} + {{436, 480}, {169, 14}} YES - 68288064 + 68157504 138544128 Single border @@ -359,17 +369,18 @@ + NO 268 - {{648, 323}, {173, 14}} + {{648, 480}, {173, 14}} - + YES - 68288064 + 68157504 138544128 Triple border @@ -377,6 +388,7 @@ + NO @@ -389,14 +401,14 @@ NeXT Encapsulated PostScript v1.2 pasteboard type NeXT TIFF v4.0 pasteboard type - {{438, 344}, {169, 102}} + {{438, 501}, {169, 102}} _NS:2141 YES - 130560 + 134217728 33554432 NSImage @@ -408,6 +420,7 @@ 0 NO + NO YES @@ -421,14 +434,14 @@ NeXT Encapsulated PostScript v1.2 pasteboard type NeXT TIFF v4.0 pasteboard type - {{648, 525}, {169, 102}} + {{648, 667}, {169, 102}} - + _NS:2141 YES - 130560 + 134217728 33554432 NSImage @@ -440,6 +453,7 @@ 0 NO + NO YES @@ -453,14 +467,14 @@ NeXT Encapsulated PostScript v1.2 pasteboard type NeXT TIFF v4.0 pasteboard type - {{648, 344}, {169, 102}} + {{648, 501}, {169, 102}} - + _NS:2141 YES - 130560 + 134217728 33554432 NSImage @@ -472,18 +486,19 @@ 0 NO + NO YES 268 - {{19, 273}, {108, 22}} + {{19, 445}, {108, 22}} YES - 68288064 + 68157504 272630784 CPGradient @@ -491,11 +506,12 @@ + NO 268 - {{22, 168}, {163, 96}} + {{22, 340}, {163, 96}} @@ -504,22 +520,22 @@ 268 - {{236, 168}, {163, 96}} + {{236, 340}, {163, 96}} - + CustomDrawView 268 - {{17, 146}, {169, 14}} + {{17, 318}, {169, 14}} YES - 68288064 + 68157504 138544128 Solid @@ -527,17 +543,18 @@ + NO 268 - {{229, 146}, {173, 14}} + {{229, 318}, {173, 14}} YES - 68288064 + 68157504 138544128 Transparency @@ -545,17 +562,18 @@ + NO 268 - {{438, 146}, {169, 14}} + {{438, 313}, {169, 14}} YES - 68288064 + 68157504 138544128 Solid @@ -563,17 +581,18 @@ + NO 268 - {{650, 146}, {173, 14}} + {{650, 313}, {173, 14}} YES - 68288064 + 68157504 138544128 Transparency @@ -581,6 +600,7 @@ + NO @@ -593,14 +613,14 @@ NeXT Encapsulated PostScript v1.2 pasteboard type NeXT TIFF v4.0 pasteboard type - {{438, 165}, {169, 102}} + {{438, 337}, {169, 102}} _NS:2141 YES - 130560 + 134217728 33554432 NSImage @@ -612,6 +632,7 @@ 0 NO + NO YES @@ -625,14 +646,14 @@ NeXT Encapsulated PostScript v1.2 pasteboard type NeXT TIFF v4.0 pasteboard type - {{648, 165}, {169, 102}} + {{648, 337}, {169, 102}} _NS:2141 YES - 130560 + 134217728 33554432 NSImage @@ -644,12 +665,13 @@ 0 NO + NO YES 268 - {{22, 42}, {163, 96}} + {{22, 214}, {163, 96}} @@ -658,22 +680,22 @@ 268 - {{236, 42}, {163, 96}} + {{236, 214}, {163, 96}} - + CustomDrawView 268 - {{17, 20}, {169, 14}} + {{17, 192}, {169, 14}} YES - 68288064 + 68157504 138544128 225º @@ -681,17 +703,18 @@ + NO 268 - {{229, 20}, {173, 14}} + {{229, 192}, {173, 14}} - + YES - 68288064 + 68157504 138544128 -20º @@ -699,17 +722,18 @@ + NO 268 - {{438, 17}, {169, 14}} + {{438, 184}, {169, 14}} YES - 68288064 + 68157504 138544128 225º @@ -717,17 +741,18 @@ + NO 268 - {{650, 17}, {173, 14}} + {{650, 184}, {173, 14}} - + YES - 68288064 + 68157504 138544128 -20º @@ -735,6 +760,7 @@ + NO @@ -747,14 +773,14 @@ NeXT Encapsulated PostScript v1.2 pasteboard type NeXT TIFF v4.0 pasteboard type - {{438, 36}, {169, 102}} + {{438, 211}, {169, 102}} _NS:2141 YES - 130560 + 134217728 33554432 NSImage @@ -766,6 +792,7 @@ 0 NO + NO YES @@ -779,14 +806,14 @@ NeXT Encapsulated PostScript v1.2 pasteboard type NeXT TIFF v4.0 pasteboard type - {{648, 36}, {169, 102}} + {{648, 211}, {169, 102}} - + _NS:2141 YES - 130560 + 134217728 33554432 NSImage @@ -798,10 +825,110 @@ 0 NO + NO + YES + + + + 268 + {{19, 152}, {126, 22}} + + + + YES + + 68157504 + 272630784 + CPBezierPath + + + + + + NO + + + + 268 + {{22, 47}, {163, 96}} + + + + CustomDrawView + + + + 268 + {{17, 25}, {169, 14}} + + + + YES + + 68157504 + 138544128 + General drawing + + + + + + NO + + + + 268 + {{438, 20}, {169, 14}} + + + + YES + + 68157504 + 138544128 + General drawing + + + + + + NO + + + + 268 + + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + {{441, 44}, {169, 102}} + + + + _NS:2141 + YES + + 134217728 + 33554432 + + NSImage + pathView0 + + _NS:2141 + 0 + 2 + 0 + NO + + NO YES - {840, 673} + {840, 815} @@ -896,6 +1023,14 @@ 1198 + + + pathView0 + + + + 1210 + _delegate @@ -960,6 +1095,14 @@ 1187 + + + _delegate + + + + 1204 + @@ -1036,6 +1179,11 @@ + + + + + @@ -1453,6 +1601,63 @@ + + 1199 + + + + + + + + 1200 + + + + + 1201 + + + + + + + + 1202 + + + + + 1203 + + + + + 1205 + + + + + + + + 1206 + + + + + + + + 1207 + + + + + 1208 + + + @@ -1524,6 +1729,17 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin {{469, 508}, {417, 368}} @@ -1534,7 +1750,7 @@ - 1198 + 1210 @@ -1546,6 +1762,7 @@ CustomDrawView CustomDrawView CustomDrawView + CustomDrawView CustomDrawView CustomDrawView CustomDrawView @@ -1568,6 +1785,10 @@ gradientView3 CustomDrawView + + pathView0 + CustomDrawView + view1 CustomDrawView @@ -1620,6 +1841,7 @@ {163, 96} {163, 96} {163, 96} + {163, 96} {163, 96} {163, 96} {163, 96} diff --git a/Tests/Manual/CPGraphicsTest/Resources/pathView0.png b/Tests/Manual/CPGraphicsTest/Resources/pathView0.png new file mode 100644 index 000000000..00948f1bf Binary files /dev/null and b/Tests/Manual/CPGraphicsTest/Resources/pathView0.png differ diff --git a/Tests/Manual/CPOutlineViewCibTest/AppController.j b/Tests/Manual/CPOutlineViewCibTest/AppController.j index 955d163dd..a4aeaa5c3 100644 --- a/Tests/Manual/CPOutlineViewCibTest/AppController.j +++ b/Tests/Manual/CPOutlineViewCibTest/AppController.j @@ -10,21 +10,21 @@ @implementation AppController : CPObject { - CPWindow theWindow; - CPOutlineView outlineView; + @outlet CPWindow theWindow; + @outlet CPOutlineView outlineView; CPDictionary rootItem; } - (void)awakeFromCib { + rootItem = nil; + var path = [[CPBundle mainBundle] pathForResource:@"InitInfo.dict"], request = [CPURLRequest requestWithURL:path], connection = [CPURLConnection connectionWithRequest:request delegate:self]; - rootItem = nil; [theWindow setFullPlatformWindow:YES]; - } - (void)connection:(CPURLConnection)connection didReceiveData:(CPString)dataString @@ -32,8 +32,9 @@ if (!dataString) return; - var data = [[CPData alloc] initWithRawString:dataString], - rootItem = [CPPropertyListSerialization propertyListFromData:data format:CPPropertyListXMLFormat_v1_0]; + var data = [[CPData alloc] initWithRawString:dataString]; + + rootItem = [CPPropertyListSerialization propertyListFromData:data format:CPPropertyListXMLFormat_v1_0]; [outlineView reloadData]; } diff --git a/Tests/Manual/CPOutlineViewCibTest/Resources/MainMenu.cib b/Tests/Manual/CPOutlineViewCibTest/Resources/MainMenu.cib index e649439b7..bcbb4024b 100644 --- a/Tests/Manual/CPOutlineViewCibTest/Resources/MainMenu.cib +++ b/Tests/Manual/CPOutlineViewCibTest/Resources/MainMenu.cib @@ -1 +1 @@ -280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;0E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;4E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;0E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;1;7E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;1;9E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;11E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;13E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;15E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;17E;D;K;6;CP$UIDd;2;18E;D;K;6;CP$UIDd;2;19E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;168E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;170E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;172E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;175E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;178E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;183E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;187E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;189E;D;K;6;CP$UIDd;3;190E;D;K;6;CP$UIDd;3;191E;D;K;6;CP$UIDd;3;192E;D;K;6;CP$UIDd;3;193E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;195E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;199E;D;K;6;CP$UIDd;3;200E;D;K;6;CP$UIDd;3;201E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;205E;D;K;6;CP$UIDd;3;207E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;3;221E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;3;207E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;2;11E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;222E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;223E;E;D;K;10;$classnameS;20;CPCibOutletConnectorK;8;$classesA;S;20;CPCibOutletConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;11E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;221E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;224E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;221E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;216E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;225E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;221E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;207E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;226E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;216E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;221E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;227E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;216E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;221E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;224E;E;D;K;10;$classnameS;21;CPCibControlConnectorK;8;$classesA;S;21;CPCibControlConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;89E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;228E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;91E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;229E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;94E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;11E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;230E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;147E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;231E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;153E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;232E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;144E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;233E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;152E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;234E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;146E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;235E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;145E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;236E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;148E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;237E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;108E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;238E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;155E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;239E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;151E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;240E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;95E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;241E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;97E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;82E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;242E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;105E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;96E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;244E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;135E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;245E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;136E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;246E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;117E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;247E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;112E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;248E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;115E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;249E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;130E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;250E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;111E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;251E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;116E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;252E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;131E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;253E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;113E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;254E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;126E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;255E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;123E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;256E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;119E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;257E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;129E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;258E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;90E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;259E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;159E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;260E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;160E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;261E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;132E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;262E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;139E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;263E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;140E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;264E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;141E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;265E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;198E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;266E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;199E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;267E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;200E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;268E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;201E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;269E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;203E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;270E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;204E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;271E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;205E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;272E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;168E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;273E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;192E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;274E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;194E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;275E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;195E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;276E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;186E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;277E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;187E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;278E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;188E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;279E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;189E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;280E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;190E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;281E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;181E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;282E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;182E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;283E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;183E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;284E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;175E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;285E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;176E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;286E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;177E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;287E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;178E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;288E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;222E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;289E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;290E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;291E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;292E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;87E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;292E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;295E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;296E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;300E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;301E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;302E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;303E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;304E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;93E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;304E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;305E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;306E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;307E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;308E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;309E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;310E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;311E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;312E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;313E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;314E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;315E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;103E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;315E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;316E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;317E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;318E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;309E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;319E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;320E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;107E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;320E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;322E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;323E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;324E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;110E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;324E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;325E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;326E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;327E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;328E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;329E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;330E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;331E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;332E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;333E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;334E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;335E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;336E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;337E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;338E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;339E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;340E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;121E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;340E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;342E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;343E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;344E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;339E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;345E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;346E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;347E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;348E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;349E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;350E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;351E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;352E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;353E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;354E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;355E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;356E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;128E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;356E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;357E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;358E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;128E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;359E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;128E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;360E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;361E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;128E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;362E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;363E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;128E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;364E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;134E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;364E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;365E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;366E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;134E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;367E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;134E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;368E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;138E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;368E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;369E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;370E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;354E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;138E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;355E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;371E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;351E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;138E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;352E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;372E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;343E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;138E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;344E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;339E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;373E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;143E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;373E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;374E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;375E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;376E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;377E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;378E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;339E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;379E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;380E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;381E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;382E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;383E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;384E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;385E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;150E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;385E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;386E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;387E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;388E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;150E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;389E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;390E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;339E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;391E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;392E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;393E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;394E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;158E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;394E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;395E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;396E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;158E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;397E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;319E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;398E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;158E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;399E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;399E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;400E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;401E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;164E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;162E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;401E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;402E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;403E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;404E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;397E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;405E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;351E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;406E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;407E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;354E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;408E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;409E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;410E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;411E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;343E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;412E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;413E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;414E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;415E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;416E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;174E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;416E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;417E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;418E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;174E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;419E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;174E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;420E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;174E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;421E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;174E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;422E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;180E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;422E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;423E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;418E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;180E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;419E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;180E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;424E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;180E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;425E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;185E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;425E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;426E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;418E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;185E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;427E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;185E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;428E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;185E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;429E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;185E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;430E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;185E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;431E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;432E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;433E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;336E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;319E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;434E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;334E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;319E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;435E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;197E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;162E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;435E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;436E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;437E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;197E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;438E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;439E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;197E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;440E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;441E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;197E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;442E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;197E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;443E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;197E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;444E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;197E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;445E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;197E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;336E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;446E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;447E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;197E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;334E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;446E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;206E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;448E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;449E;K;30;_CPCibWindowTemplateWTFlagsKeyD;K;6;CP$UIDd;3;450E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;451E;K;33;_CPCibWindowTemplateScreenRectKeyD;K;6;CP$UIDd;3;452E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;348E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;292E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;3;209E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;208E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;454E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;454E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;455E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;E;D;K;10;$classnameS;12;CPScrollViewK;8;$classesA;S;12;CPScrollViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;210E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;209E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;457E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;458E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;459E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;209E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;460E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;461E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;463E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;3;464E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;3;213E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;3;214E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;465E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;465E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;465E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;465E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;297E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;297E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;297E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;466E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;351E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;3;453E;E;D;K;10;$classnameS;10;CPScrollerK;8;$classesA;S;10;CPScrollerS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;212E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;211E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;467E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;468E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;211E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;469E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;470E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;471E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;472E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;453E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;211E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;473E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;414E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;453E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;297E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;474E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;212E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;211E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;475E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;476E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;211E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;469E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;470E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;471E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;472E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;453E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;211E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;477E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;414E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;453E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;299E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;478E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;13;CPOutlineViewK;8;$classesA;S;13;CPOutlineViewS;11;CPTableViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;215E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;463E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;479E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;479E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;463E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;481E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;482E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;K;12;$agrid-colorD;K;6;CP$UIDd;3;483E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;414E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;484E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;485E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;453E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;414E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;299E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;297E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;297E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;297E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;299E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;486E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;483E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;3;453E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;299E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;3;488E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;3;220E;K;26;CPTableViewAutosaveNameKeyD;K;6;CP$UIDd;1;0E;K;34;CPOutlineViewOutlineTableColumnKeyD;K;6;CP$UIDd;3;218E;K;35;CPOutlineViewIndentationPerLevelKeyD;K;6;CP$UIDd;3;489E;K;26;CPOutlineViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;24;CPOutlineViewDelegateKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;13;CPTableColumnK;8;$classesA;S;13;CPTableColumnS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;217E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;490E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;489E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;491E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;493E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;495E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;343E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;299E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;297E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;17;CPTableHeaderViewK;8;$classesA;S;17;CPTableHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;219E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;464E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;496E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;496E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;464E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;497E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;K;29;CPTableHeaderViewTableViewKeyD;K;6;CP$UIDd;3;216E;K;33;CPTableHeaderViewDrawsColumnLinesD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;498E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;207E;E;E;S;8;delegateS;11;outlineViewS;9;theWindowS;10;dataSourceS;15;arrangeInFront:S;19;performMiniaturize:S;29;orderFrontStandardAboutPanel:S;13;openDocument:S;13;performClose:S;13;saveDocument:S;14;runPageLayout:S;6;print:S;15;saveDocumentAs:S;12;newDocument:S;9;showHelp:S;22;revertDocumentToSaved:S;21;clearRecentDocuments:S;5;hide:S;10;terminate:S;22;hideOtherApplications:S;22;unhideAllApplications:S;13;stopSpeaking:S;14;startSpeaking:S;5;copy:S;10;selectAll:S;4;cut:S;14;checkSpelling:S;7;delete:S;6;paste:S;15;showGuessPanel:S;5;undo:S;23;performFindPanelAction:S;29;centerSelectionInVisibleArea:S;5;redo:S;30;toggleContinuousSpellChecking:S;12;performZoom:S;19;toggleToolbarShown:S;31;runToolbarCustomizationPalette:S;22;toggleGrammarChecking:S;24;toggleSmartInsertDelete:S;33;toggleAutomaticQuoteSubstitution:S;29;toggleAutomaticLinkDetection:S;10;alignLeft:S;12;alignCenter:S;15;alignJustified:S;11;alignRight:S;12;toggleRuler:S;10;copyRuler:S;11;pasteRuler:S;10;underline:S;21;orderFrontColorPanel:S;9;copyFont:S;10;pasteFont:S;9;unscript:S;12;superscript:S;10;subscript:S;14;raiseBaseline:S;14;lowerBaseline:S;21;useStandardLigatures:S;17;turnOffLigatures:S;16;useAllLigatures:S;19;useStandardKerning:S;15;turnOffKerning:S;15;tightenKerning:S;14;loosenKerning:S;9;AMainMenuS;11;_CPMainMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;3;106E;E;E;S;6;WindowS;14;submenuAction:d;7;1048576S;14;_CPWindowsMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;E;E;T;S;0;F;S;18;Bring All to FrontS;4;ZoomS;8;MinimizeS;1;mS;14;NewApplicationS;18;_CPApplicationMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;2;97E;E;E;S;20;About NewApplicationS;19;Hide NewApplicationS;1;hS;8;Show AllS;19;Quit NewApplicationS;1;qS;12;Preferences…S;1;,S;8;ServicesS;15;_CPServicesMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;S;11;Hide Othersd;7;1572864S;4;HelpD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;108E;E;E;S;19;NewApplication HelpS;1;?S;4;EditD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;133E;E;E;S;6;DeleteS;10;Select AllS;1;aS;4;UndoS;1;zS;3;CutS;1;xS;5;PasteS;1;vS;4;CopyS;1;cS;4;RedoS;1;Zd;7;1179648S;4;FindD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;123E;E;E;S;13;Find Previousd;1;3S;1;GS;17;Jump to SelectionS;1;jS;22;Use Selection for Findd;1;7S;1;eS;9;Find Nextd;1;2S;1;gS;5;Find…d;1;1S;1;fS;20;Spelling and GrammarD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;132E;E;E;S;27;Check Spelling While TypingS;14;Check SpellingS;1;;S;14;Show Spelling…S;1;:S;27;Check Grammar With SpellingS;6;SpeechD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;135E;E;E;S;13;Stop SpeakingS;14;Start SpeakingS;13;SubstitutionsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;141E;E;E;S;16;Smart Copy/PasteS;12;Smart QuotesS;11;Smart LinksS;4;FileD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;146E;E;E;S;4;SaveS;1;sS;8;Save As…S;1;SS;6;Print…S;1;pS;5;Open…S;1;oS;3;NewS;1;nS;11;Open RecentS;22;_CPRecentDocumentsMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;151E;E;E;S;10;Clear MenuS;13;Page Setup...S;1;PS;5;CloseS;1;wS;15;Revert to SavedS;4;ViewD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;E;E;S;12;Show ToolbarS;1;tS;18;Customize Toolbar…S;6;FormatD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;196E;E;E;S;4;FontS;11;_CPFontMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;168E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;170E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;172E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;191E;D;K;6;CP$UIDd;3;192E;D;K;6;CP$UIDd;3;193E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;195E;E;E;S;10;Show FontsS;4;BoldS;1;bS;6;ItalicS;1;iS;9;UnderlineS;1;uS;6;BiggerS;1;+S;7;Smallerd;1;4S;1;-S;4;KernD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;175E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;178E;E;E;S;11;Use DefaultS;8;Use NoneS;7;TightenS;6;LoosenS;8;LigatureD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;183E;E;E;S;7;Use AllS;8;BaselineD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;187E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;189E;D;K;6;CP$UIDd;3;190E;E;E;S;11;SuperscriptS;9;SubscriptS;5;RaiseS;5;LowerS;11;Show ColorsS;1;CS;10;Copy StyleS;11;Paste StyleS;4;TextD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;199E;D;K;6;CP$UIDd;3;200E;D;K;6;CP$UIDd;3;201E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;205E;E;E;S;10;Align LeftS;1;{S;6;CenterS;1;|S;7;JustifyS;11;Align RightS;1;}S;10;Show RulerS;10;Copy Rulerd;7;1310720S;11;Paste RulerS;32;{10000000000000, 10000000000000}S;8;CPWindowd;10;1946157056S;24;{{335, 128}, {480, 360}}S;21;{{0, 0}, {1440, 878}}d;1;0S;20;{{0, 0}, {480, 360}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;211E;E;E;S;6;normalS;22;{{20, 20}, {440, 320}}S;20;{{0, 0}, {440, 320}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;463E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;464E;D;K;6;CP$UIDd;3;488E;D;K;6;CP$UIDd;3;466E;E;E;d;2;36S;10;scrollviewD;K;10;$classnameS;10;CPClipViewK;8;$classesA;S;10;CPClipViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;462E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;211E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;499E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;479E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;500E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;211E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;469E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;501E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;3;216E;E;D;K;6;$classD;K;6;CP$UIDd;3;462E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;211E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;502E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;503E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;211E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;469E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;501E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;3;220E;E;d;2;10D;K;6;$classD;K;6;CP$UIDd;3;208E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;211E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;505E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;505E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;211E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;E;S;22;{{424, 16}, {15, 287}}S;19;{{0, 0}, {15, 287}}d;1;8d;11;-2147483648S;8;scrollerS;8;disabledS;27;_verticalScrollerDidScroll:f;18;0.9503311258278145S;19;{{1, 1}, {438, 15}}S;19;{{0, 0}, {438, 15}}S;29;_horizontalScrollerDidScroll:f;18;0.8295454545454546S;20;{{0, 0}, {438, 302}}D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;480E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;506E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;3;480E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;507E;E;d;2;25S;6;{3, 2}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;218E;E;E;D;K;10;$classnameS;13;_CPCornerViewK;8;$classesA;S;13;_CPCornerViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;487E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;211E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;508E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;509E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;211E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;469E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;510E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;E;d;2;16d;3;422d;4;1000D;K;10;$classnameS;24;_CPTableColumnHeaderViewK;8;$classesA;S;24;_CPTableColumnHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;492E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;505E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;505E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;511E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;512E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;K;6;$afontD;K;6;CP$UIDd;3;514E;K;12;$atext-colorD;K;6;CP$UIDd;3;515E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;453E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;298E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;514E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;515E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;453E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;414E;E;D;K;10;$classnameS;11;CPTextFieldK;8;$classesA;S;11;CPTextFieldS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;494E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;505E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;516E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;517E;K;6;$afontD;K;6;CP$UIDd;3;519E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;414E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;351E;K;11;$aalignmentD;K;6;CP$UIDd;3;453E;K;15;$acontent-insetD;K;6;CP$UIDd;3;521E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;298E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;522E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;1;0E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;414E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;453E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;298E;E;S;19;{{0, 0}, {438, 25}}S;14;tableHeaderRowS;13;AppControllerS;20;{{1, 1}, {438, 302}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;216E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;480E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;523E;E;S;21;{{1, 303}, {438, 17}}S;19;{{0, 0}, {438, 17}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;220E;E;E;S;16;{{0, 0}, {0, 0}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;354E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;524E;D;K;6;CP$UIDd;3;524E;D;K;6;CP$UIDd;3;524E;D;K;6;CP$UIDd;3;354E;E;E;S;22;{{424, 297}, {16, 23}}S;18;{{0, 0}, {16, 23}}S;10;cornerviewD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;526E;E;E;S;12;columnHeaderD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;513E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;527E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;528E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;297E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;299E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;3;480E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;529E;E;S;9;textfieldS;11;placeholderD;K;10;$classnameS;17;_CPThemeAttributeK;8;$classesA;S;17;_CPThemeAttributeS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;518E;K;4;nameD;K;6;CP$UIDd;3;530E;K;12;defaultValueD;K;6;CP$UIDd;3;531E;K;6;valuesD;K;6;CP$UIDd;3;533E;E;D;K;10;$classnameS;21;_CPKeyedArchiverValueK;8;$classesA;S;21;_CPKeyedArchiverValueS;7;CPValueS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;520E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;534E;E;d;4;3072D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;354E;E;E;f;3;0.8D;K;10;$classnameS;19;_CPImageAndTextViewK;8;$classesA;S;19;_CPImageAndTextViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;525E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;493E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;505E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;505E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;493E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;535E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;299E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;E;S;28;_CPFontSystemFacePlaceholderd;2;11D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;536E;D;K;6;CP$UIDd;3;536E;D;K;6;CP$UIDd;3;536E;D;K;6;CP$UIDd;3;354E;E;E;S;4;fontD;K;6;$classD;K;6;CP$UIDd;3;513E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;527E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;537E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;299E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;299E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;297E;E;D;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;532E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;538E;K;6;normalD;K;6;CP$UIDd;3;539E;E;E;S;39;{"top":0,"right":5,"bottom":0,"left":5}d;2;18f;18;0.5019607843137255d;2;-1D;K;6;$classD;K;6;CP$UIDd;3;513E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;540E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;541E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;297E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;299E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;299E;E;D;K;6;$classD;K;6;CP$UIDd;3;513E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;527E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;541E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;299E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;299E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;297E;E;S;17;Arial, sans-serifd;2;12E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file +280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;0E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;4E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;0E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;1;7E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;1;9E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;11E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;13E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;15E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;17E;D;K;6;CP$UIDd;2;18E;D;K;6;CP$UIDd;2;19E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;168E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;170E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;172E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;175E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;178E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;183E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;187E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;189E;D;K;6;CP$UIDd;3;190E;D;K;6;CP$UIDd;3;191E;D;K;6;CP$UIDd;3;192E;D;K;6;CP$UIDd;3;193E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;195E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;199E;D;K;6;CP$UIDd;3;200E;D;K;6;CP$UIDd;3;201E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;205E;D;K;6;CP$UIDd;3;207E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;3;221E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;3;207E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;2;11E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;222E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;223E;E;D;K;10;$classnameS;20;CPCibOutletConnectorK;8;$classesA;S;20;CPCibOutletConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;11E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;221E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;224E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;221E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;216E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;225E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;221E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;207E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;226E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;216E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;221E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;227E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;216E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;221E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;224E;E;D;K;10;$classnameS;21;CPCibControlConnectorK;8;$classesA;S;21;CPCibControlConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;89E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;228E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;91E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;229E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;94E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;11E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;230E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;147E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;231E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;153E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;232E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;144E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;233E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;152E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;234E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;146E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;235E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;145E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;236E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;148E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;237E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;108E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;238E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;155E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;239E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;151E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;240E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;95E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;241E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;97E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;82E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;242E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;105E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;96E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;244E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;135E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;245E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;136E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;246E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;117E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;247E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;112E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;248E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;115E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;249E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;130E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;250E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;111E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;251E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;116E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;252E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;131E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;253E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;113E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;254E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;126E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;255E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;123E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;256E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;119E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;257E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;129E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;258E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;90E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;259E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;159E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;260E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;160E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;261E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;132E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;262E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;139E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;263E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;140E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;264E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;141E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;265E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;198E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;266E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;199E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;267E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;200E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;268E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;201E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;269E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;203E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;270E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;204E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;271E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;205E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;272E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;168E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;273E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;192E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;274E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;194E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;275E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;195E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;276E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;186E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;277E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;187E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;278E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;188E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;279E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;189E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;280E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;190E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;281E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;181E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;282E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;182E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;283E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;183E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;284E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;175E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;285E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;176E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;286E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;177E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;287E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;178E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;288E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;222E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;289E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;290E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;291E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;292E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;87E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;292E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;295E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;296E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;300E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;301E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;302E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;303E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;304E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;93E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;304E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;305E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;306E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;307E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;308E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;309E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;310E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;311E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;312E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;313E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;314E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;315E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;103E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;315E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;316E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;317E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;318E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;309E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;319E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;320E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;107E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;320E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;322E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;323E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;324E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;110E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;324E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;325E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;326E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;327E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;328E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;329E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;330E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;331E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;332E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;333E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;334E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;335E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;336E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;337E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;338E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;339E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;340E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;121E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;340E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;342E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;343E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;344E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;339E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;345E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;346E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;347E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;348E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;349E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;350E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;351E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;352E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;353E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;354E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;355E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;356E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;128E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;356E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;357E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;358E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;128E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;359E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;128E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;360E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;361E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;128E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;362E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;363E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;128E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;364E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;134E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;364E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;365E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;366E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;134E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;367E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;134E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;368E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;138E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;368E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;369E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;370E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;354E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;138E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;355E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;371E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;351E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;138E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;352E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;372E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;343E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;138E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;344E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;339E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;373E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;143E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;373E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;374E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;375E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;376E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;377E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;378E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;339E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;379E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;380E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;381E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;382E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;383E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;384E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;385E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;150E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;385E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;386E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;387E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;388E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;150E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;389E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;390E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;339E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;391E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;392E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;393E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;394E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;158E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;394E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;395E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;396E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;158E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;397E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;319E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;398E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;158E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;399E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;399E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;400E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;401E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;164E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;162E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;401E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;402E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;403E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;404E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;397E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;405E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;351E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;406E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;407E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;354E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;408E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;409E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;410E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;411E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;343E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;412E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;413E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;414E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;415E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;416E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;174E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;416E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;417E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;418E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;174E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;419E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;174E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;420E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;174E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;421E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;174E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;422E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;180E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;422E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;423E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;418E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;180E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;419E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;180E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;424E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;180E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;425E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;185E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;425E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;426E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;418E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;185E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;427E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;185E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;428E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;185E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;429E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;185E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;430E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;185E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;431E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;432E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;433E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;336E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;319E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;434E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;164E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;334E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;319E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;435E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;293E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;197E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;162E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;435E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;436E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;437E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;197E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;438E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;439E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;197E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;440E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;441E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;197E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;442E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;197E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;443E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;297E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;298E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;299E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;197E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;444E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;197E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;445E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;197E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;336E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;446E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;447E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;197E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;334E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;446E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;206E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;448E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;449E;K;30;_CPCibWindowTemplateWTFlagsKeyD;K;6;CP$UIDd;3;450E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;451E;K;33;_CPCibWindowTemplateScreenRectKeyD;K;6;CP$UIDd;3;452E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;348E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;292E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;3;209E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;208E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;454E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;454E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;455E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;E;D;K;10;$classnameS;12;CPScrollViewK;8;$classesA;S;12;CPScrollViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;210E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;209E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;457E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;458E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;459E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;209E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;460E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;461E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;463E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;3;464E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;3;213E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;3;214E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;465E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;465E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;465E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;465E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;297E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;297E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;297E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;466E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;351E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;3;453E;E;D;K;10;$classnameS;10;CPScrollerK;8;$classesA;S;10;CPScrollerS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;212E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;211E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;467E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;468E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;211E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;469E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;470E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;471E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;472E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;453E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;211E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;473E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;414E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;453E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;297E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;474E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;212E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;211E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;475E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;476E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;211E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;469E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;470E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;471E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;472E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;453E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;211E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;477E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;414E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;453E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;299E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;478E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;13;CPOutlineViewK;8;$classesA;S;13;CPOutlineViewS;11;CPTableViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;215E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;463E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;479E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;479E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;463E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;481E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;482E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;K;12;$agrid-colorD;K;6;CP$UIDd;3;483E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;414E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;484E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;485E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;453E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;414E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;299E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;297E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;297E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;297E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;299E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;486E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;483E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;3;453E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;299E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;3;488E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;3;220E;K;26;CPTableViewAutosaveNameKeyD;K;6;CP$UIDd;1;0E;K;34;CPOutlineViewOutlineTableColumnKeyD;K;6;CP$UIDd;3;218E;K;35;CPOutlineViewIndentationPerLevelKeyD;K;6;CP$UIDd;3;489E;K;26;CPOutlineViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;24;CPOutlineViewDelegateKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;13;CPTableColumnK;8;$classesA;S;13;CPTableColumnS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;217E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;490E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;489E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;491E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;493E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;495E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;343E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;299E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;297E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;17;CPTableHeaderViewK;8;$classesA;S;17;CPTableHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;219E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;464E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;496E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;496E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;464E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;497E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;K;29;CPTableHeaderViewTableViewKeyD;K;6;CP$UIDd;3;216E;K;33;CPTableHeaderViewDrawsColumnLinesD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;498E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;207E;E;E;S;8;delegateS;11;outlineViewS;9;theWindowS;10;dataSourceS;15;arrangeInFront:S;19;performMiniaturize:S;29;orderFrontStandardAboutPanel:S;13;openDocument:S;13;performClose:S;13;saveDocument:S;14;runPageLayout:S;6;print:S;15;saveDocumentAs:S;12;newDocument:S;9;showHelp:S;22;revertDocumentToSaved:S;21;clearRecentDocuments:S;5;hide:S;10;terminate:S;22;hideOtherApplications:S;22;unhideAllApplications:S;13;stopSpeaking:S;14;startSpeaking:S;5;copy:S;10;selectAll:S;4;cut:S;14;checkSpelling:S;7;delete:S;6;paste:S;15;showGuessPanel:S;5;undo:S;23;performFindPanelAction:S;29;centerSelectionInVisibleArea:S;5;redo:S;30;toggleContinuousSpellChecking:S;12;performZoom:S;19;toggleToolbarShown:S;31;runToolbarCustomizationPalette:S;22;toggleGrammarChecking:S;24;toggleSmartInsertDelete:S;33;toggleAutomaticQuoteSubstitution:S;29;toggleAutomaticLinkDetection:S;10;alignLeft:S;12;alignCenter:S;15;alignJustified:S;11;alignRight:S;12;toggleRuler:S;10;copyRuler:S;11;pasteRuler:S;10;underline:S;21;orderFrontColorPanel:S;9;copyFont:S;10;pasteFont:S;9;unscript:S;12;superscript:S;10;subscript:S;14;raiseBaseline:S;14;lowerBaseline:S;21;useStandardLigatures:S;17;turnOffLigatures:S;16;useAllLigatures:S;19;useStandardKerning:S;15;turnOffKerning:S;15;tightenKerning:S;14;loosenKerning:S;9;AMainMenuS;11;_CPMainMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;3;106E;E;E;S;6;WindowS;14;submenuAction:d;7;1048576S;14;_CPWindowsMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;E;E;T;S;0;F;S;18;Bring All to FrontS;4;ZoomS;8;MinimizeS;1;mS;14;NewApplicationS;18;_CPApplicationMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;2;97E;E;E;S;20;About NewApplicationS;19;Hide NewApplicationS;1;hS;8;Show AllS;19;Quit NewApplicationS;1;qS;12;Preferences…S;1;,S;8;ServicesS;15;_CPServicesMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;S;11;Hide Othersd;7;1572864S;4;HelpD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;108E;E;E;S;19;NewApplication HelpS;1;?S;4;EditD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;133E;E;E;S;6;DeleteS;10;Select AllS;1;aS;4;UndoS;1;zS;3;CutS;1;xS;5;PasteS;1;vS;4;CopyS;1;cS;4;RedoS;1;Zd;7;1179648S;4;FindD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;123E;E;E;S;13;Find Previousd;1;3S;1;GS;17;Jump to SelectionS;1;jS;22;Use Selection for Findd;1;7S;1;eS;9;Find Nextd;1;2S;1;gS;5;Find…d;1;1S;1;fS;20;Spelling and GrammarD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;132E;E;E;S;27;Check Spelling While TypingS;14;Check SpellingS;1;;S;14;Show Spelling…S;1;:S;27;Check Grammar With SpellingS;6;SpeechD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;135E;E;E;S;13;Stop SpeakingS;14;Start SpeakingS;13;SubstitutionsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;141E;E;E;S;16;Smart Copy/PasteS;12;Smart QuotesS;11;Smart LinksS;4;FileD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;146E;E;E;S;4;SaveS;1;sS;8;Save As…S;1;SS;6;Print…S;1;pS;5;Open…S;1;oS;3;NewS;1;nS;11;Open RecentS;22;_CPRecentDocumentsMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;151E;E;E;S;10;Clear MenuS;13;Page Setup...S;1;PS;5;CloseS;1;wS;15;Revert to SavedS;4;ViewD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;E;E;S;12;Show ToolbarS;1;tS;18;Customize Toolbar…S;6;FormatD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;196E;E;E;S;4;FontS;11;_CPFontMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;168E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;170E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;172E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;191E;D;K;6;CP$UIDd;3;192E;D;K;6;CP$UIDd;3;193E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;195E;E;E;S;10;Show FontsS;4;BoldS;1;bS;6;ItalicS;1;iS;9;UnderlineS;1;uS;6;BiggerS;1;+S;7;Smallerd;1;4S;1;-S;4;KernD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;175E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;178E;E;E;S;11;Use DefaultS;8;Use NoneS;7;TightenS;6;LoosenS;8;LigatureD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;183E;E;E;S;7;Use AllS;8;BaselineD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;187E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;189E;D;K;6;CP$UIDd;3;190E;E;E;S;11;SuperscriptS;9;SubscriptS;5;RaiseS;5;LowerS;11;Show ColorsS;1;CS;10;Copy StyleS;11;Paste StyleS;4;TextD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;199E;D;K;6;CP$UIDd;3;200E;D;K;6;CP$UIDd;3;201E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;205E;E;E;S;10;Align LeftS;1;{S;6;CenterS;1;|S;7;JustifyS;11;Align RightS;1;}S;10;Show RulerS;10;Copy Rulerd;7;1310720S;11;Paste RulerS;32;{10000000000000, 10000000000000}S;8;CPWindowd;10;1946157056S;24;{{335, 128}, {480, 360}}S;21;{{0, 0}, {1440, 878}}d;1;0S;20;{{0, 0}, {480, 360}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;211E;E;E;S;6;normalS;22;{{20, 20}, {440, 320}}S;20;{{0, 0}, {440, 320}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;463E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;464E;D;K;6;CP$UIDd;3;488E;D;K;6;CP$UIDd;3;466E;E;E;d;2;36S;10;scrollviewD;K;10;$classnameS;10;CPClipViewK;8;$classesA;S;10;CPClipViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;462E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;211E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;499E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;479E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;500E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;211E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;469E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;501E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;3;216E;E;D;K;6;$classD;K;6;CP$UIDd;3;462E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;211E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;502E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;503E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;211E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;469E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;501E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;3;220E;E;d;2;10D;K;6;$classD;K;6;CP$UIDd;3;208E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;211E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;505E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;505E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;211E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;E;S;22;{{424, 16}, {15, 287}}S;19;{{0, 0}, {15, 287}}d;1;8d;11;-2147483648S;8;scrollerS;8;disabledS;27;_verticalScrollerDidScroll:f;18;0.9503311258278145S;19;{{1, 1}, {438, 15}}S;19;{{0, 0}, {438, 15}}S;29;_horizontalScrollerDidScroll:f;18;0.8295454545454546S;20;{{0, 0}, {438, 302}}D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;480E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;506E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;3;480E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;507E;E;d;2;25S;6;{3, 2}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;218E;E;E;D;K;10;$classnameS;13;_CPCornerViewK;8;$classesA;S;13;_CPCornerViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;487E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;211E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;453E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;508E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;509E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;211E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;469E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;510E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;E;d;2;16d;3;422d;4;1000D;K;10;$classnameS;24;_CPTableColumnHeaderViewK;8;$classesA;S;24;_CPTableColumnHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;492E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;505E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;505E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;511E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;512E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;K;6;$afontD;K;6;CP$UIDd;3;514E;K;12;$atext-colorD;K;6;CP$UIDd;3;515E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;453E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;298E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;514E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;515E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;453E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;414E;E;D;K;10;$classnameS;11;CPTextFieldK;8;$classesA;S;11;CPTextFieldS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;494E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;505E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;516E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;517E;K;6;$afontD;K;6;CP$UIDd;3;519E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;414E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;351E;K;11;$aalignmentD;K;6;CP$UIDd;3;453E;K;15;$acontent-insetD;K;6;CP$UIDd;3;521E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;298E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;522E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;1;0E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;414E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;453E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;298E;E;S;19;{{0, 0}, {438, 25}}S;14;tableHeaderRowS;13;AppControllerS;20;{{1, 1}, {438, 302}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;216E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;480E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;523E;E;S;21;{{1, 303}, {438, 17}}S;19;{{0, 0}, {438, 17}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;220E;E;E;S;16;{{0, 0}, {0, 0}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;354E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;524E;D;K;6;CP$UIDd;3;524E;D;K;6;CP$UIDd;3;524E;D;K;6;CP$UIDd;3;354E;E;E;S;22;{{424, 297}, {16, 23}}S;18;{{0, 0}, {16, 23}}S;10;cornerviewD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;526E;E;E;S;12;columnHeaderD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;513E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;527E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;528E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;297E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;299E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;3;480E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;529E;E;S;9;textfieldS;11;placeholderD;K;10;$classnameS;17;_CPThemeAttributeK;8;$classesA;S;17;_CPThemeAttributeS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;518E;K;4;nameD;K;6;CP$UIDd;3;530E;K;12;defaultValueD;K;6;CP$UIDd;3;531E;K;6;valuesD;K;6;CP$UIDd;3;533E;E;D;K;10;$classnameS;21;_CPKeyedArchiverValueK;8;$classesA;S;21;_CPKeyedArchiverValueS;7;CPValueS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;520E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;534E;E;d;4;3072D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;354E;E;E;f;3;0.8D;K;10;$classnameS;19;_CPImageAndTextViewK;8;$classesA;S;19;_CPImageAndTextViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;525E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;493E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;505E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;505E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;493E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;535E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;299E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;456E;E;S;28;_CPFontSystemFacePlaceholderd;2;11D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;536E;D;K;6;CP$UIDd;3;536E;D;K;6;CP$UIDd;3;536E;D;K;6;CP$UIDd;3;354E;E;E;S;4;fontD;K;6;$classD;K;6;CP$UIDd;3;513E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;527E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;537E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;299E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;299E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;297E;E;D;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;532E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;538E;K;6;normalD;K;6;CP$UIDd;3;539E;E;E;S;39;{"top":0,"right":5,"bottom":0,"left":5}d;2;18f;18;0.5019607843137255d;2;-1D;K;6;$classD;K;6;CP$UIDd;3;513E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;540E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;541E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;297E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;299E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;299E;E;D;K;6;$classD;K;6;CP$UIDd;3;513E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;527E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;541E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;299E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;299E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;297E;E;S;17;Arial, sans-serifd;2;12E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; diff --git a/Tests/Manual/CPOutlineViewCibTest/Resources/MainMenu.xib b/Tests/Manual/CPOutlineViewCibTest/Resources/MainMenu.xib index c33a1ada4..b215b1408 100644 --- a/Tests/Manual/CPOutlineViewCibTest/Resources/MainMenu.xib +++ b/Tests/Manual/CPOutlineViewCibTest/Resources/MainMenu.xib @@ -2,17 +2,27 @@ 1050 - 10J567 - 823 - 1038.35 - 462.00 + 11G63 + 2844 + 1138.51 + 569.00 com.apple.InterfaceBuilder.CocoaPlugin - 823 + 2844 - + YES - + NSCustomObject + NSMenu + NSMenuItem + NSOutlineView + NSScrollView + NSScroller + NSTableColumn + NSTableHeaderView + NSTextFieldCell + NSView + NSWindowTemplate YES @@ -1116,7 +1126,7 @@ Window NSWindow - {1.79769e+308, 1.79769e+308} + 256 @@ -1137,12 +1147,16 @@ 256 {438, 302} + + YES 256 {438, 17} + + @@ -1150,6 +1164,8 @@ -2147483392 {{424, 0}, {16, 17}} + + YES @@ -1236,10 +1252,12 @@ 0 YES 0 + 1 {{1, 17}, {438, 302}} + @@ -1250,6 +1268,8 @@ -2147483392 {{424, 17}, {15, 287}} + + _doScroller: 0.95033112582781454 @@ -1259,6 +1279,8 @@ -2147483392 {{1, 304}, {438, 15}} + + 1 _doScroller: @@ -1273,6 +1295,7 @@ {{1, 0}, {438, 17}} + @@ -1282,8 +1305,9 @@ {{20, 20}, {440, 320}} - - 562 + + + 133682 @@ -1294,9 +1318,12 @@ {480, 360} + + - {{0, 0}, {1440, 878}} - {1.79769e+308, 1.79769e+308} + {{0, 0}, {1680, 1028}} + {10000000000000, 10000000000000} + YES AppController @@ -1305,6 +1332,30 @@ YES + + + terminate: + + + + 449 + + + + orderFrontStandardAboutPanel: + + + + 142 + + + + delegate + + + + 451 + performMiniaturize: @@ -1345,14 +1396,6 @@ 127 - - - orderFrontStandardAboutPanel: - - - - 142 - performClose: @@ -1785,21 +1828,13 @@ 448 - - - terminate: - - - - 449 - - delegate - - + outlineView + + - 451 + 476 @@ -1807,7 +1842,7 @@ - 459 + 477 @@ -1815,7 +1850,7 @@ - 469 + 478 @@ -1823,15 +1858,7 @@ - 470 - - - - outlineView - - - - 475 + 479 @@ -2789,145 +2816,74 @@ YES YES + -1.IBPluginDependency + -2.IBPluginDependency -3.IBPluginDependency 103.IBPluginDependency - 103.ImportedFromIB2 106.IBPluginDependency - 106.ImportedFromIB2 - 106.editorWindowContentRectSynchronizationRect 111.IBPluginDependency - 111.ImportedFromIB2 112.IBPluginDependency - 112.ImportedFromIB2 124.IBPluginDependency - 124.ImportedFromIB2 125.IBPluginDependency - 125.ImportedFromIB2 - 125.editorWindowContentRectSynchronizationRect 126.IBPluginDependency - 126.ImportedFromIB2 129.IBPluginDependency - 129.ImportedFromIB2 130.IBPluginDependency - 130.ImportedFromIB2 - 130.editorWindowContentRectSynchronizationRect 131.IBPluginDependency - 131.ImportedFromIB2 134.IBPluginDependency - 134.ImportedFromIB2 136.IBPluginDependency - 136.ImportedFromIB2 143.IBPluginDependency - 143.ImportedFromIB2 144.IBPluginDependency - 144.ImportedFromIB2 145.IBPluginDependency - 145.ImportedFromIB2 149.IBPluginDependency - 149.ImportedFromIB2 150.IBPluginDependency - 150.ImportedFromIB2 19.IBPluginDependency - 19.ImportedFromIB2 195.IBPluginDependency - 195.ImportedFromIB2 196.IBPluginDependency - 196.ImportedFromIB2 197.IBPluginDependency - 197.ImportedFromIB2 198.IBPluginDependency - 198.ImportedFromIB2 199.IBPluginDependency - 199.ImportedFromIB2 200.IBPluginDependency - 200.ImportedFromIB2 - 200.editorWindowContentRectSynchronizationRect 201.IBPluginDependency - 201.ImportedFromIB2 202.IBPluginDependency - 202.ImportedFromIB2 203.IBPluginDependency - 203.ImportedFromIB2 204.IBPluginDependency - 204.ImportedFromIB2 205.IBPluginDependency - 205.ImportedFromIB2 - 205.editorWindowContentRectSynchronizationRect 206.IBPluginDependency - 206.ImportedFromIB2 207.IBPluginDependency - 207.ImportedFromIB2 208.IBPluginDependency - 208.ImportedFromIB2 209.IBPluginDependency - 209.ImportedFromIB2 210.IBPluginDependency - 210.ImportedFromIB2 211.IBPluginDependency - 211.ImportedFromIB2 212.IBPluginDependency - 212.ImportedFromIB2 - 212.editorWindowContentRectSynchronizationRect 213.IBPluginDependency - 213.ImportedFromIB2 214.IBPluginDependency - 214.ImportedFromIB2 215.IBPluginDependency - 215.ImportedFromIB2 216.IBPluginDependency - 216.ImportedFromIB2 217.IBPluginDependency - 217.ImportedFromIB2 218.IBPluginDependency - 218.ImportedFromIB2 219.IBPluginDependency - 219.ImportedFromIB2 220.IBPluginDependency - 220.ImportedFromIB2 - 220.editorWindowContentRectSynchronizationRect 221.IBPluginDependency - 221.ImportedFromIB2 23.IBPluginDependency - 23.ImportedFromIB2 236.IBPluginDependency - 236.ImportedFromIB2 239.IBPluginDependency - 239.ImportedFromIB2 24.IBPluginDependency - 24.ImportedFromIB2 - 24.editorWindowContentRectSynchronizationRect - 29.IBEditorWindowLastContentRect 29.IBPluginDependency - 29.ImportedFromIB2 - 29.WindowOrigin - 29.editorWindowContentRectSynchronizationRect 295.IBPluginDependency 296.IBPluginDependency - 296.editorWindowContentRectSynchronizationRect 297.IBPluginDependency 298.IBPluginDependency 346.IBPluginDependency - 346.ImportedFromIB2 348.IBPluginDependency - 348.ImportedFromIB2 349.IBPluginDependency - 349.ImportedFromIB2 - 349.editorWindowContentRectSynchronizationRect 350.IBPluginDependency - 350.ImportedFromIB2 351.IBPluginDependency - 351.ImportedFromIB2 354.IBPluginDependency - 354.ImportedFromIB2 - 371.IBEditorWindowLastContentRect 371.IBPluginDependency 371.IBWindowTemplateEditedContentRect 371.NSWindowTemplate.visibleAtLaunch - 371.editorWindowContentRectSynchronizationRect - 371.windowTemplate.maxSize 372.IBPluginDependency 375.IBPluginDependency - 376.IBEditorWindowLastContentRect 376.IBPluginDependency 377.IBPluginDependency 378.IBPluginDependency @@ -2940,7 +2896,6 @@ 385.IBPluginDependency 386.IBPluginDependency 387.IBPluginDependency - 388.IBEditorWindowLastContentRect 388.IBPluginDependency 389.IBPluginDependency 390.IBPluginDependency @@ -2973,6 +2928,7 @@ 417.IBPluginDependency 418.IBPluginDependency 419.IBPluginDependency + 450.IBPluginDependency 460.IBPluginDependency 461.IBPluginDependency 462.IBPluginDependency @@ -2981,182 +2937,92 @@ 465.IBPluginDependency 468.IBPluginDependency 5.IBPluginDependency - 5.ImportedFromIB2 56.IBPluginDependency - 56.ImportedFromIB2 - 57.IBEditorWindowLastContentRect 57.IBPluginDependency - 57.ImportedFromIB2 - 57.editorWindowContentRectSynchronizationRect 58.IBPluginDependency - 58.ImportedFromIB2 72.IBPluginDependency - 72.ImportedFromIB2 73.IBPluginDependency - 73.ImportedFromIB2 74.IBPluginDependency - 74.ImportedFromIB2 75.IBPluginDependency - 75.ImportedFromIB2 77.IBPluginDependency - 77.ImportedFromIB2 78.IBPluginDependency - 78.ImportedFromIB2 79.IBPluginDependency - 79.ImportedFromIB2 80.IBPluginDependency - 80.ImportedFromIB2 81.IBPluginDependency - 81.ImportedFromIB2 - 81.editorWindowContentRectSynchronizationRect 82.IBPluginDependency - 82.ImportedFromIB2 83.IBPluginDependency - 83.ImportedFromIB2 92.IBPluginDependency - 92.ImportedFromIB2 - + YES com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - {{596, 852}, {216, 23}} - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - {{522, 812}, {146, 23}} - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - {{436, 809}, {64, 6}} - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - {{608, 612}, {275, 83}} - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - {{187, 434}, {243, 243}} - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - {{608, 612}, {167, 43}} - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - {{608, 612}, {241, 103}} - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - {{525, 802}, {197, 73}} - {{143, 285}, {478, 20}} - com.apple.InterfaceBuilder.CocoaPlugin - - {74, 862} - {{6, 978}, {478, 20}} - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - {{475, 832}, {234, 43}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - {{608, 612}, {215, 63}} com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - {{542, 408}, {480, 360}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin {{542, 408}, {480, 360}} - {{33, 99}, {480, 360}} - {3.40282e+38, 3.40282e+38} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{437, 242}, {86, 43}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -3169,7 +3035,6 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{523, 2}, {178, 283}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -3210,59 +3075,37 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - {{155, 102}, {245, 183}} com.apple.InterfaceBuilder.CocoaPlugin - - {{23, 794}, {245, 183}} com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - {{145, 474}, {199, 203}} com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - + com.apple.InterfaceBuilder.CocoaPlugin YES - - YES - + YES - - YES - + - 475 + 479 @@ -3277,9 +3120,9 @@ outlineView theWindow - + YES - id + NSOutlineView NSWindow @@ -3290,11 +3133,11 @@ outlineView theWindow - + YES outlineView - id + NSOutlineView theWindow @@ -3303,8 +3146,8 @@ - IBUserSource - + IBProjectSource + ./Classes/AppController.h @@ -3320,7 +3163,6 @@ YES - ../adsfsdf.xcodeproj 3 YES @@ -3329,10 +3171,10 @@ NSMenuCheckmark NSMenuMixedState - + YES - {9, 8} - {7, 2} + {11, 11} + {10, 3} diff --git a/Tests/Manual/CPOutlineViewViewBasedCibTest/AppController.j b/Tests/Manual/CPOutlineViewViewBasedCibTest/AppController.j new file mode 100644 index 000000000..c61f497a6 --- /dev/null +++ b/Tests/Manual/CPOutlineViewViewBasedCibTest/AppController.j @@ -0,0 +1,67 @@ +/* + * AppController.j + * CPOutlineViewViewBasedCibTest + * + * Created by You on April 11, 2012. + * Copyright 2012, Your Company All rights reserved. + */ + +@import + + +@implementation AppController : CPObject +{ + @outlet CPWindow theWindow; + @outlet CPOutlineView outlineView; +} + +- (void)awakeFromCib +{ + [theWindow setFullPlatformWindow:YES]; +} + +- (int)outlineView:(id)oview numberOfChildrenOfItem:(id)item +{ + return 3; +} + +- (id)outlineView:(id)oview child:(int)childnum ofItem:(id)item +{ + return [CPObject new]; +} + +- (BOOL)outlineView:(id)oview isItemExpandable:(id)item +{ + return YES; +} + +-(id)outlineView:(id)oview dataViewForTableColumn:(id)tableColumn item:(id)item +{ + var identifier = [tableColumn identifier]; + if (identifier == @"first" && [oview parentForItem:item] == nil) + identifier = @"firstRoot"; + + var view = [oview makeViewWithIdentifier:identifier owner:self]; + [[view textField] setStringValue:@"Item <" + [item UID] + ">"]; + + if (identifier = @"firstRoot") + { + var expandButton = [view viewWithTag:1000]; + [expandButton setState:[outlineView isItemExpanded:item]]; + } + + return view; +} + +- (IBAction)expand:(id)sender +{ + var row = [outlineView rowForView:sender], + item = [outlineView itemAtRow:row]; + + if ([outlineView isItemExpanded:item]) + [outlineView collapseItem:item]; + else + [outlineView expandItem:item]; +} + +@end diff --git a/Tests/Manual/CPOutlineViewViewBasedCibTest/Info.plist b/Tests/Manual/CPOutlineViewViewBasedCibTest/Info.plist new file mode 100644 index 000000000..4a0169546 --- /dev/null +++ b/Tests/Manual/CPOutlineViewViewBasedCibTest/Info.plist @@ -0,0 +1,10 @@ + + + + + Main cib file base name + MainMenu.cib + CPBundleName + CPOutlineViewViewBasedCibTest + + diff --git a/Tests/Manual/CPOutlineViewViewBasedCibTest/Jakefile b/Tests/Manual/CPOutlineViewViewBasedCibTest/Jakefile new file mode 100644 index 000000000..07ad54e8b --- /dev/null +++ b/Tests/Manual/CPOutlineViewViewBasedCibTest/Jakefile @@ -0,0 +1,94 @@ +/* + * Jakefile + * CPOutlineViewViewBasedCibTest + * + * Created by You on April 11, 2012. + * Copyright 2012, Your Company All rights reserved. + */ + +var ENV = require("system").env, + FILE = require("file"), + JAKE = require("jake"), + task = JAKE.task, + FileList = JAKE.FileList, + app = require("cappuccino/jake").app, + configuration = ENV["CONFIG"] || ENV["CONFIGURATION"] || ENV["c"] || "Debug", + OS = require("os"); + +app ("CPOutlineViewViewBasedCibTest", function(task) +{ + task.setBuildIntermediatesPath(FILE.join("Build", "CPOutlineViewViewBasedCibTest.build", configuration)); + task.setBuildPath(FILE.join("Build", configuration)); + + task.setProductName("CPOutlineViewViewBasedCibTest"); + task.setIdentifier("com.yourcompany.CPOutlineViewViewBasedCibTest"); + task.setVersion("1.0"); + task.setAuthor("Your Company"); + task.setEmail("feedback @nospam@ yourcompany.com"); + task.setSummary("CPOutlineViewViewBasedCibTest"); + task.setSources((new FileList("**/*.j")).exclude(FILE.join("Build", "**"))); + task.setResources(new FileList("Resources/**")); + task.setIndexFilePath("index.html"); + task.setInfoPlistPath("Info.plist"); + task.setNib2CibFlags("-R Resources/"); + + if (configuration === "Debug") + task.setCompilerFlags("-DDEBUG -g"); + else + task.setCompilerFlags("-O"); +}); + +task ("default", ["CPOutlineViewViewBasedCibTest"], function() +{ + printResults(configuration); +}); + +task ("build", ["default"]); + +task ("debug", function() +{ + ENV["CONFIGURATION"] = "Debug"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("release", function() +{ + ENV["CONFIGURATION"] = "Release"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("run", ["debug"], function() +{ + OS.system(["open", FILE.join("Build", "Debug", "CPOutlineViewViewBasedCibTest", "index.html")]); +}); + +task ("run-release", ["release"], function() +{ + OS.system(["open", FILE.join("Build", "Release", "CPOutlineViewViewBasedCibTest", "index.html")]); +}); + +task ("deploy", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Deployment", "CPOutlineViewViewBasedCibTest")); + OS.system(["press", "-f", FILE.join("Build", "Release", "CPOutlineViewViewBasedCibTest"), FILE.join("Build", "Deployment", "CPOutlineViewViewBasedCibTest")]); + printResults("Deployment") +}); + +task ("desktop", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Desktop", "CPOutlineViewViewBasedCibTest")); + require("cappuccino/nativehost").buildNativeHost(FILE.join("Build", "Release", "CPOutlineViewViewBasedCibTest"), FILE.join("Build", "Desktop", "CPOutlineViewViewBasedCibTest", "CPOutlineViewViewBasedCibTest.app")); + printResults("Desktop") +}); + +task ("run-desktop", ["desktop"], function() +{ + OS.system([FILE.join("Build", "Desktop", "CPOutlineViewViewBasedCibTest", "CPOutlineViewViewBasedCibTest.app", "Contents", "MacOS", "NativeHost"), "-i"]); +}); + +function printResults(configuration) +{ + print("----------------------------"); + print(configuration+" app built at path: "+FILE.join("Build", configuration, "CPOutlineViewViewBasedCibTest")); + print("----------------------------"); +} diff --git a/Tests/Manual/CPOutlineViewViewBasedCibTest/Resources/MainMenu.cib b/Tests/Manual/CPOutlineViewViewBasedCibTest/Resources/MainMenu.cib new file mode 100644 index 000000000..f535147f7 --- /dev/null +++ b/Tests/Manual/CPOutlineViewViewBasedCibTest/Resources/MainMenu.cib @@ -0,0 +1 @@ +280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;0E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;4E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;0E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;1;7E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;1;9E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;11E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;13E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;15E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;17E;D;K;6;CP$UIDd;2;18E;D;K;6;CP$UIDd;2;19E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;24E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;11E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;57E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;2;58E;E;D;K;10;$classnameS;20;CPCibOutletConnectorK;8;$classesA;S;20;CPCibOutletConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;11E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;56E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;59E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;56E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;33E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;60E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;56E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;27E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;61E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;33E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;56E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;62E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;33E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;56E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;59E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;47E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;50E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;63E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;37E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;39E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;63E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;42E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;43E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;63E;E;D;K;10;$classnameS;21;CPCibControlConnectorK;8;$classesA;S;21;CPCibControlConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;41E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;56E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;64E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;57E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;26E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;2;65E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;2;66E;K;30;_CPCibWindowTemplateWTFlagsKeyD;K;6;CP$UIDd;2;67E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;2;68E;K;33;_CPCibWindowTemplateScreenRectKeyD;K;6;CP$UIDd;2;69E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;2;70E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;2;71E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;29E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;72E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;73E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;73E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;74E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;E;D;K;10;$classnameS;12;CPScrollViewK;8;$classesA;S;12;CPScrollViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;30E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;29E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;72E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;76E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;77E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;78E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;79E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;80E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;2;82E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;2;83E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;55E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;2;52E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;2;84E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;2;84E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;2;84E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;2;84E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;2;85E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;2;85E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;2;85E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;2;86E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;2;87E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;2;72E;E;D;K;10;$classnameS;13;CPOutlineViewK;8;$classesA;S;13;CPOutlineViewS;11;CPTableViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;32E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;82E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;72E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;88E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;88E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;82E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;2;90E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;91E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;K;12;$agrid-colorD;K;6;CP$UIDd;2;92E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;93E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;2;94E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;2;95E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;2;72E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;2;93E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;2;96E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;2;85E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;2;85E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;2;85E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;2;96E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;2;97E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;2;92E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;2;72E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;2;96E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;2;99E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;2;54E;K;26;CPTableViewAutosaveNameKeyD;K;6;CP$UIDd;1;0E;K;35;CPTableViewArchivedReusableViewsKeyD;K;6;CP$UIDd;3;101E;K;34;CPOutlineViewOutlineTableColumnKeyD;K;6;CP$UIDd;2;35E;K;35;CPOutlineViewIndentationPerLevelKeyD;K;6;CP$UIDd;3;102E;K;26;CPOutlineViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;24;CPOutlineViewDelegateKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;13;CPTableColumnK;8;$classesA;S;13;CPTableColumnS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;103E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;104E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;102E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;105E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;107E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;108E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;109E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;2;96E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;2;85E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;15;CPTableCellViewK;8;$classesA;S;15;CPTableCellViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;36E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;72E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;110E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;111E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;112E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;113E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;114E;E;D;K;10;$classnameS;11;CPTextFieldK;8;$classesA;S;11;CPTextFieldS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;72E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;115E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;116E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;117E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;K;6;$afontD;K;6;CP$UIDd;3;120E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;93E;K;11;$aalignmentD;K;6;CP$UIDd;2;93E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;85E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;121E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;122E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;2;96E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;2;96E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;2;96E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;123E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;93E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;93E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;8;CPButtonK;8;$classesA;S;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;105E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;124E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;125E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;126E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;127E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;128E;K;6;$afontD;K;6;CP$UIDd;3;129E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;72E;K;11;$aalignmentD;K;6;CP$UIDd;2;87E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;72E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;93E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;130E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;131E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;96E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;109E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;132E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;2;85E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;87E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;2;72E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;36E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;72E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;133E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;134E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;135E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;113E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;103E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;42E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;72E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;136E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;137E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;42E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;138E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;K;6;$afontD;K;6;CP$UIDd;3;120E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;93E;K;11;$aalignmentD;K;6;CP$UIDd;2;93E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;85E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;121E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;122E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;2;96E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;2;96E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;2;96E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;123E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;93E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;93E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;10;CPCheckBoxK;8;$classesA;S;10;CPCheckBoxS;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;44E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;42E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;72E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;139E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;140E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;42E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;141E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;142E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;143E;K;16;$aimage-positionD;K;6;CP$UIDd;3;132E;K;6;$afontD;K;6;CP$UIDd;3;120E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;72E;K;11;$aalignmentD;K;6;CP$UIDd;2;72E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;132E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;93E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;144E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;145E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;96E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;132E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;132E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;2;85E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;132E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;2;72E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;146E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;147E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;148E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;105E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;149E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;150E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;109E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;2;96E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;2;85E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;36E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;72E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;151E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;152E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;153E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;113E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;146E;E;D;K;10;$classnameS;8;CPSliderK;8;$classesA;S;8;CPSliderS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;48E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;47E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;72E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;154E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;155E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;47E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;156E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;157E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;72E;K;11;$aalignmentD;K;6;CP$UIDd;2;72E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;158E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;93E;K;19;CPSliderMinValueKeyD;K;6;CP$UIDd;2;72E;K;19;CPSliderMaxValueKeyD;K;6;CP$UIDd;3;159E;K;23;CPSliderAltIncrValueKeyD;K;6;CP$UIDd;2;72E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;47E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;72E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;160E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;161E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;47E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;117E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;K;6;$afontD;K;6;CP$UIDd;3;120E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;93E;K;11;$aalignmentD;K;6;CP$UIDd;2;93E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;85E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;121E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;122E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;2;96E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;2;96E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;2;96E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;123E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;93E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;93E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;10;CPScrollerK;8;$classesA;S;10;CPScrollerS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;31E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;72E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;162E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;163E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;31E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;164E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;165E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;166E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;167E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;72E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;31E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;168E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;93E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;2;72E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;169E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;17;CPTableHeaderViewK;8;$classesA;S;17;CPTableHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;83E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;72E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;170E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;170E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;83E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;171E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;K;29;CPTableHeaderViewTableViewKeyD;K;6;CP$UIDd;2;33E;K;33;CPTableHeaderViewDrawsColumnLinesD;K;6;CP$UIDd;2;85E;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;31E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;72E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;172E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;173E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;31E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;164E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;165E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;166E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;174E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;72E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;31E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;175E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;93E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;2;72E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;176E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;177E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;27E;E;E;S;8;delegateS;11;outlineViewS;9;theWindowS;10;dataSourceS;9;textFieldS;7;expand:S;32;{10000000000000, 10000000000000}S;8;CPWindowd;10;1946157056S;24;{{335, 208}, {673, 430}}S;22;{{0, 0}, {1680, 1028}}d;1;7S;6;Windowd;1;0S;20;{{0, 0}, {673, 430}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;31E;E;E;S;6;normalS;22;{{20, 20}, {633, 390}}S;20;{{0, 0}, {633, 390}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;2;86E;E;E;d;2;36S;10;scrollviewD;K;10;$classnameS;10;CPClipViewK;8;$classesA;S;10;CPClipViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;81E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;31E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;72E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;178E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;88E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;179E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;31E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;164E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;180E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;181E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;33E;E;D;K;6;$classD;K;6;CP$UIDd;2;81E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;31E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;72E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;182E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;183E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;184E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;31E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;164E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;180E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;185E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;54E;E;d;2;10T;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;31E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;186E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;186E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;31E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;E;d;1;2S;20;{{0, 0}, {631, 372}}D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;89E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;187E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;2;89E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;188E;E;d;1;4d;2;47S;6;{3, 2}F;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;46E;E;E;D;K;10;$classnameS;13;_CPCornerViewK;8;$classesA;S;13;_CPCornerViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;98E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;31E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;72E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;189E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;190E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;31E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;164E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;191E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;192E;E;D;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;100E;K;10;CP.objectsD;K;6;secondD;K;6;CP$UIDd;3;194E;K;5;firstD;K;6;CP$UIDd;3;195E;K;9;firstRootD;K;6;CP$UIDd;3;196E;E;E;d;2;16S;5;firstf;12;281.29296875d;4;1000D;K;10;$classnameS;24;_CPTableColumnHeaderViewK;8;$classesA;S;24;_CPTableColumnHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;106E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;186E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;186E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;197E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;198E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;K;6;$afontD;K;6;CP$UIDd;3;199E;K;16;$atext-alignmentD;K;6;CP$UIDd;2;72E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;145E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;199E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;1;0E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;2;72E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;2;93E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;186E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;186E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;200E;K;6;$afontD;K;6;CP$UIDd;3;202E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;93E;K;20;$avertical-alignmentD;K;6;CP$UIDd;2;87E;K;11;$aalignmentD;K;6;CP$UIDd;2;72E;K;15;$acontent-insetD;K;6;CP$UIDd;3;204E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;145E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;122E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;1;0E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;93E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;72E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;145E;E;d;1;3S;19;{{1, 1}, {281, 41}}S;19;{{0, 0}, {281, 41}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;41E;E;E;d;2;18S;9;firstRootS;20;{{0, 13}, {170, 17}}S;19;{{0, 0}, {170, 17}}d;2;46S;9;textfieldD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;119E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;205E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;206E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;96E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;96E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;2;85E;E;S;15;Table View Celld;4;3072D;K;6;$classD;K;6;CP$UIDd;2;89E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;207E;E;S;21;{{146, 6}, {123, 25}}S;19;{{0, 0}, {123, 25}}d;2;41S;6;buttonS;8;borderedD;K;6;$classD;K;6;CP$UIDd;3;119E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;205E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;206E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;85E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;96E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;2;85E;E;S;6;ExpandS;8;Collapsed;1;1S;20;{{1, 44}, {281, 17}}S;19;{{0, 0}, {281, 17}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;45E;E;E;S;20;{{25, 1}, {250, 17}}S;19;{{0, 0}, {250, 17}}d;2;42S;19;{{1, -1}, {21, 18}}S;18;{{0, 0}, {21, 18}}d;2;44S;9;check-boxS;8;selectedS;5;CheckS;0;S;6;secondd;3;344d;2;40D;K;6;$classD;K;6;CP$UIDd;3;106E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;186E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;186E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;208E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;198E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;K;6;$afontD;K;6;CP$UIDd;3;199E;K;16;$atext-alignmentD;K;6;CP$UIDd;2;72E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;145E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;199E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;1;0E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;2;72E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;2;93E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;186E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;186E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;200E;K;6;$afontD;K;6;CP$UIDd;3;209E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;93E;K;20;$avertical-alignmentD;K;6;CP$UIDd;2;87E;K;11;$aalignmentD;K;6;CP$UIDd;2;72E;K;15;$acontent-insetD;K;6;CP$UIDd;3;210E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;145E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;122E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;1;0E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;93E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;72E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;145E;E;S;21;{{285, 1}, {344, 47}}S;19;{{0, 0}, {344, 47}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;49E;E;E;S;22;{{171, 14}, {158, 21}}S;19;{{0, 0}, {158, 21}}d;2;43S;6;sliderd;2;50d;3;100S;20;{{0, 16}, {163, 17}}S;19;{{0, 0}, {163, 17}}S;19;{{1, 1}, {631, 15}}S;19;{{0, 0}, {631, 15}}d;1;8d;11;-2147483648S;8;scrollerS;8;disabledS;29;_horizontalScrollerDidScroll:f;18;0.9984177215189873S;19;{{0, 0}, {631, 25}}S;14;tableHeaderRowS;23;{{224, 271}, {15, 102}}S;19;{{0, 0}, {15, 102}}S;17;disabled+verticalS;27;_verticalScrollerDidScroll:f;18;0.9595687331536388S;13;AppControllerS;20;{{1, 1}, {631, 372}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;33E;E;E;D;K;6;$classD;K;6;CP$UIDd;2;89E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;211E;E;S;6;_NS:11S;21;{{1, 373}, {631, 17}}S;19;{{0, 0}, {631, 17}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;54E;E;E;S;6;_NS:15S;16;{{0, 0}, {0, 0}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;132E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;132E;E;E;S;22;{{224, 367}, {16, 23}}S;18;{{0, 0}, {16, 23}}S;10;cornerviewS;6;_NS:18D;K;10;$classnameS;5;CPCibK;8;$classesA;S;5;CPCibS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;193E;K;16;CPCibDataFileKeyD;K;6;CP$UIDd;3;213E;E;D;K;6;$classD;K;6;CP$UIDd;3;193E;K;16;CPCibDataFileKeyD;K;6;CP$UIDd;3;214E;E;D;K;6;$classD;K;6;CP$UIDd;3;193E;K;16;CPCibDataFileKeyD;K;6;CP$UIDd;3;215E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;217E;E;E;S;12;columnHeaderD;K;6;$classD;K;6;CP$UIDd;3;119E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;218E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;219E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;96E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;96E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;2;96E;E;S;11;placeholderD;K;10;$classnameS;17;_CPThemeAttributeK;8;$classesA;S;17;_CPThemeAttributeS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;201E;K;4;nameD;K;6;CP$UIDd;3;220E;K;12;defaultValueD;K;6;CP$UIDd;3;120E;K;6;valuesD;K;6;CP$UIDd;3;221E;E;D;K;10;$classnameS;21;_CPKeyedArchiverValueK;8;$classesA;S;21;_CPKeyedArchiverValueS;7;CPValueS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;203E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;222E;E;S;28;_CPFontSystemFacePlaceholderd;2;-1D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;223E;D;K;6;CP$UIDd;3;223E;D;K;6;CP$UIDd;3;223E;D;K;6;CP$UIDd;3;132E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;224E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;201E;K;4;nameD;K;6;CP$UIDd;3;220E;K;12;defaultValueD;K;6;CP$UIDd;3;120E;K;6;valuesD;K;6;CP$UIDd;3;225E;E;D;K;6;$classD;K;6;CP$UIDd;3;203E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;222E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;132E;E;E;f;3;0.8S;7884;MjgwTlBMSVNUOzEuMDtEO0s7NDskdG9wRDtLOzE4O0NQQ2liT2JqZWN0RGF0YUtleUQ7Szs2O0NQJFVJRGQ7MTsyRTtFO0s7ODskb2JqZWN0c0E7Uzs1OyRudWxsRDtLOzEwOyRjbGFzc25hbWVTOzE2O19DUENpYk9iamVjdERhdGFLOzg7JGNsYXNzZXNBO1M7MTY7X0NQQ2liT2JqZWN0RGF0YVM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7MUU7SzsyODtfQ1BDaWJPYmplY3REYXRhTmFtZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YU5hbWVzVmFsdWVzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzI7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNWYWx1ZXNLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzszMDtfQ1BDaWJPYmplY3REYXRhQ29ubmVjdGlvbnNLZXlEO0s7NjtDUCRVSURkOzE7NEU7SzsyODtfQ1BDaWJPYmplY3REYXRhRnJhbWV3b3JrS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MjY7X0NQQ2liT2JqZWN0RGF0YU5leHRPaWRLZXlEO0s7NjtDUCRVSURkOzE7NUU7SzszMDtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c0tleXNLZXlEO0s7NjtDUCRVSURkOzE7NkU7SzszMjtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c1ZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs3RTtLOzI2O19DUENpYk9iamVjdERhdGFPaWRLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzhFO0s7Mjg7X0NQQ2liT2JqZWN0RGF0YU9pZFZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs5RTtLOzI4O19DUENpYk9iamVjdERhdGFGaWxlT3duZXJLZXlEO0s7NjtDUCRVSURkOzI7MTFFO0s7MzM7X0NQQ2liT2JqZWN0RGF0YVZpc2libGVXaW5kb3dzS2V5RDtLOzY7Q1AkVUlEZDsyOzEzRTtFO0Q7SzsxMDskY2xhc3NuYW1lUzs3O0NQQXJyYXlLOzg7JGNsYXNzZXNBO1M7NztDUEFycmF5Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsxNUU7RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtEO0s7NjtDUCRVSURkOzI7MTdFO0Q7Szs2O0NQJFVJRGQ7MjsxOUU7RDtLOzY7Q1AkVUlEZDsxOzBFO0Q7Szs2O0NQJFVJRGQ7MjsyMUU7RDtLOzY7Q1AkVUlEZDsxOzBFO0Q7Szs2O0NQJFVJRGQ7MjsyMkU7RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsxMUU7RDtLOzY7Q1AkVUlEZDsyOzE3RTtEO0s7NjtDUCRVSURkOzI7MTlFO0Q7Szs2O0NQJFVJRGQ7MjsxN0U7RDtLOzY7Q1AkVUlEZDsyOzIxRTtEO0s7NjtDUCRVSURkOzI7MTFFO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RTtFO0Q7SzsxMDskY2xhc3NuYW1lUzsxODtfQ1BDaWJDdXN0b21PYmplY3RLOzg7JGNsYXNzZXNBO1M7MTg7X0NQQ2liQ3VzdG9tT2JqZWN0Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxMEU7SzsyNztfQ1BDaWJDdXN0b21PYmplY3RDbGFzc05hbWVEO0s7NjtDUCRVSURkOzI7MjNFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzU7Q1BTZXRLOzg7JGNsYXNzZXNBO1M7NTtDUFNldFM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MTJFO0s7MTU7Q1BTZXRPYmplY3RzS2V5RDtLOzY7Q1AkVUlEZDsyOzI0RTtFO0Q7SzsxMDskY2xhc3NuYW1lUzsyMDtDUENpYk91dGxldENvbm5lY3Rvcks7ODskY2xhc3Nlc0E7UzsyMDtDUENpYk91dGxldENvbm5lY3RvclM7MTQ7Q1BDaWJDb25uZWN0b3JTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzE0RTtLOzI0O19DUENpYkNvbm5lY3RvclNvdXJjZUtleUQ7Szs2O0NQJFVJRGQ7MjsxN0U7SzsyOTtfQ1BDaWJDb25uZWN0b3JEZXN0aW5hdGlvbktleUQ7Szs2O0NQJFVJRGQ7MjsxOUU7SzsyMztfQ1BDaWJDb25uZWN0b3JMYWJlbEtleUQ7Szs2O0NQJFVJRGQ7MjsyNUU7RTtEO0s7MTA7JGNsYXNzbmFtZVM7MTU7Q1BUYWJsZUNlbGxWaWV3Szs4OyRjbGFzc2VzQTtTOzE1O0NQVGFibGVDZWxsVmlld1M7NjtDUFZpZXdTOzExO0NQUmVzcG9uZGVyUzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxNkU7SzsxODtDUFJlc3BvbmRlck1lbnVLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzsxMjtDUFZpZXdUYWdLZXlEO0s7NjtDUCRVSURkOzI7MjZFO0s7MTQ7Q1BWaWV3RnJhbWVLZXlEO0s7NjtDUCRVSURkOzI7MjdFO0s7MTU7Q1BWaWV3Qm91bmRzS2V5RDtLOzY7Q1AkVUlEZDsyOzI3RTtLOzE3O0NQVmlld1N1YnZpZXdzS2V5RDtLOzY7Q1AkVUlEZDsyOzI4RTtLOzIyO0NQVmlld0F1dG9yZXNpemluZ01hc2tEO0s7NjtDUCRVSURkOzI7MjlFO0s7MTk7Q1BWaWV3VGhlbWVDbGFzc0tleUQ7Szs2O0NQJFVJRGQ7MTswRTtLOzE5O0NQVmlld1RoZW1lU3RhdGVLZXlEO0s7NjtDUCRVSURkOzI7MzBFO0s7MjA7Q1BSZXVzZUlkZW50aWZpZXJLZXlEO0s7NjtDUCRVSURkOzI7MzFFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzExO0NQVGV4dEZpZWxkSzs4OyRjbGFzc2VzQTtTOzExO0NQVGV4dEZpZWxkUzs5O0NQQ29udHJvbFM7NjtDUFZpZXdTOzExO0NQUmVzcG9uZGVyUzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxOEU7SzsyNztDUFJlc3BvbmRlck5leHRSZXNwb25kZXJLZXlEO0s7NjtDUCRVSURkOzI7MTdFO0s7MTg7Q1BSZXNwb25kZXJNZW51S2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MTI7Q1BWaWV3VGFnS2V5RDtLOzY7Q1AkVUlEZDsyOzI2RTtLOzE0O0NQVmlld0ZyYW1lS2V5RDtLOzY7Q1AkVUlEZDsyOzMyRTtLOzE1O0NQVmlld0JvdW5kc0tleUQ7Szs2O0NQJFVJRGQ7MjszM0U7SzsxODtDUFZpZXdTdXBlcnZpZXdLZXlEO0s7NjtDUCRVSURkOzI7MTdFO0s7MjI7Q1BWaWV3QXV0b3Jlc2l6aW5nTWFza0Q7Szs2O0NQJFVJRGQ7MjszNEU7SzsxOTtDUFZpZXdUaGVtZUNsYXNzS2V5RDtLOzY7Q1AkVUlEZDsyOzM1RTtLOzE5O0NQVmlld1RoZW1lU3RhdGVLZXlEO0s7NjtDUCRVSURkOzI7MzBFO0s7NjskYWZvbnREO0s7NjtDUCRVSURkOzI7MzdFO0s7MTc7JGFsaW5lLWJyZWFrLW1vZGVEO0s7NjtDUCRVSURkOzI7MzhFO0s7MTE7JGFhbGlnbm1lbnREO0s7NjtDUCRVSURkOzI7MzhFO0s7MzU7Q1BDb250cm9sU2VuZHNBY3Rpb25PbkVuZEVkaXRpbmdLZXlEO0s7NjtDUCRVSURkOzI7MzlFO0s7MTc7Q1BDb250cm9sVmFsdWVLZXlEO0s7NjtDUCRVSURkOzI7NDBFO0s7MjQ7Q1BDb250cm9sU2VuZEFjdGlvbk9uS2V5RDtLOzY7Q1AkVUlEZDsyOzQxRTtLOzI0O0NQVGV4dEZpZWxkSXNFZGl0YWJsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0MkU7SzsyNjtDUFRleHRGaWVsZElzU2VsZWN0YWJsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0MkU7SzsyOTtDUFRleHRGaWVsZERyYXdzQmFja2dyb3VuZEtleUQ7Szs2O0NQJFVJRGQ7Mjs0MkU7SzsyOTtDUFRleHRGaWVsZEJhY2tncm91bmRDb2xvcktleUQ7Szs2O0NQJFVJRGQ7Mjs0NEU7SzsyNztDUFRleHRGaWVsZExpbmVCcmVha01vZGVLZXlEO0s7NjtDUCRVSURkOzI7MzhFO0s7MjM7Q1BUZXh0RmllbGRBbGlnbm1lbnRLZXlEO0s7NjtDUCRVSURkOzI7MzhFO0s7MzE7Q1BUZXh0RmllbGRQbGFjZWhvbGRlclN0cmluZ0tleUQ7Szs2O0NQJFVJRGQ7MTswRTtFO0Q7SzsxMDskY2xhc3NuYW1lUzs4O0NQU2xpZGVySzs4OyRjbGFzc2VzQTtTOzg7Q1BTbGlkZXJTOzk7Q1BDb250cm9sUzs2O0NQVmlld1M7MTE7Q1BSZXNwb25kZXJTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzIwRTtLOzI3O0NQUmVzcG9uZGVyTmV4dFJlc3BvbmRlcktleUQ7Szs2O0NQJFVJRGQ7MjsxN0U7SzsxODtDUFJlc3BvbmRlck1lbnVLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzsxMjtDUFZpZXdUYWdLZXlEO0s7NjtDUCRVSURkOzI7MjZFO0s7MTQ7Q1BWaWV3RnJhbWVLZXlEO0s7NjtDUCRVSURkOzI7NDVFO0s7MTU7Q1BWaWV3Qm91bmRzS2V5RDtLOzY7Q1AkVUlEZDsyOzQ2RTtLOzE4O0NQVmlld1N1cGVydmlld0tleUQ7Szs2O0NQJFVJRGQ7MjsxN0U7SzsyMjtDUFZpZXdBdXRvcmVzaXppbmdNYXNrRDtLOzY7Q1AkVUlEZDsyOzQ3RTtLOzE5O0NQVmlld1RoZW1lQ2xhc3NLZXlEO0s7NjtDUCRVSURkOzI7NDhFO0s7MTk7Q1BWaWV3VGhlbWVTdGF0ZUtleUQ7Szs2O0NQJFVJRGQ7MjszMEU7SzsxNzskYWxpbmUtYnJlYWstbW9kZUQ7Szs2O0NQJFVJRGQ7MjsyNkU7SzsxMTskYWFsaWdubWVudEQ7Szs2O0NQJFVJRGQ7MjsyNkU7SzsxNztDUENvbnRyb2xWYWx1ZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0OUU7SzsyNDtDUENvbnRyb2xTZW5kQWN0aW9uT25LZXlEO0s7NjtDUCRVSURkOzI7MzhFO0s7MTk7Q1BTbGlkZXJNaW5WYWx1ZUtleUQ7Szs2O0NQJFVJRGQ7MjsyNkU7SzsxOTtDUFNsaWRlck1heFZhbHVlS2V5RDtLOzY7Q1AkVUlEZDsyOzUwRTtLOzIzO0NQU2xpZGVyQWx0SW5jclZhbHVlS2V5RDtLOzY7Q1AkVUlEZDsyOzI2RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxMEU7SzsyNztfQ1BDaWJDdXN0b21PYmplY3RDbGFzc05hbWVEO0s7NjtDUCRVSURkOzI7NTFFO0U7Uzs4O0NQT2JqZWN0RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RTtFO1M7OTt0ZXh0RmllbGRkOzE7MFM7MTk7e3swLCAwfSwgezM0NCwgNDd9fUQ7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsxOUU7RDtLOzY7Q1AkVUlEZDsyOzIxRTtFO0U7ZDsyOzE4Uzs2O25vcm1hbFM7NjtzZWNvbmRTOzIwO3t7MCwgMTZ9LCB7MTYzLCAxN319UzsxOTt7ezAsIDB9LCB7MTYzLCAxN319ZDsyOzQ2Uzs5O3RleHRmaWVsZEQ7SzsxMDskY2xhc3NuYW1lUzs2O0NQRm9udEs7ODskY2xhc3Nlc0E7Uzs2O0NQRm9udFM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MzZFO0s7MTM7Q1BGb250TmFtZUtleUQ7Szs2O0NQJFVJRGQ7Mjs1MkU7SzsxMztDUEZvbnRTaXplS2V5RDtLOzY7Q1AkVUlEZDsyOzUzRTtLOzE1O0NQRm9udElzQm9sZEtleUQ7Szs2O0NQJFVJRGQ7Mjs0MkU7SzsxNztDUEZvbnRJc0l0YWxpY0tleUQ7Szs2O0NQJFVJRGQ7Mjs0MkU7SzsxNztDUEZvbnRJc1N5c3RlbUtleUQ7Szs2O0NQJFVJRGQ7MjszOUU7RTtkOzE7NFQ7UzsxNTtUYWJsZSBWaWV3IENlbGxkOzQ7MzA3MkY7RDtLOzEwOyRjbGFzc25hbWVTOzc7Q1BDb2xvcks7ODskY2xhc3Nlc0E7Uzs3O0NQQ29sb3JTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzQzRTtLOzIwO0NQQ29sb3JDb21wb25lbnRzS2V5RDtLOzY7Q1AkVUlEZDsyOzU0RTtFO1M7MjI7e3sxNzEsIDE0fSwgezE1OCwgMjF9fVM7MTk7e3swLCAwfSwgezE1OCwgMjF9fWQ7Mjs0M1M7NjtzbGlkZXJkOzI7NTBkOzM7MTAwUzsxMztDUEFwcGxpY2F0aW9uUzsyODtfQ1BGb250U3lzdGVtRmFjZVBsYWNlaG9sZGVyZDsyOy0xRDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RDtLOzY7Q1AkVUlEZDsyOzU1RTtEO0s7NjtDUCRVSURkOzI7NTVFO0Q7Szs2O0NQJFVJRGQ7Mjs1NUU7RDtLOzY7Q1AkVUlEZDsyOzU2RTtFO0U7ZjsxODswLjY4NjI3NDUwOTgwMzkyMTZkOzE7MUU7Szs5OyRhcmNoaXZlclM7MTU7Q1BLZXllZEFyY2hpdmVySzs4OyR2ZXJzaW9uUzs2OzEwMDAwMEU7S;8500;MjgwTlBMSVNUOzEuMDtEO0s7NDskdG9wRDtLOzE4O0NQQ2liT2JqZWN0RGF0YUtleUQ7Szs2O0NQJFVJRGQ7MTsyRTtFO0s7ODskb2JqZWN0c0E7Uzs1OyRudWxsRDtLOzEwOyRjbGFzc25hbWVTOzE2O19DUENpYk9iamVjdERhdGFLOzg7JGNsYXNzZXNBO1M7MTY7X0NQQ2liT2JqZWN0RGF0YVM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7MUU7SzsyODtfQ1BDaWJPYmplY3REYXRhTmFtZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YU5hbWVzVmFsdWVzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzI7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNWYWx1ZXNLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzszMDtfQ1BDaWJPYmplY3REYXRhQ29ubmVjdGlvbnNLZXlEO0s7NjtDUCRVSURkOzE7NEU7SzsyODtfQ1BDaWJPYmplY3REYXRhRnJhbWV3b3JrS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MjY7X0NQQ2liT2JqZWN0RGF0YU5leHRPaWRLZXlEO0s7NjtDUCRVSURkOzE7NUU7SzszMDtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c0tleXNLZXlEO0s7NjtDUCRVSURkOzE7NkU7SzszMjtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c1ZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs3RTtLOzI2O19DUENpYk9iamVjdERhdGFPaWRLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzhFO0s7Mjg7X0NQQ2liT2JqZWN0RGF0YU9pZFZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs5RTtLOzI4O19DUENpYk9iamVjdERhdGFGaWxlT3duZXJLZXlEO0s7NjtDUCRVSURkOzI7MTFFO0s7MzM7X0NQQ2liT2JqZWN0RGF0YVZpc2libGVXaW5kb3dzS2V5RDtLOzY7Q1AkVUlEZDsyOzEzRTtFO0Q7SzsxMDskY2xhc3NuYW1lUzs3O0NQQXJyYXlLOzg7JGNsYXNzZXNBO1M7NztDUEFycmF5Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsxNUU7RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtEO0s7NjtDUCRVSURkOzI7MTdFO0Q7Szs2O0NQJFVJRGQ7MjsxOUU7RDtLOzY7Q1AkVUlEZDsxOzBFO0Q7Szs2O0NQJFVJRGQ7MjsyMUU7RDtLOzY7Q1AkVUlEZDsxOzBFO0Q7Szs2O0NQJFVJRGQ7MjsyMkU7RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsxMUU7RDtLOzY7Q1AkVUlEZDsyOzE3RTtEO0s7NjtDUCRVSURkOzI7MTlFO0Q7Szs2O0NQJFVJRGQ7MjsxN0U7RDtLOzY7Q1AkVUlEZDsyOzIxRTtEO0s7NjtDUCRVSURkOzI7MTFFO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RTtFO0Q7SzsxMDskY2xhc3NuYW1lUzsxODtfQ1BDaWJDdXN0b21PYmplY3RLOzg7JGNsYXNzZXNBO1M7MTg7X0NQQ2liQ3VzdG9tT2JqZWN0Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxMEU7SzsyNztfQ1BDaWJDdXN0b21PYmplY3RDbGFzc05hbWVEO0s7NjtDUCRVSURkOzI7MjNFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzU7Q1BTZXRLOzg7JGNsYXNzZXNBO1M7NTtDUFNldFM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MTJFO0s7MTU7Q1BTZXRPYmplY3RzS2V5RDtLOzY7Q1AkVUlEZDsyOzI0RTtFO0Q7SzsxMDskY2xhc3NuYW1lUzsyMDtDUENpYk91dGxldENvbm5lY3Rvcks7ODskY2xhc3Nlc0E7UzsyMDtDUENpYk91dGxldENvbm5lY3RvclM7MTQ7Q1BDaWJDb25uZWN0b3JTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzE0RTtLOzI0O19DUENpYkNvbm5lY3RvclNvdXJjZUtleUQ7Szs2O0NQJFVJRGQ7MjsxN0U7SzsyOTtfQ1BDaWJDb25uZWN0b3JEZXN0aW5hdGlvbktleUQ7Szs2O0NQJFVJRGQ7MjsyMUU7SzsyMztfQ1BDaWJDb25uZWN0b3JMYWJlbEtleUQ7Szs2O0NQJFVJRGQ7MjsyNUU7RTtEO0s7MTA7JGNsYXNzbmFtZVM7MTU7Q1BUYWJsZUNlbGxWaWV3Szs4OyRjbGFzc2VzQTtTOzE1O0NQVGFibGVDZWxsVmlld1M7NjtDUFZpZXdTOzExO0NQUmVzcG9uZGVyUzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxNkU7SzsxODtDUFJlc3BvbmRlck1lbnVLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzsxMjtDUFZpZXdUYWdLZXlEO0s7NjtDUCRVSURkOzI7MjZFO0s7MTQ7Q1BWaWV3RnJhbWVLZXlEO0s7NjtDUCRVSURkOzI7MjdFO0s7MTU7Q1BWaWV3Qm91bmRzS2V5RDtLOzY7Q1AkVUlEZDsyOzI3RTtLOzE3O0NQVmlld1N1YnZpZXdzS2V5RDtLOzY7Q1AkVUlEZDsyOzI4RTtLOzIyO0NQVmlld0F1dG9yZXNpemluZ01hc2tEO0s7NjtDUCRVSURkOzI7MjlFO0s7MTk7Q1BWaWV3VGhlbWVDbGFzc0tleUQ7Szs2O0NQJFVJRGQ7MTswRTtLOzE5O0NQVmlld1RoZW1lU3RhdGVLZXlEO0s7NjtDUCRVSURkOzI7MzBFO0s7MjA7Q1BSZXVzZUlkZW50aWZpZXJLZXlEO0s7NjtDUCRVSURkOzI7MzFFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzEwO0NQQ2hlY2tCb3hLOzg7JGNsYXNzZXNBO1M7MTA7Q1BDaGVja0JveFM7ODtDUEJ1dHRvblM7OTtDUENvbnRyb2xTOzY7Q1BWaWV3UzsxMTtDUFJlc3BvbmRlclM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MThFO0s7Mjc7Q1BSZXNwb25kZXJOZXh0UmVzcG9uZGVyS2V5RDtLOzY7Q1AkVUlEZDsyOzE3RTtLOzE4O0NQUmVzcG9uZGVyTWVudUtleUQ7Szs2O0NQJFVJRGQ7MTswRTtLOzEyO0NQVmlld1RhZ0tleUQ7Szs2O0NQJFVJRGQ7MjsyNkU7SzsxNDtDUFZpZXdGcmFtZUtleUQ7Szs2O0NQJFVJRGQ7MjszMkU7SzsxNTtDUFZpZXdCb3VuZHNLZXlEO0s7NjtDUCRVSURkOzI7MzNFO0s7MTg7Q1BWaWV3U3VwZXJ2aWV3S2V5RDtLOzY7Q1AkVUlEZDsyOzE3RTtLOzIyO0NQVmlld0F1dG9yZXNpemluZ01hc2tEO0s7NjtDUCRVSURkOzI7MzRFO0s7MTk7Q1BWaWV3VGhlbWVDbGFzc0tleUQ7Szs2O0NQJFVJRGQ7MjszNUU7SzsxOTtDUFZpZXdUaGVtZVN0YXRlS2V5RDtLOzY7Q1AkVUlEZDsyOzM2RTtLOzE2OyRhaW1hZ2UtcG9zaXRpb25EO0s7NjtDUCRVSURkOzI7MzdFO0s7NjskYWZvbnREO0s7NjtDUCRVSURkOzI7MzlFO0s7MTc7JGFsaW5lLWJyZWFrLW1vZGVEO0s7NjtDUCRVSURkOzI7MjZFO0s7MTE7JGFhbGlnbm1lbnREO0s7NjtDUCRVSURkOzI7MjZFO0s7MTc7Q1BDb250cm9sVmFsdWVLZXlEO0s7NjtDUCRVSURkOzI7MzdFO0s7MjQ7Q1BDb250cm9sU2VuZEFjdGlvbk9uS2V5RDtLOzY7Q1AkVUlEZDsyOzQwRTtLOzE2O0NQQnV0dG9uVGl0bGVLZXlEO0s7NjtDUCRVSURkOzI7NDFFO0s7MjU7Q1BCdXR0b25BbHRlcm5hdGVUaXRsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0MkU7SzsyNztDUEJ1dHRvbkFsbG93c01peGVkU3RhdGVLZXlEO0s7NjtDUCRVSURkOzI7NDNFO0s7MjM7Q1BCdXR0b25IaWdobGlnaHRzQnlLZXlEO0s7NjtDUCRVSURkOzI7MzdFO0s7MjM7Q1BCdXR0b25TaG93c1N0YXRlQnlLZXlEO0s7NjtDUCRVSURkOzI7MzdFO0s7MzI7Q1BCdXR0b25JbWFnZURpbXNXaGVuRGlzYWJsZWRLZXlEO0s7NjtDUCRVSURkOzI7NDRFO0s7MjQ7Q1BCdXR0b25JbWFnZVBvc2l0aW9uS2V5RDtLOzY7Q1AkVUlEZDsyOzM3RTtLOzI4O0NQQnV0dG9uS2V5RXF1aXZhbGVudE1hc2tLZXlEO0s7NjtDUCRVSURkOzI7MjZFO0s7MjQ7Q1BCdXR0b25QZXJpb2RpY0RlbGF5S2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7Mjc7Q1BCdXR0b25QZXJpb2RpY0ludGVydmFsS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzExO0NQVGV4dEZpZWxkSzs4OyRjbGFzc2VzQTtTOzExO0NQVGV4dEZpZWxkUzs5O0NQQ29udHJvbFM7NjtDUFZpZXdTOzExO0NQUmVzcG9uZGVyUzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsyMEU7SzsyNztDUFJlc3BvbmRlck5leHRSZXNwb25kZXJLZXlEO0s7NjtDUCRVSURkOzI7MTdFO0s7MTg7Q1BSZXNwb25kZXJNZW51S2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MTI7Q1BWaWV3VGFnS2V5RDtLOzY7Q1AkVUlEZDsyOzI2RTtLOzE0O0NQVmlld0ZyYW1lS2V5RDtLOzY7Q1AkVUlEZDsyOzQ1RTtLOzE1O0NQVmlld0JvdW5kc0tleUQ7Szs2O0NQJFVJRGQ7Mjs0NkU7SzsxODtDUFZpZXdTdXBlcnZpZXdLZXlEO0s7NjtDUCRVSURkOzI7MTdFO0s7MjI7Q1BWaWV3QXV0b3Jlc2l6aW5nTWFza0Q7Szs2O0NQJFVJRGQ7Mjs0N0U7SzsxOTtDUFZpZXdUaGVtZUNsYXNzS2V5RDtLOzY7Q1AkVUlEZDsyOzQ4RTtLOzE5O0NQVmlld1RoZW1lU3RhdGVLZXlEO0s7NjtDUCRVSURkOzI7MzBFO0s7NjskYWZvbnREO0s7NjtDUCRVSURkOzI7MzlFO0s7MTc7JGFsaW5lLWJyZWFrLW1vZGVEO0s7NjtDUCRVSURkOzI7NDBFO0s7MTE7JGFhbGlnbm1lbnREO0s7NjtDUCRVSURkOzI7NDBFO0s7MzU7Q1BDb250cm9sU2VuZHNBY3Rpb25PbkVuZEVkaXRpbmdLZXlEO0s7NjtDUCRVSURkOzI7NDRFO0s7MTc7Q1BDb250cm9sVmFsdWVLZXlEO0s7NjtDUCRVSURkOzI7NDlFO0s7MjQ7Q1BDb250cm9sU2VuZEFjdGlvbk9uS2V5RDtLOzY7Q1AkVUlEZDsyOzUwRTtLOzI0O0NQVGV4dEZpZWxkSXNFZGl0YWJsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0M0U7SzsyNjtDUFRleHRGaWVsZElzU2VsZWN0YWJsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0M0U7SzsyOTtDUFRleHRGaWVsZERyYXdzQmFja2dyb3VuZEtleUQ7Szs2O0NQJFVJRGQ7Mjs0M0U7SzsyOTtDUFRleHRGaWVsZEJhY2tncm91bmRDb2xvcktleUQ7Szs2O0NQJFVJRGQ7Mjs1MkU7SzsyNztDUFRleHRGaWVsZExpbmVCcmVha01vZGVLZXlEO0s7NjtDUCRVSURkOzI7NDBFO0s7MjM7Q1BUZXh0RmllbGRBbGlnbm1lbnRLZXlEO0s7NjtDUCRVSURkOzI7NDBFO0s7MzE7Q1BUZXh0RmllbGRQbGFjZWhvbGRlclN0cmluZ0tleUQ7Szs2O0NQJFVJRGQ7MTswRTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxMEU7SzsyNztfQ1BDaWJDdXN0b21PYmplY3RDbGFzc05hbWVEO0s7NjtDUCRVSURkOzI7NTNFO0U7Uzs4O0NQT2JqZWN0RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RTtFO1M7OTt0ZXh0RmllbGRkOzE7MFM7MTk7e3swLCAwfSwgezI4MSwgMTd9fUQ7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsyMUU7RDtLOzY7Q1AkVUlEZDsyOzE5RTtFO0U7ZDsyOzE4Uzs2O25vcm1hbFM7NTtmaXJzdFM7MTk7e3sxLCAtMX0sIHsyMSwgMTh9fVM7MTg7e3swLCAwfSwgezIxLCAxOH19ZDsyOzQ0Uzs5O2NoZWNrLWJveFM7ODtzZWxlY3RlZGQ7MTsxRDtLOzEwOyRjbGFzc25hbWVTOzY7Q1BGb250Szs4OyRjbGFzc2VzQTtTOzY7Q1BGb250Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjszOEU7SzsxMztDUEZvbnROYW1lS2V5RDtLOzY7Q1AkVUlEZDsyOzU0RTtLOzEzO0NQRm9udFNpemVLZXlEO0s7NjtDUCRVSURkOzI7NTVFO0s7MTU7Q1BGb250SXNCb2xkS2V5RDtLOzY7Q1AkVUlEZDsyOzQzRTtLOzE3O0NQRm9udElzSXRhbGljS2V5RDtLOzY7Q1AkVUlEZDsyOzQzRTtLOzE3O0NQRm9udElzU3lzdGVtS2V5RDtLOzY7Q1AkVUlEZDsyOzQ0RTtFO2Q7MTs0Uzs1O0NoZWNrUzswO0Y7VDtTOzIwO3t7MjUsIDF9LCB7MjUwLCAxN319UzsxOTt7ezAsIDB9LCB7MjUwLCAxN319ZDsyOzQyUzs5O3RleHRmaWVsZFM7MTU7VGFibGUgVmlldyBDZWxsZDs0OzMwNzJEO0s7MTA7JGNsYXNzbmFtZVM7NztDUENvbG9ySzs4OyRjbGFzc2VzQTtTOzc7Q1BDb2xvclM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7NTFFO0s7MjA7Q1BDb2xvckNvbXBvbmVudHNLZXlEO0s7NjtDUCRVSURkOzI7NTZFO0U7UzsxMztDUEFwcGxpY2F0aW9uUzsyODtfQ1BGb250U3lzdGVtRmFjZVBsYWNlaG9sZGVyZDsyOy0xRDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RDtLOzY7Q1AkVUlEZDsyOzU3RTtEO0s7NjtDUCRVSURkOzI7NTdFO0Q7Szs2O0NQJFVJRGQ7Mjs1N0U7RDtLOzY7Q1AkVUlEZDsyOzM3RTtFO0U7ZjsxODswLjY4NjI3NDUwOTgwMzkyMTZFO0s7OTskYXJjaGl2ZXJTOzE1O0NQS2V5ZWRBcmNoaXZlcks7ODskdmVyc2lvblM7NjsxMDAwMDBFOw==S;9220;MjgwTlBMSVNUOzEuMDtEO0s7NDskdG9wRDtLOzE4O0NQQ2liT2JqZWN0RGF0YUtleUQ7Szs2O0NQJFVJRGQ7MTsyRTtFO0s7ODskb2JqZWN0c0E7Uzs1OyRudWxsRDtLOzEwOyRjbGFzc25hbWVTOzE2O19DUENpYk9iamVjdERhdGFLOzg7JGNsYXNzZXNBO1M7MTY7X0NQQ2liT2JqZWN0RGF0YVM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7MUU7SzsyODtfQ1BDaWJPYmplY3REYXRhTmFtZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YU5hbWVzVmFsdWVzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzI7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNWYWx1ZXNLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzszMDtfQ1BDaWJPYmplY3REYXRhQ29ubmVjdGlvbnNLZXlEO0s7NjtDUCRVSURkOzE7NEU7SzsyODtfQ1BDaWJPYmplY3REYXRhRnJhbWV3b3JrS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MjY7X0NQQ2liT2JqZWN0RGF0YU5leHRPaWRLZXlEO0s7NjtDUCRVSURkOzE7NUU7SzszMDtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c0tleXNLZXlEO0s7NjtDUCRVSURkOzE7NkU7SzszMjtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c1ZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs3RTtLOzI2O19DUENpYk9iamVjdERhdGFPaWRLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzhFO0s7Mjg7X0NQQ2liT2JqZWN0RGF0YU9pZFZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs5RTtLOzI4O19DUENpYk9iamVjdERhdGFGaWxlT3duZXJLZXlEO0s7NjtDUCRVSURkOzI7MTFFO0s7MzM7X0NQQ2liT2JqZWN0RGF0YVZpc2libGVXaW5kb3dzS2V5RDtLOzY7Q1AkVUlEZDsyOzEzRTtFO0Q7SzsxMDskY2xhc3NuYW1lUzs3O0NQQXJyYXlLOzg7JGNsYXNzZXNBO1M7NztDUEFycmF5Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsxNUU7RDtLOzY7Q1AkVUlEZDsyOzE3RTtFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsxOUU7RDtLOzY7Q1AkVUlEZDsyOzIxRTtEO0s7NjtDUCRVSURkOzE7MEU7RDtLOzY7Q1AkVUlEZDsyOzIzRTtEO0s7NjtDUCRVSURkOzE7MEU7RDtLOzY7Q1AkVUlEZDsyOzI0RTtFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RDtLOzY7Q1AkVUlEZDsyOzExRTtEO0s7NjtDUCRVSURkOzI7MTlFO0Q7Szs2O0NQJFVJRGQ7MjsyMUU7RDtLOzY7Q1AkVUlEZDsyOzE5RTtEO0s7NjtDUCRVSURkOzI7MjNFO0Q7Szs2O0NQJFVJRGQ7MjsxMUU7RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzE4O19DUENpYkN1c3RvbU9iamVjdEs7ODskY2xhc3Nlc0E7UzsxODtfQ1BDaWJDdXN0b21PYmplY3RTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzEwRTtLOzI3O19DUENpYkN1c3RvbU9iamVjdENsYXNzTmFtZUQ7Szs2O0NQJFVJRGQ7MjsyNUU7RTtEO0s7MTA7JGNsYXNzbmFtZVM7NTtDUFNldEs7ODskY2xhc3Nlc0E7Uzs1O0NQU2V0Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxMkU7SzsxNTtDUFNldE9iamVjdHNLZXlEO0s7NjtDUCRVSURkOzI7MjZFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzIwO0NQQ2liT3V0bGV0Q29ubmVjdG9ySzs4OyRjbGFzc2VzQTtTOzIwO0NQQ2liT3V0bGV0Q29ubmVjdG9yUzsxNDtDUENpYkNvbm5lY3RvclM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MTRFO0s7MjQ7X0NQQ2liQ29ubmVjdG9yU291cmNlS2V5RDtLOzY7Q1AkVUlEZDsyOzE5RTtLOzI5O19DUENpYkNvbm5lY3RvckRlc3RpbmF0aW9uS2V5RDtLOzY7Q1AkVUlEZDsyOzIzRTtLOzIzO19DUENpYkNvbm5lY3RvckxhYmVsS2V5RDtLOzY7Q1AkVUlEZDsyOzI3RTtFO0Q7SzsxMDskY2xhc3NuYW1lUzsyMTtDUENpYkNvbnRyb2xDb25uZWN0b3JLOzg7JGNsYXNzZXNBO1M7MjE7Q1BDaWJDb250cm9sQ29ubmVjdG9yUzsxNDtDUENpYkNvbm5lY3RvclM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MTZFO0s7MjQ7X0NQQ2liQ29ubmVjdG9yU291cmNlS2V5RDtLOzY7Q1AkVUlEZDsyOzIxRTtLOzI5O19DUENpYkNvbm5lY3RvckRlc3RpbmF0aW9uS2V5RDtLOzY7Q1AkVUlEZDsyOzExRTtLOzIzO19DUENpYkNvbm5lY3RvckxhYmVsS2V5RDtLOzY7Q1AkVUlEZDsyOzI4RTtFO0Q7SzsxMDskY2xhc3NuYW1lUzsxNTtDUFRhYmxlQ2VsbFZpZXdLOzg7JGNsYXNzZXNBO1M7MTU7Q1BUYWJsZUNlbGxWaWV3Uzs2O0NQVmlld1M7MTE7Q1BSZXNwb25kZXJTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzE4RTtLOzE4O0NQUmVzcG9uZGVyTWVudUtleUQ7Szs2O0NQJFVJRGQ7MTswRTtLOzEyO0NQVmlld1RhZ0tleUQ7Szs2O0NQJFVJRGQ7MjsyOUU7SzsxNDtDUFZpZXdGcmFtZUtleUQ7Szs2O0NQJFVJRGQ7MjszMEU7SzsxNTtDUFZpZXdCb3VuZHNLZXlEO0s7NjtDUCRVSURkOzI7MzBFO0s7MTc7Q1BWaWV3U3Vidmlld3NLZXlEO0s7NjtDUCRVSURkOzI7MzFFO0s7MjI7Q1BWaWV3QXV0b3Jlc2l6aW5nTWFza0Q7Szs2O0NQJFVJRGQ7MjszMkU7SzsxOTtDUFZpZXdUaGVtZUNsYXNzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MTk7Q1BWaWV3VGhlbWVTdGF0ZUtleUQ7Szs2O0NQJFVJRGQ7MjszM0U7SzsyMDtDUFJldXNlSWRlbnRpZmllcktleUQ7Szs2O0NQJFVJRGQ7MjszNEU7RTtEO0s7MTA7JGNsYXNzbmFtZVM7ODtDUEJ1dHRvbks7ODskY2xhc3Nlc0E7Uzs4O0NQQnV0dG9uUzs5O0NQQ29udHJvbFM7NjtDUFZpZXdTOzExO0NQUmVzcG9uZGVyUzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsyMEU7SzsyNztDUFJlc3BvbmRlck5leHRSZXNwb25kZXJLZXlEO0s7NjtDUCRVSURkOzI7MTlFO0s7MTg7Q1BSZXNwb25kZXJNZW51S2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MTI7Q1BWaWV3VGFnS2V5RDtLOzY7Q1AkVUlEZDsyOzM1RTtLOzE0O0NQVmlld0ZyYW1lS2V5RDtLOzY7Q1AkVUlEZDsyOzM2RTtLOzE1O0NQVmlld0JvdW5kc0tleUQ7Szs2O0NQJFVJRGQ7MjszN0U7SzsxODtDUFZpZXdTdXBlcnZpZXdLZXlEO0s7NjtDUCRVSURkOzI7MTlFO0s7MjI7Q1BWaWV3QXV0b3Jlc2l6aW5nTWFza0Q7Szs2O0NQJFVJRGQ7MjszOEU7SzsxOTtDUFZpZXdUaGVtZUNsYXNzS2V5RDtLOzY7Q1AkVUlEZDsyOzM5RTtLOzE5O0NQVmlld1RoZW1lU3RhdGVLZXlEO0s7NjtDUCRVSURkOzI7NDBFO0s7NjskYWZvbnREO0s7NjtDUCRVSURkOzI7NDJFO0s7MTc7JGFsaW5lLWJyZWFrLW1vZGVEO0s7NjtDUCRVSURkOzI7MjlFO0s7MTE7JGFhbGlnbm1lbnREO0s7NjtDUCRVSURkOzI7NDNFO0s7MTc7Q1BDb250cm9sVmFsdWVLZXlEO0s7NjtDUCRVSURkOzI7MjlFO0s7MjQ7Q1BDb250cm9sU2VuZEFjdGlvbk9uS2V5RDtLOzY7Q1AkVUlEZDsyOzQ0RTtLOzE2O0NQQnV0dG9uVGl0bGVLZXlEO0s7NjtDUCRVSURkOzI7NDVFO0s7MjU7Q1BCdXR0b25BbHRlcm5hdGVUaXRsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0NkU7SzsyNztDUEJ1dHRvbkFsbG93c01peGVkU3RhdGVLZXlEO0s7NjtDUCRVSURkOzI7NDdFO0s7MjM7Q1BCdXR0b25IaWdobGlnaHRzQnlLZXlEO0s7NjtDUCRVSURkOzI7NDhFO0s7MjM7Q1BCdXR0b25TaG93c1N0YXRlQnlLZXlEO0s7NjtDUCRVSURkOzI7NDlFO0s7MzI7Q1BCdXR0b25JbWFnZURpbXNXaGVuRGlzYWJsZWRLZXlEO0s7NjtDUCRVSURkOzI7NTBFO0s7MjQ7Q1BCdXR0b25JbWFnZVBvc2l0aW9uS2V5RDtLOzY7Q1AkVUlEZDsyOzQzRTtLOzI4O0NQQnV0dG9uS2V5RXF1aXZhbGVudE1hc2tLZXlEO0s7NjtDUCRVSURkOzI7MjlFO0s7MjQ7Q1BCdXR0b25QZXJpb2RpY0RlbGF5S2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7Mjc7Q1BCdXR0b25QZXJpb2RpY0ludGVydmFsS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzExO0NQVGV4dEZpZWxkSzs4OyRjbGFzc2VzQTtTOzExO0NQVGV4dEZpZWxkUzs5O0NQQ29udHJvbFM7NjtDUFZpZXdTOzExO0NQUmVzcG9uZGVyUzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsyMkU7SzsyNztDUFJlc3BvbmRlck5leHRSZXNwb25kZXJLZXlEO0s7NjtDUCRVSURkOzI7MTlFO0s7MTg7Q1BSZXNwb25kZXJNZW51S2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MTI7Q1BWaWV3VGFnS2V5RDtLOzY7Q1AkVUlEZDsyOzI5RTtLOzE0O0NQVmlld0ZyYW1lS2V5RDtLOzY7Q1AkVUlEZDsyOzUxRTtLOzE1O0NQVmlld0JvdW5kc0tleUQ7Szs2O0NQJFVJRGQ7Mjs1MkU7SzsxODtDUFZpZXdTdXBlcnZpZXdLZXlEO0s7NjtDUCRVSURkOzI7MTlFO0s7MjI7Q1BWaWV3QXV0b3Jlc2l6aW5nTWFza0Q7Szs2O0NQJFVJRGQ7Mjs1M0U7SzsxOTtDUFZpZXdUaGVtZUNsYXNzS2V5RDtLOzY7Q1AkVUlEZDsyOzU0RTtLOzE5O0NQVmlld1RoZW1lU3RhdGVLZXlEO0s7NjtDUCRVSURkOzI7MzNFO0s7NjskYWZvbnREO0s7NjtDUCRVSURkOzI7NTVFO0s7MTc7JGFsaW5lLWJyZWFrLW1vZGVEO0s7NjtDUCRVSURkOzI7NDRFO0s7MTE7JGFhbGlnbm1lbnREO0s7NjtDUCRVSURkOzI7NDRFO0s7MzU7Q1BDb250cm9sU2VuZHNBY3Rpb25PbkVuZEVkaXRpbmdLZXlEO0s7NjtDUCRVSURkOzI7NTBFO0s7MTc7Q1BDb250cm9sVmFsdWVLZXlEO0s7NjtDUCRVSURkOzI7NTZFO0s7MjQ7Q1BDb250cm9sU2VuZEFjdGlvbk9uS2V5RDtLOzY7Q1AkVUlEZDsyOzU3RTtLOzI0O0NQVGV4dEZpZWxkSXNFZGl0YWJsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0N0U7SzsyNjtDUFRleHRGaWVsZElzU2VsZWN0YWJsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0N0U7SzsyOTtDUFRleHRGaWVsZERyYXdzQmFja2dyb3VuZEtleUQ7Szs2O0NQJFVJRGQ7Mjs0N0U7SzsyOTtDUFRleHRGaWVsZEJhY2tncm91bmRDb2xvcktleUQ7Szs2O0NQJFVJRGQ7Mjs1OUU7SzsyNztDUFRleHRGaWVsZExpbmVCcmVha01vZGVLZXlEO0s7NjtDUCRVSURkOzI7NDRFO0s7MjM7Q1BUZXh0RmllbGRBbGlnbm1lbnRLZXlEO0s7NjtDUCRVSURkOzI7NDRFO0s7MzE7Q1BUZXh0RmllbGRQbGFjZWhvbGRlclN0cmluZ0tleUQ7Szs2O0NQJFVJRGQ7MTswRTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxMEU7SzsyNztfQ1BDaWJDdXN0b21PYmplY3RDbGFzc05hbWVEO0s7NjtDUCRVSURkOzI7NjBFO0U7Uzs4O0NQT2JqZWN0RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RTtFO1M7OTt0ZXh0RmllbGRTOzc7ZXhwYW5kOmQ7MTswUzsxOTt7ezAsIDB9LCB7MjgxLCA0MX19RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RDtLOzY7Q1AkVUlEZDsyOzIzRTtEO0s7NjtDUCRVSURkOzI7MjFFO0U7RTtkOzI7MThTOzY7bm9ybWFsUzs5O2ZpcnN0Um9vdGQ7NDsxMDAwUzsyMTt7ezE0NiwgNn0sIHsxMjMsIDI1fX1TOzE5O3t7MCwgMH0sIHsxMjMsIDI1fX1kOzI7NDFTOzY7YnV0dG9uUzs4O2JvcmRlcmVkRDtLOzEwOyRjbGFzc25hbWVTOzY7Q1BGb250Szs4OyRjbGFzc2VzQTtTOzY7Q1BGb250Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7Mjs0MUU7SzsxMztDUEZvbnROYW1lS2V5RDtLOzY7Q1AkVUlEZDsyOzYxRTtLOzEzO0NQRm9udFNpemVLZXlEO0s7NjtDUCRVSURkOzI7NjJFO0s7MTU7Q1BGb250SXNCb2xkS2V5RDtLOzY7Q1AkVUlEZDsyOzUwRTtLOzE3O0NQRm9udElzSXRhbGljS2V5RDtLOzY7Q1AkVUlEZDsyOzQ3RTtLOzE3O0NQRm9udElzU3lzdGVtS2V5RDtLOzY7Q1AkVUlEZDsyOzUwRTtFO2Q7MTsyZDsxOzRTOzY7RXhwYW5kUzs4O0NvbGxhcHNlRjtkOzE7M2Q7MTsxVDtTOzIwO3t7MCwgMTN9LCB7MTcwLCAxN319UzsxOTt7ezAsIDB9LCB7MTcwLCAxN319ZDsyOzQ2Uzs5O3RleHRmaWVsZEQ7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7Mjs0MUU7SzsxMztDUEZvbnROYW1lS2V5RDtLOzY7Q1AkVUlEZDsyOzYxRTtLOzEzO0NQRm9udFNpemVLZXlEO0s7NjtDUCRVSURkOzI7NjJFO0s7MTU7Q1BGb250SXNCb2xkS2V5RDtLOzY7Q1AkVUlEZDsyOzQ3RTtLOzE3O0NQRm9udElzSXRhbGljS2V5RDtLOzY7Q1AkVUlEZDsyOzQ3RTtLOzE3O0NQRm9udElzU3lzdGVtS2V5RDtLOzY7Q1AkVUlEZDsyOzUwRTtFO1M7MTU7VGFibGUgVmlldyBDZWxsZDs0OzMwNzJEO0s7MTA7JGNsYXNzbmFtZVM7NztDUENvbG9ySzs4OyRjbGFzc2VzQTtTOzc7Q1BDb2xvclM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7NThFO0s7MjA7Q1BDb2xvckNvbXBvbmVudHNLZXlEO0s7NjtDUCRVSURkOzI7NjNFO0U7UzsxMztDUEFwcGxpY2F0aW9uUzsyODtfQ1BGb250U3lzdGVtRmFjZVBsYWNlaG9sZGVyZDsyOy0xRDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RDtLOzY7Q1AkVUlEZDsyOzY0RTtEO0s7NjtDUCRVSURkOzI7NjRFO0Q7Szs2O0NQJFVJRGQ7Mjs2NEU7RDtLOzY7Q1AkVUlEZDsyOzQ5RTtFO0U7ZjsxODswLjY4NjI3NDUwOTgwMzkyMTZFO0s7OTskYXJjaGl2ZXJTOzE1O0NQS2V5ZWRBcmNoaXZlcks7ODskdmVyc2lvblM7NjsxMDAwMDBFOw==D;K;10;$classnameS;19;_CPImageAndTextViewK;8;$classesA;S;19;_CPImageAndTextViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;216E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;107E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;186E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;186E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;107E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;113E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;E;S;13;Lucida Granded;2;11S;4;fontD;K;6;$classD;K;6;CP$UIDd;3;100E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;226E;K;6;normalD;K;6;CP$UIDd;3;227E;E;E;S;39;{"top":0,"right":5,"bottom":0,"left":5}f;18;0.6862745098039216D;K;6;$classD;K;6;CP$UIDd;3;216E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;149E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;186E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;186E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;149E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;113E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;75E;E;D;K;6;$classD;K;6;CP$UIDd;3;100E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;226E;K;6;normalD;K;6;CP$UIDd;3;227E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;119E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;228E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;229E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;85E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;96E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;2;96E;E;D;K;6;$classD;K;6;CP$UIDd;3;119E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;205E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;229E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;96E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;96E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;2;85E;E;S;17;Arial, sans-serifd;2;12E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Tests/Manual/CPOutlineViewViewBasedCibTest/Resources/MainMenu.xib b/Tests/Manual/CPOutlineViewViewBasedCibTest/Resources/MainMenu.xib new file mode 100644 index 000000000..bf3002643 --- /dev/null +++ b/Tests/Manual/CPOutlineViewViewBasedCibTest/Resources/MainMenu.xib @@ -0,0 +1,960 @@ + + + + 1050 + 11E53 + 2809 + 1138.47 + 569.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 2809 + + + YES + NSButton + NSButtonCell + NSCustomObject + NSOutlineView + NSScrollView + NSScroller + NSSlider + NSSliderCell + NSTableCellView + NSTableColumn + NSTableHeaderView + NSTextField + NSTextFieldCell + NSView + NSWindowTemplate + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + YES + + NSApplication + + + FirstResponder + + + NSApplication + + + 7 + 2 + {{335, 390}, {673, 430}} + 1946157056 + Window + NSWindow + + + + + 256 + + YES + + + 268 + + YES + + + 2304 + + YES + + + 256 + {631, 372} + + + + _NS:13 + YES + + + 256 + {631, 17} + + + + _NS:16 + + + + + -2147483392 + {{224, 0}, {16, 17}} + + + + _NS:18 + + + YES + + first + 281.29296875 + 16 + 1000 + + 75497536 + 2048 + + + LucidaGrande + 11 + 3100 + + + 3 + MC4zMzMzMzI5ODU2AA + + + 6 + System + headerTextColor + + 3 + MAA + + + + + 337745472 + 2048 + Text Cell + + LucidaGrande + 13 + 1044 + + + + 6 + System + controlBackgroundColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + + + 3 + YES + YES + + + + second + 344 + 40 + 1000 + + 75544128 + 2048 + + + + + + + 337688128 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 3 + 2 + + 3 + MQA + + + 6 + System + gridColor + + 3 + MC41AA + + + 47 + -767557632 + + + 4 + 15 + 0 + YES + 0 + 1 + NO + + + {{1, 17}, {631, 372}} + + + + _NS:11 + + + 4 + + + + -2147483392 + {{224, 17}, {15, 102}} + + + + _NS:58 + + _doScroller: + 0.95956873315363878 + + + + -2147483392 + {{1, 374}, {631, 15}} + + + + _NS:60 + 1 + + _doScroller: + 0.99841772151898733 + + + + 2304 + + YES + + + {{1, 0}, {631, 17}} + + + + _NS:15 + + + 4 + + + + {{20, 20}, {633, 390}} + + + + _NS:9 + 133682 + + + + + + QSAAAEEgAABCRAAAQkQAAA + + + {673, 430} + + + + + {{0, 0}, {1680, 1028}} + {10000000000000, 10000000000000} + YES + + + AppController + + + + + YES + + + delegate + + + + 451 + + + + theWindow + + + + 482 + + + + outlineView + + + + 486 + + + + expand: + + + + 297 + {{142, 4}, {135, 32}} + + + _NS:9 + 1000 + YES + + 67108864 + 134217728 + Expand + + _NS:9 + + -930988032 + 129 + Collapse + + 200 + 25 + + + + 505 + + + + dataSource + + + + 484 + + + + delegate + + + + 485 + + + + textField + + + 274 + + YES + + + 302 + {{0, 15}, {169, 17}} + + + {250, 750} + YES + + 67239488 + 272631808 + Table View Cell + + + + 6 + System + controlColor + + + + + + + + 299 + {{171, 12}, {158, 21}} + + + _NS:9 + YES + + -2080374784 + 0 + + _NS:9 + + 100 + 0.0 + 50 + 0.0 + 0 + 1 + NO + NO + + + + {{285, 1}, {344, 47}} + + + + + 476 + + + + textField + + + 274 + + YES + + + 302 + {{0, 12}, {176, 17}} + + + _NS:20 + {250, 750} + YES + + 67108928 + 272631808 + Table View Cell + + _NS:20 + + + + + + + + {{1, 1}, {281, 41}} + + _NS:9 + + + + 493 + + + + textField + + + 274 + + YES + + + 298 + {{25, 0}, {256, 17}} + + + _NS:20 + {250, 750} + YES + + 67108928 + 272631808 + Table View Cell + + _NS:20 + + + + + + + + 300 + {{1, 0}, {21, 18}} + + + _NS:9 + YES + + -2080374784 + 0 + Check + + _NS:9 + + 1215582464 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + + + {{1, 44}, {281, 17}} + + _NS:9 + + + + 504 + + + + + YES + + 0 + + YES + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 371 + + + YES + + + + + + 372 + + + YES + + + + + + 450 + + + + + 460 + + + YES + + + + + + + + + 461 + + + YES + + + + + + + 462 + + + + + 463 + + + + + 464 + + + + + 465 + + + YES + + + + + + + + 466 + + + YES + + + + + + + 467 + + + + + 468 + + + + + 473 + + + YES + + + + + + + 474 + + + YES + + + + + + 475 + + + + + 487 + + + YES + + + + + + + 489 + + + YES + + + + + + 490 + + + + + 494 + + + YES + + + + + + 495 + + + + + 496 + + + YES + + + + + + 497 + + + + + 498 + + + YES + + + + + + + 500 + + + YES + + + + + + 501 + + + + + 506 + + + YES + + + + + + 507 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 371.IBPluginDependency + 371.IBWindowTemplateEditedContentRect + 371.NSWindowTemplate.visibleAtLaunch + 372.IBPluginDependency + 450.IBPluginDependency + 460.IBPluginDependency + 461.IBPluginDependency + 461.ibExternalAutomaticallyCalculatesRowSizeFromViewHeight + 462.IBPluginDependency + 463.IBPluginDependency + 464.IBPluginDependency + 465.IBPluginDependency + 465.isInViewBasedMode + 465.prototypeCellViews + 466.IBPluginDependency + 466.isInViewBasedMode + 466.prototypeCellViews + 467.IBPluginDependency + 468.IBPluginDependency + 473.IBPluginDependency + 473.userInterfaceItemIdentifier + 474.IBPluginDependency + 475.IBPluginDependency + 487.IBPluginDependency + 487.userInterfaceItemIdentifier + 489.IBPluginDependency + 490.IBPluginDependency + 494.IBPluginDependency + 495.IBPluginDependency + 496.IBPluginDependency + 497.IBPluginDependency + 498.IBPluginDependency + 498.userInterfaceItemIdentifier + 500.IBPluginDependency + 501.IBPluginDependency + 506.IBPluginDependency + 507.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{303, 221}, {480, 360}} + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + + + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + second + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + firstRoot + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + first + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + + + + YES + + + + + 507 + + + + YES + + AppController + NSObject + + expand: + id + + + expand: + + expand: + id + + + + YES + + YES + outlineView + theWindow + + + YES + NSOutlineView + NSWindow + + + + YES + + YES + outlineView + theWindow + + + YES + + outlineView + NSOutlineView + + + theWindow + NSWindow + + + + + IBProjectSource + ./Classes/AppController.h + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + 3 + + NSSwitch + {15, 15} + + + diff --git a/Tests/Manual/CPOutlineViewViewBasedCibTest/Resources/spinner.gif b/Tests/Manual/CPOutlineViewViewBasedCibTest/Resources/spinner.gif new file mode 100644 index 000000000..06dbc2bc2 Binary files /dev/null and b/Tests/Manual/CPOutlineViewViewBasedCibTest/Resources/spinner.gif differ diff --git a/Tests/Manual/CPOutlineViewViewBasedCibTest/index-debug.html b/Tests/Manual/CPOutlineViewViewBasedCibTest/index-debug.html new file mode 100644 index 000000000..a8557b32a --- /dev/null +++ b/Tests/Manual/CPOutlineViewViewBasedCibTest/index-debug.html @@ -0,0 +1,107 @@ + + + + + + + + + + + + + + + CPOutlineViewViewBasedCibTest + + + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/CPOutlineViewViewBasedCibTest/index.html b/Tests/Manual/CPOutlineViewViewBasedCibTest/index.html new file mode 100644 index 000000000..6a881aa50 --- /dev/null +++ b/Tests/Manual/CPOutlineViewViewBasedCibTest/index.html @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + CPOutlineViewViewBasedCibTest + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/CPOutlineViewViewBasedCibTest/main.j b/Tests/Manual/CPOutlineViewViewBasedCibTest/main.j new file mode 100644 index 000000000..a4636b7ab --- /dev/null +++ b/Tests/Manual/CPOutlineViewViewBasedCibTest/main.j @@ -0,0 +1,18 @@ +/* + * AppController.j + * CPOutlineViewViewBasedCibTest + * + * Created by You on April 11, 2012. + * Copyright 2012, Your Company All rights reserved. + */ + +@import +@import + +@import "AppController.j" + + +function main(args, namedArgs) +{ + CPApplicationMain(args, namedArgs); +} diff --git a/Tests/Manual/CPRuleEditorCibTest/RuleDelegate.j b/Tests/Manual/CPRuleEditorCibTest/RuleDelegate.j index a74e5813c..3573e9822 100644 --- a/Tests/Manual/CPRuleEditorCibTest/RuleDelegate.j +++ b/Tests/Manual/CPRuleEditorCibTest/RuleDelegate.j @@ -91,8 +91,8 @@ var CPRuleEditorCustomControlClass = @"CPRuleEditorCustomControlClass"; control = [[custom_class alloc] initWithFrame:CGRectMake(0, 0, 100, 18)]; [criterion setObject:control forKey:("control_"+row)]; } - - return control; + + return control; } return [criterion objectForKey:@"valeur"]; @@ -100,7 +100,7 @@ var CPRuleEditorCustomControlClass = @"CPRuleEditorCustomControlClass"; - (CPDictionary)ruleEditor:(CPRuleEditor)editor predicatePartsForCriterion:(id)criterion withDisplayValue:(id)value inRow:(int)row { - var predicatePartsForCriterion = [CPDictionary dictionary]; + var predicatePartsForCriterion = @{}; if ([editor rowTypeForRow:row] == CPRuleEditorRowTypeCompound) { diff --git a/Tests/Manual/CPSegmentedControlBindings/AppController.j b/Tests/Manual/CPSegmentedControlBindings/AppController.j new file mode 100644 index 000000000..f4f69cd19 --- /dev/null +++ b/Tests/Manual/CPSegmentedControlBindings/AppController.j @@ -0,0 +1,40 @@ +/* + * AppController.j + * CPSegmentedControlBindings + * + * Created by You on November 24, 2012. + * Copyright 2012, Your Company All rights reserved. + */ + +@import + +@implementation AppController : CPObject +{ + CPWindow theWindow; //this "outlet" is connected automatically by the Cib +} + +- (void)applicationDidFinishLaunching:(CPNotification)aNotification +{ +} + +- (void)awakeFromCib +{ + [theWindow setFullPlatformWindow:YES]; +} + +@end + +@implementation ArrayController : CPArrayController +{ +} + +- (id)newObject +{ + var randIndex = FLOOR(RAND()*3), + randLabel = ["un", "deux", "trois", nil][FLOOR(RAND()*4)], + randTag = FLOOR(RAND()*3); + + return [CPDictionary dictionaryWithObjectsAndKeys:randIndex, @"index", randLabel, @"label", randTag, @"tag"]; +} + +@end \ No newline at end of file diff --git a/Tests/Manual/CPSegmentedControlBindings/Info.plist b/Tests/Manual/CPSegmentedControlBindings/Info.plist new file mode 100644 index 000000000..ef5eb1810 --- /dev/null +++ b/Tests/Manual/CPSegmentedControlBindings/Info.plist @@ -0,0 +1,10 @@ + + + + + Main cib file base name + MainMenu.cib + CPBundleName + CPSegmentedControlBindings + + diff --git a/Tests/Manual/CPSegmentedControlBindings/Jakefile b/Tests/Manual/CPSegmentedControlBindings/Jakefile new file mode 100644 index 000000000..f6b3daf9b --- /dev/null +++ b/Tests/Manual/CPSegmentedControlBindings/Jakefile @@ -0,0 +1,94 @@ +/* + * Jakefile + * CPSegmentedControlBindings + * + * Created by You on November 24, 2012. + * Copyright 2012, Your Company All rights reserved. + */ + +var ENV = require("system").env, + FILE = require("file"), + JAKE = require("jake"), + task = JAKE.task, + FileList = JAKE.FileList, + app = require("cappuccino/jake").app, + configuration = ENV["CONFIG"] || ENV["CONFIGURATION"] || ENV["c"] || "Debug", + OS = require("os"); + +app ("CPSegmentedControlBindings", function(task) +{ + task.setBuildIntermediatesPath(FILE.join("Build", "CPSegmentedControlBindings.build", configuration)); + task.setBuildPath(FILE.join("Build", configuration)); + + task.setProductName("CPSegmentedControlBindings"); + task.setIdentifier("com.yourcompany.CPSegmentedControlBindings"); + task.setVersion("1.0"); + task.setAuthor("Your Company"); + task.setEmail("feedback @nospam@ yourcompany.com"); + task.setSummary("CPSegmentedControlBindings"); + task.setSources((new FileList("**/*.j")).exclude(FILE.join("Build", "**"))); + task.setResources(new FileList("Resources/**")); + task.setIndexFilePath("index.html"); + task.setInfoPlistPath("Info.plist"); + task.setNib2CibFlags("-R Resources/"); + + if (configuration === "Debug") + task.setCompilerFlags("-DDEBUG -g"); + else + task.setCompilerFlags("-O"); +}); + +task ("default", ["CPSegmentedControlBindings"], function() +{ + printResults(configuration); +}); + +task ("build", ["default"]); + +task ("debug", function() +{ + ENV["CONFIGURATION"] = "Debug"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("release", function() +{ + ENV["CONFIGURATION"] = "Release"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("run", ["debug"], function() +{ + OS.system(["open", FILE.join("Build", "Debug", "CPSegmentedControlBindings", "index.html")]); +}); + +task ("run-release", ["release"], function() +{ + OS.system(["open", FILE.join("Build", "Release", "CPSegmentedControlBindings", "index.html")]); +}); + +task ("deploy", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Deployment", "CPSegmentedControlBindings")); + OS.system(["press", "-f", FILE.join("Build", "Release", "CPSegmentedControlBindings"), FILE.join("Build", "Deployment", "CPSegmentedControlBindings")]); + printResults("Deployment") +}); + +task ("desktop", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Desktop", "CPSegmentedControlBindings")); + require("cappuccino/nativehost").buildNativeHost(FILE.join("Build", "Release", "CPSegmentedControlBindings"), FILE.join("Build", "Desktop", "CPSegmentedControlBindings", "CPSegmentedControlBindings.app")); + printResults("Desktop") +}); + +task ("run-desktop", ["desktop"], function() +{ + OS.system([FILE.join("Build", "Desktop", "CPSegmentedControlBindings", "CPSegmentedControlBindings.app", "Contents", "MacOS", "NativeHost"), "-i"]); +}); + +function printResults(configuration) +{ + print("----------------------------"); + print(configuration+" app built at path: "+FILE.join("Build", configuration, "CPSegmentedControlBindings")); + print("----------------------------"); +} diff --git a/Tests/Manual/CPSegmentedControlBindings/Resources/MainMenu.cib b/Tests/Manual/CPSegmentedControlBindings/Resources/MainMenu.cib new file mode 100644 index 000000000..7aa5cbadc --- /dev/null +++ b/Tests/Manual/CPSegmentedControlBindings/Resources/MainMenu.cib @@ -0,0 +1 @@ +280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;0E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;4E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;0E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;1;7E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;1;9E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;11E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;13E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;15E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;18E;D;K;6;CP$UIDd;2;19E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;168E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;170E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;172E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;175E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;178E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;183E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;187E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;189E;D;K;6;CP$UIDd;3;190E;D;K;6;CP$UIDd;3;191E;D;K;6;CP$UIDd;3;192E;D;K;6;CP$UIDd;3;193E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;195E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;199E;D;K;6;CP$UIDd;3;200E;D;K;6;CP$UIDd;3;201E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;205E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;207E;D;K;6;CP$UIDd;3;208E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;210E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;3;224E;D;K;6;CP$UIDd;3;226E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;227E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;228E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;230E;D;K;6;CP$UIDd;3;232E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;237E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;238E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;239E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;240E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;241E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;242E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;243E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;244E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;245E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;246E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;247E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;248E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;249E;D;K;6;CP$UIDd;3;251E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;170E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;172E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;183E;D;K;6;CP$UIDd;3;183E;D;K;6;CP$UIDd;3;183E;D;K;6;CP$UIDd;3;183E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;189E;D;K;6;CP$UIDd;3;189E;D;K;6;CP$UIDd;3;189E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;193E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;205E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;3;224E;D;K;6;CP$UIDd;3;226E;D;K;6;CP$UIDd;3;224E;D;K;6;CP$UIDd;3;227E;D;K;6;CP$UIDd;3;224E;D;K;6;CP$UIDd;3;228E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;237E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;238E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;239E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;240E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;241E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;242E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;243E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;244E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;245E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;246E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;247E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;248E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;252E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;253E;E;D;K;10;$classnameS;20;CPCibOutletConnectorK;8;$classesA;S;20;CPCibOutletConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;91E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;249E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;254E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;249E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;216E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;255E;E;D;K;10;$classnameS;21;CPCibControlConnectorK;8;$classesA;S;21;CPCibControlConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;98E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;256E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;100E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;257E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;103E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;11E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;258E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;156E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;259E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;162E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;260E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;153E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;261E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;161E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;262E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;155E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;263E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;154E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;264E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;157E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;265E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;117E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;266E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;164E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;267E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;160E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;268E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;104E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;269E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;106E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;91E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;270E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;114E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;271E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;105E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;272E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;144E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;273E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;145E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;274E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;126E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;275E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;121E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;276E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;124E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;277E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;139E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;278E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;120E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;279E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;125E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;280E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;140E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;281E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;122E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;282E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;135E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;283E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;132E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;284E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;128E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;285E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;138E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;286E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;99E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;287E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;168E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;288E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;169E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;289E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;141E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;290E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;148E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;291E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;149E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;292E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;150E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;293E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;207E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;208E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;209E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;296E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;210E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;212E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;298E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;213E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;299E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;214E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;300E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;177E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;301E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;201E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;302E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;203E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;303E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;204E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;304E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;195E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;305E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;196E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;306E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;197E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;307E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;198E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;308E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;199E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;309E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;190E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;310E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;191E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;311E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;192E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;312E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;184E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;313E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;185E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;314E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;186E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;315E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;187E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;316E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;235E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;251E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;317E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;248E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;251E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;318E;E;D;K;10;$classnameS;21;CPCibBindingConnectorK;8;$classesA;S;21;CPCibBindingConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;81E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;242E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;251E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;319E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;320E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;321E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;323E;E;D;K;6;$classD;K;6;CP$UIDd;2;81E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;241E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;251E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;324E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;320E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;325E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;326E;E;D;K;6;$classD;K;6;CP$UIDd;2;81E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;240E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;251E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;327E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;320E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;328E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;329E;E;D;K;6;$classD;K;6;CP$UIDd;2;81E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;246E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;251E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;330E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;331E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;321E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;332E;E;D;K;6;$classD;K;6;CP$UIDd;2;81E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;244E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;251E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;333E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;334E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;325E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;335E;E;D;K;6;$classD;K;6;CP$UIDd;2;81E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;228E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;251E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;336E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;320E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;337E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;338E;E;D;K;6;$classD;K;6;CP$UIDd;2;81E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;227E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;251E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;339E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;320E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;340E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;81E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;226E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;251E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;342E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;320E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;343E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;344E;E;D;K;6;$classD;K;6;CP$UIDd;2;81E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;220E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;251E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;345E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;346E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;328E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;347E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;252E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;348E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;349E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;350E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;351E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;96E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;351E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;354E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;355E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;356E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;357E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;358E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;96E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;359E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;96E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;360E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;96E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;361E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;96E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;362E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;363E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;102E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;363E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;364E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;365E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;366E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;367E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;368E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;369E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;370E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;371E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;356E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;357E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;358E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;372E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;373E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;356E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;357E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;358E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;356E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;357E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;358E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;374E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;112E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;374E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;375E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;376E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;356E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;357E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;358E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;377E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;368E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;378E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;379E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;116E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;379E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;380E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;381E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;116E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;382E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;383E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;119E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;383E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;384E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;385E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;119E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;386E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;119E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;387E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;388E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;119E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;389E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;356E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;357E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;358E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;119E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;390E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;119E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;391E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;392E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;119E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;393E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;394E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;119E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;395E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;356E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;357E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;358E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;119E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;396E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;119E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;397E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;398E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;399E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;130E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;119E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;399E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;400E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;401E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;402E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;130E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;403E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;398E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;404E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;130E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;405E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;406E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;407E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;130E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;408E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;409E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;410E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;130E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;411E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;412E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;413E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;130E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;414E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;415E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;137E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;119E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;415E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;416E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;417E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;137E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;418E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;137E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;419E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;420E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;137E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;421E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;422E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;137E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;423E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;143E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;119E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;423E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;424E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;425E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;426E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;427E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;147E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;119E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;427E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;428E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;429E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;413E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;147E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;414E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;430E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;410E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;147E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;411E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;431E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;402E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;147E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;403E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;398E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;432E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;152E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;432E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;433E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;434E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;435E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;436E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;437E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;398E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;438E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;439E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;440E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;441E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;442E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;443E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;444E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;159E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;444E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;445E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;446E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;447E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;159E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;448E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;449E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;398E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;450E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;451E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;356E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;357E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;358E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;452E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;356E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;357E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;358E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;453E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;167E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;453E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;454E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;455E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;167E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;456E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;378E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;457E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;167E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;458E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;171E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;458E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;459E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;460E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;173E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;171E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;460E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;461E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;462E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;463E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;173E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;456E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;464E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;410E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;173E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;465E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;466E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;413E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;173E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;467E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;468E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;173E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;469E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;356E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;357E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;358E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;470E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;402E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;173E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;471E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;472E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;473E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;173E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;474E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;356E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;357E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;358E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;475E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;183E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;475E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;476E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;477E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;183E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;478E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;183E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;479E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;183E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;480E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;183E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;481E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;189E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;481E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;482E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;477E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;189E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;478E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;189E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;483E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;189E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;484E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;194E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;484E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;485E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;477E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;194E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;486E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;194E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;487E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;194E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;488E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;194E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;489E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;194E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;356E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;357E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;358E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;490E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;173E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;491E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;356E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;357E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;358E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;492E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;173E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;395E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;378E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;493E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;173E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;393E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;378E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;494E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;352E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;206E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;171E;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;494E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;495E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;496E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;206E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;497E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;498E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;206E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;499E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;500E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;206E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;501E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;206E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;502E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;356E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;357E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;358E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;206E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;503E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;206E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;504E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;206E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;395E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;505E;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;506E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;206E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;393E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;505E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;215E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;507E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;508E;K;30;_CPCibWindowTemplateWTFlagsKeyD;K;6;CP$UIDd;3;509E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;510E;K;33;_CPCibWindowTemplateScreenRectKeyD;K;6;CP$UIDd;3;511E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;407E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;351E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;3;218E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;217E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;513E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;513E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;514E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;E;D;K;10;$classnameS;18;CPSegmentedControlK;8;$classesA;S;18;CPSegmentedControlS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;219E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;218E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;516E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;517E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;218E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;518E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;519E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;11;$aalignmentD;K;6;CP$UIDd;3;410E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;512E;K;6;$afontD;K;6;CP$UIDd;3;521E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;473E;K;29;CPSegmentedControlSegmentsKeyD;K;6;CP$UIDd;3;522E;K;29;CPSegmentedControlSelectedKeyD;K;6;CP$UIDd;3;413E;K;33;CPSegmentedControlSegmentStyleKeyD;K;6;CP$UIDd;3;413E;K;33;CPSegmentedControlTrackingModeKeyD;K;6;CP$UIDd;3;512E;E;D;K;10;$classnameS;12;CPScrollViewK;8;$classesA;S;12;CPScrollViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;221E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;218E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;523E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;524E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;525E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;218E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;518E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;526E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;528E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;3;529E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;3;233E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;3;230E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;530E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;530E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;530E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;530E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;356E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;356E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;356E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;531E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;410E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;3;512E;E;D;K;10;$classnameS;11;CPTableViewK;8;$classesA;S;11;CPTableViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;223E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;528E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;532E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;532E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;528E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;534E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;535E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;12;$agrid-colorD;K;6;CP$UIDd;3;536E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;473E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;537E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;538E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;512E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;473E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;356E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;356E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;356E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;356E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;358E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;539E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;536E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;3;512E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;356E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;3;541E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;3;232E;K;26;CPTableViewAutosaveNameKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;13;CPTableColumnK;8;$classesA;S;13;CPTableColumnS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;225E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;542E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;543E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;544E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;546E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;547E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;402E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;358E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;356E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;225E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;548E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;543E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;544E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;549E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;550E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;402E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;358E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;356E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;225E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;551E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;530E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;552E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;553E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;554E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;402E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;358E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;356E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;10;CPScrollerK;8;$classesA;S;10;CPScrollerS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;229E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;222E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;555E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;556E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;222E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;557E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;558E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;559E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;560E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;512E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;222E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;561E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;473E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;512E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;358E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;562E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;17;CPTableHeaderViewK;8;$classesA;S;17;CPTableHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;231E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;529E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;563E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;563E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;529E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;564E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;29;CPTableHeaderViewTableViewKeyD;K;6;CP$UIDd;3;224E;K;33;CPTableHeaderViewDrawsColumnLinesD;K;6;CP$UIDd;3;356E;E;D;K;6;$classD;K;6;CP$UIDd;3;229E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;222E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;565E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;566E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;222E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;557E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;558E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;559E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;560E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;512E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;222E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;567E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;473E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;512E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;356E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;568E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;8;CPButtonK;8;$classesA;S;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;234E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;218E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;569E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;570E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;218E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;518E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;571E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;572E;K;11;$aalignmentD;K;6;CP$UIDd;3;410E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;512E;K;6;$afontD;K;6;CP$UIDd;3;521E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;512E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;473E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;471E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;357E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;358E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;573E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;512E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;356E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;410E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;512E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;11;CPTextFieldK;8;$classesA;S;11;CPTextFieldS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;236E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;218E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;574E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;575E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;218E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;518E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;576E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;11;$aalignmentD;K;6;CP$UIDd;3;473E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;410E;K;6;$afontD;K;6;CP$UIDd;3;577E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;356E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;578E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;473E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;358E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;579E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;410E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;473E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;236E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;218E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;580E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;581E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;218E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;518E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;576E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;11;$aalignmentD;K;6;CP$UIDd;3;473E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;410E;K;6;$afontD;K;6;CP$UIDd;3;577E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;356E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;582E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;473E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;358E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;579E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;410E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;473E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;236E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;218E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;583E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;584E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;218E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;518E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;576E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;11;$aalignmentD;K;6;CP$UIDd;3;473E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;410E;K;6;$afontD;K;6;CP$UIDd;3;577E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;356E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;585E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;473E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;358E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;579E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;410E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;473E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;236E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;218E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;586E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;587E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;218E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;518E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;576E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;11;$aalignmentD;K;6;CP$UIDd;3;473E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;410E;K;6;$afontD;K;6;CP$UIDd;3;577E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;356E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;588E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;473E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;358E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;579E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;410E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;473E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;236E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;218E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;589E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;587E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;218E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;518E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;576E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;11;$aalignmentD;K;6;CP$UIDd;3;473E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;410E;K;6;$afontD;K;6;CP$UIDd;3;577E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;356E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;588E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;473E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;358E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;579E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;410E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;473E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;236E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;218E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;590E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;587E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;218E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;518E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;576E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;11;$aalignmentD;K;6;CP$UIDd;3;473E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;410E;K;6;$afontD;K;6;CP$UIDd;3;577E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;356E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;588E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;473E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;358E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;579E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;410E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;473E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;236E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;218E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;591E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;592E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;218E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;518E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;576E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;11;$aalignmentD;K;6;CP$UIDd;3;473E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;410E;K;6;$afontD;K;6;CP$UIDd;3;593E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;356E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;594E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;473E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;358E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;579E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;410E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;473E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;219E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;218E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;595E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;517E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;218E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;518E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;519E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;11;$aalignmentD;K;6;CP$UIDd;3;410E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;512E;K;6;$afontD;K;6;CP$UIDd;3;521E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;473E;K;29;CPSegmentedControlSegmentsKeyD;K;6;CP$UIDd;3;596E;K;29;CPSegmentedControlSelectedKeyD;K;6;CP$UIDd;3;413E;K;33;CPSegmentedControlSegmentStyleKeyD;K;6;CP$UIDd;3;413E;K;33;CPSegmentedControlTrackingModeKeyD;K;6;CP$UIDd;3;512E;E;D;K;6;$classD;K;6;CP$UIDd;3;236E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;218E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;597E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;592E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;218E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;518E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;576E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;11;$aalignmentD;K;6;CP$UIDd;3;473E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;410E;K;6;$afontD;K;6;CP$UIDd;3;593E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;356E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;598E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;473E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;358E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;579E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;410E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;473E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;219E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;218E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;599E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;517E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;218E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;518E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;519E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;11;$aalignmentD;K;6;CP$UIDd;3;410E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;512E;K;6;$afontD;K;6;CP$UIDd;3;521E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;473E;K;29;CPSegmentedControlSegmentsKeyD;K;6;CP$UIDd;3;600E;K;29;CPSegmentedControlSelectedKeyD;K;6;CP$UIDd;3;413E;K;33;CPSegmentedControlSegmentStyleKeyD;K;6;CP$UIDd;3;413E;K;33;CPSegmentedControlTrackingModeKeyD;K;6;CP$UIDd;3;512E;E;D;K;6;$classD;K;6;CP$UIDd;3;236E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;218E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;601E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;592E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;218E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;518E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;576E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;11;$aalignmentD;K;6;CP$UIDd;3;473E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;410E;K;6;$afontD;K;6;CP$UIDd;3;593E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;356E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;602E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;473E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;358E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;579E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;410E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;473E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;234E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;218E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;603E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;604E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;218E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;518E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;571E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;572E;K;11;$aalignmentD;K;6;CP$UIDd;3;410E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;512E;K;6;$afontD;K;6;CP$UIDd;3;521E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;512E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;473E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;474E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;357E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;358E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;573E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;512E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;356E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;410E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;512E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;605E;E;D;K;10;$classnameS;18;_CPCibClassSwapperK;8;$classesA;S;18;_CPCibClassSwapperS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;250E;K;28;CPObjectControllerContentKeyD;K;6;CP$UIDd;1;0E;K;36;CPObjectControllerObjectClassNameKeyD;K;6;CP$UIDd;3;606E;K;31;CPObjectControllerIsEditableKeyD;K;6;CP$UIDd;3;356E;K;49;CPObjectControllerAutomaticallyPreparesContentKeyD;K;6;CP$UIDd;3;356E;K;37;CPArrayControllerAvoidsEmptySelectionD;K;6;CP$UIDd;3;356E;K;49;CPArrayControllerClearsFilterPredicateOnInsertionD;K;6;CP$UIDd;3;356E;K;41;CPArrayControllerFilterRestrictsInsertionD;K;6;CP$UIDd;3;356E;K;35;CPArrayControllerPreservesSelectionD;K;6;CP$UIDd;3;356E;K;39;CPArrayControllerSelectsInsertedObjectsD;K;6;CP$UIDd;3;356E;K;47;CPArrayControllerAlwaysUsesMultipleValuesMarkerD;K;6;CP$UIDd;3;358E;K;47;CPArrayControllerAutomaticallyRearrangesObjectsD;K;6;CP$UIDd;3;358E;K;30;_CPCibClassSwapperClassNameKeyD;K;6;CP$UIDd;3;607E;K;38;_CPCibClassSwapperOriginalClassNameKeyD;K;6;CP$UIDd;3;608E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;216E;E;E;S;8;delegateS;9;theWindowS;15;arrangeInFront:S;19;performMiniaturize:S;29;orderFrontStandardAboutPanel:S;13;openDocument:S;13;performClose:S;13;saveDocument:S;14;runPageLayout:S;6;print:S;15;saveDocumentAs:S;12;newDocument:S;9;showHelp:S;22;revertDocumentToSaved:S;21;clearRecentDocuments:S;5;hide:S;10;terminate:S;22;hideOtherApplications:S;22;unhideAllApplications:S;13;stopSpeaking:S;14;startSpeaking:S;5;copy:S;10;selectAll:S;4;cut:S;14;checkSpelling:S;7;delete:S;6;paste:S;15;showGuessPanel:S;5;undo:S;23;performFindPanelAction:S;29;centerSelectionInVisibleArea:S;5;redo:S;30;toggleContinuousSpellChecking:S;12;performZoom:S;19;toggleToolbarShown:S;31;runToolbarCustomizationPalette:S;22;toggleGrammarChecking:S;24;toggleSmartInsertDelete:S;33;toggleAutomaticQuoteSubstitution:S;29;toggleAutomaticLinkDetection:S;10;alignLeft:S;12;alignCenter:S;15;alignJustified:S;11;alignRight:S;12;toggleRuler:S;10;copyRuler:S;11;pasteRuler:S;10;underline:S;21;orderFrontColorPanel:S;9;copyFont:S;10;pasteFont:S;9;unscript:S;12;superscript:S;10;subscript:S;14;raiseBaseline:S;14;lowerBaseline:S;21;useStandardLigatures:S;17;turnOffLigatures:S;16;useAllLigatures:S;19;useStandardKerning:S;15;turnOffKerning:S;15;tightenKerning:S;14;loosenKerning:S;4;add:S;7;remove:S;20;value: selection.tagS;5;valueS;13;selection.tagD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;322E;K;10;CP.objectsD;K;17;CPNullPlaceholderD;K;6;CP$UIDd;3;609E;E;E;S;22;value: selection.labelS;15;selection.labelD;K;6;$classD;K;6;CP$UIDd;3;322E;K;10;CP.objectsD;K;17;CPNullPlaceholderD;K;6;CP$UIDd;3;609E;E;E;S;22;value: selection.indexS;15;selection.indexD;K;6;$classD;K;6;CP$UIDd;3;322E;K;10;CP.objectsD;K;17;CPNullPlaceholderD;K;6;CP$UIDd;3;609E;E;E;S;26;selectedTag: selection.tagS;11;selectedTagD;K;6;$classD;K;6;CP$UIDd;3;322E;K;10;CP.objectsD;E;E;S;30;selectedLabel: selection.labelS;13;selectedLabelD;K;6;$classD;K;6;CP$UIDd;3;322E;K;10;CP.objectsD;K;17;CPNullPlaceholderD;K;6;CP$UIDd;3;610E;E;E;S;26;value: arrangedObjects.tagS;19;arrangedObjects.tagD;K;6;$classD;K;6;CP$UIDd;3;322E;K;10;CP.objectsD;E;E;S;28;value: arrangedObjects.labelS;21;arrangedObjects.labelD;K;6;$classD;K;6;CP$UIDd;3;322E;K;10;CP.objectsD;E;E;S;28;value: arrangedObjects.indexS;21;arrangedObjects.indexD;K;6;$classD;K;6;CP$UIDd;3;322E;K;10;CP.objectsD;E;E;S;30;selectedIndex: selection.indexS;13;selectedIndexD;K;6;$classD;K;6;CP$UIDd;3;322E;K;10;CP.objectsD;E;E;S;9;AMainMenuS;11;_CPMainMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;170E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;115E;E;E;S;6;WindowS;14;submenuAction:d;7;1048576S;14;_CPWindowsMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;E;E;T;S;0;F;S;18;Bring All to FrontS;4;ZoomS;8;MinimizeS;1;mS;14;NewApplicationS;18;_CPApplicationMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;106E;E;E;S;20;About NewApplicationS;19;Hide NewApplicationS;1;hS;8;Show AllS;19;Quit NewApplicationS;1;qS;12;Preferences…S;1;,S;8;ServicesS;15;_CPServicesMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;S;11;Hide Othersd;7;1572864S;4;HelpD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;117E;E;E;S;19;NewApplication HelpS;1;?S;4;EditD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;142E;E;E;S;6;DeleteS;10;Select AllS;1;aS;4;UndoS;1;zS;3;CutS;1;xS;5;PasteS;1;vS;4;CopyS;1;cS;4;RedoS;1;Zd;7;1179648S;4;FindD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;132E;E;E;S;13;Find Previousd;1;3S;1;GS;17;Jump to SelectionS;1;jS;22;Use Selection for Findd;1;7S;1;eS;9;Find Nextd;1;2S;1;gS;5;Find…d;1;1S;1;fS;20;Spelling and GrammarD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;141E;E;E;S;27;Check Spelling While TypingS;14;Check SpellingS;1;;S;14;Show Spelling…S;1;:S;27;Check Grammar With SpellingS;6;SpeechD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;144E;E;E;S;13;Stop SpeakingS;14;Start SpeakingS;13;SubstitutionsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;150E;E;E;S;16;Smart Copy/PasteS;12;Smart QuotesS;11;Smart LinksS;4;FileD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;155E;E;E;S;4;SaveS;1;sS;8;Save As…S;1;SS;6;Print…S;1;pS;5;Open…S;1;oS;3;NewS;1;nS;11;Open RecentS;22;_CPRecentDocumentsMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;160E;E;E;S;10;Clear MenuS;13;Page Setup...S;1;PS;5;CloseS;1;wS;15;Revert to SavedS;4;ViewD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;168E;D;K;6;CP$UIDd;3;169E;E;E;S;12;Show ToolbarS;1;tS;18;Customize Toolbar…S;6;FormatD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;172E;D;K;6;CP$UIDd;3;205E;E;E;S;4;FontS;11;_CPFontMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;175E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;178E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;193E;D;K;6;CP$UIDd;3;200E;D;K;6;CP$UIDd;3;201E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;204E;E;E;S;10;Show FontsS;4;BoldS;1;bS;6;ItalicS;1;iS;9;UnderlineS;1;uS;6;BiggerS;1;+S;7;Smallerd;1;4S;1;-S;4;KernD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;187E;E;E;S;11;Use DefaultS;8;Use NoneS;7;TightenS;6;LoosenS;8;LigatureD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;190E;D;K;6;CP$UIDd;3;191E;D;K;6;CP$UIDd;3;192E;E;E;S;7;Use AllS;8;BaselineD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;195E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;199E;E;E;S;11;SuperscriptS;9;SubscriptS;5;RaiseS;5;LowerS;11;Show ColorsS;1;CS;10;Copy StyleS;11;Paste StyleS;4;TextD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;207E;D;K;6;CP$UIDd;3;208E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;210E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;3;214E;E;E;S;10;Align LeftS;1;{S;6;CenterS;1;|S;7;JustifyS;11;Align RightS;1;}S;10;Show RulerS;10;Copy Rulerd;7;1310720S;11;Paste RulerS;32;{10000000000000, 10000000000000}S;8;CPWindowd;10;1946157056S;24;{{335, 278}, {626, 360}}S;22;{{0, 0}, {1680, 1028}}d;1;0S;20;{{0, 0}, {626, 360}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;3;244E;D;K;6;CP$UIDd;3;246E;D;K;6;CP$UIDd;3;243E;D;K;6;CP$UIDd;3;245E;D;K;6;CP$UIDd;3;247E;D;K;6;CP$UIDd;3;237E;D;K;6;CP$UIDd;3;238E;D;K;6;CP$UIDd;3;239E;D;K;6;CP$UIDd;3;240E;D;K;6;CP$UIDd;3;241E;D;K;6;CP$UIDd;3;242E;D;K;6;CP$UIDd;3;248E;E;E;S;6;normalS;21;{{35, 18}, {146, 25}}S;19;{{0, 0}, {146, 25}}d;2;36S;17;segmented-controlD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;520E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;611E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;612E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;356E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;358E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;356E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;614E;D;K;6;CP$UIDd;3;615E;D;K;6;CP$UIDd;3;616E;E;E;S;23;{{35, 163}, {413, 151}}S;20;{{0, 0}, {413, 151}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;528E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;3;230E;D;K;6;CP$UIDd;3;529E;D;K;6;CP$UIDd;3;541E;D;K;6;CP$UIDd;3;531E;E;E;S;10;scrollviewD;K;10;$classnameS;10;CPClipViewK;8;$classesA;S;10;CPClipViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;527E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;222E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;617E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;532E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;618E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;222E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;557E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;619E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;620E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;3;224E;E;D;K;6;$classD;K;6;CP$UIDd;3;527E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;222E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;621E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;622E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;623E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;222E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;557E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;619E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;624E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;3;232E;E;d;2;10D;K;6;$classD;K;6;CP$UIDd;3;217E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;222E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;625E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;625E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;222E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;E;S;20;{{0, 0}, {411, 133}}D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;533E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;626E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;3;533E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;627E;E;d;2;25S;6;{3, 2}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;226E;D;K;6;CP$UIDd;3;227E;D;K;6;CP$UIDd;3;228E;E;E;D;K;10;$classnameS;13;_CPCornerViewK;8;$classesA;S;13;_CPCornerViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;540E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;222E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;512E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;628E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;629E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;222E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;557E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;630E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;631E;E;d;3;116d;2;40d;4;1000D;K;10;$classnameS;24;_CPTableColumnHeaderViewK;8;$classesA;S;24;_CPTableColumnHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;545E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;625E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;625E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;632E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;633E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;512E;K;12;$atext-colorD;K;6;CP$UIDd;3;634E;K;6;$afontD;K;6;CP$UIDd;3;635E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;636E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;635E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;634E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;512E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;473E;E;D;K;6;$classD;K;6;CP$UIDd;3;236E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;637E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;638E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;576E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;639E;K;11;$aalignmentD;K;6;CP$UIDd;3;512E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;473E;K;6;$afontD;K;6;CP$UIDd;3;641E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;642E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;643E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;356E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;356E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;619E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;473E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;512E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;d;3;111D;K;6;$classD;K;6;CP$UIDd;3;545E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;625E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;625E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;644E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;633E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;512E;K;12;$atext-colorD;K;6;CP$UIDd;3;634E;K;6;$afontD;K;6;CP$UIDd;3;635E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;645E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;635E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;634E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;512E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;473E;E;D;K;6;$classD;K;6;CP$UIDd;3;236E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;637E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;638E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;576E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;639E;K;11;$aalignmentD;K;6;CP$UIDd;3;512E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;473E;K;6;$afontD;K;6;CP$UIDd;3;646E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;642E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;643E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;356E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;356E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;619E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;473E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;512E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;d;3;136f;22;3.4028234663852886e+38D;K;6;$classD;K;6;CP$UIDd;3;545E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;625E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;625E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;647E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;633E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;512E;K;12;$atext-colorD;K;6;CP$UIDd;3;634E;K;6;$afontD;K;6;CP$UIDd;3;635E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;648E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;635E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;634E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;512E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;473E;E;D;K;6;$classD;K;6;CP$UIDd;3;236E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;637E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;638E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;576E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;639E;K;11;$aalignmentD;K;6;CP$UIDd;3;512E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;473E;K;6;$afontD;K;6;CP$UIDd;3;649E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;642E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;643E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;356E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;356E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;358E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;619E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;473E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;512E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;S;19;{{1, 1}, {411, 15}}S;19;{{0, 0}, {411, 15}}d;1;8d;11;-2147483648S;8;scrollerS;8;disabledS;29;_horizontalScrollerDidScroll:f;18;0.9903614457831326S;19;{{0, 0}, {411, 25}}S;14;tableHeaderRowS;22;{{224, 32}, {15, 102}}S;19;{{0, 0}, {15, 102}}S;27;_verticalScrollerDidScroll:f;18;0.8872180451127819S;21;{{35, 317}, {39, 25}}S;18;{{0, 0}, {39, 25}}S;6;buttonS;8;borderedd;2;14S;22;{{466, 171}, {38, 17}}S;18;{{0, 0}, {38, 17}}S;9;textfieldD;K;6;$classD;K;6;CP$UIDd;3;520E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;611E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;612E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;358E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;358E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;356E;E;S;6;index:D;K;6;$classD;K;6;CP$UIDd;3;533E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;650E;E;S;22;{{471, 196}, {33, 17}}S;18;{{0, 0}, {33, 17}}S;6;label:S;22;{{481, 221}, {23, 17}}S;18;{{0, 0}, {23, 17}}S;4;tag:S;23;{{506, 171}, {100, 17}}S;19;{{0, 0}, {100, 17}}S;5;LabelS;23;{{506, 196}, {100, 17}}S;23;{{506, 221}, {100, 17}}S;22;{{193, 23}, {413, 17}}S;19;{{0, 0}, {413, 17}}D;K;6;$classD;K;6;CP$UIDd;3;520E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;651E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;652E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;358E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;358E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;358E;E;S;56;CPSelectedIndexBinding CPArrayController selection.indexS;21;{{35, 65}, {146, 25}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;653E;D;K;6;CP$UIDd;3;654E;D;K;6;CP$UIDd;3;655E;E;E;S;22;{{193, 70}, {413, 17}}S;56;CPSelectedLabelBinding CPArrayController selection.labelS;22;{{35, 115}, {146, 25}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;656E;D;K;6;CP$UIDd;3;657E;D;K;6;CP$UIDd;3;658E;E;E;S;23;{{193, 120}, {413, 17}}S;52;CPSelectedTagBinding CPArrayController selection.tagS;21;{{79, 317}, {36, 25}}S;18;{{0, 0}, {36, 25}}S;13;AppControllerS;19;CPMutableDictionaryS;15;ArrayControllerS;17;CPArrayControllerS;4;NULLS;5;troisS;28;_CPFontSystemFacePlaceholderd;2;-1D;K;10;$classnameS;14;_CPSegmentItemK;8;$classesA;S;14;_CPSegmentItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;613E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;659E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;358E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;356E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;512E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;512E;E;D;K;6;$classD;K;6;CP$UIDd;3;613E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;660E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;356E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;356E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;413E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;512E;E;D;K;6;$classD;K;6;CP$UIDd;3;613E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;610E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;358E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;356E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;410E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;512E;E;S;20;{{1, 1}, {411, 133}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;224E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;533E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;661E;E;S;6;_NS:11S;21;{{1, 134}, {411, 17}}S;19;{{0, 0}, {411, 17}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;232E;E;E;S;6;_NS:15S;16;{{0, 0}, {0, 0}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;413E;D;K;6;CP$UIDd;3;413E;D;K;6;CP$UIDd;3;413E;D;K;6;CP$UIDd;3;413E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;662E;D;K;6;CP$UIDd;3;662E;D;K;6;CP$UIDd;3;662E;D;K;6;CP$UIDd;3;413E;E;E;S;22;{{224, 128}, {16, 23}}S;18;{{0, 0}, {16, 23}}S;10;cornerviewS;6;_NS:19D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;664E;E;E;S;12;columnHeaderD;K;6;$classD;K;6;CP$UIDd;3;533E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;665E;E;D;K;6;$classD;K;6;CP$UIDd;3;520E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;611E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;666E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;356E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;358E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;356E;E;S;5;indexS;17;{{3, 0}, {-6, 0}}S;17;{{0, 0}, {-6, 0}}S;8;editableD;K;10;$classnameS;17;_CPThemeAttributeK;8;$classesA;S;17;_CPThemeAttributeS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;640E;K;4;nameD;K;6;CP$UIDd;3;667E;K;12;defaultValueD;K;6;CP$UIDd;3;577E;K;6;valuesD;K;6;CP$UIDd;3;668E;E;S;9;Text Celld;4;3072D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;669E;E;E;S;5;labelD;K;6;$classD;K;6;CP$UIDd;3;640E;K;4;nameD;K;6;CP$UIDd;3;667E;K;12;defaultValueD;K;6;CP$UIDd;3;577E;K;6;valuesD;K;6;CP$UIDd;3;670E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;671E;E;E;S;3;tagD;K;6;$classD;K;6;CP$UIDd;3;640E;K;4;nameD;K;6;CP$UIDd;3;667E;K;12;defaultValueD;K;6;CP$UIDd;3;577E;K;6;valuesD;K;6;CP$UIDd;3;672E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;673E;D;K;6;CP$UIDd;3;673E;D;K;6;CP$UIDd;3;673E;D;K;6;CP$UIDd;3;413E;E;E;S;7;Courierd;2;12D;K;6;$classD;K;6;CP$UIDd;3;613E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;659E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;358E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;356E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;512E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;512E;E;D;K;6;$classD;K;6;CP$UIDd;3;613E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;660E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;356E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;356E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;413E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;512E;E;D;K;6;$classD;K;6;CP$UIDd;3;613E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;610E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;358E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;356E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;410E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;512E;E;D;K;6;$classD;K;6;CP$UIDd;3;613E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;659E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;358E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;356E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;512E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;512E;E;D;K;6;$classD;K;6;CP$UIDd;3;613E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;660E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;356E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;356E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;413E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;512E;E;D;K;6;$classD;K;6;CP$UIDd;3;613E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;610E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;358E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;356E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;410E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;512E;E;S;2;unS;4;deuxD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;413E;D;K;6;CP$UIDd;3;413E;D;K;6;CP$UIDd;3;413E;D;K;6;CP$UIDd;3;413E;E;E;f;3;0.8D;K;10;$classnameS;19;_CPImageAndTextViewK;8;$classesA;S;19;_CPImageAndTextViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;663E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;546E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;625E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;625E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;546E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;674E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;358E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;675E;D;K;6;CP$UIDd;3;675E;D;K;6;CP$UIDd;3;675E;D;K;6;CP$UIDd;3;413E;E;E;d;2;11S;4;fontD;K;6;$classD;K;6;CP$UIDd;3;322E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;676E;K;6;normalD;K;6;CP$UIDd;3;677E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;663E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;549E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;625E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;625E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;549E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;674E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;358E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;E;D;K;6;$classD;K;6;CP$UIDd;3;322E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;676E;K;6;normalD;K;6;CP$UIDd;3;677E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;663E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;553E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;625E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;625E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;553E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;674E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;358E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;515E;E;D;K;6;$classD;K;6;CP$UIDd;3;322E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;676E;K;6;normalD;K;6;CP$UIDd;3;677E;E;E;f;18;0.6862745098039216d;2;18f;18;0.5019607843137255D;K;6;$classD;K;6;CP$UIDd;3;520E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;678E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;652E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;356E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;358E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;358E;E;D;K;6;$classD;K;6;CP$UIDd;3;520E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;611E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;652E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;358E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;358E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;356E;E;S;17;Arial, sans-serifE;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Tests/Manual/CPSegmentedControlBindings/Resources/MainMenu.xib b/Tests/Manual/CPSegmentedControlBindings/Resources/MainMenu.xib new file mode 100644 index 000000000..554ab4afd --- /dev/null +++ b/Tests/Manual/CPSegmentedControlBindings/Resources/MainMenu.xib @@ -0,0 +1,4050 @@ + + + + 1050 + 11G63 + 2844 + 1138.51 + 569.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 2844 + + + YES + NSArrayController + NSButton + NSButtonCell + NSCustomObject + NSMenu + NSMenuItem + NSScrollView + NSScroller + NSSegmentedCell + NSSegmentedControl + NSTableColumn + NSTableHeaderView + NSTableView + NSTextField + NSTextFieldCell + NSView + NSWindowTemplate + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + YES + + NSApplication + + + FirstResponder + + + NSApplication + + + AMainMenu + + YES + + + NewApplication + + 1048576 + 2147483647 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + submenuAction: + + NewApplication + + YES + + + About NewApplication + + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Preferences… + , + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Services + + 1048576 + 2147483647 + + + submenuAction: + + Services + + YES + + _NSServicesMenu + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Hide NewApplication + h + 1048576 + 2147483647 + + + + + + Hide Others + h + 1572864 + 2147483647 + + + + + + Show All + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Quit NewApplication + q + 1048576 + 2147483647 + + + + + _NSAppleMenu + + + + + File + + 1048576 + 2147483647 + + + submenuAction: + + File + + YES + + + New + n + 1048576 + 2147483647 + + + + + + Open… + o + 1048576 + 2147483647 + + + + + + Open Recent + + 1048576 + 2147483647 + + + submenuAction: + + Open Recent + + YES + + + Clear Menu + + 1048576 + 2147483647 + + + + + _NSRecentDocumentsMenu + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Close + w + 1048576 + 2147483647 + + + + + + Save + s + 1048576 + 2147483647 + + + + + + Save As… + S + 1179648 + 2147483647 + + + + + + Revert to Saved + + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Page Setup... + P + 1179648 + 2147483647 + + + + + + + Print… + p + 1048576 + 2147483647 + + + + + + + + + Edit + + 1048576 + 2147483647 + + + submenuAction: + + Edit + + YES + + + Undo + z + 1048576 + 2147483647 + + + + + + Redo + Z + 1179648 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Cut + x + 1048576 + 2147483647 + + + + + + Copy + c + 1048576 + 2147483647 + + + + + + Paste + v + 1048576 + 2147483647 + + + + + + Delete + + 1048576 + 2147483647 + + + + + + Select All + a + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Find + + 1048576 + 2147483647 + + + submenuAction: + + Find + + YES + + + Find… + f + 1048576 + 2147483647 + + + 1 + + + + Find Next + g + 1048576 + 2147483647 + + + 2 + + + + Find Previous + G + 1179648 + 2147483647 + + + 3 + + + + Use Selection for Find + e + 1048576 + 2147483647 + + + 7 + + + + Jump to Selection + j + 1048576 + 2147483647 + + + + + + + + + Spelling and Grammar + + 1048576 + 2147483647 + + + submenuAction: + + Spelling and Grammar + + YES + + + Show Spelling… + : + 1048576 + 2147483647 + + + + + + Check Spelling + ; + 1048576 + 2147483647 + + + + + + Check Spelling While Typing + + 1048576 + 2147483647 + + + + + + Check Grammar With Spelling + + 1048576 + 2147483647 + + + + + + + + + Substitutions + + 1048576 + 2147483647 + + + submenuAction: + + Substitutions + + YES + + + Smart Copy/Paste + f + 1048576 + 2147483647 + + + 1 + + + + Smart Quotes + g + 1048576 + 2147483647 + + + 2 + + + + Smart Links + G + 1179648 + 2147483647 + + + 3 + + + + + + + Speech + + 1048576 + 2147483647 + + + submenuAction: + + Speech + + YES + + + Start Speaking + + 1048576 + 2147483647 + + + + + + Stop Speaking + + 1048576 + 2147483647 + + + + + + + + + + + + Format + + 2147483647 + + + submenuAction: + + Format + + YES + + + Font + + 2147483647 + + + submenuAction: + + Font + + YES + + + Show Fonts + t + 1048576 + 2147483647 + + + + + + Bold + b + 1048576 + 2147483647 + + + 2 + + + + Italic + i + 1048576 + 2147483647 + + + 1 + + + + Underline + u + 1048576 + 2147483647 + + + + + + YES + YES + + + 2147483647 + + + + + + Bigger + + + 1048576 + 2147483647 + + + 3 + + + + Smaller + - + 1048576 + 2147483647 + + + 4 + + + + YES + YES + + + 2147483647 + + + + + + Kern + + 2147483647 + + + submenuAction: + + Kern + + YES + + + Use Default + + 2147483647 + + + + + + Use None + + 2147483647 + + + + + + Tighten + + 2147483647 + + + + + + Loosen + + 2147483647 + + + + + + + + + Ligature + + 2147483647 + + + submenuAction: + + Ligature + + YES + + + Use Default + + 2147483647 + + + + + + Use None + + 2147483647 + + + + + + Use All + + 2147483647 + + + + + + + + + Baseline + + 2147483647 + + + submenuAction: + + Baseline + + YES + + + Use Default + + 2147483647 + + + + + + Superscript + + 2147483647 + + + + + + Subscript + + 2147483647 + + + + + + Raise + + 2147483647 + + + + + + Lower + + 2147483647 + + + + + + + + + YES + YES + + + 2147483647 + + + + + + Show Colors + C + 1048576 + 2147483647 + + + + + + YES + YES + + + 2147483647 + + + + + + Copy Style + c + 1572864 + 2147483647 + + + + + + Paste Style + v + 1572864 + 2147483647 + + + + + _NSFontMenu + + + + + Text + + 2147483647 + + + submenuAction: + + Text + + YES + + + Align Left + { + 1048576 + 2147483647 + + + + + + Center + | + 1048576 + 2147483647 + + + + + + Justify + + 2147483647 + + + + + + Align Right + } + 1048576 + 2147483647 + + + + + + YES + YES + + + 2147483647 + + + + + + Show Ruler + + 2147483647 + + + + + + Copy Ruler + c + 1310720 + 2147483647 + + + + + + Paste Ruler + v + 1310720 + 2147483647 + + + + + + + + + + + + View + + 1048576 + 2147483647 + + + submenuAction: + + View + + YES + + + Show Toolbar + t + 1572864 + 2147483647 + + + + + + Customize Toolbar… + + 1048576 + 2147483647 + + + + + + + + + Window + + 1048576 + 2147483647 + + + submenuAction: + + Window + + YES + + + Minimize + m + 1048576 + 2147483647 + + + + + + Zoom + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Bring All to Front + + 1048576 + 2147483647 + + + + + _NSWindowsMenu + + + + + Help + + 1048576 + 2147483647 + + + submenuAction: + + Help + + YES + + + NewApplication Help + ? + 1048576 + 2147483647 + + + + + + + + _NSMainMenu + + + 7 + 2 + {{335, 390}, {626, 360}} + 1946157056 + Window + NSWindow + + + + + 256 + + YES + + + 268 + {{33, 317}, {146, 24}} + + + + _NS:9 + YES + + 67108864 + 0 + + LucidaGrande + 13 + 1044 + + _NS:9 + + + YES + + un + 3 + + + deux + 1 + YES + 3 + + + trois + 2 + 3 + + + 1 + 1 + + + + + 268 + + YES + + + 2304 + + YES + + + 256 + {411, 133} + + + + _NS:13 + YES + + + 256 + {411, 17} + + + + _NS:16 + + + + + -2147483392 + {{224, 0}, {16, 17}} + + + + _NS:19 + + + YES + + 116 + 40 + 1000 + + 75497536 + 2048 + index + + LucidaGrande + 11 + 3100 + + + 3 + MC4zMzMzMzI5ODU2AA + + + 6 + System + headerTextColor + + 3 + MAA + + + + + 337641536 + 2048 + Text Cell + + + + 6 + System + controlBackgroundColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + + + 3 + YES + YES + + + + 111 + 40 + 1000 + + 75497536 + 2048 + label + + + + + + 337641536 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 136 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + tag + + + 6 + System + headerColor + + 3 + MQA + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 3 + 2 + + + 6 + System + gridColor + + 3 + MC41AA + + + 17 + -624951296 + + + 4 + 15 + 0 + NO + 0 + 1 + + + {{1, 17}, {411, 133}} + + + + _NS:11 + + + 4 + + + + -2147483392 + {{224, 17}, {15, 102}} + + + + _NS:58 + + _doScroller: + 0.88721804511278191 + + + + -2147483392 + {{1, 135}, {411, 15}} + + + + _NS:60 + 1 + + _doScroller: + 0.99036144578313257 + + + + 2304 + + YES + + + {{1, 0}, {411, 17}} + + + + _NS:15 + + + 4 + + + + {{35, 46}, {413, 151}} + + + + _NS:9 + 133682 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 268 + {{29, 12}, {51, 32}} + + + + _NS:9 + YES + + 67108864 + 134217728 + + + + _NS:9 + + -2038284288 + 129 + + + 200 + 25 + + + + + 268 + {{33, 270}, {146, 24}} + + + + _NS:9 + YES + + 67108864 + 0 + + _NS:9 + + + YES + + un + 3 + + + deux + 1 + YES + 3 + + + trois + 2 + 3 + + + 1 + 1 + + + + + 268 + {{33, 220}, {146, 24}} + + + + _NS:9 + YES + + 67108864 + 0 + + _NS:9 + + + YES + + un + 3 + + + deux + 1 + YES + 3 + + + trois + 2 + 3 + + + 1 + 1 + + + + + 268 + {{190, 320}, {419, 17}} + + + + _NS:1535 + YES + + 68157504 + 272630784 + CPSelectedIndexBinding CPArrayController selection.index + + Courier + 12 + 16 + + _NS:1535 + + + 6 + System + controlColor + + + + + + + + 268 + {{190, 273}, {419, 17}} + + + + _NS:1535 + YES + + 68157504 + 272630784 + CPSelectedLabelBinding CPArrayController selection.label + + _NS:1535 + + + + + + + + 268 + {{190, 223}, {419, 17}} + + + + _NS:1535 + YES + + 68157504 + 272630784 + CPSelectedTagBinding CPArrayController selection.tag + + _NS:1535 + + + + + + + + 268 + {{463, 172}, {44, 17}} + + + + _NS:1535 + YES + + 68157504 + 272630784 + index: + + _NS:1535 + + + + + + + + 268 + {{468, 147}, {39, 17}} + + + + _NS:1535 + YES + + 68157504 + 272630784 + label: + + _NS:1535 + + + + + + + + 268 + {{478, 122}, {29, 17}} + + + + _NS:1535 + YES + + 68157504 + 272630784 + tag: + + _NS:1535 + + + + + + + + 268 + {{503, 172}, {106, 17}} + + + + _NS:1535 + YES + + 68157504 + 272630784 + Label + + _NS:1535 + + + + + + + + 268 + {{503, 147}, {106, 17}} + + + + _NS:1535 + YES + + 68157504 + 272630784 + Label + + _NS:1535 + + + + + + + + 268 + {{503, 122}, {106, 17}} + + + + _NS:1535 + YES + + 68157504 + 272630784 + Label + + _NS:1535 + + + + + + + + 268 + {{73, 12}, {48, 32}} + + + + _NS:9 + YES + + 67108864 + 134217728 + - + + _NS:9 + + -2038284288 + 129 + + + 200 + 25 + + + + {626, 360} + + + + + {{0, 0}, {1680, 1028}} + {10000000000000, 10000000000000} + YES + + + AppController + + + + YES + index + label + tag + + YES + YES + + YES + YES + YES + YES + YES + + + + + YES + + + terminate: + + + + 449 + + + + delegate + + + + 490 + + + + orderFrontStandardAboutPanel: + + + + 142 + + + + performMiniaturize: + + + + 37 + + + + arrangeInFront: + + + + 39 + + + + print: + + + + 86 + + + + runPageLayout: + + + + 87 + + + + clearRecentDocuments: + + + + 127 + + + + performClose: + + + + 193 + + + + toggleContinuousSpellChecking: + + + + 222 + + + + undo: + + + + 223 + + + + copy: + + + + 224 + + + + checkSpelling: + + + + 225 + + + + paste: + + + + 226 + + + + stopSpeaking: + + + + 227 + + + + cut: + + + + 228 + + + + showGuessPanel: + + + + 230 + + + + redo: + + + + 231 + + + + selectAll: + + + + 232 + + + + startSpeaking: + + + + 233 + + + + delete: + + + + 235 + + + + performZoom: + + + + 240 + + + + performFindPanelAction: + + + + 241 + + + + centerSelectionInVisibleArea: + + + + 245 + + + + toggleGrammarChecking: + + + + 347 + + + + toggleSmartInsertDelete: + + + + 355 + + + + toggleAutomaticQuoteSubstitution: + + + + 356 + + + + toggleAutomaticLinkDetection: + + + + 357 + + + + showHelp: + + + + 360 + + + + saveDocument: + + + + 362 + + + + saveDocumentAs: + + + + 363 + + + + revertDocumentToSaved: + + + + 364 + + + + runToolbarCustomizationPalette: + + + + 365 + + + + toggleToolbarShown: + + + + 366 + + + + hide: + + + + 367 + + + + hideOtherApplications: + + + + 368 + + + + unhideAllApplications: + + + + 370 + + + + newDocument: + + + + 373 + + + + openDocument: + + + + 374 + + + + raiseBaseline: + + + + 426 + + + + lowerBaseline: + + + + 427 + + + + copyFont: + + + + 428 + + + + subscript: + + + + 429 + + + + superscript: + + + + 430 + + + + tightenKerning: + + + + 431 + + + + underline: + + + + 432 + + + + orderFrontColorPanel: + + + + 433 + + + + useAllLigatures: + + + + 434 + + + + loosenKerning: + + + + 435 + + + + pasteFont: + + + + 436 + + + + unscript: + + + + 437 + + + + useStandardKerning: + + + + 438 + + + + useStandardLigatures: + + + + 439 + + + + turnOffLigatures: + + + + 440 + + + + turnOffKerning: + + + + 441 + + + + alignLeft: + + + + 442 + + + + alignJustified: + + + + 443 + + + + copyRuler: + + + + 444 + + + + alignCenter: + + + + 445 + + + + toggleRuler: + + + + 446 + + + + alignRight: + + + + 447 + + + + pasteRuler: + + + + 448 + + + + theWindow + + + + 459 + + + + selectedIndex: selection.index + + + + + + selectedIndex: selection.index + selectedIndex + selection.index + 2 + + + 523 + + + + value: arrangedObjects.index + + + + + + value: arrangedObjects.index + value + arrangedObjects.index + 2 + + + 519 + + + + value: arrangedObjects.label + + + + + + value: arrangedObjects.label + value + arrangedObjects.label + 2 + + + 520 + + + + value: arrangedObjects.tag + + + + + + value: arrangedObjects.tag + value + arrangedObjects.tag + 2 + + + 521 + + + + add: + + + + 517 + + + + remove: + + + + 565 + + + + selectedLabel: selection.label + + + + + + selectedLabel: selection.label + selectedLabel + selection.label + + NSNullPlaceholder + trois + + 2 + + + 567 + + + + selectedTag: selection.tag + + + + + + selectedTag: selection.tag + selectedTag + selection.tag + 2 + + + 554 + + + + value: selection.index + + + + + + value: selection.index + value + selection.index + + NSNullPlaceholder + NULL + + 2 + + + 559 + + + + value: selection.label + + + + + + value: selection.label + value + selection.label + + NSNullPlaceholder + NULL + + 2 + + + 557 + + + + value: selection.tag + + + + + + value: selection.tag + value + selection.tag + + NSNullPlaceholder + NULL + + 2 + + + 558 + + + + + YES + + 0 + + YES + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 29 + + + YES + + + + + + + + + + MainMenu + + + 19 + + + YES + + + + + + 56 + + + YES + + + + + + 103 + + + YES + + + + + + 217 + + + YES + + + + + + 83 + + + YES + + + + + + 81 + + + YES + + + + + + + + + + + + + + + + 75 + + + + + 80 + + + + + 78 + + + + + 72 + + + + + 82 + + + + + 124 + + + YES + + + + + + 77 + + + + + 73 + + + + + 79 + + + + + 112 + + + + + 74 + + + + + 125 + + + YES + + + + + + 126 + + + + + 205 + + + YES + + + + + + + + + + + + + + + + + + 202 + + + + + 198 + + + + + 207 + + + + + 214 + + + + + 199 + + + + + 203 + + + + + 197 + + + + + 206 + + + + + 215 + + + + + 218 + + + YES + + + + + + 216 + + + YES + + + + + + 200 + + + YES + + + + + + + + + 219 + + + + + 201 + + + + + 204 + + + + + 220 + + + YES + + + + + + + + + + 213 + + + + + 210 + + + + + 221 + + + + + 208 + + + + + 209 + + + + + 106 + + + YES + + + + + + 111 + + + + + 57 + + + YES + + + + + + + + + + + + + + + + 58 + + + + + 134 + + + + + 150 + + + + + 136 + + + + + 144 + + + + + 129 + + + + + 143 + + + + + 236 + + + + + 131 + + + YES + + + + + + 149 + + + + + 145 + + + + + 130 + + + + + 24 + + + YES + + + + + + + + + 92 + + + + + 5 + + + + + 239 + + + + + 23 + + + + + 295 + + + YES + + + + + + 296 + + + YES + + + + + + + 297 + + + + + 298 + + + + + 211 + + + YES + + + + + + 212 + + + YES + + + + + + + 195 + + + + + 196 + + + + + 346 + + + + + 348 + + + YES + + + + + + 349 + + + YES + + + + + + + + 350 + + + + + 351 + + + + + 354 + + + + + 371 + + + YES + + + + + + 372 + + + YES + + + + + + + + + + + + + + + + + + + + 375 + + + YES + + + + + + 376 + + + YES + + + + + + + 377 + + + YES + + + + + + 378 + + + YES + + + + + + 379 + + + YES + + + + + + + + + + + + + 380 + + + + + 381 + + + + + 382 + + + + + 383 + + + + + 384 + + + + + 385 + + + + + 386 + + + + + 387 + + + + + 388 + + + YES + + + + + + + + + + + + + + + + + + + + + 389 + + + + + 390 + + + + + 391 + + + + + 392 + + + + + 393 + + + + + 394 + + + + + 395 + + + + + 396 + + + + + 397 + + + YES + + + + + + 398 + + + YES + + + + + + 399 + + + YES + + + + + + 400 + + + + + 401 + + + + + 402 + + + + + 403 + + + + + 404 + + + + + 405 + + + YES + + + + + + + + + + 406 + + + + + 407 + + + + + 408 + + + + + 409 + + + + + 410 + + + + + 411 + + + YES + + + + + + + + 412 + + + + + 413 + + + + + 414 + + + + + 415 + + + YES + + + + + + + + + 416 + + + + + 417 + + + + + 418 + + + + + 419 + + + + + 450 + + + + + 491 + + + YES + + + + + + 492 + + + + + 503 + + + YES + + + + + + + + + 504 + + + YES + + + + + + + + 505 + + + + + 506 + + + + + 507 + + + + + 508 + + + YES + + + + + + 509 + + + YES + + + + + + 510 + + + + + 511 + + + + + 512 + + + YES + + + + + + 513 + + + + + 514 + + + YES + + + + + + 515 + + + + + 516 + + + + + 524 + + + YES + + + + + + 525 + + + + + 527 + + + YES + + + + + + 528 + + + + + 530 + + + YES + + + + + + 531 + + + + + 532 + + + YES + + + + + + 533 + + + + + 534 + + + YES + + + + + + 535 + + + + + 536 + + + YES + + + + + + 537 + + + + + 538 + + + YES + + + + + + 539 + + + + + 540 + + + YES + + + + + + 541 + + + + + 542 + + + YES + + + + + + 543 + + + + + 544 + + + YES + + + + + + 545 + + + + + 546 + + + YES + + + + + + 547 + + + + + 562 + + + YES + + + + + + 563 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 103.IBPluginDependency + 106.IBPluginDependency + 111.IBPluginDependency + 112.IBPluginDependency + 124.IBPluginDependency + 125.IBPluginDependency + 126.IBPluginDependency + 129.IBPluginDependency + 130.IBPluginDependency + 131.IBPluginDependency + 134.IBPluginDependency + 136.IBPluginDependency + 143.IBPluginDependency + 144.IBPluginDependency + 145.IBPluginDependency + 149.IBPluginDependency + 150.IBPluginDependency + 19.IBPluginDependency + 195.IBPluginDependency + 196.IBPluginDependency + 197.IBPluginDependency + 198.IBPluginDependency + 199.IBPluginDependency + 200.IBPluginDependency + 201.IBPluginDependency + 202.IBPluginDependency + 203.IBPluginDependency + 204.IBPluginDependency + 205.IBPluginDependency + 206.IBPluginDependency + 207.IBPluginDependency + 208.IBPluginDependency + 209.IBPluginDependency + 210.IBPluginDependency + 211.IBPluginDependency + 212.IBPluginDependency + 213.IBPluginDependency + 214.IBPluginDependency + 215.IBPluginDependency + 216.IBPluginDependency + 217.IBPluginDependency + 218.IBPluginDependency + 219.IBPluginDependency + 220.IBPluginDependency + 221.IBPluginDependency + 23.IBPluginDependency + 236.IBPluginDependency + 239.IBPluginDependency + 24.IBPluginDependency + 29.IBPluginDependency + 295.IBPluginDependency + 296.IBPluginDependency + 297.IBPluginDependency + 298.IBPluginDependency + 346.IBPluginDependency + 348.IBPluginDependency + 349.IBPluginDependency + 350.IBPluginDependency + 351.IBPluginDependency + 354.IBPluginDependency + 371.IBPluginDependency + 371.IBWindowTemplateEditedContentRect + 371.NSWindowTemplate.visibleAtLaunch + 372.IBPluginDependency + 375.IBPluginDependency + 376.IBPluginDependency + 377.IBPluginDependency + 378.IBPluginDependency + 379.IBPluginDependency + 380.IBPluginDependency + 381.IBPluginDependency + 382.IBPluginDependency + 383.IBPluginDependency + 384.IBPluginDependency + 385.IBPluginDependency + 386.IBPluginDependency + 387.IBPluginDependency + 388.IBPluginDependency + 389.IBPluginDependency + 390.IBPluginDependency + 391.IBPluginDependency + 392.IBPluginDependency + 393.IBPluginDependency + 394.IBPluginDependency + 395.IBPluginDependency + 396.IBPluginDependency + 397.IBPluginDependency + 398.IBPluginDependency + 399.IBPluginDependency + 400.IBPluginDependency + 401.IBPluginDependency + 402.IBPluginDependency + 403.IBPluginDependency + 404.IBPluginDependency + 405.IBPluginDependency + 406.IBPluginDependency + 407.IBPluginDependency + 408.IBPluginDependency + 409.IBPluginDependency + 410.IBPluginDependency + 411.IBPluginDependency + 412.IBPluginDependency + 413.IBPluginDependency + 414.IBPluginDependency + 415.IBPluginDependency + 416.IBPluginDependency + 417.IBPluginDependency + 418.IBPluginDependency + 419.IBPluginDependency + 450.IBPluginDependency + 491.IBPluginDependency + 492.IBNSSegmentedControlInspectorSelectedSegmentMetadataKey + 492.IBPluginDependency + 5.IBPluginDependency + 503.IBPluginDependency + 504.IBPluginDependency + 505.IBPluginDependency + 506.IBPluginDependency + 507.IBPluginDependency + 508.IBPluginDependency + 509.IBPluginDependency + 510.IBPluginDependency + 511.IBPluginDependency + 512.IBPluginDependency + 513.IBPluginDependency + 514.IBPluginDependency + 515.IBPluginDependency + 516.CustomClassName + 516.IBPluginDependency + 524.IBPluginDependency + 525.IBNSSegmentedControlInspectorSelectedSegmentMetadataKey + 525.IBPluginDependency + 527.IBPluginDependency + 528.IBNSSegmentedControlInspectorSelectedSegmentMetadataKey + 528.IBPluginDependency + 530.IBPluginDependency + 531.IBPluginDependency + 532.IBPluginDependency + 533.IBPluginDependency + 534.IBPluginDependency + 535.IBPluginDependency + 536.IBPluginDependency + 537.IBPluginDependency + 538.IBPluginDependency + 539.IBPluginDependency + 540.IBPluginDependency + 541.IBPluginDependency + 542.IBPluginDependency + 543.IBPluginDependency + 544.IBPluginDependency + 545.IBPluginDependency + 546.IBPluginDependency + 547.IBPluginDependency + 56.IBPluginDependency + 562.IBPluginDependency + 563.IBPluginDependency + 57.IBPluginDependency + 58.IBPluginDependency + 72.IBPluginDependency + 73.IBPluginDependency + 74.IBPluginDependency + 75.IBPluginDependency + 77.IBPluginDependency + 78.IBPluginDependency + 79.IBPluginDependency + 80.IBPluginDependency + 81.IBPluginDependency + 82.IBPluginDependency + 83.IBPluginDependency + 92.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{303, 221}, {480, 360}} + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + ArrayController + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + + + + YES + + + + + 567 + + + + YES + + AppController + NSObject + + IBProjectSource + ./Classes/AppController.h + + + + ArrayController + NSArrayController + + IBProjectSource + ./Classes/ArrayController.h + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + 3 + + YES + + YES + NSMenuCheckmark + NSMenuMixedState + + + YES + {11, 11} + {10, 3} + + + + diff --git a/Tests/Manual/CPSegmentedControlBindings/Resources/spinner.gif b/Tests/Manual/CPSegmentedControlBindings/Resources/spinner.gif new file mode 100644 index 000000000..77b36416b Binary files /dev/null and b/Tests/Manual/CPSegmentedControlBindings/Resources/spinner.gif differ diff --git a/Tests/Manual/CPSegmentedControlBindings/index-debug.html b/Tests/Manual/CPSegmentedControlBindings/index-debug.html new file mode 100644 index 000000000..8afbc1aeb --- /dev/null +++ b/Tests/Manual/CPSegmentedControlBindings/index-debug.html @@ -0,0 +1,112 @@ + + + + + + + + + + + + + + + + + + CPSegmentedControlBindings + + + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/CPSegmentedControlBindings/index.html b/Tests/Manual/CPSegmentedControlBindings/index.html new file mode 100644 index 000000000..cb2d2cf6d --- /dev/null +++ b/Tests/Manual/CPSegmentedControlBindings/index.html @@ -0,0 +1,82 @@ + + + + + + + + + + + + + + + + + + CPSegmentedControlBindings + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/CPSegmentedControlBindings/main.j b/Tests/Manual/CPSegmentedControlBindings/main.j new file mode 100644 index 000000000..2d87dbf29 --- /dev/null +++ b/Tests/Manual/CPSegmentedControlBindings/main.j @@ -0,0 +1,18 @@ +/* + * AppController.j + * CPSegmentedControlBindings + * + * Created by You on November 24, 2012. + * Copyright 2012, Your Company All rights reserved. + */ + +@import +@import + +@import "AppController.j" + + +function main(args, namedArgs) +{ + CPApplicationMain(args, namedArgs); +} diff --git a/Tests/Manual/CPTrace.j b/Tests/Manual/CPTrace.j new file mode 100644 index 000000000..fa326fb2b --- /dev/null +++ b/Tests/Manual/CPTrace.j @@ -0,0 +1,263 @@ +/* + * CPTrace.j + * + * Created by cacaodev + * Copyright 2012 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +var patchedClassesAndSelectors = [], + globalStack = [], + globalLevel = 0; + +var Tracer = function() +{ + this.td = 0; + this.tc = 0; + this.displayFunction = nil; +}; + +Tracer.prototype.log = function() +{ + var c = globalStack.length; + + for (var i = 0; i < c; i++) + { + var trace = globalStack.shift(); + this.displayFunction(trace.receiver, trace.selector, trace.args, trace.duration, this.td, this.tc, trace.level); + } +}; + +var defaultDisplay = function(receiver, selector, args, duration, total_duration, total_count, level) +{ + var message = objj_message(receiver, selector, args), + // WARNING: average duration only supported for root calls. + avg_message = (level == 0) ? (" , avg = " + (ROUND(100 * total_duration / total_count) / 100) + " ms") : ""; + + console.log(indent(level) + message + " in " + duration + " ms" + avg_message); +}; + +var indent = function(n) +{ + var str = ""; + while (n--) + str += " "; + + return str; +}; + +var objj_message = function(receiver, selector, args) +{ + var c = args.length, + sel = selector.split(":"), + rdesc = receiver ? [receiver description] : ""; + + while (c--) + sel.splice(c + 1, 0, ":" + [args[c] description] + " "); + + var joined = sel.join(""); + + if (args.length) + joined = joined.substring(0, joined.length - 1); + + return ("[" + rdesc + " " + joined + "]"); +}; + +function CPTrace(aClassName, aSelector, displayFunction) +{ + var aclass = CPClassFromString(aClassName); + + if (aclass) + _CPTraceClass(aclass, aSelector, displayFunction); + else if (typeof(objj_getClassList) != 'undefined') + { + var classes = [], + patchednum = 0, + numclasses = objj_getClassList(classes, 400), + regex = new RegExp(aClassName); + + while (numclasses--) + { + var cls = classes[numclasses]; + if (regex.test(cls)) + { + console.log("Patching " + cls + " -" + aSelector); + _CPTraceClass(cls, aSelector, displayFunction); + patchednum++; + } + } + + if (patchednum == 0) + console.log("Could not find any class matching '" + aClassName + "'"); + else + console.log("Patched " + patchednum + " classes matching " + aClassName); + } + else + [CPException raise:CPInvalidArgumentException reason:("Unknown class name '" + aClassName + "'")]; +} + +var _CPTraceClass = function(aClass, aSelector, displayFunction) +{ + if (![aClass instancesRespondToSelector:aSelector]) + [CPException raise:CPInvalidArgumentException reason:(aClass + " does not respond to '" + aSelector + "'")]; + + var superclass = aClass; + while (![superclass instancesImplementsSelector:aSelector] && superclass != [CPObject class]) + superclass = [superclass superclass]; + + var patchUniqueString = (superclass + "_" + aSelector); + if ([patchedClassesAndSelectors containsObject:patchUniqueString]) + { + if (superclass == aClass) + console.log(superclass + " -" + aSelector + " is already patched. Ignoring."); + else + console.log("-" + aSelector + " is implemented in a superclass of " + aClass + " (" + superclass + ") where it's already patched. Ignoring."); + + return; + } + + var patched_sel = CPSelectorFromString("patched_" + CPStringFromSelector(aSelector)), + tracer = new Tracer(); + + tracer.displayFunction = displayFunction ? displayFunction : defaultDisplay; + + class_addMethod(aClass, patched_sel, function() + { + var orig_arguments = arguments, + receiver = orig_arguments[0], + selector = orig_arguments[1], + args = []; + + for (var i = 2; i < orig_arguments.length; i++) + args.push(orig_arguments[i]); + + orig_arguments[1] = patched_sel; + + var trace = {receiver:receiver, selector:selector, args:args, start:(new Date()), level:globalLevel}; + globalStack.push(trace); + globalLevel++; + + objj_msgSend.apply(objj_msgSend, orig_arguments); + + var duration = (trace.duration = new Date() - trace.start); + globalLevel--; + if (globalLevel == 0) + { + if (duration > 0) + tracer.tc++; + tracer.td += trace.duration; + tracer.log(); + } + + }, ""); + + Swizzle(aClass, aSelector, patched_sel); + [patchedClassesAndSelectors addObject:patchUniqueString]; +}; + +function CPTraceStop(aClass, aSelector) +{ + var patchUniqueString = (aClass + "_" + aSelector); + if (![patchedClassesAndSelectors containsObject:patchUniqueString]) + return; + + var patched_sel = CPSelectorFromString("patched_" + CPStringFromSelector(aSelector)); + Swizzle(CPClassFromString(aClass), patched_sel, aSelector); + [patchedClassesAndSelectors removeObject:patchUniqueString]; +} + +var Swizzle = function(aClass, orig_sel, new_sel) +{ + var origMethod = class_getInstanceMethod(aClass, orig_sel), + newMethod = class_getInstanceMethod(aClass, new_sel); + +// This check should be in class_addMethod : Don't add and return NO and if method already exists. + if (getMethodNoSuper(aClass, orig_sel) == NULL) + { + class_addMethod(aClass, orig_sel, method_getImplementation(newMethod), ""); + class_replaceMethod(aClass, new_sel, method_getImplementation(origMethod), ""); + } + else + method_exchangeImplementations(origMethod, newMethod); + +/* + if (class_addMethod(aClass, orig_sel, method_getImplementation(newMethod), "")) + class_replaceMethod(aClass, new_sel, method_getImplementation(origMethod), ""); + else + method_exchangeImplementations(origMethod, newMethod); +*/ +}; + + +var getMethodNoSuper = function(cls, sel) +{ + var method_list = cls.method_list, + count = method_list.length; + + while (count--) + { + var mthd = method_list[count]; + if (mthd.name == sel) + return mthd; + } + + return NULL; +} + +/* + Utility for moving average +*/ +var moving_averager = function(period) +{ + var nums = []; + + return function(num) + { + nums.push(num); + + if (nums.length > period) + nums.splice(0,1); // remove the first element of the array + + var sum = 0, + count = nums.length; + + for (var i = 0; i < count; i++) + sum += nums[i]; + + var n = period; + + if (count < period) + n = count; + + return(sum / n); + } +}; + +@implementation CPObject (instancesImplementsSelector) + +- (BOOL)instancesImplementsSelector:(SEL)aSelector +{ + var methods = class_copyMethodList(self), + count = methods.length; + + while (count--) + if (method_getName(methods[count]) === aSelector) + return YES; + + return NO; +} + +@end \ No newline at end of file diff --git a/Tests/Manual/CPViewController/Resources/Window.xib b/Tests/Manual/CPViewController/Resources/Window.xib new file mode 100644 index 000000000..085316eb7 --- /dev/null +++ b/Tests/Manual/CPViewController/Resources/Window.xib @@ -0,0 +1,121 @@ + + + + 1070 + 11C42 + 1938 + 1138.17 + 567.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 1938 + + + NSWindowTemplate + NSView + NSCustomObject + + + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + + NSObject + + + FirstResponder + + + NSApplication + + + 15 + 2 + {{196, 240}, {480, 270}} + 544735232 + Window + NSWindow + + + + + 256 + {480, 270} + + + + {{0, 0}, {1680, 1028}} + {10000000000000, 10000000000000} + YES + + + + + + + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + + + + + + 2 + + + + + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{357, 418}, {480, 270}} + + com.apple.InterfaceBuilder.CocoaPlugin + + + + + + 2 + + + 0 + IBCocoaFramework + YES + 3 + YES + + diff --git a/Tests/Manual/Issue-1357-fix/AppController.j b/Tests/Manual/Issue-1357-fix/AppController.j new file mode 100644 index 000000000..e54f1bf3b --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/AppController.j @@ -0,0 +1,63 @@ +/* + * AppController.j + * CPViewNoDisplayAfterHidingAndResizeBug + * + * Created by You on February 24, 2013. + * Copyright 2013, Your Company All rights reserved. + */ + +@import + + +@implementation AppController : CPObject +{ + CPView view; +} + +- (void)applicationDidFinishLaunching:(CPNotification)aNotification +{ + var theWindow = [[CPWindow alloc] initWithContentRect:CGRectMake(100,100,700,400) styleMask:CPResizableWindowMask], + contentView = [theWindow contentView]; + + var button = [[CPButton alloc] initWithFrame:CGRectMake(10, 10, 200, 28)]; + [button setTitle:@"Hide"]; + [button setAlternateTitle:@"Unhide"]; + [button setButtonType:CPToggleButton]; + [button setTarget:self]; + [button setAction:@selector(hide:)]; + + var textField = [[CPTextField alloc] initWithFrame:CGRectMake(230, 10, 500, 50)]; + [textField setStringValue:@"Test: 1/ Hide the red view, 2/ resize the window (and the red view), 3/ unhide the view.\n Expected: the red view should be visible and resized."]; + + view = [[CustomView alloc] initWithFrame:CGRectMake(100,100, 200,200)]; + [view setAutoresizingMask:CPViewWidthSizable | CPViewHeightSizable]; + + [contentView addSubview:button]; + [contentView addSubview:textField]; + [contentView addSubview:view]; + + [theWindow orderFront:self]; +} + +- (void)hide:(id)sender +{ + var state = [sender state]; + [view setHidden:(state == CPOnState)]; +} + +@end + +@implementation CustomView : CPView +{ +} + +- (void)drawRect:(CGRect)aRect +{ + var ctx = [[CPGraphicsContext currentContext] graphicsPort]; + + [[CPColor redColor] set]; + + CGContextFillRect(ctx, [self bounds]); +} + +@end \ No newline at end of file diff --git a/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/AppController.j b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/AppController.j new file mode 100644 index 000000000..e54f1bf3b --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/AppController.j @@ -0,0 +1,63 @@ +/* + * AppController.j + * CPViewNoDisplayAfterHidingAndResizeBug + * + * Created by You on February 24, 2013. + * Copyright 2013, Your Company All rights reserved. + */ + +@import + + +@implementation AppController : CPObject +{ + CPView view; +} + +- (void)applicationDidFinishLaunching:(CPNotification)aNotification +{ + var theWindow = [[CPWindow alloc] initWithContentRect:CGRectMake(100,100,700,400) styleMask:CPResizableWindowMask], + contentView = [theWindow contentView]; + + var button = [[CPButton alloc] initWithFrame:CGRectMake(10, 10, 200, 28)]; + [button setTitle:@"Hide"]; + [button setAlternateTitle:@"Unhide"]; + [button setButtonType:CPToggleButton]; + [button setTarget:self]; + [button setAction:@selector(hide:)]; + + var textField = [[CPTextField alloc] initWithFrame:CGRectMake(230, 10, 500, 50)]; + [textField setStringValue:@"Test: 1/ Hide the red view, 2/ resize the window (and the red view), 3/ unhide the view.\n Expected: the red view should be visible and resized."]; + + view = [[CustomView alloc] initWithFrame:CGRectMake(100,100, 200,200)]; + [view setAutoresizingMask:CPViewWidthSizable | CPViewHeightSizable]; + + [contentView addSubview:button]; + [contentView addSubview:textField]; + [contentView addSubview:view]; + + [theWindow orderFront:self]; +} + +- (void)hide:(id)sender +{ + var state = [sender state]; + [view setHidden:(state == CPOnState)]; +} + +@end + +@implementation CustomView : CPView +{ +} + +- (void)drawRect:(CGRect)aRect +{ + var ctx = [[CPGraphicsContext currentContext] graphicsPort]; + + [[CPColor redColor] set]; + + CGContextFillRect(ctx, [self bounds]); +} + +@end \ No newline at end of file diff --git a/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/Info.plist b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/Info.plist new file mode 100644 index 000000000..55e6ab70e --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/Info.plist @@ -0,0 +1,12 @@ + + + + + CPApplicationDelegateClass + AppController + CPBundleName + CPViewNoDisplayAfterHidingAndResizeBug + CPPrincipalClass + CPApplication + + diff --git a/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/Jakefile b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/Jakefile new file mode 100644 index 000000000..bb12b2e12 --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/Jakefile @@ -0,0 +1,93 @@ +/* + * Jakefile + * CPViewNoDisplayAfterHidingAndResizeBug + * + * Created by You on February 24, 2013. + * Copyright 2013, Your Company All rights reserved. + */ + +var ENV = require("system").env, + FILE = require("file"), + JAKE = require("jake"), + task = JAKE.task, + FileList = JAKE.FileList, + app = require("cappuccino/jake").app, + configuration = ENV["CONFIG"] || ENV["CONFIGURATION"] || ENV["c"] || "Debug", + OS = require("os"); + +app ("CPViewNoDisplayAfterHidingAndResizeBug", function(task) +{ + task.setBuildIntermediatesPath(FILE.join("Build", "CPViewNoDisplayAfterHidingAndResizeBug.build", configuration)); + task.setBuildPath(FILE.join("Build", configuration)); + + task.setProductName("CPViewNoDisplayAfterHidingAndResizeBug"); + task.setIdentifier("com.yourcompany.CPViewNoDisplayAfterHidingAndResizeBug"); + task.setVersion("1.0"); + task.setAuthor("Your Company"); + task.setEmail("feedback @nospam@ yourcompany.com"); + task.setSummary("CPViewNoDisplayAfterHidingAndResizeBug"); + task.setSources((new FileList("**/*.j")).exclude(FILE.join("Build", "**"))); + task.setResources(new FileList("Resources/**")); + task.setIndexFilePath("index.html"); + task.setInfoPlistPath("Info.plist"); + + if (configuration === "Debug") + task.setCompilerFlags("-DDEBUG -g"); + else + task.setCompilerFlags("-O"); +}); + +task ("default", ["CPViewNoDisplayAfterHidingAndResizeBug"], function() +{ + printResults(configuration); +}); + +task ("build", ["default"]); + +task ("debug", function() +{ + ENV["CONFIGURATION"] = "Debug"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("release", function() +{ + ENV["CONFIGURATION"] = "Release"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("run", ["debug"], function() +{ + OS.system(["open", FILE.join("Build", "Debug", "CPViewNoDisplayAfterHidingAndResizeBug", "index.html")]); +}); + +task ("run-release", ["release"], function() +{ + OS.system(["open", FILE.join("Build", "Release", "CPViewNoDisplayAfterHidingAndResizeBug", "index.html")]); +}); + +task ("deploy", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Deployment", "CPViewNoDisplayAfterHidingAndResizeBug")); + OS.system(["press", "-f", FILE.join("Build", "Release", "CPViewNoDisplayAfterHidingAndResizeBug"), FILE.join("Build", "Deployment", "CPViewNoDisplayAfterHidingAndResizeBug")]); + printResults("Deployment") +}); + +task ("desktop", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Desktop", "CPViewNoDisplayAfterHidingAndResizeBug")); + require("cappuccino/nativehost").buildNativeHost(FILE.join("Build", "Release", "CPViewNoDisplayAfterHidingAndResizeBug"), FILE.join("Build", "Desktop", "CPViewNoDisplayAfterHidingAndResizeBug", "CPViewNoDisplayAfterHidingAndResizeBug.app")); + printResults("Desktop") +}); + +task ("run-desktop", ["desktop"], function() +{ + OS.system([FILE.join("Build", "Desktop", "CPViewNoDisplayAfterHidingAndResizeBug", "CPViewNoDisplayAfterHidingAndResizeBug.app", "Contents", "MacOS", "NativeHost"), "-i"]); +}); + +function printResults(configuration) +{ + print("----------------------------"); + print(configuration+" app built at path: "+FILE.join("Build", configuration, "CPViewNoDisplayAfterHidingAndResizeBug")); + print("----------------------------"); +} diff --git a/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/Resources/spinner.gif b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/Resources/spinner.gif new file mode 100644 index 000000000..a5e705f6c Binary files /dev/null and b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/Resources/spinner.gif differ diff --git a/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/index-debug.html b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/index-debug.html new file mode 100644 index 000000000..636db06c8 --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/index-debug.html @@ -0,0 +1,112 @@ + + + + + + + + + + + + + + + + + + CPViewNoDisplayAfterHidingAndResizeBug + + + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/index.html b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/index.html new file mode 100644 index 000000000..f27a4cb8a --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/index.html @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + CPViewNoDisplayAfterHidingAndResizeBug + + + + + + + + + + + + +
+
+ + + +
+
+ + + + diff --git a/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/main.j b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/main.j new file mode 100644 index 000000000..ca820e685 --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/main.j @@ -0,0 +1,18 @@ +/* + * AppController.j + * CPViewNoDisplayAfterHidingAndResizeBug + * + * Created by You on February 24, 2013. + * Copyright 2013, Your Company All rights reserved. + */ + +@import +@import + +@import "AppController.j" + + +function main(args, namedArgs) +{ + CPApplicationMain(args, namedArgs); +} diff --git a/Tests/Manual/Issue-1357-fix/Info.plist b/Tests/Manual/Issue-1357-fix/Info.plist new file mode 100644 index 000000000..55e6ab70e --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/Info.plist @@ -0,0 +1,12 @@ + + + + + CPApplicationDelegateClass + AppController + CPBundleName + CPViewNoDisplayAfterHidingAndResizeBug + CPPrincipalClass + CPApplication + + diff --git a/Tests/Manual/Issue-1357-fix/Jakefile b/Tests/Manual/Issue-1357-fix/Jakefile new file mode 100644 index 000000000..bb12b2e12 --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/Jakefile @@ -0,0 +1,93 @@ +/* + * Jakefile + * CPViewNoDisplayAfterHidingAndResizeBug + * + * Created by You on February 24, 2013. + * Copyright 2013, Your Company All rights reserved. + */ + +var ENV = require("system").env, + FILE = require("file"), + JAKE = require("jake"), + task = JAKE.task, + FileList = JAKE.FileList, + app = require("cappuccino/jake").app, + configuration = ENV["CONFIG"] || ENV["CONFIGURATION"] || ENV["c"] || "Debug", + OS = require("os"); + +app ("CPViewNoDisplayAfterHidingAndResizeBug", function(task) +{ + task.setBuildIntermediatesPath(FILE.join("Build", "CPViewNoDisplayAfterHidingAndResizeBug.build", configuration)); + task.setBuildPath(FILE.join("Build", configuration)); + + task.setProductName("CPViewNoDisplayAfterHidingAndResizeBug"); + task.setIdentifier("com.yourcompany.CPViewNoDisplayAfterHidingAndResizeBug"); + task.setVersion("1.0"); + task.setAuthor("Your Company"); + task.setEmail("feedback @nospam@ yourcompany.com"); + task.setSummary("CPViewNoDisplayAfterHidingAndResizeBug"); + task.setSources((new FileList("**/*.j")).exclude(FILE.join("Build", "**"))); + task.setResources(new FileList("Resources/**")); + task.setIndexFilePath("index.html"); + task.setInfoPlistPath("Info.plist"); + + if (configuration === "Debug") + task.setCompilerFlags("-DDEBUG -g"); + else + task.setCompilerFlags("-O"); +}); + +task ("default", ["CPViewNoDisplayAfterHidingAndResizeBug"], function() +{ + printResults(configuration); +}); + +task ("build", ["default"]); + +task ("debug", function() +{ + ENV["CONFIGURATION"] = "Debug"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("release", function() +{ + ENV["CONFIGURATION"] = "Release"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("run", ["debug"], function() +{ + OS.system(["open", FILE.join("Build", "Debug", "CPViewNoDisplayAfterHidingAndResizeBug", "index.html")]); +}); + +task ("run-release", ["release"], function() +{ + OS.system(["open", FILE.join("Build", "Release", "CPViewNoDisplayAfterHidingAndResizeBug", "index.html")]); +}); + +task ("deploy", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Deployment", "CPViewNoDisplayAfterHidingAndResizeBug")); + OS.system(["press", "-f", FILE.join("Build", "Release", "CPViewNoDisplayAfterHidingAndResizeBug"), FILE.join("Build", "Deployment", "CPViewNoDisplayAfterHidingAndResizeBug")]); + printResults("Deployment") +}); + +task ("desktop", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Desktop", "CPViewNoDisplayAfterHidingAndResizeBug")); + require("cappuccino/nativehost").buildNativeHost(FILE.join("Build", "Release", "CPViewNoDisplayAfterHidingAndResizeBug"), FILE.join("Build", "Desktop", "CPViewNoDisplayAfterHidingAndResizeBug", "CPViewNoDisplayAfterHidingAndResizeBug.app")); + printResults("Desktop") +}); + +task ("run-desktop", ["desktop"], function() +{ + OS.system([FILE.join("Build", "Desktop", "CPViewNoDisplayAfterHidingAndResizeBug", "CPViewNoDisplayAfterHidingAndResizeBug.app", "Contents", "MacOS", "NativeHost"), "-i"]); +}); + +function printResults(configuration) +{ + print("----------------------------"); + print(configuration+" app built at path: "+FILE.join("Build", configuration, "CPViewNoDisplayAfterHidingAndResizeBug")); + print("----------------------------"); +} diff --git a/Tests/Manual/Issue-1357-fix/Resources/spinner.gif b/Tests/Manual/Issue-1357-fix/Resources/spinner.gif new file mode 100644 index 000000000..a5e705f6c Binary files /dev/null and b/Tests/Manual/Issue-1357-fix/Resources/spinner.gif differ diff --git a/Tests/Manual/Issue-1357-fix/index-debug.html b/Tests/Manual/Issue-1357-fix/index-debug.html new file mode 100644 index 000000000..636db06c8 --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/index-debug.html @@ -0,0 +1,112 @@ + + + + + + + + + + + + + + + + + + CPViewNoDisplayAfterHidingAndResizeBug + + + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/Issue-1357-fix/index.html b/Tests/Manual/Issue-1357-fix/index.html new file mode 100644 index 000000000..f27a4cb8a --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/index.html @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + CPViewNoDisplayAfterHidingAndResizeBug + + + + + + + + + + + + +
+
+ + + +
+
+ + + + diff --git a/Tests/Manual/Issue-1357-fix/main.j b/Tests/Manual/Issue-1357-fix/main.j new file mode 100644 index 000000000..ca820e685 --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/main.j @@ -0,0 +1,18 @@ +/* + * AppController.j + * CPViewNoDisplayAfterHidingAndResizeBug + * + * Created by You on February 24, 2013. + * Copyright 2013, Your Company All rights reserved. + */ + +@import +@import + +@import "AppController.j" + + +function main(args, namedArgs) +{ + CPApplicationMain(args, namedArgs); +} diff --git a/Tests/Manual/TableTest/DataView/Resources/MainMenu.cib b/Tests/Manual/TableTest/DataView/Resources/MainMenu.cib index 49a9b45ac..5a50784ba 100644 --- a/Tests/Manual/TableTest/DataView/Resources/MainMenu.cib +++ b/Tests/Manual/TableTest/DataView/Resources/MainMenu.cib @@ -1 +1 @@ -280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;0E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;4E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;0E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;1;7E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;1;9E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;11E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;13E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;15E;D;K;6;CP$UIDd;2;17E;D;K;6;CP$UIDd;2;18E;D;K;6;CP$UIDd;2;19E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;168E;D;K;6;CP$UIDd;3;170E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;3;163E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;171E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;172E;E;D;K;10;$classnameS;31;CPCibRuntimeAttributesConnectorK;8;$classesA;S;31;CPCibRuntimeAttributesConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;165E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;1;0E;K;40;CPCibRuntimeAttributesConnectorObjectKeyD;K;6;CP$UIDd;3;165E;K;42;CPCibRuntimeAttributesConnectorKeyPathsKeyD;K;6;CP$UIDd;3;173E;K;40;CPCibRuntimeAttributesConnectorValuesKeyD;K;6;CP$UIDd;3;174E;E;D;K;10;$classnameS;20;CPCibOutletConnectorK;8;$classesA;S;20;CPCibOutletConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;11E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;158E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;175E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;74E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;72E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;175E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;158E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;160E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;176E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;158E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;168E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;177E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;158E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;148E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;178E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;158E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;142E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;179E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;148E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;158E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;175E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;160E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;166E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;180E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;160E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;162E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;181E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;160E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;165E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;182E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;160E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;163E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;183E;E;D;K;10;$classnameS;21;CPCibControlConnectorK;8;$classesA;S;21;CPCibControlConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;79E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;184E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;81E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;185E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;84E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;11E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;186E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;129E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;187E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;134E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;188E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;127E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;189E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;128E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;190E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;130E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;191E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;91E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;192E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;136E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;193E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;133E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;194E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;85E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;72E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;195E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;118E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;196E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;119E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;197E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;100E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;198E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;95E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;199E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;98E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;200E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;113E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;201E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;94E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;202E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;99E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;203E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;114E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;204E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;96E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;205E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;109E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;206E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;106E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;207E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;102E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;208E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;112E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;209E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;80E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;210E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;139E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;211E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;140E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;212E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;115E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;213E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;122E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;214E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;123E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;215E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;124E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;216E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;166E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;160E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;217E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;156E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;158E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;218E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;155E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;158E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;219E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;157E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;158E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;220E;E;D;K;10;$classnameS;21;CPCibBindingConnectorK;8;$classesA;S;21;CPCibBindingConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;66E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;157E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;158E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;221E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;222E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;223E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;225E;E;D;K;6;$classD;K;6;CP$UIDd;2;66E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;155E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;168E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;226E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;222E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;227E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;228E;E;D;K;6;$classD;K;6;CP$UIDd;2;66E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;156E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;158E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;221E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;222E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;223E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;229E;E;D;K;6;$classD;K;6;CP$UIDd;2;66E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;168E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;158E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;230E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;231E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;232E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;233E;E;D;K;6;$classD;K;6;CP$UIDd;2;66E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;150E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;168E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;234E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;235E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;236E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;237E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;171E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;238E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;239E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;240E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;241E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;77E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;74E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;241E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;244E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;245E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;246E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;247E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;248E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;77E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;249E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;77E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;250E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;77E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;251E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;77E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;252E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;253E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;83E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;74E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;253E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;254E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;255E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;256E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;83E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;257E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;83E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;258E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;259E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;83E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;260E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;246E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;247E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;248E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;83E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;246E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;247E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;248E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;83E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;261E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;90E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;74E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;261E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;262E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;263E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;264E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;265E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;93E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;74E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;265E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;266E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;267E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;268E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;269E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;270E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;271E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;246E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;247E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;248E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;272E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;273E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;274E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;275E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;276E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;277E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;246E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;247E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;248E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;278E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;279E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;280E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;281E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;104E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;281E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;282E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;283E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;284E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;104E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;285E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;280E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;286E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;104E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;287E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;288E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;289E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;104E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;290E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;291E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;292E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;104E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;293E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;294E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;295E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;104E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;296E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;297E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;111E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;297E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;298E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;299E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;300E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;301E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;302E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;303E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;304E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;305E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;117E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;305E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;306E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;307E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;117E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;308E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;117E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;309E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;121E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;309E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;310E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;311E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;295E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;296E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;312E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;292E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;293E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;313E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;284E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;285E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;280E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;314E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;126E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;74E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;314E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;315E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;316E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;317E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;318E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;319E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;280E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;320E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;321E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;322E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;323E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;324E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;132E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;324E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;325E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;326E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;327E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;132E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;328E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;329E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;246E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;247E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;248E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;330E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;331E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;138E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;74E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;331E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;332E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;333E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;138E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;334E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;335E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;336E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;138E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;141E;K;30;_CPCibWindowTemplateMinSizeKeyD;K;6;CP$UIDd;3;337E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;338E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;339E;K;30;_CPCibWindowTemplateWTFlagsKeyD;K;6;CP$UIDd;3;340E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;341E;K;33;_CPCibWindowTemplateScreenRectKeyD;K;6;CP$UIDd;3;342E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;343E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;344E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;3;144E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;143E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;346E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;346E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;347E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;E;D;K;10;$classnameS;12;CPScrollViewK;8;$classesA;S;12;CPScrollViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;145E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;144E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;349E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;350E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;351E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;144E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;352E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;353E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;355E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;1;0E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;3;153E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;3;152E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;356E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;356E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;356E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;356E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;246E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;246E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;246E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;357E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;292E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;3;345E;E;D;K;10;$classnameS;11;CPTableViewK;8;$classesA;S;11;CPTableViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;147E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;355E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;358E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;358E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;355E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;360E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;361E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;K;12;$agrid-colorD;K;6;CP$UIDd;3;362E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;363E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;364E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;365E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;345E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;363E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;246E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;246E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;246E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;246E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;248E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;366E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;362E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;3;345E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;246E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;1;0E;K;26;CPTableViewAutosaveNameKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;13;CPTableColumnK;8;$classesA;S;13;CPTableColumnS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;149E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;367E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;368E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;369E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;371E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;372E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;284E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;248E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;248E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;10;CPScrollerK;8;$classesA;S;10;CPScrollerS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;151E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;146E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;373E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;374E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;146E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;375E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;376E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;377E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;378E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;345E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;146E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;379E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;363E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;345E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;248E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;380E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;151E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;146E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;381E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;382E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;146E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;375E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;376E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;377E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;378E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;345E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;146E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;383E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;363E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;345E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;246E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;384E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;8;CPButtonK;8;$classesA;S;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;154E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;144E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;385E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;386E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;144E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;387E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;388E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;389E;K;6;$afontD;K;6;CP$UIDd;3;391E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;345E;K;11;$aalignmentD;K;6;CP$UIDd;3;292E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;345E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;363E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;392E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;247E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;248E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;393E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;345E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;246E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;292E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;345E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;154E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;144E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;394E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;395E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;144E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;387E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;388E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;389E;K;6;$afontD;K;6;CP$UIDd;3;391E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;345E;K;11;$aalignmentD;K;6;CP$UIDd;3;292E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;345E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;363E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;396E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;247E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;248E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;393E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;345E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;246E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;292E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;345E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;154E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;144E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;397E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;398E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;144E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;387E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;388E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;389E;K;6;$afontD;K;6;CP$UIDd;3;391E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;345E;K;11;$aalignmentD;K;6;CP$UIDd;3;292E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;345E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;363E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;399E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;247E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;248E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;393E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;345E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;246E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;292E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;345E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;400E;E;D;K;10;$classnameS;16;_CPCibCustomViewK;8;$classesA;S;16;_CPCibCustomViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;159E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;401E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;401E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;402E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;356E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;403E;E;D;K;10;$classnameS;11;CPTextFieldK;8;$classesA;S;11;CPTextFieldS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;161E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;160E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;295E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;404E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;405E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;160E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;406E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;407E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;K;6;$afontD;K;6;CP$UIDd;3;408E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;363E;K;11;$aalignmentD;K;6;CP$UIDd;3;363E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;246E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;181E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;409E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;248E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;248E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;248E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;410E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;363E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;363E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;161E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;160E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;292E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;411E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;412E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;160E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;413E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;407E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;K;6;$afontD;K;6;CP$UIDd;3;408E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;292E;K;11;$aalignmentD;K;6;CP$UIDd;3;363E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;246E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;183E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;409E;K;21;CPControlFormatterKeyD;K;6;CP$UIDd;3;170E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;248E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;248E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;248E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;410E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;292E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;363E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;19;CPProgressIndicatorK;8;$classesA;S;19;CPProgressIndicatorS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;164E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;160E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;414E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;415E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;160E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;413E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;416E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;K;9;_minValueD;K;6;CP$UIDd;3;345E;K;9;_maxValueD;K;6;CP$UIDd;3;417E;K;12;_doubleValueD;K;6;CP$UIDd;3;345E;K;12;_controlSizeD;K;6;CP$UIDd;3;345E;K;14;_indeterminateD;K;6;CP$UIDd;3;248E;K;6;_styleD;K;6;CP$UIDd;3;345E;K;12;_isAnimatingD;K;6;CP$UIDd;1;0E;K;26;_isDisplayedWhenStoppedSetD;K;6;CP$UIDd;1;0E;K;23;_isDisplayedWhenStoppedD;K;6;CP$UIDd;3;246E;E;D;K;6;$classD;K;6;CP$UIDd;3;154E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;160E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;363E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;418E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;419E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;160E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;413E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;388E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;378E;K;16;$aimage-positionD;K;6;CP$UIDd;3;295E;K;6;$afontD;K;6;CP$UIDd;3;408E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;345E;K;11;$aalignmentD;K;6;CP$UIDd;3;292E;K;7;$aimageD;K;6;CP$UIDd;3;421E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;345E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;363E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;247E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;247E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;248E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;295E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;345E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;246E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;295E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;345E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;17;CPArrayControllerK;8;$classesA;S;17;CPArrayControllerS;18;CPObjectControllerS;12;CPControllerS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;167E;K;28;CPObjectControllerContentKeyD;K;6;CP$UIDd;1;0E;K;36;CPObjectControllerObjectClassNameKeyD;K;6;CP$UIDd;3;422E;K;31;CPObjectControllerIsEditableKeyD;K;6;CP$UIDd;3;246E;K;49;CPObjectControllerAutomaticallyPreparesContentKeyD;K;6;CP$UIDd;3;248E;K;37;CPArrayControllerAvoidsEmptySelectionD;K;6;CP$UIDd;3;248E;K;49;CPArrayControllerClearsFilterPredicateOnInsertionD;K;6;CP$UIDd;3;246E;K;41;CPArrayControllerFilterRestrictsInsertionD;K;6;CP$UIDd;3;246E;K;35;CPArrayControllerPreservesSelectionD;K;6;CP$UIDd;3;246E;K;39;CPArrayControllerSelectsInsertedObjectsD;K;6;CP$UIDd;3;248E;K;47;CPArrayControllerAlwaysUsesMultipleValuesMarkerD;K;6;CP$UIDd;3;248E;K;47;CPArrayControllerAutomaticallyRearrangesObjectsD;K;6;CP$UIDd;3;248E;E;D;K;10;$classnameS;20;CPByteCountFormatterK;8;$classesA;S;20;CPByteCountFormatterS;11;CPFormatterS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;169E;K;33;CPByteCountFormatterCountStyleKeyD;K;6;CP$UIDd;3;345E;K;49;CPByteCountFormatterAllowsNonnumericFormattingKeyD;K;6;CP$UIDd;3;248E;K;46;CPByteCountFormatterIncludesActualByteCountKeyD;K;6;CP$UIDd;3;248E;K;36;CPByteCountFormatterIncludesCountKeyD;K;6;CP$UIDd;3;246E;K;35;CPByteCountFormatterIncludesUnitKeyD;K;6;CP$UIDd;3;246E;K;31;CPByteCountFormatterAdaptiveKeyD;K;6;CP$UIDd;3;246E;K;45;CPByteCountFormatterZeroPadsFractionDigitsKeyD;K;6;CP$UIDd;3;246E;K;35;CPByteCountFormatterAllowedUnitsKeyD;K;6;CP$UIDd;3;345E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;142E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;423E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;284E;E;E;S;8;delegateS;8;dataViewS;13;rowControllerS;9;tableViewS;9;theWindowS;11;abortButtonS;8;filenameS;11;progressBarS;4;sizeS;15;arrangeInFront:S;19;performMiniaturize:S;29;orderFrontStandardAboutPanel:S;13;openDocument:S;13;performClose:S;13;saveDocument:S;15;saveDocumentAs:S;12;newDocument:S;9;showHelp:S;22;revertDocumentToSaved:S;21;clearRecentDocuments:S;10;terminate:S;13;stopSpeaking:S;14;startSpeaking:S;5;copy:S;10;selectAll:S;4;cut:S;14;checkSpelling:S;7;delete:S;6;paste:S;15;showGuessPanel:S;5;undo:S;23;performFindPanelAction:S;29;centerSelectionInVisibleArea:S;5;redo:S;30;toggleContinuousSpellChecking:S;12;performZoom:S;19;toggleToolbarShown:S;31;runToolbarCustomizationPalette:S;22;toggleGrammarChecking:S;24;toggleSmartInsertDelete:S;33;toggleAutomaticQuoteSubstitution:S;29;toggleAutomaticLinkDetection:S;6;abort:S;6;start:S;12;removeFiles:S;5;stop:S;18;enabled: uploadingS;7;enabledS;9;uploadingD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;E;E;S;31;enabled: selectedObjects.@countS;22;selectedObjects.@countD;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;E;E;D;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;K;22;CPValueTransformerNameD;K;6;CP$UIDd;3;424E;E;E;S;18;contentArray: rowsS;12;contentArrayS;4;rowsD;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;E;E;S;22;value: arrangedObjectsS;5;valueS;15;arrangedObjectsD;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;E;E;S;9;AMainMenuS;11;_CPMainMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;89E;E;E;S;6;WindowS;14;submenuAction:d;7;1048576S;14;_CPWindowsMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;E;E;T;S;0;F;S;18;Bring All to FrontS;4;ZoomS;8;MinimizeS;1;mS;14;NewApplicationS;18;_CPApplicationMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;85E;E;E;S;20;About NewApplicationS;19;Quit NewApplicationS;1;qS;12;Preferences…S;1;,S;4;HelpD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;91E;E;E;S;19;NewApplication HelpS;1;?S;4;EditD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;116E;E;E;S;6;DeleteS;10;Select AllS;1;aS;4;UndoS;1;zS;3;CutS;1;xS;5;PasteS;1;vS;4;CopyS;1;cS;4;RedoS;1;Zd;7;1179648S;4;FindD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;106E;E;E;S;13;Find Previousd;1;3S;1;GS;17;Jump to SelectionS;1;jS;22;Use Selection for Findd;1;7S;1;eS;9;Find Nextd;1;2S;1;gS;5;Find…d;1;1S;1;fS;20;Spelling and GrammarD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;115E;E;E;S;27;Check Spelling While TypingS;14;Check SpellingS;1;;S;14;Show Spelling…S;1;:S;27;Check Grammar With SpellingS;6;SpeechD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;118E;E;E;S;13;Stop SpeakingS;14;Start SpeakingS;13;SubstitutionsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;E;E;S;16;Smart Copy/PasteS;12;Smart QuotesS;11;Smart LinksS;4;FileD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;136E;E;E;S;4;SaveS;1;sS;8;Save As…S;1;SS;5;Open…S;1;oS;3;NewS;1;nS;11;Open RecentS;22;_CPRecentDocumentsMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;133E;E;E;S;10;Clear MenuS;5;CloseS;1;wS;15;Revert to SavedS;4;ViewD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;E;E;S;12;Show ToolbarS;1;td;7;1572864S;18;Customize Toolbar…S;10;{350, 222}S;32;{10000000000000, 10000000000000}S;8;CPWindowd;10;1948778496S;22;{{51, 69}, {569, 267}}S;21;{{0, 0}, {1440, 878}}d;2;15S;21;DataView - Cell-basedd;1;0S;20;{{0, 0}, {569, 267}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;155E;E;E;S;6;normalS;21;{{0, 36}, {569, 231}}S;20;{{0, 0}, {569, 231}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;355E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;357E;E;E;d;2;18S;10;scrollviewD;K;10;$classnameS;10;CPClipViewK;8;$classesA;S;10;CPClipViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;354E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;146E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;425E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;358E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;426E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;146E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;375E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;427E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;3;148E;E;d;2;10D;K;6;$classD;K;6;CP$UIDd;3;143E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;146E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;428E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;428E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;146E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;E;S;20;{{0, 0}, {567, 229}}D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;359E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;429E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;3;359E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;430E;E;d;1;4d;2;49S;6;{3, 2}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;150E;E;E;d;3;564d;2;40d;4;1000D;K;10;$classnameS;24;_CPTableColumnHeaderViewK;8;$classesA;S;24;_CPTableColumnHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;370E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;428E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;428E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;431E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;432E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;K;6;$afontD;K;6;CP$UIDd;3;433E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;345E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;434E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;433E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;1;0E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;345E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;363E;E;D;K;6;$classD;K;6;CP$UIDd;3;161E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;428E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;428E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;407E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;435E;K;6;$afontD;K;6;CP$UIDd;3;436E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;363E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;292E;K;11;$aalignmentD;K;6;CP$UIDd;3;345E;K;15;$acontent-insetD;K;6;CP$UIDd;3;438E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;247E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;409E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;1;0E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;363E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;345E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;247E;E;S;22;{{1, -309}, {712, 15}}S;19;{{0, 0}, {712, 15}}d;1;8d;11;-2147483648S;8;scrollerS;8;disabledS;29;_horizontalScrollerDidScroll:f;18;0.9982394366197183S;23;{{224, 112}, {15, 102}}S;19;{{0, 0}, {15, 102}}S;27;_verticalScrollerDidScroll:f;18;0.9959677419354839S;20;{{471, 5}, {78, 25}}S;18;{{0, 0}, {78, 25}}d;2;36S;6;buttonS;8;borderedD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;390E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;439E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;440E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;246E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;248E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;246E;E;S;6;Removed;2;14S;19;{{20, 5}, {58, 25}}S;18;{{0, 0}, {58, 25}}S;5;StartS;20;{{103, 5}, {56, 25}}S;18;{{0, 0}, {56, 25}}S;4;StopS;13;AppControllerS;19;{{0, 0}, {569, 49}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;162E;E;E;S;14;CustomDataViewS;21;{{13, 18}, {226, 17}}S;19;{{0, 0}, {226, 17}}d;2;34S;9;textfieldD;K;6;$classD;K;6;CP$UIDd;3;390E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;439E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;440E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;248E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;248E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;246E;E;d;4;3072D;K;6;$classD;K;6;CP$UIDd;3;359E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;441E;E;S;21;{{259, 18}, {67, 17}}S;18;{{0, 0}, {67, 17}}d;2;33S;22;{{340, 15}, {191, 20}}S;19;{{0, 0}, {191, 20}}S;18;progress-indicatord;3;100S;21;{{533, 14}, {22, 22}}S;18;{{0, 0}, {22, 22}}D;K;10;$classnameS;17;_CPThemeAttributeK;8;$classesA;S;17;_CPThemeAttributeS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;420E;K;4;nameD;K;6;CP$UIDd;3;442E;K;12;defaultValueD;K;6;CP$UIDd;1;0E;K;6;valuesD;K;6;CP$UIDd;3;443E;E;S;19;CPMutableDictionaryS;3;tagS;15;CPNegateBooleanS;20;{{1, 1}, {567, 229}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;148E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;359E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;444E;E;S;16;{{0, 0}, {0, 0}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;295E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;445E;D;K;6;CP$UIDd;3;445E;D;K;6;CP$UIDd;3;445E;D;K;6;CP$UIDd;3;295E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;447E;E;E;S;12;columnHeaderD;K;6;$classD;K;6;CP$UIDd;3;390E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;448E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;449E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;248E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;248E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;248E;E;S;5;FilesS;11;placeholderD;K;6;$classD;K;6;CP$UIDd;3;420E;K;4;nameD;K;6;CP$UIDd;3;450E;K;12;defaultValueD;K;6;CP$UIDd;3;408E;K;6;valuesD;K;6;CP$UIDd;3;451E;E;D;K;10;$classnameS;21;_CPKeyedArchiverValueK;8;$classesA;S;21;_CPKeyedArchiverValueS;7;CPValueS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;437E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;452E;E;S;28;_CPFontSystemFacePlaceholderd;2;-1D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;453E;D;K;6;CP$UIDd;3;453E;D;K;6;CP$UIDd;3;453E;D;K;6;CP$UIDd;3;295E;E;E;S;5;imageD;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;K;11;highlightedD;K;6;CP$UIDd;3;455E;K;6;normalD;K;6;CP$UIDd;3;456E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;295E;E;E;f;3;0.8D;K;10;$classnameS;19;_CPImageAndTextViewK;8;$classesA;S;19;_CPImageAndTextViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;446E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;371E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;428E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;428E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;371E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;352E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;248E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;E;S;13;Lucida Granded;2;11S;4;fontD;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;457E;K;6;normalD;K;6;CP$UIDd;3;458E;E;E;S;39;{"top":0,"right":5,"bottom":0,"left":5}f;18;0.6862745098039216D;K;10;$classnameS;20;_CPCibCustomResourceK;8;$classesA;S;20;_CPCibCustomResourceS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;454E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;459E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;460E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;461E;E;D;K;6;$classD;K;6;CP$UIDd;3;454E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;459E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;462E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;463E;E;D;K;6;$classD;K;6;CP$UIDd;3;390E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;464E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;465E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;246E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;248E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;248E;E;D;K;6;$classD;K;6;CP$UIDd;3;390E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;439E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;465E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;248E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;248E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;246E;E;S;7;CPImageS;22;cancel-highlighted.pngD;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;466E;E;E;S;10;cancel.pngD;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;467E;E;E;S;17;Arial, sans-serifd;2;12D;K;6;$classD;K;6;CP$UIDd;3;437E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;468E;E;D;K;6;$classD;K;6;CP$UIDd;3;437E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;468E;E;S;24;{"width":22,"height":22}E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file +280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;0E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;4E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;0E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;1;7E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;1;9E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;11E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;13E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;15E;D;K;6;CP$UIDd;2;17E;D;K;6;CP$UIDd;2;18E;D;K;6;CP$UIDd;2;19E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;168E;D;K;6;CP$UIDd;3;170E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;3;163E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;171E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;172E;E;D;K;10;$classnameS;31;CPCibRuntimeAttributesConnectorK;8;$classesA;S;31;CPCibRuntimeAttributesConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;165E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;1;0E;K;40;CPCibRuntimeAttributesConnectorObjectKeyD;K;6;CP$UIDd;3;165E;K;42;CPCibRuntimeAttributesConnectorKeyPathsKeyD;K;6;CP$UIDd;3;173E;K;40;CPCibRuntimeAttributesConnectorValuesKeyD;K;6;CP$UIDd;3;174E;E;D;K;10;$classnameS;20;CPCibOutletConnectorK;8;$classesA;S;20;CPCibOutletConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;11E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;158E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;175E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;74E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;72E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;175E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;158E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;160E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;176E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;158E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;168E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;177E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;158E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;148E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;178E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;158E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;142E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;179E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;148E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;158E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;175E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;160E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;166E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;180E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;160E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;162E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;181E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;160E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;165E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;182E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;160E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;163E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;183E;E;D;K;10;$classnameS;21;CPCibControlConnectorK;8;$classesA;S;21;CPCibControlConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;79E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;184E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;81E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;185E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;84E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;11E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;186E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;129E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;187E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;134E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;188E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;127E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;189E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;128E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;190E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;130E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;191E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;91E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;192E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;136E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;193E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;133E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;194E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;85E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;72E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;195E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;118E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;196E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;119E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;197E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;100E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;198E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;95E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;199E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;98E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;200E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;113E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;201E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;94E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;202E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;99E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;203E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;114E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;204E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;96E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;205E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;109E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;206E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;106E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;207E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;102E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;208E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;112E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;209E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;80E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;210E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;139E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;211E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;140E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;212E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;115E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;213E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;122E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;214E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;123E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;215E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;124E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;216E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;166E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;160E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;217E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;156E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;158E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;218E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;155E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;158E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;219E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;157E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;158E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;220E;E;D;K;10;$classnameS;21;CPCibBindingConnectorK;8;$classesA;S;21;CPCibBindingConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;66E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;157E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;158E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;221E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;222E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;223E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;225E;E;D;K;6;$classD;K;6;CP$UIDd;2;66E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;155E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;168E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;226E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;222E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;227E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;228E;E;D;K;6;$classD;K;6;CP$UIDd;2;66E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;156E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;158E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;221E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;222E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;223E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;229E;E;D;K;6;$classD;K;6;CP$UIDd;2;66E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;168E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;158E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;230E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;231E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;232E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;233E;E;D;K;6;$classD;K;6;CP$UIDd;2;66E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;150E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;168E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;234E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;235E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;236E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;237E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;171E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;238E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;239E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;240E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;241E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;77E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;74E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;241E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;244E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;245E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;246E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;247E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;248E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;77E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;249E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;77E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;250E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;77E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;251E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;77E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;252E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;253E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;83E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;74E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;253E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;254E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;255E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;256E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;83E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;257E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;83E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;258E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;259E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;83E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;260E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;246E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;247E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;248E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;83E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;246E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;247E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;248E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;83E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;261E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;90E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;74E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;261E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;262E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;263E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;264E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;265E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;93E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;74E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;265E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;266E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;267E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;268E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;269E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;270E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;271E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;246E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;247E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;248E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;272E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;273E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;274E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;275E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;276E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;277E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;246E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;247E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;248E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;278E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;279E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;280E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;281E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;104E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;281E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;282E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;283E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;284E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;104E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;285E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;280E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;286E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;104E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;287E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;288E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;289E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;104E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;290E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;291E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;292E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;104E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;293E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;294E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;295E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;104E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;296E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;297E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;111E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;297E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;298E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;299E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;300E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;301E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;302E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;303E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;304E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;305E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;117E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;305E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;306E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;307E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;117E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;308E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;117E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;309E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;121E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;309E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;310E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;311E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;295E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;296E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;312E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;292E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;293E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;313E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;284E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;285E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;280E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;314E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;126E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;74E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;314E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;315E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;316E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;317E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;318E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;319E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;280E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;320E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;321E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;322E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;323E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;324E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;132E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;324E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;325E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;326E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;327E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;132E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;328E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;329E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;246E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;247E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;248E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;330E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;331E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;242E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;138E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;74E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;331E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;332E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;333E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;138E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;334E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;335E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;336E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;138E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;141E;K;30;_CPCibWindowTemplateMinSizeKeyD;K;6;CP$UIDd;3;337E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;338E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;339E;K;30;_CPCibWindowTemplateWTFlagsKeyD;K;6;CP$UIDd;3;340E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;341E;K;33;_CPCibWindowTemplateScreenRectKeyD;K;6;CP$UIDd;3;342E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;343E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;344E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;3;144E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;143E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;346E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;346E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;347E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;E;D;K;10;$classnameS;12;CPScrollViewK;8;$classesA;S;12;CPScrollViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;145E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;144E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;349E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;350E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;351E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;144E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;352E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;353E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;355E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;1;0E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;3;153E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;3;152E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;356E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;356E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;356E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;356E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;246E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;246E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;246E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;357E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;292E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;3;345E;E;D;K;10;$classnameS;11;CPTableViewK;8;$classesA;S;11;CPTableViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;147E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;355E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;358E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;358E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;355E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;360E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;361E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;K;12;$agrid-colorD;K;6;CP$UIDd;3;362E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;363E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;364E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;365E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;345E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;363E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;246E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;246E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;246E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;246E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;248E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;366E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;362E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;3;345E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;246E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;1;0E;K;26;CPTableViewAutosaveNameKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;13;CPTableColumnK;8;$classesA;S;13;CPTableColumnS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;149E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;367E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;368E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;369E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;371E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;372E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;284E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;248E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;248E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;10;CPScrollerK;8;$classesA;S;10;CPScrollerS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;151E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;146E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;373E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;374E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;146E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;375E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;376E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;377E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;378E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;345E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;146E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;379E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;363E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;345E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;248E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;380E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;151E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;146E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;381E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;382E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;146E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;375E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;376E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;377E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;378E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;345E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;146E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;383E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;363E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;345E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;246E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;384E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;8;CPButtonK;8;$classesA;S;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;154E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;144E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;385E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;386E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;144E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;387E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;388E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;389E;K;11;$aalignmentD;K;6;CP$UIDd;3;292E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;345E;K;6;$afontD;K;6;CP$UIDd;3;391E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;345E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;363E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;392E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;247E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;248E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;393E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;345E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;246E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;292E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;345E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;154E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;144E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;394E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;395E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;144E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;396E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;388E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;389E;K;11;$aalignmentD;K;6;CP$UIDd;3;292E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;345E;K;6;$afontD;K;6;CP$UIDd;3;391E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;345E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;363E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;397E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;247E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;248E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;393E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;345E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;246E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;292E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;345E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;154E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;144E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;398E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;399E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;144E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;396E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;388E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;389E;K;11;$aalignmentD;K;6;CP$UIDd;3;292E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;345E;K;6;$afontD;K;6;CP$UIDd;3;391E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;345E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;363E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;400E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;247E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;248E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;393E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;345E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;246E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;292E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;345E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;401E;E;D;K;10;$classnameS;16;_CPCibCustomViewK;8;$classesA;S;16;_CPCibCustomViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;159E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;402E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;402E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;403E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;356E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;404E;E;D;K;10;$classnameS;11;CPTextFieldK;8;$classesA;S;11;CPTextFieldS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;161E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;160E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;295E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;405E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;406E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;160E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;407E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;408E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;K;11;$aalignmentD;K;6;CP$UIDd;3;363E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;363E;K;6;$afontD;K;6;CP$UIDd;3;409E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;246E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;181E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;363E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;248E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;248E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;248E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;410E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;363E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;363E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;161E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;160E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;292E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;411E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;412E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;160E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;387E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;408E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;K;11;$aalignmentD;K;6;CP$UIDd;3;363E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;292E;K;6;$afontD;K;6;CP$UIDd;3;409E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;246E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;183E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;363E;K;21;CPControlFormatterKeyD;K;6;CP$UIDd;3;170E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;248E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;248E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;248E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;410E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;292E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;363E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;19;CPProgressIndicatorK;8;$classesA;S;19;CPProgressIndicatorS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;164E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;160E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;413E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;414E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;160E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;387E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;415E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;K;9;_minValueD;K;6;CP$UIDd;3;345E;K;9;_maxValueD;K;6;CP$UIDd;3;416E;K;12;_doubleValueD;K;6;CP$UIDd;3;345E;K;12;_controlSizeD;K;6;CP$UIDd;3;345E;K;14;_indeterminateD;K;6;CP$UIDd;3;248E;K;6;_styleD;K;6;CP$UIDd;3;345E;K;12;_isAnimatingD;K;6;CP$UIDd;1;0E;K;26;_isDisplayedWhenStoppedSetD;K;6;CP$UIDd;1;0E;K;23;_isDisplayedWhenStoppedD;K;6;CP$UIDd;3;246E;E;D;K;6;$classD;K;6;CP$UIDd;3;154E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;160E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;363E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;417E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;418E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;160E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;387E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;388E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;378E;K;11;$aalignmentD;K;6;CP$UIDd;3;292E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;345E;K;6;$afontD;K;6;CP$UIDd;3;409E;K;16;$aimage-positionD;K;6;CP$UIDd;3;295E;K;7;$aimageD;K;6;CP$UIDd;3;420E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;345E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;363E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;247E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;247E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;248E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;295E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;345E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;246E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;295E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;345E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;17;CPArrayControllerK;8;$classesA;S;17;CPArrayControllerS;18;CPObjectControllerS;12;CPControllerS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;167E;K;28;CPObjectControllerContentKeyD;K;6;CP$UIDd;1;0E;K;36;CPObjectControllerObjectClassNameKeyD;K;6;CP$UIDd;3;421E;K;31;CPObjectControllerIsEditableKeyD;K;6;CP$UIDd;3;246E;K;49;CPObjectControllerAutomaticallyPreparesContentKeyD;K;6;CP$UIDd;3;248E;K;37;CPArrayControllerAvoidsEmptySelectionD;K;6;CP$UIDd;3;248E;K;49;CPArrayControllerClearsFilterPredicateOnInsertionD;K;6;CP$UIDd;3;246E;K;41;CPArrayControllerFilterRestrictsInsertionD;K;6;CP$UIDd;3;246E;K;35;CPArrayControllerPreservesSelectionD;K;6;CP$UIDd;3;246E;K;39;CPArrayControllerSelectsInsertedObjectsD;K;6;CP$UIDd;3;248E;K;47;CPArrayControllerAlwaysUsesMultipleValuesMarkerD;K;6;CP$UIDd;3;248E;K;47;CPArrayControllerAutomaticallyRearrangesObjectsD;K;6;CP$UIDd;3;248E;E;D;K;10;$classnameS;20;CPByteCountFormatterK;8;$classesA;S;20;CPByteCountFormatterS;11;CPFormatterS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;169E;K;33;CPByteCountFormatterCountStyleKeyD;K;6;CP$UIDd;3;345E;K;49;CPByteCountFormatterAllowsNonnumericFormattingKeyD;K;6;CP$UIDd;3;248E;K;46;CPByteCountFormatterIncludesActualByteCountKeyD;K;6;CP$UIDd;3;248E;K;36;CPByteCountFormatterIncludesCountKeyD;K;6;CP$UIDd;3;246E;K;35;CPByteCountFormatterIncludesUnitKeyD;K;6;CP$UIDd;3;246E;K;31;CPByteCountFormatterAdaptiveKeyD;K;6;CP$UIDd;3;246E;K;45;CPByteCountFormatterZeroPadsFractionDigitsKeyD;K;6;CP$UIDd;3;246E;K;35;CPByteCountFormatterAllowedUnitsKeyD;K;6;CP$UIDd;3;345E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;142E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;422E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;284E;E;E;S;8;delegateS;8;dataViewS;13;rowControllerS;9;tableViewS;9;theWindowS;11;abortButtonS;8;filenameS;11;progressBarS;4;sizeS;15;arrangeInFront:S;19;performMiniaturize:S;29;orderFrontStandardAboutPanel:S;13;openDocument:S;13;performClose:S;13;saveDocument:S;15;saveDocumentAs:S;12;newDocument:S;9;showHelp:S;22;revertDocumentToSaved:S;21;clearRecentDocuments:S;10;terminate:S;13;stopSpeaking:S;14;startSpeaking:S;5;copy:S;10;selectAll:S;4;cut:S;14;checkSpelling:S;7;delete:S;6;paste:S;15;showGuessPanel:S;5;undo:S;23;performFindPanelAction:S;29;centerSelectionInVisibleArea:S;5;redo:S;30;toggleContinuousSpellChecking:S;12;performZoom:S;19;toggleToolbarShown:S;31;runToolbarCustomizationPalette:S;22;toggleGrammarChecking:S;24;toggleSmartInsertDelete:S;33;toggleAutomaticQuoteSubstitution:S;29;toggleAutomaticLinkDetection:S;6;abort:S;6;start:S;12;removeFiles:S;5;stop:S;18;enabled: uploadingS;7;enabledS;9;uploadingD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;E;E;S;31;enabled: selectedObjects.@countS;22;selectedObjects.@countD;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;E;E;D;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;K;22;CPValueTransformerNameD;K;6;CP$UIDd;3;423E;E;E;S;18;contentArray: rowsS;12;contentArrayS;4;rowsD;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;E;E;S;22;value: arrangedObjectsS;5;valueS;15;arrangedObjectsD;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;E;E;S;9;AMainMenuS;11;_CPMainMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;89E;E;E;S;6;WindowS;14;submenuAction:d;7;1048576S;14;_CPWindowsMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;E;E;T;S;0;F;S;18;Bring All to FrontS;4;ZoomS;8;MinimizeS;1;mS;14;NewApplicationS;18;_CPApplicationMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;85E;E;E;S;20;About NewApplicationS;19;Quit NewApplicationS;1;qS;12;Preferences…S;1;,S;4;HelpD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;91E;E;E;S;19;NewApplication HelpS;1;?S;4;EditD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;116E;E;E;S;6;DeleteS;10;Select AllS;1;aS;4;UndoS;1;zS;3;CutS;1;xS;5;PasteS;1;vS;4;CopyS;1;cS;4;RedoS;1;Zd;7;1179648S;4;FindD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;106E;E;E;S;13;Find Previousd;1;3S;1;GS;17;Jump to SelectionS;1;jS;22;Use Selection for Findd;1;7S;1;eS;9;Find Nextd;1;2S;1;gS;5;Find…d;1;1S;1;fS;20;Spelling and GrammarD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;115E;E;E;S;27;Check Spelling While TypingS;14;Check SpellingS;1;;S;14;Show Spelling…S;1;:S;27;Check Grammar With SpellingS;6;SpeechD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;118E;E;E;S;13;Stop SpeakingS;14;Start SpeakingS;13;SubstitutionsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;E;E;S;16;Smart Copy/PasteS;12;Smart QuotesS;11;Smart LinksS;4;FileD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;136E;E;E;S;4;SaveS;1;sS;8;Save As…S;1;SS;5;Open…S;1;oS;3;NewS;1;nS;11;Open RecentS;22;_CPRecentDocumentsMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;133E;E;E;S;10;Clear MenuS;5;CloseS;1;wS;15;Revert to SavedS;4;ViewD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;E;E;S;12;Show ToolbarS;1;td;7;1572864S;18;Customize Toolbar…S;10;{350, 222}S;32;{10000000000000, 10000000000000}S;8;CPWindowd;10;1948778496S;22;{{51, 69}, {569, 267}}S;21;{{0, 0}, {1440, 878}}d;2;15S;21;DataView - Cell-basedd;1;0S;20;{{0, 0}, {569, 267}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;155E;E;E;S;6;normalS;21;{{0, 36}, {569, 231}}S;20;{{0, 0}, {569, 231}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;355E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;357E;E;E;d;2;18S;10;scrollviewD;K;10;$classnameS;10;CPClipViewK;8;$classesA;S;10;CPClipViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;354E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;146E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;345E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;424E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;358E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;425E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;146E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;375E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;426E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;427E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;3;148E;E;d;2;10D;K;6;$classD;K;6;CP$UIDd;3;143E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;146E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;428E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;428E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;146E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;E;S;20;{{0, 0}, {567, 229}}D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;359E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;429E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;3;359E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;430E;E;d;1;4d;2;49S;6;{3, 2}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;150E;E;E;d;3;564d;2;40d;4;1000D;K;10;$classnameS;24;_CPTableColumnHeaderViewK;8;$classesA;S;24;_CPTableColumnHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;370E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;428E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;428E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;431E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;432E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;345E;K;12;$atext-colorD;K;6;CP$UIDd;3;433E;K;6;$afontD;K;6;CP$UIDd;3;434E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;435E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;434E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;433E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;345E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;363E;E;D;K;6;$classD;K;6;CP$UIDd;3;161E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;436E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;437E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;408E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;438E;K;11;$aalignmentD;K;6;CP$UIDd;3;345E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;363E;K;6;$afontD;K;6;CP$UIDd;3;439E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;176E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;440E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;246E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;246E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;248E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;426E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;363E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;345E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;S;22;{{1, -309}, {712, 15}}S;19;{{0, 0}, {712, 15}}d;1;8d;11;-2147483648S;8;scrollerS;8;disabledS;29;_horizontalScrollerDidScroll:f;18;0.9982394366197183S;23;{{224, 112}, {15, 102}}S;19;{{0, 0}, {15, 102}}S;27;_verticalScrollerDidScroll:f;18;0.9959677419354839S;20;{{471, 5}, {78, 25}}S;18;{{0, 0}, {78, 25}}d;2;33S;6;buttonS;8;borderedD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;390E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;441E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;442E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;246E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;248E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;246E;E;S;6;Removed;2;14S;19;{{20, 5}, {58, 25}}S;18;{{0, 0}, {58, 25}}d;2;36S;5;StartS;20;{{103, 5}, {56, 25}}S;18;{{0, 0}, {56, 25}}S;4;StopS;13;AppControllerS;19;{{0, 0}, {569, 49}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;162E;E;E;S;14;CustomDataViewS;21;{{13, 18}, {226, 17}}S;19;{{0, 0}, {226, 17}}d;2;34S;9;textfieldD;K;6;$classD;K;6;CP$UIDd;3;390E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;441E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;442E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;248E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;248E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;246E;E;D;K;6;$classD;K;6;CP$UIDd;3;359E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;443E;E;S;21;{{259, 18}, {67, 17}}S;18;{{0, 0}, {67, 17}}S;22;{{340, 15}, {191, 20}}S;19;{{0, 0}, {191, 20}}S;18;progress-indicatord;3;100S;21;{{533, 14}, {22, 22}}S;18;{{0, 0}, {22, 22}}D;K;10;$classnameS;17;_CPThemeAttributeK;8;$classesA;S;17;_CPThemeAttributeS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;419E;K;4;nameD;K;6;CP$UIDd;3;444E;K;12;defaultValueD;K;6;CP$UIDd;1;0E;K;6;valuesD;K;6;CP$UIDd;3;445E;E;S;19;CPMutableDictionaryS;3;tagS;15;CPNegateBooleanS;20;{{1, 1}, {567, 229}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;148E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;359E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;446E;E;S;6;_NS:11S;16;{{0, 0}, {0, 0}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;295E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;447E;D;K;6;CP$UIDd;3;447E;D;K;6;CP$UIDd;3;447E;D;K;6;CP$UIDd;3;295E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;449E;E;E;S;12;columnHeaderD;K;6;$classD;K;6;CP$UIDd;3;359E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;450E;E;D;K;6;$classD;K;6;CP$UIDd;3;390E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;441E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;451E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;246E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;248E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;246E;E;S;5;FilesS;17;{{3, 0}, {-6, 0}}S;17;{{0, 0}, {-6, 0}}S;8;editableD;K;6;$classD;K;6;CP$UIDd;3;419E;K;4;nameD;K;6;CP$UIDd;3;452E;K;12;defaultValueD;K;6;CP$UIDd;3;409E;K;6;valuesD;K;6;CP$UIDd;3;453E;E;d;4;3072S;28;_CPFontSystemFacePlaceholderd;2;-1D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;454E;D;K;6;CP$UIDd;3;454E;D;K;6;CP$UIDd;3;454E;D;K;6;CP$UIDd;3;295E;E;E;S;5;imageD;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;K;11;highlightedD;K;6;CP$UIDd;3;456E;K;6;normalD;K;6;CP$UIDd;3;457E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;295E;E;E;f;3;0.8D;K;10;$classnameS;19;_CPImageAndTextViewK;8;$classesA;S;19;_CPImageAndTextViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;448E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;371E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;428E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;428E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;371E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;352E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;248E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;458E;D;K;6;CP$UIDd;3;458E;D;K;6;CP$UIDd;3;458E;D;K;6;CP$UIDd;3;295E;E;E;d;2;11S;4;fontD;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;459E;K;6;normalD;K;6;CP$UIDd;3;460E;E;E;f;18;0.6862745098039216D;K;10;$classnameS;20;_CPCibCustomResourceK;8;$classesA;S;20;_CPCibCustomResourceS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;455E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;461E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;462E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;463E;E;D;K;6;$classD;K;6;CP$UIDd;3;455E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;461E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;464E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;465E;E;f;18;0.5019607843137255D;K;6;$classD;K;6;CP$UIDd;3;390E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;466E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;467E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;246E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;248E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;248E;E;D;K;6;$classD;K;6;CP$UIDd;3;390E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;441E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;467E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;248E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;248E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;246E;E;S;7;CPImageS;22;cancel-highlighted.pngD;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;469E;E;E;S;10;cancel.pngD;K;6;$classD;K;6;CP$UIDd;3;224E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;470E;E;E;S;17;Arial, sans-serifd;2;12D;K;10;$classnameS;21;_CPKeyedArchiverValueK;8;$classesA;S;21;_CPKeyedArchiverValueS;7;CPValueS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;468E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;471E;E;D;K;6;$classD;K;6;CP$UIDd;3;468E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;471E;E;S;24;{"width":22,"height":22}E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Tests/Manual/TableTest/DataView/Resources/MainMenu.xib b/Tests/Manual/TableTest/DataView/Resources/MainMenu.xib index 75d943187..655930cde 100644 --- a/Tests/Manual/TableTest/DataView/Resources/MainMenu.xib +++ b/Tests/Manual/TableTest/DataView/Resources/MainMenu.xib @@ -803,7 +803,6 @@ {{1, 525}, {712, 16}} - _NS:60 NO 1 @@ -878,7 +877,7 @@
- 268 + 265 {{465, 231}, {90, 32}} @@ -916,7 +915,7 @@ AppController - + 266 YES @@ -925,8 +924,6 @@ 265 {{533, 13}, {22, 22}} - - _NS:9 4 YES @@ -959,7 +956,6 @@ 265 {{340, 14}, {191, 20}} - _NS:9 {250, 250} @@ -971,7 +967,6 @@ 265 {{256, 14}, {73, 17}} - _NS:1535 2 @@ -1002,7 +997,6 @@ 266 {{10, 14}, {232, 17}} - _NS:1535 1 @@ -1021,8 +1015,6 @@ {569, 49} - - _NS:9 CustomDataView diff --git a/Tests/Manual/TableTest/TableBindings/AppController.j b/Tests/Manual/TableTest/TableBindings/AppController.j index 7eae4f723..90f653f99 100644 --- a/Tests/Manual/TableTest/TableBindings/AppController.j +++ b/Tests/Manual/TableTest/TableBindings/AppController.j @@ -11,7 +11,7 @@ @implementation AppController : CPObject { - CPWindow theWindow; //this "outlet" is connected automatically by the Cib + @outlet CPWindow theWindow; //this "outlet" is connected automatically by the Cib @outlet CPTextField locationField; @outlet CPTextField lengthField; @@ -21,11 +21,6 @@ } - (void)applicationDidFinishLaunching:(CPNotification)aNotification -{ - // This is called when the application is done loading. -} - -- (void)awakeFromCib { rows = [CPArray new]; @@ -36,6 +31,11 @@ [theWindow setFullPlatformWindow:YES]; } +- (void)awakeFromCib +{ + console.log(_cmd); +} + - (void)connection:(CPURLConnection)connection didReceiveData:(CPString)dataString { if (!dataString) diff --git a/Tests/Manual/TableTest/TableBindings/Resources/MainMenu.cib b/Tests/Manual/TableTest/TableBindings/Resources/MainMenu.cib index 308c77221..07f135dd8 100644 --- a/Tests/Manual/TableTest/TableBindings/Resources/MainMenu.cib +++ b/Tests/Manual/TableTest/TableBindings/Resources/MainMenu.cib @@ -1 +1 @@ -280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;4E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;7E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;9E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;2;10E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;2;11E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;2;12E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;2;13E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;2;14E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;16E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;18E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;168E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;170E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;172E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;175E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;178E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;183E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;187E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;189E;D;K;6;CP$UIDd;3;190E;D;K;6;CP$UIDd;3;191E;D;K;6;CP$UIDd;3;192E;D;K;6;CP$UIDd;3;193E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;195E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;199E;D;K;6;CP$UIDd;3;200E;D;K;6;CP$UIDd;3;201E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;205E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;207E;D;K;6;CP$UIDd;3;208E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;210E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;215E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;217E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;219E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;3;223E;D;K;6;CP$UIDd;3;224E;D;K;6;CP$UIDd;3;225E;D;K;6;CP$UIDd;3;226E;D;K;6;CP$UIDd;3;227E;D;K;6;CP$UIDd;3;228E;D;K;6;CP$UIDd;3;229E;D;K;6;CP$UIDd;3;230E;D;K;6;CP$UIDd;3;231E;D;K;6;CP$UIDd;3;232E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;3;234E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;3;236E;D;K;6;CP$UIDd;3;237E;D;K;6;CP$UIDd;3;238E;D;K;6;CP$UIDd;3;239E;D;K;6;CP$UIDd;3;240E;D;K;6;CP$UIDd;3;241E;D;K;6;CP$UIDd;3;242E;D;K;6;CP$UIDd;3;243E;D;K;6;CP$UIDd;3;244E;D;K;6;CP$UIDd;3;245E;D;K;6;CP$UIDd;3;246E;D;K;6;CP$UIDd;3;247E;D;K;6;CP$UIDd;3;248E;D;K;6;CP$UIDd;3;249E;D;K;6;CP$UIDd;3;250E;D;K;6;CP$UIDd;3;251E;D;K;6;CP$UIDd;3;252E;D;K;6;CP$UIDd;3;253E;D;K;6;CP$UIDd;3;254E;D;K;6;CP$UIDd;3;255E;D;K;6;CP$UIDd;3;256E;D;K;6;CP$UIDd;3;257E;D;K;6;CP$UIDd;3;258E;D;K;6;CP$UIDd;3;259E;D;K;6;CP$UIDd;3;260E;D;K;6;CP$UIDd;3;261E;D;K;6;CP$UIDd;3;262E;D;K;6;CP$UIDd;3;263E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;265E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;267E;D;K;6;CP$UIDd;3;268E;D;K;6;CP$UIDd;3;269E;D;K;6;CP$UIDd;3;270E;D;K;6;CP$UIDd;3;271E;D;K;6;CP$UIDd;3;272E;D;K;6;CP$UIDd;3;273E;D;K;6;CP$UIDd;3;274E;D;K;6;CP$UIDd;3;275E;D;K;6;CP$UIDd;3;277E;D;K;6;CP$UIDd;3;278E;D;K;6;CP$UIDd;3;279E;D;K;6;CP$UIDd;3;280E;D;K;6;CP$UIDd;3;281E;D;K;6;CP$UIDd;3;282E;D;K;6;CP$UIDd;3;283E;D;K;6;CP$UIDd;3;285E;D;K;6;CP$UIDd;3;286E;D;K;6;CP$UIDd;3;287E;D;K;6;CP$UIDd;3;288E;D;K;6;CP$UIDd;3;289E;E;E;S;16;IBCocoaFrameworkD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;2;80E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;95E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;290E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;291E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;292E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;293E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;294E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;113E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;296E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;297E;E;D;K;10;$classnameS;11;CPTextFieldK;8;$classesA;S;11;CPTextFieldS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;299E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;300E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;301E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;302E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;6;$afontD;K;6;CP$UIDd;3;305E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;306E;K;11;$aalignmentD;K;6;CP$UIDd;3;307E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;292E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;308E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;309E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;294E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;294E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;294E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;311E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;306E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;307E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;11;CPTableViewK;8;$classesA;S;11;CPTableViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;312E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;313E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;313E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;312E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;314E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;315E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;12;$agrid-colorD;K;6;CP$UIDd;3;316E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;307E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;317E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;318E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;298E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;319E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;294E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;292E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;292E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;292E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;292E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;320E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;316E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;3;298E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;292E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;3;322E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;3;109E;K;26;CPTableViewAutosaveNameKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;323E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;324E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;325E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;326E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;93E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;E;D;K;10;$classnameS;10;CPScrollerK;8;$classesA;S;10;CPScrollerS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;125E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;327E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;328E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;125E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;329E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;330E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;331E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;332E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;298E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;125E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;333E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;307E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;298E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;294E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;334E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;335E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;336E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;337E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;338E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;301E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;302E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;6;$afontD;K;6;CP$UIDd;3;305E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;306E;K;11;$aalignmentD;K;6;CP$UIDd;3;307E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;292E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;339E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;309E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;294E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;294E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;294E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;311E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;306E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;307E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;13;CPTableColumnK;8;$classesA;S;13;CPTableColumnS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;33E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;340E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;341E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;342E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;344E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;345E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;346E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;294E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;292E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;347E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;290E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;296E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;326E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;22E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;47E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;125E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;348E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;349E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;125E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;329E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;330E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;331E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;332E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;350E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;125E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;351E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;307E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;298E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;292E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;352E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;353E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;354E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;292E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;293E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;294E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;136E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;355E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;356E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;326E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;96E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;357E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;58E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;358E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;103E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;327E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;328E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;103E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;329E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;330E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;331E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;332E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;298E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;103E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;333E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;307E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;298E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;294E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;334E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;359E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;326E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;113E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;47E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;360E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;361E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;362E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;363E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;364E;E;D;K;10;$classnameS;8;CPButtonK;8;$classesA;S;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;48E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;342E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;365E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;366E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;301E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;367E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;368E;K;6;$afontD;K;6;CP$UIDd;3;369E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;298E;K;11;$aalignmentD;K;6;CP$UIDd;3;306E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;298E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;307E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;370E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;293E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;294E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;371E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;298E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;292E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;306E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;298E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;372E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;27E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;373E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;374E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;375E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;376E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;377E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;378E;K;30;_CPCibWindowTemplateWTFlagsKeyD;K;6;CP$UIDd;3;379E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;380E;K;33;_CPCibWindowTemplateScreenRectKeyD;K;6;CP$UIDd;3;381E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;382E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;359E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;61E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;383E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;384E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;374E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;385E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;95E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;386E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;80E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;292E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;293E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;294E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;136E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;387E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;388E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;389E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;292E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;293E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;294E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;60E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;390E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;390E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;391E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;392E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;393E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;393E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;392E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;314E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;315E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;12;$agrid-colorD;K;6;CP$UIDd;3;316E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;307E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;317E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;318E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;298E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;319E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;292E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;292E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;292E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;292E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;292E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;394E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;316E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;3;298E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;292E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;3;395E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;2;83E;K;26;CPTableViewAutosaveNameKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;396E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;397E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;398E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;79E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;399E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;113E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;400E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;401E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;402E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;403E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;404E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;338E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;301E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;302E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;6;$afontD;K;6;CP$UIDd;3;305E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;306E;K;11;$aalignmentD;K;6;CP$UIDd;3;307E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;292E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;405E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;309E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;294E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;294E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;294E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;311E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;306E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;307E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;406E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;407E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;374E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;408E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;326E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;140E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;409E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;410E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;301E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;302E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;411E;K;6;$afontD;K;6;CP$UIDd;3;305E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;306E;K;11;$aalignmentD;K;6;CP$UIDd;3;307E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;292E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;412E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;309E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;292E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;292E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;292E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;314E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;306E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;307E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;388E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;326E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;58E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;47E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;353E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;326E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;39E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;47E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;413E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;326E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;136E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;47E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;414E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;382E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;27E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;415E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;416E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;326E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;79E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;417E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;418E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;292E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;293E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;294E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;416E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;419E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;420E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;421E;E;D;K;6;$classD;K;6;CP$UIDd;2;33E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;422E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;341E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;342E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;423E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;424E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;346E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;294E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;292E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;17;CPTableHeaderViewK;8;$classesA;S;17;CPTableHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;425E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;426E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;426E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;425E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;427E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;29;CPTableHeaderViewTableViewKeyD;K;6;CP$UIDd;2;62E;K;33;CPTableHeaderViewDrawsColumnLinesD;K;6;CP$UIDd;3;292E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;428E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;429E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;400E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;326E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;66E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;430E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;431E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;432E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;433E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;140E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;434E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;136E;E;D;K;6;$classD;K;6;CP$UIDd;2;48E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;435E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;436E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;301E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;367E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;368E;K;6;$afontD;K;6;CP$UIDd;3;369E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;298E;K;11;$aalignmentD;K;6;CP$UIDd;3;306E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;298E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;307E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;437E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;293E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;294E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;371E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;298E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;292E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;306E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;298E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;103E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;348E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;349E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;103E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;329E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;330E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;331E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;332E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;350E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;103E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;351E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;307E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;298E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;292E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;352E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;438E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;306E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;96E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;439E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;293E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;440E;E;D;K;10;$classnameS;13;CPPopUpButtonK;8;$classesA;S;13;CPPopUpButtonS;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;94E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;2;80E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;441E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;442E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;301E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;443E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;368E;K;6;$afontD;K;6;CP$UIDd;3;369E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;307E;K;11;$aalignmentD;K;6;CP$UIDd;3;298E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;298E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;307E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;1;0E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;293E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;294E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;444E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;298E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;292E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;306E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;298E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;356E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;445E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;446E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;93E;E;D;K;10;$classnameS;17;CPArrayControllerK;8;$classesA;S;17;CPArrayControllerS;18;CPObjectControllerS;12;CPControllerS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;98E;K;28;CPObjectControllerContentKeyD;K;6;CP$UIDd;1;0E;K;36;CPObjectControllerObjectClassNameKeyD;K;6;CP$UIDd;3;447E;K;31;CPObjectControllerIsEditableKeyD;K;6;CP$UIDd;3;292E;K;49;CPObjectControllerAutomaticallyPreparesContentKeyD;K;6;CP$UIDd;3;294E;K;37;CPArrayControllerAvoidsEmptySelectionD;K;6;CP$UIDd;3;294E;K;49;CPArrayControllerClearsFilterPredicateOnInsertionD;K;6;CP$UIDd;3;294E;K;41;CPArrayControllerFilterRestrictsInsertionD;K;6;CP$UIDd;3;292E;K;35;CPArrayControllerPreservesSelectionD;K;6;CP$UIDd;3;294E;K;39;CPArrayControllerSelectsInsertedObjectsD;K;6;CP$UIDd;3;294E;K;47;CPArrayControllerAlwaysUsesMultipleValuesMarkerD;K;6;CP$UIDd;3;294E;K;47;CPArrayControllerAutomaticallyRearrangesObjectsD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;448E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;96E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;373E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;374E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;449E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;450E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;10;$classnameS;12;CPScrollViewK;8;$classesA;S;12;CPScrollViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;102E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;451E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;452E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;453E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;301E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;454E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;312E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;3;456E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;91E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;2;44E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;457E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;457E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;457E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;457E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;292E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;292E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;292E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;3;322E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;458E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;306E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;3;298E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;323E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;326E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;27E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;292E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;293E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;294E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;136E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;459E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;136E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;460E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;461E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;136E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;462E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;136E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;463E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;456E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;464E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;464E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;456E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;427E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;29;CPTableHeaderViewTableViewKeyD;K;6;CP$UIDd;2;26E;K;33;CPTableHeaderViewDrawsColumnLinesD;K;6;CP$UIDd;3;292E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;465E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;95E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;386E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;319E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;80E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;10;$classnameS;9;CPStepperK;8;$classesA;S;9;CPStepperS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;111E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;466E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;467E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;301E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;468E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;298E;K;11;$aalignmentD;K;6;CP$UIDd;3;298E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;469E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;470E;K;18;CPStepperIncrementD;K;6;CP$UIDd;3;319E;K;17;CPStepperMaxValueD;K;6;CP$UIDd;3;422E;K;19;CPStepperAutorepeatD;K;6;CP$UIDd;3;292E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;359E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;471E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;472E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;473E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;474E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;301E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;302E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;6;$afontD;K;6;CP$UIDd;3;305E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;306E;K;11;$aalignmentD;K;6;CP$UIDd;3;307E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;292E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;475E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;309E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;294E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;294E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;294E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;311E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;306E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;307E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;476E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;477E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;301E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;302E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;411E;K;6;$afontD;K;6;CP$UIDd;3;305E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;306E;K;11;$aalignmentD;K;6;CP$UIDd;3;307E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;292E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;478E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;309E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;292E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;292E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;292E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;314E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;306E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;307E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;479E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;113E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;480E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;481E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;482E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;483E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;484E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;47E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;485E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;486E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;487E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;79E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;48E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;488E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;366E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;301E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;367E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;368E;K;6;$afontD;K;6;CP$UIDd;3;369E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;298E;K;11;$aalignmentD;K;6;CP$UIDd;3;306E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;298E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;307E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;489E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;293E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;294E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;371E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;298E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;292E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;306E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;298E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;490E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;491E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;292E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;293E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;294E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;3;102E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;492E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;493E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;494E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;301E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;454E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;392E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;3;425E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;38E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;2;30E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;457E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;457E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;457E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;457E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;292E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;292E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;292E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;3;395E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;495E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;306E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;3;298E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;496E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;497E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;292E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;293E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;294E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;292E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;293E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;294E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;498E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;306E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;27E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;439E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;499E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;113E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;500E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;319E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;96E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;501E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;33E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;502E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;341E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;342E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;503E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;504E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;346E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;294E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;292E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;111E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;505E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;467E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;301E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;468E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;298E;K;11;$aalignmentD;K;6;CP$UIDd;3;298E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;298E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;470E;K;18;CPStepperIncrementD;K;6;CP$UIDd;3;319E;K;17;CPStepperMaxValueD;K;6;CP$UIDd;3;422E;K;19;CPStepperAutorepeatD;K;6;CP$UIDd;3;292E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;506E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;319E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;27E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;501E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;507E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;508E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;374E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;413E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;509E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;510E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;511E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;27E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;512E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;33E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;513E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;341E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;342E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;514E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;515E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;346E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;294E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;292E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;516E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;517E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;295E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;408E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;518E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;519E;E;S;11;Separator-3S;11;Menu (Edit)S;22;Static Text (In Range)S;10;Table ViewS;11;Menu (Find)S;18;Menu Item (Insert)S;21;Horizontal Scroller-1S;23;Menu Item (Select None)S;40;Static Text (Table View Content Binding)S;14;Table Column-2S;39;Menu Item (Check Grammar With Spelling)S;11;ApplicationS;16;Menu Item (Edit)S;19;Vertical Scroller-1S;11;Menu (File)S;27;Pop Up Button Cell (colOne)S;11;Separator-6S;14;Stepper Cell-1S;14;App ControllerS;29;Text Field Cell (Text Cell)-1S;25;Menu Item (Substitutions)S;31;Menu Item (NewApplication Help)S;19;Horizontal ScrollerS;18;Menu Item (Window)S;16;Menu Item (Undo)S;8;MainMenuS;22;Push Button (Mutation)S;25;Menu Item (Find Previous)S;22;Menu Item (Select All)S;15;Window (Window)S;16;Menu Item (Redo)S;18;Menu Item (colTwo)S;11;Separator-7S;27;Menu Item (Revert to Saved)S;11;Menu (Help)S;17;Button Cell (Set)S;9;SeparatorS;12;Content ViewS;26;Text Field Cell (In Range)S;12;Table View-1S;18;Menu Item (Print…)S;26;Menu Item (Start Speaking)S;30;Menu Item (Bring All to Front)S;27;Menu (Spelling and Grammar)S;17;Menu Item (Open…)S;40;Static Text (Table Column Value Binding)S;20;Menu Item (Save As…)S;44;Text Field Cell (Table Column Value Binding)S;23;Menu Item (Open Recent)S;14;Text Field (5)S;16;Menu Item (Help)S;19;Text Field Cell (0)S;16;Menu Item (File)S;44;Text Field Cell (Table View Content Binding)S;26;Menu Item (NewApplication)S;34;Menu Item (Use Selection for Find)S;27;Text Field Cell (Text Cell)S;18;Menu Item (Speech)S;16;Menu Item (Save)S;11;Separator-4S;13;Menu (Speech)S;17;Menu (OtherViews)S;12;Table ColumnS;19;Table Header View-1S;19;Text Field Cell (5)S;17;Menu Item (Close)S;12;File's OwnerS;32;Menu Item (Spelling and Grammar)S;21;Menu Item (Duplicate)S;39;Menu Item (Check Spelling While Typing)S;22;Menu Item (Clear Menu)S;17;Menu Item (Login)S;44;Text Field Cell (Model values for Key Path:)S;17;Push Button (Set)S;17;Vertical ScrollerS;24;Menu Item (Smart Quotes)S;29;Text Field Cell (Text Cell)-3S;13;Menu (Insert)S;13;Pop Up ButtonS;20;Menu (Substitutions)S;29;Text Field Cell (Text Cell)-2S;33;Menu Item (Special Characters...)S;16;Array ControllerS;23;Menu Item (Smart Links)S;16;Menu Item (Copy)S;33;Bordered Scroll View (Table View)S;16;Menu Item (Find)S;11;Separator-8S;24;Menu Item (Preferences…)S;32;Menu Item (About NewApplication)S;31;Menu Item (Quit NewApplication)S;17;Table Header ViewS;22;Button Cell (Mutation)S;18;Menu Item (colOne)S;7;StepperS;20;Button Cell (Button)S;13;Menu (Window)S;40;Static Text (Model values for Key Path:)S;14;Text Field (0)S;16;Menu Item (Hide)S;18;Menu Item (Delete)S;15;Menu Item (Cut)S;16;Menu Item (View)S;15;Menu Item (New)S;25;Menu Item (Stop Speaking)S;20;Push Button (Button)S;17;Menu Item (Paste)S;11;Separator-1S;35;Bordered Scroll View (Table View)-1S;26;Menu Item (Check Spelling)S;11;Separator-2S;11;Separator-5S;12;Stepper CellS;21;Menu Item (Find Next)S;20;Menu Item (Hide All)S;28;Menu Item (Smart Copy/Paste)S;14;Table Column-3S;9;Stepper-1S;17;Menu Item (Find…)S;25;Menu Item (Page Setup...)S;21;Menu (NewApplication)S;29;Menu Item (Jump to Selection)S;14;Table Column-1S;26;Menu Item (Show Spelling…)S;18;Menu (Open Recent)D;K;10;$classnameS;20;CPCibOutletConnectorK;8;$classesA;S;20;CPCibOutletConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;266E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;16E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;41E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;520E;E;D;K;6;$classD;K;6;CP$UIDd;3;266E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;41E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;95E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;521E;E;D;K;6;$classD;K;6;CP$UIDd;3;266E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;41E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;99E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;522E;E;D;K;6;$classD;K;6;CP$UIDd;3;266E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;41E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;115E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;523E;E;D;K;6;$classD;K;6;CP$UIDd;3;266E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;41E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;71E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;524E;E;D;K;6;$classD;K;6;CP$UIDd;3;266E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;41E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;115E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;525E;E;D;K;6;$classD;K;6;CP$UIDd;3;266E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;41E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;53E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;526E;E;D;K;6;$classD;K;6;CP$UIDd;3;266E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;41E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;71E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;527E;E;D;K;6;$classD;K;6;CP$UIDd;3;266E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;47E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;53E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;520E;E;D;K;10;$classnameS;21;CPCibControlConnectorK;8;$classesA;S;21;CPCibControlConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;276E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;133E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;115E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;528E;E;D;K;6;$classD;K;6;CP$UIDd;3;276E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;112E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;71E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;528E;E;D;K;6;$classD;K;6;CP$UIDd;3;276E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;49E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;41E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;529E;E;D;K;6;$classD;K;6;CP$UIDd;3;276E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;90E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;41E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;529E;E;D;K;6;$classD;K;6;CP$UIDd;3;276E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;122E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;99E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;530E;E;D;K;6;$classD;K;6;CP$UIDd;3;276E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;31E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;531E;E;D;K;6;$classD;K;6;CP$UIDd;3;276E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;51E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;532E;E;D;K;10;$classnameS;21;CPCibBindingConnectorK;8;$classesA;S;21;CPCibBindingConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;284E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;122E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;99E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;533E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;534E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;535E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;537E;E;D;K;6;$classD;K;6;CP$UIDd;3;284E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;26E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;99E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;538E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;539E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;535E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;540E;E;D;K;6;$classD;K;6;CP$UIDd;3;284E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;99E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;41E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;541E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;542E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;543E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;544E;E;D;K;6;$classD;K;6;CP$UIDd;3;284E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;34E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;99E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;545E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;546E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;547E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;548E;E;D;K;6;$classD;K;6;CP$UIDd;3;284E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;132E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;99E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;549E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;546E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;550E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;551E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;53E;E;E;T;S;0;F;d;7;1048576S;4;EditD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;76E;E;E;d;1;0S;22;{{455, 417}, {53, 17}}S;18;{{0, 0}, {53, 17}}d;2;36S;9;textfieldS;6;normalD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;304E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;552E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;553E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;294E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;294E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;292E;E;d;1;2d;1;4S;8;In Ranged;4;3072D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;310E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;554E;E;D;K;6;$classD;K;6;CP$UIDd;3;455E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;103E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;573E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;313E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;574E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;103E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;329E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;575E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;26E;E;S;20;{{0, 0}, {499, 342}}D;K;6;$classD;K;6;CP$UIDd;3;310E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;555E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;3;310E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;556E;E;d;2;25S;6;{3, 2}d;1;1D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;3;138E;E;E;D;K;10;$classnameS;13;_CPCornerViewK;8;$classesA;S;13;_CPCornerViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;321E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;103E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;557E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;558E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;103E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;329E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;559E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;E;S;4;FindD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;3;137E;E;E;S;6;InsertS;14;submenuAction:S;21;{{1, -23}, {461, 15}}S;19;{{0, 0}, {461, 15}}d;1;8d;11;-2147483648S;8;scrollerS;8;disabledS;29;_horizontalScrollerDidScroll:f;17;0.878095238095238S;11;Select NoneS;1;DS;21;{{481, 6}, {238, 17}}S;19;{{0, 0}, {238, 17}}S;26;Table View Content Bindingd;3;366d;2;40d;4;1000D;K;10;$classnameS;24;_CPTableColumnHeaderViewK;8;$classesA;S;24;_CPTableColumnHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;343E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;560E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;560E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;561E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;562E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;6;$afontD;K;6;CP$UIDd;3;563E;K;12;$atext-colorD;K;6;CP$UIDd;3;564E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;298E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;293E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;563E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;564E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;298E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;307E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;560E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;560E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;302E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;565E;K;6;$afontD;K;6;CP$UIDd;3;567E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;307E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;306E;K;11;$aalignmentD;K;6;CP$UIDd;3;298E;K;15;$acontent-insetD;K;6;CP$UIDd;3;569E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;293E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;309E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;1;0E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;307E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;298E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;293E;E;d;1;3S;27;Check Grammar With SpellingS;23;{{224, 241}, {15, 102}}S;19;{{0, 0}, {15, 102}}d;2;37S;27;_verticalScrollerDidScroll:f;18;0.1947367936372757S;4;FileD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;63E;E;E;S;13;AppControllerS;13;SubstitutionsS;19;NewApplication HelpS;1;?S;6;WindowS;4;UndoS;1;zS;9;AMainMenuS;11;_CPMainMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;72E;E;E;S;22;{{836, 413}, {84, 25}}S;18;{{0, 0}, {84, 25}}S;6;buttonS;8;borderedD;K;6;$classD;K;6;CP$UIDd;3;304E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;552E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;553E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;292E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;294E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;292E;E;S;8;Mutationd;2;14S;13;Find PreviousS;1;Gd;7;1179648S;10;Select AllS;1;aS;28;{1.79769e+308, 1.79769e+308}S;8;CPWindowd;10;1946157056S;24;{{335, 266}, {999, 454}}S;22;{{0, 0}, {1680, 1028}}d;1;7S;4;RedoS;1;ZS;6;colTwoS;17;_popUpItemAction:S;15;Revert to SavedS;4;HelpD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;43E;E;E;S;20;{{0, 0}, {999, 454}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;3;122E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;455E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;125E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;579E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;393E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;125E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;329E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;575E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;62E;E;S;20;{{0, 0}, {448, 342}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;2;34E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;321E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;125E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;557E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;558E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;125E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;329E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;559E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;E;S;6;Print…S;1;pS;14;Start SpeakingS;18;Bring All to FrontS;20;Spelling and GrammarD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;35E;E;E;S;5;Open…S;1;oS;20;{{20, 6}, {238, 17}}S;26;Table Column Value BindingS;8;Save As…S;1;SS;11;Open RecentS;22;{{583, 408}, {35, 29}}S;18;{{0, 0}, {35, 29}}S;16;bezeled+editableS;1;5S;14;NewApplicationS;22;Use Selection for FindS;1;eS;6;SpeechS;4;SaveS;1;sD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;3;121E;E;E;S;10;OtherViewsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;2;55E;E;E;d;3;100D;K;6;$classD;K;6;CP$UIDd;3;343E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;560E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;560E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;570E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;562E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;6;$afontD;K;6;CP$UIDd;3;563E;K;12;$atext-colorD;K;6;CP$UIDd;3;564E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;298E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;293E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;563E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;564E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;298E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;307E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;560E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;560E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;302E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;565E;K;6;$afontD;K;6;CP$UIDd;3;571E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;307E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;306E;K;11;$aalignmentD;K;6;CP$UIDd;3;298E;K;15;$acontent-insetD;K;6;CP$UIDd;3;572E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;293E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;309E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;1;0E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;307E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;298E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;293E;E;D;K;6;$classD;K;6;CP$UIDd;3;455E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;125E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;581E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;582E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;583E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;125E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;329E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;575E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;83E;E;S;19;{{0, 0}, {448, 25}}S;14;tableHeaderRowS;5;CloseS;1;wS;9;DuplicateS;1;dS;27;Check Spelling While TypingS;10;Clear MenuS;5;LoginS;22;{{932, 413}, {47, 25}}S;18;{{0, 0}, {47, 25}}S;3;SetS;12;Smart QuotesS;1;gD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;97E;E;E;S;22;{{354, 411}, {99, 25}}S;18;{{0, 0}, {99, 25}}S;12;popup-buttond;2;12D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;3;100E;E;E;S;21;Special Characters...S;19;CPMutableDictionaryS;11;Smart LinksS;4;CopyS;1;cS;23;{{478, 31}, {501, 360}}S;20;{{0, 0}, {501, 360}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;312E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;3;456E;D;K;6;CP$UIDd;3;322E;D;K;6;CP$UIDd;3;458E;E;E;S;10;scrollviewD;K;10;$classnameS;10;CPClipViewK;8;$classesA;S;10;CPClipViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;455E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;103E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;298E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;576E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;577E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;578E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;103E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;329E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;575E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;3;109E;E;d;2;10D;K;6;$classD;K;6;CP$UIDd;2;60E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;103E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;560E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;560E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;103E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;E;S;12;Preferences…S;1;,S;20;About NewApplicationS;19;Quit NewApplicationS;1;qS;19;{{0, 0}, {499, 25}}S;6;colOneS;22;{{619, 410}, {19, 25}}S;18;{{0, 0}, {19, 25}}S;7;stepperd;1;5d;5;65540S;14;_CPWindowsMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;2;65E;E;E;S;23;{{182, 417}, {165, 17}}S;19;{{0, 0}, {165, 17}}S;26;Model values for Key Path:S;22;{{512, 408}, {34, 29}}S;18;{{0, 0}, {34, 29}}S;1;0S;4;HideS;1;hS;6;DeleteS;3;CutS;1;xS;4;ViewS;3;NewS;1;nS;13;Stop SpeakingS;21;{{20, 399}, {84, 25}}S;6;ButtonS;5;PasteS;1;vS;22;{{20, 31}, {450, 360}}S;20;{{0, 0}, {450, 360}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;392E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;3;425E;D;K;6;CP$UIDd;3;395E;D;K;6;CP$UIDd;3;495E;E;E;D;K;6;$classD;K;6;CP$UIDd;2;60E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;125E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;560E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;560E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;125E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;E;S;14;Check SpellingS;1;;S;9;Find NextS;8;Hide AllS;16;Smart Copy/PasteS;1;fd;2;76D;K;6;$classD;K;6;CP$UIDd;3;343E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;560E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;560E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;584E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;562E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;6;$afontD;K;6;CP$UIDd;3;563E;K;12;$atext-colorD;K;6;CP$UIDd;3;564E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;298E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;293E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;563E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;564E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;298E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;307E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;560E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;560E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;302E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;565E;K;6;$afontD;K;6;CP$UIDd;3;585E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;307E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;306E;K;11;$aalignmentD;K;6;CP$UIDd;3;298E;K;15;$acontent-insetD;K;6;CP$UIDd;3;586E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;293E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;309E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;1;0E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;307E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;298E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;293E;E;S;22;{{547, 410}, {19, 25}}S;5;Find…S;13;Page Setup...S;1;PS;18;_CPApplicationMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;3;108E;E;E;S;17;Jump to SelectionS;1;jd;3;393D;K;6;$classD;K;6;CP$UIDd;3;343E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;560E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;560E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;587E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;562E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;K;6;$afontD;K;6;CP$UIDd;3;563E;K;12;$atext-colorD;K;6;CP$UIDd;3;564E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;298E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;293E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;563E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;564E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;298E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;307E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;560E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;560E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;302E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;565E;K;6;$afontD;K;6;CP$UIDd;3;588E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;307E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;306E;K;11;$aalignmentD;K;6;CP$UIDd;3;298E;K;15;$acontent-insetD;K;6;CP$UIDd;3;589E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;293E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;309E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;1;0E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;307E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;298E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;293E;E;S;14;Show Spelling…S;1;:S;22;_CPRecentDocumentsMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;88E;E;E;S;8;delegateS;12;KeyPathPopupS;15;arrayControllerS;4;fromS;11;lengthFieldS;13;locationFieldS;9;theWindowS;2;toS;21;takeIntegerValueFrom:S;22;updateOrReloadContent:S;4;add:S;11;selectNone:S;10;selectAll:S;23;target: arrangedObjectsS;6;targetS;15;arrangedObjectsD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;536E;K;10;CP.objectsD;E;E;S;24;content: arrangedObjectsS;7;contentD;K;6;$classD;K;6;CP$UIDd;3;536E;K;10;CP.objectsD;E;E;S;18;contentArray: rowsS;12;contentArrayS;4;rowsD;K;6;$classD;K;6;CP$UIDd;3;536E;K;10;CP.objectsD;E;E;S;29;value: arrangedObjects.colTwoS;5;valueS;22;arrangedObjects.colTwoD;K;6;$classD;K;6;CP$UIDd;3;536E;K;10;CP.objectsD;E;E;S;29;value: arrangedObjects.colOneS;22;arrangedObjects.colOneD;K;6;$classD;K;6;CP$UIDd;3;536E;K;10;CP.objectsD;E;E;S;28;_CPFontSystemFacePlaceholderd;2;-1D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;590E;D;K;6;CP$UIDd;3;590E;D;K;6;CP$UIDd;3;590E;D;K;6;CP$UIDd;3;319E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;319E;D;K;6;CP$UIDd;3;319E;D;K;6;CP$UIDd;3;319E;D;K;6;CP$UIDd;3;319E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;591E;D;K;6;CP$UIDd;3;591E;D;K;6;CP$UIDd;3;591E;D;K;6;CP$UIDd;3;319E;E;E;S;22;{{224, 337}, {16, 23}}S;18;{{0, 0}, {16, 23}}S;10;cornerviewS;16;{{0, 0}, {0, 0}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;593E;E;E;S;12;columnHeaderD;K;6;$classD;K;6;CP$UIDd;3;304E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;552E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;594E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;292E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;294E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;292E;E;D;K;6;$classD;K;6;CP$UIDd;3;310E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;595E;E;S;11;placeholderD;K;10;$classnameS;17;_CPThemeAttributeK;8;$classesA;S;17;_CPThemeAttributeS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;566E;K;4;nameD;K;6;CP$UIDd;3;596E;K;12;defaultValueD;K;6;CP$UIDd;3;305E;K;6;valuesD;K;6;CP$UIDd;3;597E;E;D;K;10;$classnameS;21;_CPKeyedArchiverValueK;8;$classesA;S;21;_CPKeyedArchiverValueS;7;CPValueS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;568E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;598E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;599E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;566E;K;4;nameD;K;6;CP$UIDd;3;596E;K;12;defaultValueD;K;6;CP$UIDd;3;305E;K;6;valuesD;K;6;CP$UIDd;3;600E;E;D;K;6;$classD;K;6;CP$UIDd;3;568E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;598E;E;S;20;{{1, 1}, {499, 342}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;26E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;310E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;601E;E;S;21;{{1, 343}, {499, 17}}S;19;{{0, 0}, {499, 17}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;109E;E;E;S;20;{{1, 1}, {448, 342}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;62E;E;E;S;21;{{1, 343}, {448, 17}}S;19;{{0, 0}, {448, 17}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;83E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;602E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;566E;K;4;nameD;K;6;CP$UIDd;3;596E;K;12;defaultValueD;K;6;CP$UIDd;3;305E;K;6;valuesD;K;6;CP$UIDd;3;603E;E;D;K;6;$classD;K;6;CP$UIDd;3;568E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;598E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;604E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;566E;K;4;nameD;K;6;CP$UIDd;3;596E;K;12;defaultValueD;K;6;CP$UIDd;3;305E;K;6;valuesD;K;6;CP$UIDd;3;605E;E;D;K;6;$classD;K;6;CP$UIDd;3;568E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;598E;E;f;18;0.6862745098039216f;3;0.8D;K;10;$classnameS;19;_CPImageAndTextViewK;8;$classesA;S;19;_CPImageAndTextViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;592E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;344E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;560E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;560E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;344E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;606E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;294E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;E;d;2;11D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;607E;D;K;6;CP$UIDd;3;607E;D;K;6;CP$UIDd;3;607E;D;K;6;CP$UIDd;3;319E;E;E;S;4;fontD;K;6;$classD;K;6;CP$UIDd;3;536E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;608E;K;6;normalD;K;6;CP$UIDd;3;609E;E;E;S;39;{"top":0,"right":5,"bottom":0,"left":5}D;K;6;$classD;K;6;CP$UIDd;3;592E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;423E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;560E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;560E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;423E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;606E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;294E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;E;D;K;6;$classD;K;6;CP$UIDd;3;536E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;608E;K;6;normalD;K;6;CP$UIDd;3;609E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;319E;D;K;6;CP$UIDd;3;319E;D;K;6;CP$UIDd;3;319E;D;K;6;CP$UIDd;3;319E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;592E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;503E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;560E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;560E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;503E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;606E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;294E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;E;D;K;6;$classD;K;6;CP$UIDd;3;536E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;608E;K;6;normalD;K;6;CP$UIDd;3;609E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;592E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;514E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;560E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;560E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;514E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;606E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;294E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;303E;E;D;K;6;$classD;K;6;CP$UIDd;3;536E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;608E;K;6;normalD;K;6;CP$UIDd;3;609E;E;E;d;2;18f;18;0.5019607843137255D;K;6;$classD;K;6;CP$UIDd;3;304E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;610E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;444E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;292E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;294E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;294E;E;D;K;6;$classD;K;6;CP$UIDd;3;304E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;552E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;444E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;294E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;294E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;292E;E;S;17;Arial, sans-serifE;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file +280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;0E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;4E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;0E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;1;7E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;1;9E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;11E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;13E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;15E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;17E;D;K;6;CP$UIDd;2;18E;D;K;6;CP$UIDd;2;19E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;96E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;43E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;97E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;2;98E;E;D;K;10;$classnameS;20;CPCibOutletConnectorK;8;$classesA;S;20;CPCibOutletConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;11E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;92E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;99E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;92E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;43E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;92E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;69E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;101E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;92E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;68E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;102E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;92E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;37E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;103E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;81E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;92E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;99E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;84E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;85E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;104E;E;D;K;10;$classnameS;21;CPCibControlConnectorK;8;$classesA;S;21;CPCibControlConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;71E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;68E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;105E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;72E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;69E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;105E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;74E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;92E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;106E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;75E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;92E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;106E;E;D;K;10;$classnameS;21;CPCibBindingConnectorK;8;$classesA;S;21;CPCibBindingConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;87E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;84E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;107E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;108E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;109E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;86E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;84E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;112E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;108E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;113E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;114E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;81E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;94E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;115E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;116E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;117E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;118E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;63E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;94E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;115E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;116E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;117E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;119E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;94E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;92E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;120E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;121E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;122E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;123E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;94E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;124E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;108E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;125E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;126E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;56E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;94E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;127E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;108E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;128E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;129E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;97E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;36E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;130E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;131E;K;30;_CPCibWindowTemplateWTFlagsKeyD;K;6;CP$UIDd;3;132E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;133E;K;33;_CPCibWindowTemplateScreenRectKeyD;K;6;CP$UIDd;3;134E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;135E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;136E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;39E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;138E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;138E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;139E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;E;D;K;10;$classnameS;11;CPTextFieldK;8;$classesA;S;11;CPTextFieldS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;141E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;142E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;147E;K;11;$aalignmentD;K;6;CP$UIDd;3;148E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;149E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;150E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;152E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;154E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;147E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;148E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;13;CPPopUpButtonK;8;$classesA;S;13;CPPopUpButtonS;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;42E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;2;96E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;155E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;156E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;157E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;158E;K;6;$afontD;K;6;CP$UIDd;3;159E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;160E;K;11;$aalignmentD;K;6;CP$UIDd;3;137E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;137E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;160E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;1;0E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;161E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;152E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;162E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;137E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;149E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;147E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;137E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;44E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;163E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;43E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;164E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;148E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;96E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;165E;E;D;K;6;$classD;K;6;CP$UIDd;2;44E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;166E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;43E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;164E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;96E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;165E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;167E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;168E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;147E;K;11;$aalignmentD;K;6;CP$UIDd;3;160E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;149E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;169E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;152E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;154E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;147E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;160E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;12;CPScrollViewK;8;$classesA;S;12;CPScrollViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;48E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;170E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;171E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;172E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;173E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;175E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;3;176E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;51E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;2;52E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;177E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;177E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;177E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;177E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;149E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;149E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;149E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;178E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;147E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;3;137E;E;D;K;10;$classnameS;10;CPScrollerK;8;$classesA;S;10;CPScrollerS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;49E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;179E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;180E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;49E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;181E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;182E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;183E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;184E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;137E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;49E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;185E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;160E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;137E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;149E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;186E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;49E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;187E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;188E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;49E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;181E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;182E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;183E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;184E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;137E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;49E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;189E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;160E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;137E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;152E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;190E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;11;CPTableViewK;8;$classesA;S;11;CPTableViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;175E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;191E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;191E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;175E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;192E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;193E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;12;$agrid-colorD;K;6;CP$UIDd;3;194E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;160E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;195E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;196E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;137E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;148E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;152E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;149E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;149E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;149E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;149E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;197E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;194E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;3;137E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;149E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;3;199E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;2;59E;K;26;CPTableViewAutosaveNameKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;13;CPTableColumnK;8;$classesA;S;13;CPTableColumnS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;55E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;200E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;201E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;202E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;204E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;205E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;206E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;152E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;149E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;55E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;200E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;201E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;202E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;207E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;208E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;206E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;152E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;149E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;17;CPTableHeaderViewK;8;$classesA;S;17;CPTableHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;58E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;176E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;209E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;209E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;176E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;210E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;29;CPTableHeaderViewTableViewKeyD;K;6;CP$UIDd;2;54E;K;33;CPTableHeaderViewDrawsColumnLinesD;K;6;CP$UIDd;3;149E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;211E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;212E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;147E;K;11;$aalignmentD;K;6;CP$UIDd;3;160E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;149E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;213E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;152E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;154E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;147E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;160E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;48E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;214E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;215E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;216E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;173E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;217E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;3;218E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;67E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;2;66E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;177E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;177E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;177E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;177E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;149E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;149E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;149E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;219E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;147E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;58E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;218E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;220E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;220E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;218E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;210E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;29;CPTableHeaderViewTableViewKeyD;K;6;CP$UIDd;2;63E;K;33;CPTableHeaderViewDrawsColumnLinesD;K;6;CP$UIDd;3;149E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;217E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;221E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;221E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;217E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;192E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;193E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;12;$agrid-colorD;K;6;CP$UIDd;3;194E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;160E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;195E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;196E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;137E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;148E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;152E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;149E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;149E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;149E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;149E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;222E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;194E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;3;137E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;149E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;3;223E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;2;62E;K;26;CPTableViewAutosaveNameKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;55E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;224E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;201E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;202E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;225E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;226E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;206E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;152E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;149E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;55E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;227E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;201E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;202E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;228E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;229E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;206E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;152E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;149E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;187E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;188E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;181E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;182E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;183E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;184E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;137E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;61E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;189E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;160E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;137E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;152E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;230E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;179E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;180E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;181E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;182E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;183E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;184E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;137E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;61E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;185E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;160E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;137E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;149E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;186E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;231E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;232E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;233E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;147E;K;11;$aalignmentD;K;6;CP$UIDd;3;160E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;149E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;234E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;149E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;149E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;149E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;192E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;147E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;160E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;235E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;236E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;233E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;147E;K;11;$aalignmentD;K;6;CP$UIDd;3;160E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;149E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;237E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;149E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;149E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;149E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;192E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;147E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;160E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;9;CPStepperK;8;$classesA;S;9;CPStepperS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;70E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;238E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;239E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;240E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;137E;K;11;$aalignmentD;K;6;CP$UIDd;3;137E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;137E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;241E;K;18;CPStepperIncrementD;K;6;CP$UIDd;3;148E;K;17;CPStepperMaxValueD;K;6;CP$UIDd;3;242E;K;19;CPStepperAutorepeatD;K;6;CP$UIDd;3;149E;E;D;K;6;$classD;K;6;CP$UIDd;2;70E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;243E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;239E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;240E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;137E;K;11;$aalignmentD;K;6;CP$UIDd;3;137E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;244E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;241E;K;18;CPStepperIncrementD;K;6;CP$UIDd;3;148E;K;17;CPStepperMaxValueD;K;6;CP$UIDd;3;242E;K;19;CPStepperAutorepeatD;K;6;CP$UIDd;3;149E;E;D;K;10;$classnameS;8;CPButtonK;8;$classesA;S;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;202E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;245E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;246E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;247E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;158E;K;6;$afontD;K;6;CP$UIDd;3;159E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;137E;K;11;$aalignmentD;K;6;CP$UIDd;3;147E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;137E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;160E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;248E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;161E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;152E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;249E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;137E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;149E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;147E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;137E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;250E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;246E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;247E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;158E;K;6;$afontD;K;6;CP$UIDd;3;159E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;137E;K;11;$aalignmentD;K;6;CP$UIDd;3;147E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;137E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;160E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;251E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;161E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;152E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;249E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;137E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;149E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;147E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;137E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;252E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;253E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;147E;K;11;$aalignmentD;K;6;CP$UIDd;3;160E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;149E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;254E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;152E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;154E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;147E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;160E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;255E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;256E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;147E;K;11;$aalignmentD;K;6;CP$UIDd;3;160E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;149E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;257E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;152E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;154E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;147E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;160E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;258E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;259E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;260E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;147E;K;11;$aalignmentD;K;6;CP$UIDd;3;160E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;149E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;261E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;152E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;154E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;147E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;160E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;262E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;263E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;147E;K;11;$aalignmentD;K;6;CP$UIDd;3;160E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;149E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;264E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;152E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;154E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;147E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;160E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;48E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;265E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;266E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;267E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;260E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;173E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;268E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;3;269E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;91E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;2;89E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;177E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;177E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;177E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;177E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;149E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;149E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;149E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;270E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;147E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;268E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;271E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;271E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;268E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;192E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;193E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;12;$agrid-colorD;K;6;CP$UIDd;3;194E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;160E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;272E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;196E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;137E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;160E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;152E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;149E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;149E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;149E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;149E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;273E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;194E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;3;137E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;149E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;3;274E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;2;90E;K;26;CPTableViewAutosaveNameKeyD;K;6;CP$UIDd;1;0E;K;35;CPTableViewArchivedReusableViewsKeyD;K;6;CP$UIDd;3;275E;E;D;K;6;$classD;K;6;CP$UIDd;2;55E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;276E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;277E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;201E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;202E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;278E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;279E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;206E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;152E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;149E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;15;CPTableCellViewK;8;$classesA;S;15;CPTableCellViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;280E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;281E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;282E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;283E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;276E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;84E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;284E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;285E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;84E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;12;$atext-colorD;K;6;CP$UIDd;3;286E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;160E;K;11;$aalignmentD;K;6;CP$UIDd;3;160E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;149E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;287E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;152E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;192E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;160E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;160E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;84E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;288E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;289E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;84E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;290E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;291E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;12;$atext-colorD;K;6;CP$UIDd;3;292E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;160E;K;11;$aalignmentD;K;6;CP$UIDd;3;160E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;149E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;161E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;152E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;154E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;160E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;160E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;84E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;293E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;289E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;84E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;290E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;291E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;12;$atext-colorD;K;6;CP$UIDd;3;292E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;160E;K;11;$aalignmentD;K;6;CP$UIDd;3;160E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;149E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;161E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;152E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;154E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;160E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;160E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;84E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;294E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;285E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;84E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;160E;K;11;$aalignmentD;K;6;CP$UIDd;3;160E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;149E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;295E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;152E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;152E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;192E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;160E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;160E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;80E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;296E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;297E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;80E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;181E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;182E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;183E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;184E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;137E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;80E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;189E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;160E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;137E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;152E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;298E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;58E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;269E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;299E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;299E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;269E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;210E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;29;CPTableHeaderViewTableViewKeyD;K;6;CP$UIDd;2;81E;K;33;CPTableHeaderViewDrawsColumnLinesD;K;6;CP$UIDd;3;149E;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;80E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;300E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;180E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;80E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;181E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;182E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;183E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;184E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;137E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;80E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;185E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;160E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;137E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;149E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;301E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;302E;E;D;K;10;$classnameS;17;CPArrayControllerK;8;$classesA;S;17;CPArrayControllerS;18;CPObjectControllerS;12;CPControllerS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;93E;K;28;CPObjectControllerContentKeyD;K;6;CP$UIDd;1;0E;K;36;CPObjectControllerObjectClassNameKeyD;K;6;CP$UIDd;3;303E;K;31;CPObjectControllerIsEditableKeyD;K;6;CP$UIDd;3;149E;K;49;CPObjectControllerAutomaticallyPreparesContentKeyD;K;6;CP$UIDd;3;152E;K;37;CPArrayControllerAvoidsEmptySelectionD;K;6;CP$UIDd;3;152E;K;49;CPArrayControllerClearsFilterPredicateOnInsertionD;K;6;CP$UIDd;3;152E;K;41;CPArrayControllerFilterRestrictsInsertionD;K;6;CP$UIDd;3;149E;K;35;CPArrayControllerPreservesSelectionD;K;6;CP$UIDd;3;152E;K;39;CPArrayControllerSelectsInsertedObjectsD;K;6;CP$UIDd;3;152E;K;47;CPArrayControllerAlwaysUsesMultipleValuesMarkerD;K;6;CP$UIDd;3;152E;K;47;CPArrayControllerAutomaticallyRearrangesObjectsD;K;6;CP$UIDd;3;152E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;95E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;304E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;305E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;37E;E;E;S;8;delegateS;12;KeyPathPopupS;11;lengthFieldS;13;locationFieldS;9;theWindowS;9;textFieldS;21;takeIntegerValueFrom:S;22;updateOrReloadContent:S;25;value: objectValue.colTwoS;5;valueS;18;objectValue.colTwoD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;110E;K;10;CP.objectsD;E;E;S;25;value: objectValue.colOneS;18;objectValue.colOneD;K;6;$classD;K;6;CP$UIDd;3;110E;K;10;CP.objectsD;E;E;S;24;content: arrangedObjectsS;7;contentS;15;arrangedObjectsD;K;6;$classD;K;6;CP$UIDd;3;110E;K;10;CP.objectsD;E;E;D;K;6;$classD;K;6;CP$UIDd;3;110E;K;10;CP.objectsD;E;E;S;18;contentArray: rowsS;12;contentArrayS;4;rowsD;K;6;$classD;K;6;CP$UIDd;3;110E;K;10;CP.objectsD;E;E;S;29;value: arrangedObjects.colTwoS;22;arrangedObjects.colTwoD;K;6;$classD;K;6;CP$UIDd;3;110E;K;10;CP.objectsD;E;E;S;29;value: arrangedObjects.colOneS;22;arrangedObjects.colOneD;K;6;$classD;K;6;CP$UIDd;3;110E;K;10;CP.objectsD;E;E;S;32;{10000000000000, 10000000000000}S;8;CPWindowd;10;1946157056S;24;{{335, 235}, {999, 485}}S;22;{{0, 0}, {1680, 1028}}d;1;7S;6;Windowd;1;0S;20;{{0, 0}, {999, 485}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;80E;E;E;S;6;normalS;23;{{129, 417}, {218, 17}}S;19;{{0, 0}, {218, 17}}d;2;36S;9;textfieldD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;145E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;306E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;307E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;152E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;152E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;149E;E;d;1;2d;1;1T;S;33;Change model values for Key Path:d;4;3072F;D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;153E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;308E;E;S;22;{{354, 411}, {86, 25}}S;18;{{0, 0}, {86, 25}}S;12;popup-buttonS;8;borderedD;K;6;$classD;K;6;CP$UIDd;3;145E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;306E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;307E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;149E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;152E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;149E;E;d;1;4S;0;d;2;12S;6;colOneS;17;_popUpItemAction:d;7;1048576S;6;colTwoS;22;{{455, 417}, {84, 17}}S;18;{{0, 0}, {84, 17}}S;12;In Row RangeS;22;{{20, 31}, {196, 360}}S;20;{{0, 0}, {196, 360}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;175E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;199E;D;K;6;CP$UIDd;3;178E;E;E;S;10;scrollviewD;K;10;$classnameS;10;CPClipViewK;8;$classesA;S;10;CPClipViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;174E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;49E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;309E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;191E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;310E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;49E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;181E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;311E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;54E;E;D;K;6;$classD;K;6;CP$UIDd;3;174E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;49E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;312E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;313E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;314E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;49E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;181E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;311E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;59E;E;d;2;10D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;49E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;49E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;E;S;23;{{224, 241}, {15, 102}}S;19;{{0, 0}, {15, 102}}d;1;8d;11;-2147483648S;8;scrollerS;8;disabledS;27;_verticalScrollerDidScroll:f;17;0.956140350877193S;21;{{1, -23}, {461, 15}}S;19;{{0, 0}, {461, 15}}S;29;_horizontalScrollerDidScroll:f;18;0.9797979797979798S;20;{{0, 0}, {194, 342}}D;K;6;$classD;K;6;CP$UIDd;3;153E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;316E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;3;153E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;317E;E;d;2;25S;6;{3, 2}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;E;E;D;K;10;$classnameS;13;_CPCornerViewK;8;$classesA;S;13;_CPCornerViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;198E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;49E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;318E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;319E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;49E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;181E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;320E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;E;d;2;94d;2;40d;4;1000D;K;10;$classnameS;24;_CPTableColumnHeaderViewK;8;$classesA;S;24;_CPTableColumnHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;203E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;321E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;322E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;6;$afontD;K;6;CP$UIDd;3;323E;K;12;$atext-colorD;K;6;CP$UIDd;3;324E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;137E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;161E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;323E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;324E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;137E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;160E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;291E;K;6;$afontD;K;6;CP$UIDd;3;326E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;160E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;147E;K;11;$aalignmentD;K;6;CP$UIDd;3;137E;K;15;$acontent-insetD;K;6;CP$UIDd;3;328E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;161E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;1;0E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;160E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;137E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;161E;E;d;1;3D;K;6;$classD;K;6;CP$UIDd;3;203E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;329E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;322E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;6;$afontD;K;6;CP$UIDd;3;323E;K;12;$atext-colorD;K;6;CP$UIDd;3;324E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;137E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;161E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;323E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;324E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;137E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;160E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;291E;K;6;$afontD;K;6;CP$UIDd;3;330E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;160E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;147E;K;11;$aalignmentD;K;6;CP$UIDd;3;137E;K;15;$acontent-insetD;K;6;CP$UIDd;3;331E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;161E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;1;0E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;160E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;137E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;161E;E;S;19;{{0, 0}, {194, 25}}S;14;tableHeaderRowS;20;{{20, 6}, {177, 17}}S;19;{{0, 0}, {177, 17}}S;26;Table Column Value BindingS;23;{{236, 31}, {270, 360}}S;20;{{0, 0}, {270, 360}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;217E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;223E;D;K;6;CP$UIDd;3;219E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;174E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;332E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;221E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;333E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;181E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;311E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;63E;E;D;K;6;$classD;K;6;CP$UIDd;3;174E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;334E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;335E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;336E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;181E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;311E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;62E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;E;S;19;{{0, 0}, {268, 25}}S;20;{{0, 0}, {268, 342}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;64E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;198E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;61E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;318E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;319E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;181E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;320E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;E;d;3;126D;K;6;$classD;K;6;CP$UIDd;3;203E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;337E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;322E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;6;$afontD;K;6;CP$UIDd;3;323E;K;12;$atext-colorD;K;6;CP$UIDd;3;324E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;137E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;161E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;323E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;324E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;137E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;160E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;291E;K;6;$afontD;K;6;CP$UIDd;3;338E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;160E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;147E;K;11;$aalignmentD;K;6;CP$UIDd;3;137E;K;15;$acontent-insetD;K;6;CP$UIDd;3;339E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;161E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;1;0E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;160E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;137E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;161E;E;d;3;136D;K;6;$classD;K;6;CP$UIDd;3;203E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;340E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;322E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;6;$afontD;K;6;CP$UIDd;3;323E;K;12;$atext-colorD;K;6;CP$UIDd;3;324E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;137E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;161E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;323E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;324E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;137E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;160E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;291E;K;6;$afontD;K;6;CP$UIDd;3;341E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;160E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;147E;K;11;$aalignmentD;K;6;CP$UIDd;3;137E;K;15;$acontent-insetD;K;6;CP$UIDd;3;342E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;161E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;1;0E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;160E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;137E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;161E;E;f;18;0.9947916666666666S;22;{{543, 408}, {34, 29}}S;18;{{0, 0}, {34, 29}}S;16;bezeled+editableS;1;0S;22;{{605, 408}, {35, 29}}S;18;{{0, 0}, {35, 29}}S;1;5S;22;{{573, 410}, {19, 25}}S;18;{{0, 0}, {19, 25}}S;7;stepperd;5;65540d;3;100S;22;{{635, 410}, {19, 25}}d;1;5S;22;{{676, 408}, {84, 25}}S;18;{{0, 0}, {84, 25}}S;6;buttonS;8;Mutationd;2;14S;22;{{676, 442}, {84, 25}}S;3;SetS;23;{{783, 412}, {193, 17}}S;19;{{0, 0}, {193, 17}}S;31;[content setValue: forKeyPath:]S;23;{{783, 445}, {182, 17}}S;19;{{0, 0}, {182, 17}}S;28;[self setContent:newContent]S;21;{{597, 6}, {254, 17}}S;19;{{0, 0}, {254, 17}}d;2;33S;39;Table View Content Binding (view based)S;21;{{236, 6}, {248, 17}}S;19;{{0, 0}, {248, 17}}S;39;Table View Content Binding (cell based)S;23;{{598, 31}, {253, 366}}S;20;{{0, 0}, {253, 366}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;268E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;3;269E;D;K;6;CP$UIDd;3;274E;D;K;6;CP$UIDd;3;270E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;174E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;80E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;343E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;271E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;344E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;80E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;181E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;311E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;345E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;81E;E;D;K;6;$classD;K;6;CP$UIDd;3;174E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;80E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;346E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;347E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;348E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;80E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;181E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;311E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;349E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;80E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;80E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;E;S;20;{{0, 0}, {251, 348}}d;2;44D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;82E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;198E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;80E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;137E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;350E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;319E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;80E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;181E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;320E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;351E;E;D;K;6;$classD;K;6;CP$UIDd;3;110E;K;10;CP.objectsD;K;3;oneD;K;6;CP$UIDd;3;353E;E;E;S;3;oned;3;248D;K;6;$classD;K;6;CP$UIDd;3;203E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;354E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;322E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;6;$afontD;K;6;CP$UIDd;3;323E;K;12;$atext-colorD;K;6;CP$UIDd;3;324E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;137E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;161E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;323E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;324E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;137E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;160E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;291E;K;6;$afontD;K;6;CP$UIDd;3;355E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;160E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;147E;K;11;$aalignmentD;K;6;CP$UIDd;3;137E;K;15;$acontent-insetD;K;6;CP$UIDd;3;356E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;161E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;151E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;1;0E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;1;0E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;160E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;137E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;161E;E;S;19;{{1, 1}, {248, 44}}S;19;{{0, 0}, {248, 44}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;E;E;d;2;18S;18;{{3, 1}, {58, 17}}S;18;{{0, 0}, {58, 17}}D;K;6;$classD;K;6;CP$UIDd;3;153E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;357E;E;S;8;Value 1:S;20;{{60, 1}, {185, 17}}S;19;{{0, 0}, {185, 17}}d;2;35S;11;placeholderD;K;6;$classD;K;6;CP$UIDd;3;153E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;358E;E;S;21;{{60, 20}, {185, 17}}S;19;{{3, 20}, {58, 17}}S;8;Value 2:S;21;{{1, 232}, {223, 15}}S;19;{{0, 0}, {223, 15}}f;18;0.9881889763779528S;19;{{0, 0}, {251, 25}}S;23;{{224, 247}, {15, 102}}f;18;0.9568965517241379S;13;AppControllerS;19;CPMutableDictionaryS;10;OtherViewsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;E;E;S;28;_CPFontSystemFacePlaceholderd;2;-1D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;359E;D;K;6;CP$UIDd;3;359E;D;K;6;CP$UIDd;3;359E;D;K;6;CP$UIDd;3;148E;E;E;S;20;{{1, 1}, {194, 342}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;54E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;153E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;360E;E;S;21;{{1, 343}, {194, 17}}S;19;{{0, 0}, {194, 17}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;59E;E;E;S;16;{{0, 0}, {0, 0}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;148E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;361E;D;K;6;CP$UIDd;3;361E;D;K;6;CP$UIDd;3;361E;D;K;6;CP$UIDd;3;148E;E;E;S;22;{{224, 337}, {16, 23}}S;18;{{0, 0}, {16, 23}}S;10;cornerviewD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;363E;E;E;S;12;columnHeaderD;K;6;$classD;K;6;CP$UIDd;3;145E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;306E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;364E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;149E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;152E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;149E;E;D;K;6;$classD;K;6;CP$UIDd;3;153E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;365E;E;D;K;10;$classnameS;17;_CPThemeAttributeK;8;$classesA;S;17;_CPThemeAttributeS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;325E;K;4;nameD;K;6;CP$UIDd;3;366E;K;12;defaultValueD;K;6;CP$UIDd;3;146E;K;6;valuesD;K;6;CP$UIDd;3;367E;E;D;K;10;$classnameS;21;_CPKeyedArchiverValueK;8;$classesA;S;21;_CPKeyedArchiverValueS;7;CPValueS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;327E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;368E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;369E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;325E;K;4;nameD;K;6;CP$UIDd;3;366E;K;12;defaultValueD;K;6;CP$UIDd;3;146E;K;6;valuesD;K;6;CP$UIDd;3;370E;E;D;K;6;$classD;K;6;CP$UIDd;3;327E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;368E;E;S;20;{{1, 1}, {268, 342}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;63E;E;E;S;21;{{1, 343}, {268, 17}}S;19;{{0, 0}, {268, 17}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;62E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;371E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;325E;K;4;nameD;K;6;CP$UIDd;3;366E;K;12;defaultValueD;K;6;CP$UIDd;3;146E;K;6;valuesD;K;6;CP$UIDd;3;372E;E;D;K;6;$classD;K;6;CP$UIDd;3;327E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;368E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;373E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;325E;K;4;nameD;K;6;CP$UIDd;3;366E;K;12;defaultValueD;K;6;CP$UIDd;3;146E;K;6;valuesD;K;6;CP$UIDd;3;374E;E;D;K;6;$classD;K;6;CP$UIDd;3;327E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;368E;E;S;20;{{1, 1}, {251, 348}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;81E;E;E;S;6;_NS:11S;21;{{1, 349}, {251, 17}}S;19;{{0, 0}, {251, 17}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;90E;E;E;S;6;_NS:15S;22;{{224, 343}, {16, 23}}S;6;_NS:19D;K;10;$classnameS;5;CPCibK;8;$classesA;S;5;CPCibS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;352E;K;16;CPCibDataFileKeyD;K;6;CP$UIDd;3;375E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;376E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;325E;K;4;nameD;K;6;CP$UIDd;3;366E;K;12;defaultValueD;K;6;CP$UIDd;3;146E;K;6;valuesD;K;6;CP$UIDd;3;377E;E;D;K;6;$classD;K;6;CP$UIDd;3;327E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;368E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;378E;D;K;6;CP$UIDd;3;378E;D;K;6;CP$UIDd;3;378E;D;K;6;CP$UIDd;3;148E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;379E;D;K;6;CP$UIDd;3;380E;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;3;148E;E;E;f;18;0.6862745098039216D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;148E;E;E;f;3;0.8D;K;10;$classnameS;19;_CPImageAndTextViewK;8;$classesA;S;19;_CPImageAndTextViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;362E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;204E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;204E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;283E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;152E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;E;d;2;11D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;382E;D;K;6;CP$UIDd;3;382E;D;K;6;CP$UIDd;3;382E;D;K;6;CP$UIDd;3;148E;E;E;S;4;fontD;K;6;$classD;K;6;CP$UIDd;3;110E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;383E;K;6;normalD;K;6;CP$UIDd;3;384E;E;E;S;39;{"top":0,"right":5,"bottom":0,"left":5}D;K;6;$classD;K;6;CP$UIDd;3;362E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;207E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;207E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;283E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;152E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;E;D;K;6;$classD;K;6;CP$UIDd;3;110E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;383E;K;6;normalD;K;6;CP$UIDd;3;384E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;362E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;225E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;225E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;283E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;152E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;E;D;K;6;$classD;K;6;CP$UIDd;3;110E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;383E;K;6;normalD;K;6;CP$UIDd;3;384E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;362E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;228E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;228E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;283E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;152E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;E;D;K;6;$classD;K;6;CP$UIDd;3;110E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;383E;K;6;normalD;K;6;CP$UIDd;3;384E;E;E;S;13836;MjgwTlBMSVNUOzEuMDtEO0s7NDskdG9wRDtLOzE4O0NQQ2liT2JqZWN0RGF0YUtleUQ7Szs2O0NQJFVJRGQ7MTsyRTtFO0s7ODskb2JqZWN0c0E7Uzs1OyRudWxsRDtLOzEwOyRjbGFzc25hbWVTOzE2O19DUENpYk9iamVjdERhdGFLOzg7JGNsYXNzZXNBO1M7MTY7X0NQQ2liT2JqZWN0RGF0YVM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7MUU7SzsyODtfQ1BDaWJPYmplY3REYXRhTmFtZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YU5hbWVzVmFsdWVzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzI7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNWYWx1ZXNLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzszMDtfQ1BDaWJPYmplY3REYXRhQ29ubmVjdGlvbnNLZXlEO0s7NjtDUCRVSURkOzE7NEU7SzsyODtfQ1BDaWJPYmplY3REYXRhRnJhbWV3b3JrS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MjY7X0NQQ2liT2JqZWN0RGF0YU5leHRPaWRLZXlEO0s7NjtDUCRVSURkOzE7NUU7SzszMDtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c0tleXNLZXlEO0s7NjtDUCRVSURkOzE7NkU7SzszMjtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c1ZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs3RTtLOzI2O19DUENpYk9iamVjdERhdGFPaWRLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzhFO0s7Mjg7X0NQQ2liT2JqZWN0RGF0YU9pZFZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs5RTtLOzI4O19DUENpYk9iamVjdERhdGFGaWxlT3duZXJLZXlEO0s7NjtDUCRVSURkOzI7MTFFO0s7MzM7X0NQQ2liT2JqZWN0RGF0YVZpc2libGVXaW5kb3dzS2V5RDtLOzY7Q1AkVUlEZDsyOzEzRTtFO0Q7SzsxMDskY2xhc3NuYW1lUzs3O0NQQXJyYXlLOzg7JGNsYXNzZXNBO1M7NztDUEFycmF5Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsxNUU7RDtLOzY7Q1AkVUlEZDsyOzE3RTtEO0s7NjtDUCRVSURkOzI7MThFO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RDtLOzY7Q1AkVUlEZDsyOzIwRTtEO0s7NjtDUCRVSURkOzI7MjJFO0Q7Szs2O0NQJFVJRGQ7MTswRTtEO0s7NjtDUCRVSURkOzI7MjNFO0Q7Szs2O0NQJFVJRGQ7MTswRTtEO0s7NjtDUCRVSURkOzI7MjRFO0Q7Szs2O0NQJFVJRGQ7MTswRTtEO0s7NjtDUCRVSURkOzI7MjVFO0Q7Szs2O0NQJFVJRGQ7MTswRTtEO0s7NjtDUCRVSURkOzI7MjZFO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtEO0s7NjtDUCRVSURkOzI7MTFFO0Q7Szs2O0NQJFVJRGQ7MjsyMEU7RDtLOzY7Q1AkVUlEZDsyOzIyRTtEO0s7NjtDUCRVSURkOzI7MjBFO0Q7Szs2O0NQJFVJRGQ7MjsyM0U7RDtLOzY7Q1AkVUlEZDsyOzIwRTtEO0s7NjtDUCRVSURkOzI7MjRFO0Q7Szs2O0NQJFVJRGQ7MjsyMEU7RDtLOzY7Q1AkVUlEZDsyOzI1RTtEO0s7NjtDUCRVSURkOzI7MTFFO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RTtFO0Q7SzsxMDskY2xhc3NuYW1lUzsxODtfQ1BDaWJDdXN0b21PYmplY3RLOzg7JGNsYXNzZXNBO1M7MTg7X0NQQ2liQ3VzdG9tT2JqZWN0Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxMEU7SzsyNztfQ1BDaWJDdXN0b21PYmplY3RDbGFzc05hbWVEO0s7NjtDUCRVSURkOzI7MjdFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzU7Q1BTZXRLOzg7JGNsYXNzZXNBO1M7NTtDUFNldFM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MTJFO0s7MTU7Q1BTZXRPYmplY3RzS2V5RDtLOzY7Q1AkVUlEZDsyOzI4RTtFO0Q7SzsxMDskY2xhc3NuYW1lUzsyMDtDUENpYk91dGxldENvbm5lY3Rvcks7ODskY2xhc3Nlc0E7UzsyMDtDUENpYk91dGxldENvbm5lY3RvclM7MTQ7Q1BDaWJDb25uZWN0b3JTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzE0RTtLOzI0O19DUENpYkNvbm5lY3RvclNvdXJjZUtleUQ7Szs2O0NQJFVJRGQ7MjsyMEU7SzsyOTtfQ1BDaWJDb25uZWN0b3JEZXN0aW5hdGlvbktleUQ7Szs2O0NQJFVJRGQ7MjsyNUU7SzsyMztfQ1BDaWJDb25uZWN0b3JMYWJlbEtleUQ7Szs2O0NQJFVJRGQ7MjsyOUU7RTtEO0s7MTA7JGNsYXNzbmFtZVM7MjE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9ySzs4OyRjbGFzc2VzQTtTOzIxO0NQQ2liQmluZGluZ0Nvbm5lY3RvclM7MTQ7Q1BDaWJDb25uZWN0b3JTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzE2RTtLOzI0O19DUENpYkNvbm5lY3RvclNvdXJjZUtleUQ7Szs2O0NQJFVJRGQ7MjsyNEU7SzsyOTtfQ1BDaWJDb25uZWN0b3JEZXN0aW5hdGlvbktleUQ7Szs2O0NQJFVJRGQ7MjsyMEU7SzsyMztfQ1BDaWJDb25uZWN0b3JMYWJlbEtleUQ7Szs2O0NQJFVJRGQ7MjszMEU7SzszMTtDUENpYkJpbmRpbmdDb25uZWN0b3JCaW5kaW5nS2V5RDtLOzY7Q1AkVUlEZDsyOzMxRTtLOzMxO0NQQ2liQmluZGluZ0Nvbm5lY3RvcktleVBhdGhLZXlEO0s7NjtDUCRVSURkOzI7MzJFO0s7MzE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9yT3B0aW9uc0tleUQ7Szs2O0NQJFVJRGQ7MjszNEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MTZFO0s7MjQ7X0NQQ2liQ29ubmVjdG9yU291cmNlS2V5RDtLOzY7Q1AkVUlEZDsyOzIzRTtLOzI5O19DUENpYkNvbm5lY3RvckRlc3RpbmF0aW9uS2V5RDtLOzY7Q1AkVUlEZDsyOzIwRTtLOzIzO19DUENpYkNvbm5lY3RvckxhYmVsS2V5RDtLOzY7Q1AkVUlEZDsyOzM1RTtLOzMxO0NQQ2liQmluZGluZ0Nvbm5lY3RvckJpbmRpbmdLZXlEO0s7NjtDUCRVSURkOzI7MzFFO0s7MzE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9yS2V5UGF0aEtleUQ7Szs2O0NQJFVJRGQ7MjszNkU7SzszMTtDUENpYkJpbmRpbmdDb25uZWN0b3JPcHRpb25zS2V5RDtLOzY7Q1AkVUlEZDsyOzM3RTtFO0Q7SzsxMDskY2xhc3NuYW1lUzsxNTtDUFRhYmxlQ2VsbFZpZXdLOzg7JGNsYXNzZXNBO1M7MTU7Q1BUYWJsZUNlbGxWaWV3Uzs2O0NQVmlld1M7MTE7Q1BSZXNwb25kZXJTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzE5RTtLOzE4O0NQUmVzcG9uZGVyTWVudUtleUQ7Szs2O0NQJFVJRGQ7MTswRTtLOzEyO0NQVmlld1RhZ0tleUQ7Szs2O0NQJFVJRGQ7MjszOEU7SzsxNDtDUFZpZXdGcmFtZUtleUQ7Szs2O0NQJFVJRGQ7MjszOUU7SzsxNTtDUFZpZXdCb3VuZHNLZXlEO0s7NjtDUCRVSURkOzI7MzlFO0s7MTc7Q1BWaWV3U3Vidmlld3NLZXlEO0s7NjtDUCRVSURkOzI7NDBFO0s7MjI7Q1BWaWV3QXV0b3Jlc2l6aW5nTWFza0Q7Szs2O0NQJFVJRGQ7Mjs0MUU7SzsxOTtDUFZpZXdUaGVtZUNsYXNzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MTk7Q1BWaWV3VGhlbWVTdGF0ZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0MkU7RTtEO0s7MTA7JGNsYXNzbmFtZVM7MTE7Q1BUZXh0RmllbGRLOzg7JGNsYXNzZXNBO1M7MTE7Q1BUZXh0RmllbGRTOzk7Q1BDb250cm9sUzs2O0NQVmlld1M7MTE7Q1BSZXNwb25kZXJTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzIxRTtLOzI3O0NQUmVzcG9uZGVyTmV4dFJlc3BvbmRlcktleUQ7Szs2O0NQJFVJRGQ7MjsyMEU7SzsxODtDUFJlc3BvbmRlck1lbnVLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzsxMjtDUFZpZXdUYWdLZXlEO0s7NjtDUCRVSURkOzI7MzhFO0s7MTQ7Q1BWaWV3RnJhbWVLZXlEO0s7NjtDUCRVSURkOzI7NDNFO0s7MTU7Q1BWaWV3Qm91bmRzS2V5RDtLOzY7Q1AkVUlEZDsyOzQ0RTtLOzE4O0NQVmlld1N1cGVydmlld0tleUQ7Szs2O0NQJFVJRGQ7MjsyMEU7SzsyMjtDUFZpZXdBdXRvcmVzaXppbmdNYXNrRDtLOzY7Q1AkVUlEZDsyOzQ1RTtLOzE5O0NQVmlld1RoZW1lQ2xhc3NLZXlEO0s7NjtDUCRVSURkOzI7NDZFO0s7MTk7Q1BWaWV3VGhlbWVTdGF0ZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0MkU7Szs2OyRhZm9udEQ7Szs2O0NQJFVJRGQ7Mjs0OEU7SzsxNzskYWxpbmUtYnJlYWstbW9kZUQ7Szs2O0NQJFVJRGQ7Mjs0OUU7SzsxMTskYWFsaWdubWVudEQ7Szs2O0NQJFVJRGQ7Mjs0OUU7SzszNTtDUENvbnRyb2xTZW5kc0FjdGlvbk9uRW5kRWRpdGluZ0tleUQ7Szs2O0NQJFVJRGQ7Mjs1MEU7SzsxNztDUENvbnRyb2xWYWx1ZUtleUQ7Szs2O0NQJFVJRGQ7Mjs1MUU7SzsyNDtDUENvbnRyb2xTZW5kQWN0aW9uT25LZXlEO0s7NjtDUCRVSURkOzI7NTJFO0s7MjQ7Q1BUZXh0RmllbGRJc0VkaXRhYmxlS2V5RDtLOzY7Q1AkVUlEZDsyOzUzRTtLOzI2O0NQVGV4dEZpZWxkSXNTZWxlY3RhYmxlS2V5RDtLOzY7Q1AkVUlEZDsyOzUzRTtLOzI5O0NQVGV4dEZpZWxkRHJhd3NCYWNrZ3JvdW5kS2V5RDtLOzY7Q1AkVUlEZDsyOzUzRTtLOzI5O0NQVGV4dEZpZWxkQmFja2dyb3VuZENvbG9yS2V5RDtLOzY7Q1AkVUlEZDsyOzU1RTtLOzI3O0NQVGV4dEZpZWxkTGluZUJyZWFrTW9kZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0OUU7SzsyMztDUFRleHRGaWVsZEFsaWdubWVudEtleUQ7Szs2O0NQJFVJRGQ7Mjs0OUU7SzszMTtDUFRleHRGaWVsZFBsYWNlaG9sZGVyU3RyaW5nS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzIxRTtLOzI3O0NQUmVzcG9uZGVyTmV4dFJlc3BvbmRlcktleUQ7Szs2O0NQJFVJRGQ7MjsyMEU7SzsxODtDUFJlc3BvbmRlck1lbnVLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzsxMjtDUFZpZXdUYWdLZXlEO0s7NjtDUCRVSURkOzI7MzhFO0s7MTQ7Q1BWaWV3RnJhbWVLZXlEO0s7NjtDUCRVSURkOzI7NTZFO0s7MTU7Q1BWaWV3Qm91bmRzS2V5RDtLOzY7Q1AkVUlEZDsyOzU3RTtLOzE4O0NQVmlld1N1cGVydmlld0tleUQ7Szs2O0NQJFVJRGQ7MjsyMEU7SzsyMjtDUFZpZXdBdXRvcmVzaXppbmdNYXNrRDtLOzY7Q1AkVUlEZDsyOzU4RTtLOzE5O0NQVmlld1RoZW1lQ2xhc3NLZXlEO0s7NjtDUCRVSURkOzI7NDZFO0s7MTk7Q1BWaWV3VGhlbWVTdGF0ZUtleUQ7Szs2O0NQJFVJRGQ7Mjs1OUU7Szs2OyRhZm9udEQ7Szs2O0NQJFVJRGQ7Mjs0OEU7SzsxMjskYXRleHQtY29sb3JEO0s7NjtDUCRVSURkOzI7NjBFO0s7MTc7JGFsaW5lLWJyZWFrLW1vZGVEO0s7NjtDUCRVSURkOzI7NDlFO0s7MTE7JGFhbGlnbm1lbnREO0s7NjtDUCRVSURkOzI7NDlFO0s7MzU7Q1BDb250cm9sU2VuZHNBY3Rpb25PbkVuZEVkaXRpbmdLZXlEO0s7NjtDUCRVSURkOzI7NTBFO0s7MTc7Q1BDb250cm9sVmFsdWVLZXlEO0s7NjtDUCRVSURkOzI7NjFFO0s7MjQ7Q1BDb250cm9sU2VuZEFjdGlvbk9uS2V5RDtLOzY7Q1AkVUlEZDsyOzUyRTtLOzI0O0NQVGV4dEZpZWxkSXNFZGl0YWJsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs1M0U7SzsyNjtDUFRleHRGaWVsZElzU2VsZWN0YWJsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs1M0U7SzsyOTtDUFRleHRGaWVsZERyYXdzQmFja2dyb3VuZEtleUQ7Szs2O0NQJFVJRGQ7Mjs1M0U7SzsyOTtDUFRleHRGaWVsZEJhY2tncm91bmRDb2xvcktleUQ7Szs2O0NQJFVJRGQ7Mjs2MkU7SzsyNztDUFRleHRGaWVsZExpbmVCcmVha01vZGVLZXlEO0s7NjtDUCRVSURkOzI7NDlFO0s7MjM7Q1BUZXh0RmllbGRBbGlnbm1lbnRLZXlEO0s7NjtDUCRVSURkOzI7NDlFO0s7MzE7Q1BUZXh0RmllbGRQbGFjZWhvbGRlclN0cmluZ0tleUQ7Szs2O0NQJFVJRGQ7MTswRTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsyMUU7SzsyNztDUFJlc3BvbmRlck5leHRSZXNwb25kZXJLZXlEO0s7NjtDUCRVSURkOzI7MjBFO0s7MTg7Q1BSZXNwb25kZXJNZW51S2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MTI7Q1BWaWV3VGFnS2V5RDtLOzY7Q1AkVUlEZDsyOzM4RTtLOzE0O0NQVmlld0ZyYW1lS2V5RDtLOzY7Q1AkVUlEZDsyOzYzRTtLOzE1O0NQVmlld0JvdW5kc0tleUQ7Szs2O0NQJFVJRGQ7Mjs1N0U7SzsxODtDUFZpZXdTdXBlcnZpZXdLZXlEO0s7NjtDUCRVSURkOzI7MjBFO0s7MjI7Q1BWaWV3QXV0b3Jlc2l6aW5nTWFza0Q7Szs2O0NQJFVJRGQ7Mjs1OEU7SzsxOTtDUFZpZXdUaGVtZUNsYXNzS2V5RDtLOzY7Q1AkVUlEZDsyOzQ2RTtLOzE5O0NQVmlld1RoZW1lU3RhdGVLZXlEO0s7NjtDUCRVSURkOzI7NTlFO0s7NjskYWZvbnREO0s7NjtDUCRVSURkOzI7NDhFO0s7MTI7JGF0ZXh0LWNvbG9yRDtLOzY7Q1AkVUlEZDsyOzYwRTtLOzE3OyRhbGluZS1icmVhay1tb2RlRDtLOzY7Q1AkVUlEZDsyOzQ5RTtLOzExOyRhYWxpZ25tZW50RDtLOzY7Q1AkVUlEZDsyOzQ5RTtLOzM1O0NQQ29udHJvbFNlbmRzQWN0aW9uT25FbmRFZGl0aW5nS2V5RDtLOzY7Q1AkVUlEZDsyOzUwRTtLOzE3O0NQQ29udHJvbFZhbHVlS2V5RDtLOzY7Q1AkVUlEZDsyOzYxRTtLOzI0O0NQQ29udHJvbFNlbmRBY3Rpb25PbktleUQ7Szs2O0NQJFVJRGQ7Mjs1MkU7SzsyNDtDUFRleHRGaWVsZElzRWRpdGFibGVLZXlEO0s7NjtDUCRVSURkOzI7NTNFO0s7MjY7Q1BUZXh0RmllbGRJc1NlbGVjdGFibGVLZXlEO0s7NjtDUCRVSURkOzI7NTNFO0s7Mjk7Q1BUZXh0RmllbGREcmF3c0JhY2tncm91bmRLZXlEO0s7NjtDUCRVSURkOzI7NTNFO0s7Mjk7Q1BUZXh0RmllbGRCYWNrZ3JvdW5kQ29sb3JLZXlEO0s7NjtDUCRVSURkOzI7NjJFO0s7Mjc7Q1BUZXh0RmllbGRMaW5lQnJlYWtNb2RlS2V5RDtLOzY7Q1AkVUlEZDsyOzQ5RTtLOzIzO0NQVGV4dEZpZWxkQWxpZ25tZW50S2V5RDtLOzY7Q1AkVUlEZDsyOzQ5RTtLOzMxO0NQVGV4dEZpZWxkUGxhY2Vob2xkZXJTdHJpbmdLZXlEO0s7NjtDUCRVSURkOzE7MEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MjFFO0s7Mjc7Q1BSZXNwb25kZXJOZXh0UmVzcG9uZGVyS2V5RDtLOzY7Q1AkVUlEZDsyOzIwRTtLOzE4O0NQUmVzcG9uZGVyTWVudUtleUQ7Szs2O0NQJFVJRGQ7MTswRTtLOzEyO0NQVmlld1RhZ0tleUQ7Szs2O0NQJFVJRGQ7MjszOEU7SzsxNDtDUFZpZXdGcmFtZUtleUQ7Szs2O0NQJFVJRGQ7Mjs2NEU7SzsxNTtDUFZpZXdCb3VuZHNLZXlEO0s7NjtDUCRVSURkOzI7NDRFO0s7MTg7Q1BWaWV3U3VwZXJ2aWV3S2V5RDtLOzY7Q1AkVUlEZDsyOzIwRTtLOzIyO0NQVmlld0F1dG9yZXNpemluZ01hc2tEO0s7NjtDUCRVSURkOzI7NDVFO0s7MTk7Q1BWaWV3VGhlbWVDbGFzc0tleUQ7Szs2O0NQJFVJRGQ7Mjs0NkU7SzsxOTtDUFZpZXdUaGVtZVN0YXRlS2V5RDtLOzY7Q1AkVUlEZDsyOzQyRTtLOzY7JGFmb250RDtLOzY7Q1AkVUlEZDsyOzQ4RTtLOzEyOyRhdGV4dC1jb2xvckQ7Szs2O0NQJFVJRGQ7Mjs2NUU7SzsxNzskYWxpbmUtYnJlYWstbW9kZUQ7Szs2O0NQJFVJRGQ7Mjs0OUU7SzsxMTskYWFsaWdubWVudEQ7Szs2O0NQJFVJRGQ7Mjs0OUU7SzszNTtDUENvbnRyb2xTZW5kc0FjdGlvbk9uRW5kRWRpdGluZ0tleUQ7Szs2O0NQJFVJRGQ7Mjs1MEU7SzsxNztDUENvbnRyb2xWYWx1ZUtleUQ7Szs2O0NQJFVJRGQ7Mjs2NkU7SzsyNDtDUENvbnRyb2xTZW5kQWN0aW9uT25LZXlEO0s7NjtDUCRVSURkOzI7NTJFO0s7MjQ7Q1BUZXh0RmllbGRJc0VkaXRhYmxlS2V5RDtLOzY7Q1AkVUlEZDsyOzUzRTtLOzI2O0NQVGV4dEZpZWxkSXNTZWxlY3RhYmxlS2V5RDtLOzY7Q1AkVUlEZDsyOzUzRTtLOzI5O0NQVGV4dEZpZWxkRHJhd3NCYWNrZ3JvdW5kS2V5RDtLOzY7Q1AkVUlEZDsyOzUzRTtLOzI5O0NQVGV4dEZpZWxkQmFja2dyb3VuZENvbG9yS2V5RDtLOzY7Q1AkVUlEZDsyOzU1RTtLOzI3O0NQVGV4dEZpZWxkTGluZUJyZWFrTW9kZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0OUU7SzsyMztDUFRleHRGaWVsZEFsaWdubWVudEtleUQ7Szs2O0NQJFVJRGQ7Mjs0OUU7SzszMTtDUFRleHRGaWVsZFBsYWNlaG9sZGVyU3RyaW5nS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzEwRTtLOzI3O19DUENpYkN1c3RvbU9iamVjdENsYXNzTmFtZUQ7Szs2O0NQJFVJRGQ7Mjs2N0U7RTtTOzg7Q1BPYmplY3REO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtFO0U7Uzs5O3RleHRGaWVsZFM7MjU7dmFsdWU6IG9iamVjdFZhbHVlLmNvbE9uZVM7NTt2YWx1ZVM7MTg7b2JqZWN0VmFsdWUuY29sT25lRDtLOzEwOyRjbGFzc25hbWVTOzEyO0NQRGljdGlvbmFyeUs7ODskY2xhc3Nlc0E7UzsxMjtDUERpY3Rpb25hcnlTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzMzRTtLOzEwO0NQLm9iamVjdHNEO0U7RTtTOzI1O3ZhbHVlOiBvYmplY3RWYWx1ZS5jb2xUd29TOzE4O29iamVjdFZhbHVlLmNvbFR3b0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjszM0U7SzsxMDtDUC5vYmplY3RzRDtFO0U7ZDsxOzBTOzE5O3t7MCwgMH0sIHsyNDgsIDQ0fX1EO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtEO0s7NjtDUCRVSURkOzI7MjVFO0Q7Szs2O0NQJFVJRGQ7MjsyMkU7RDtLOzY7Q1AkVUlEZDsyOzI0RTtEO0s7NjtDUCRVSURkOzI7MjNFO0U7RTtkOzI7MThTOzY7bm9ybWFsUzsxOTt7ezMsIDIwfSwgezU4LCAxN319UzsxODt7ezAsIDB9LCB7NTgsIDE3fX1kOzI7MzZTOzk7dGV4dGZpZWxkRDtLOzEwOyRjbGFzc25hbWVTOzY7Q1BGb250Szs4OyRjbGFzc2VzQTtTOzY7Q1BGb250Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7Mjs0N0U7SzsxMztDUEZvbnROYW1lS2V5RDtLOzY7Q1AkVUlEZDsyOzY4RTtLOzEzO0NQRm9udFNpemVLZXlEO0s7NjtDUCRVSURkOzI7NjlFO0s7MTU7Q1BGb250SXNCb2xkS2V5RDtLOzY7Q1AkVUlEZDsyOzUzRTtLOzE3O0NQRm9udElzSXRhbGljS2V5RDtLOzY7Q1AkVUlEZDsyOzUzRTtLOzE3O0NQRm9udElzU3lzdGVtS2V5RDtLOzY7Q1AkVUlEZDsyOzUwRTtFO2Q7MTs0VDtTOzg7VmFsdWUgMjpkOzQ7MzA3MkY7RDtLOzEwOyRjbGFzc25hbWVTOzc7Q1BDb2xvcks7ODskY2xhc3Nlc0E7Uzs3O0NQQ29sb3JTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzU0RTtLOzIwO0NQQ29sb3JDb21wb25lbnRzS2V5RDtLOzY7Q1AkVUlEZDsyOzcwRTtFO1M7MjE7e3s2MCwgMjB9LCB7MTg1LCAxN319UzsxOTt7ezAsIDB9LCB7MTg1LCAxN319ZDsyOzM1UzsxMTtwbGFjZWhvbGRlckQ7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7Mjs1NEU7SzsyMDtDUENvbG9yQ29tcG9uZW50c0tleUQ7Szs2O0NQJFVJRGQ7Mjs3MUU7RTtTOzA7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzU0RTtLOzIwO0NQQ29sb3JDb21wb25lbnRzS2V5RDtLOzY7Q1AkVUlEZDsyOzcyRTtFO1M7MjA7e3s2MCwgMX0sIHsxODUsIDE3fX1TOzE4O3t7MywgMX0sIHs1OCwgMTd9fUQ7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7Mjs1NEU7SzsyMDtDUENvbG9yQ29tcG9uZW50c0tleUQ7Szs2O0NQJFVJRGQ7Mjs3M0U7RTtTOzg7VmFsdWUgMTpTOzEzO0NQQXBwbGljYXRpb25TOzI4O19DUEZvbnRTeXN0ZW1GYWNlUGxhY2Vob2xkZXJkOzI7LTFEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtEO0s7NjtDUCRVSURkOzI7NzRFO0Q7Szs2O0NQJFVJRGQ7Mjs3NEU7RDtLOzY7Q1AkVUlEZDsyOzc0RTtEO0s7NjtDUCRVSURkOzI7NzRFO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtEO0s7NjtDUCRVSURkOzI7NzVFO0Q7Szs2O0NQJFVJRGQ7Mjs3NkU7RDtLOzY7Q1AkVUlEZDsyOzc3RTtEO0s7NjtDUCRVSURkOzI7NzRFO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtEO0s7NjtDUCRVSURkOzI7NzhFO0Q7Szs2O0NQJFVJRGQ7Mjs3OEU7RDtLOzY7Q1AkVUlEZDsyOzc4RTtEO0s7NjtDUCRVSURkOzI7NzRFO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtEO0s7NjtDUCRVSURkOzI7NzlFO0Q7Szs2O0NQJFVJRGQ7Mjs3OUU7RDtLOzY7Q1AkVUlEZDsyOzc5RTtEO0s7NjtDUCRVSURkOzI7NzRFO0U7RTtkOzE7MWY7MTI7MC44Mjc0NTEwNTAzZjsxMzswLjA1ODgyMzUzMzM2ZjsxMzswLjA1MDk4MDM5NjU3ZjsxODswLjY4NjI3NDUwOTgwMzkyMTZmOzEyOzAuNDg3MzI1OTE3MUU7Szs5OyRhcmNoaXZlclM7MTU7Q1BLZXllZEFyY2hpdmVySzs4OyR2ZXJzaW9uUzs2OzEwMDAwMEU7D;K;6;$classD;K;6;CP$UIDd;3;362E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;278E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;315E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;315E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;278E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;283E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;152E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;E;D;K;6;$classD;K;6;CP$UIDd;3;110E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;383E;K;6;normalD;K;6;CP$UIDd;3;384E;E;E;f;12;0.4873259171f;12;0.8274510503f;13;0.05882353336f;13;0.05098039657f;18;0.5019607843137255D;K;6;$classD;K;6;CP$UIDd;3;145E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;385E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;162E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;149E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;152E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;3;145E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;306E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;162E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;152E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;152E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;149E;E;S;17;Arial, sans-serifE;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Tests/Manual/TableTest/TableBindings/Resources/MainMenu.xib b/Tests/Manual/TableTest/TableBindings/Resources/MainMenu.xib index c0151a44c..e3c8ad730 100644 --- a/Tests/Manual/TableTest/TableBindings/Resources/MainMenu.xib +++ b/Tests/Manual/TableTest/TableBindings/Resources/MainMenu.xib @@ -2,18 +2,36 @@ 1050 - 10K549 - 788 - 1038.36 - 461.00 + 11E53 + 2809 + 1138.47 + 569.00 com.apple.InterfaceBuilder.CocoaPlugin - 788 + 2809 - + YES - - + NSArrayController + NSButton + NSButtonCell + NSCustomObject + NSMenu + NSMenuItem + NSPopUpButton + NSPopUpButtonCell + NSScrollView + NSScroller + NSStepper + NSStepperCell + NSTableCellView + NSTableColumn + NSTableHeaderView + NSTableView + NSTextField + NSTextFieldCell + NSView + NSWindowTemplate YES @@ -34,686 +52,15 @@ NSApplication - - AMainMenu - - YES - - - NewApplication - - 1048576 - 2147483647 - - NSImage - NSMenuCheckmark - - - NSImage - NSMenuMixedState - - submenuAction: - - NewApplication - - YES - - - About NewApplication - - 2147483647 - - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Preferences… - , - 1048576 - 2147483647 - - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Login - - 2147483647 - - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Quit NewApplication - q - 1048576 - 2147483647 - - - - - _NSAppleMenu - - - - - File - - 1048576 - 2147483647 - - - submenuAction: - - File - - YES - - - New - n - 1048576 - 2147483647 - - - - - - Open… - o - 1048576 - 2147483647 - - - - - - Open Recent - - 1048576 - 2147483647 - - - submenuAction: - - Open Recent - - YES - - - Clear Menu - - 1048576 - 2147483647 - - - - - _NSRecentDocumentsMenu - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Close - w - 1048576 - 2147483647 - - - - - - Save - s - 1048576 - 2147483647 - - - - - - Save As… - S - 1179648 - 2147483647 - - - - - - Revert to Saved - - 2147483647 - - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Page Setup... - P - 1179648 - 2147483647 - - - - - - - Print… - p - 1048576 - 2147483647 - - - - - - - - - Edit - - 1048576 - 2147483647 - - - submenuAction: - - Edit - - YES - - - Undo - z - 1048576 - 2147483647 - - - - - - Redo - Z - 1179648 - 2147483647 - - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Cut - x - 1048576 - 2147483647 - - - - - - Copy - c - 1048576 - 2147483647 - - - - - - Paste - v - 1048576 - 2147483647 - - - - - - Delete - - 1048576 - 2147483647 - - - - - - Duplicate - d - 1048576 - 2147483647 - - - - - - Select All - a - 1048576 - 2147483647 - - - - - - Select None - D - 1048576 - 2147483647 - - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Insert - - 2147483647 - - - submenuAction: - - - - YES - - - Special Characters... - - 2147483647 - - - - - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Find - - 1048576 - 2147483647 - - - submenuAction: - - Find - - YES - - - Find… - f - 1048576 - 2147483647 - - - 1 - - - - Find Next - g - 1048576 - 2147483647 - - - 2 - - - - Find Previous - G - 1179648 - 2147483647 - - - 3 - - - - Use Selection for Find - e - 1048576 - 2147483647 - - - 7 - - - - Jump to Selection - j - 1048576 - 2147483647 - - - - - - - - - Spelling and Grammar - - 1048576 - 2147483647 - - - submenuAction: - - Spelling and Grammar - - YES - - - Show Spelling… - : - 1048576 - 2147483647 - - - - - - Check Spelling - ; - 1048576 - 2147483647 - - - - - - Check Spelling While Typing - - 1048576 - 2147483647 - - - - - - Check Grammar With Spelling - - 1048576 - 2147483647 - - - - - - - - - Substitutions - - 1048576 - 2147483647 - - - submenuAction: - - Substitutions - - YES - - - Smart Copy/Paste - f - 1048576 - 2147483647 - - - 1 - - - - Smart Quotes - g - 1048576 - 2147483647 - - - 2 - - - - Smart Links - G - 1179648 - 2147483647 - - - 3 - - - - - - - Speech - - 1048576 - 2147483647 - - - submenuAction: - - Speech - - YES - - - Start Speaking - - 1048576 - 2147483647 - - - - - - Stop Speaking - - 1048576 - 2147483647 - - - - - - - - - - - - View - - 1048576 - 2147483647 - - - - - - Window - - 1048576 - 2147483647 - - - submenuAction: - - Window - - YES - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Hide - h - 1048576 - 2147483647 - - - - - - Hide All - - 2147483647 - - - - - - Bring All to Front - - 1048576 - 2147483647 - - - - - _NSWindowsMenu - - - - - Help - - 1048576 - 2147483647 - - - submenuAction: - - Help - - YES - - - NewApplication Help - ? - 1048576 - 2147483647 - - - - - - - - _NSMainMenu - 7 2 - {{335, 308}, {999, 454}} + {{335, 308}, {999, 485}} 1946157056 Window NSWindow - {1.79769e+308, 1.79769e+308} + 256 @@ -732,28 +79,32 @@ 256 - {448, 342} + {194, 342} - + + YES 256 - {448, 17} + {194, 17} - + + - + -2147483392 {{224, 0}, {16, 17}} + + YES - 76 + 94 40 1000 @@ -811,7 +162,7 @@ - 366 + 94 40 1000 @@ -853,7 +204,7 @@ 17 - -557809664 + -692027392 1 @@ -861,10 +212,12 @@ 0 YES 0 + 1 - {{1, 17}, {448, 342}} + {{1, 17}, {194, 342}} + @@ -875,22 +228,23 @@ -2147483392 {{224, 17}, {15, 102}} + _doScroller: - 37 - 0.1947367936372757 + 0.95614035087719296 -2147483392 {{1, 368}, {461, 15}} + 1 _doScroller: - 0.87809523809523804 + 0.97979797979797978 @@ -899,31 +253,34 @@ YES - {{1, 0}, {448, 17}} + {{1, 0}, {194, 17}} + 4 - + - {{20, 63}, {450, 360}} + {{20, 94}, {196, 360}} - - 562 + + + 133682 - + QSAAAEEgAABBmAAAQZgAAA 268 - {{516, 20}, {26, 22}} + {{547, 51}, {26, 22}} + YES @@ -950,8 +307,9 @@ 268 - {{587, 20}, {27, 22}} + {{609, 51}, {27, 22}} + YES @@ -978,28 +336,32 @@ 256 - {499, 342} + {268, 342} - + + YES 256 - {499, 17} + {268, 17} - + + - + -2147483392 {{224, 0}, {16, 17}} + + YES - 100 + 136 40 1000 @@ -1028,7 +390,7 @@ - 393 + 126 40 1000 @@ -1067,10 +429,12 @@ 0 YES 0 + 1 - {{1, 17}, {499, 342}} + {{1, 17}, {268, 342}} + @@ -1081,22 +445,23 @@ -2147483392 {{224, 17}, {15, 102}} + _doScroller: - 37 - 0.1947367936372757 + 0.95614035087719296 -2147483392 {{1, 368}, {461, 15}} - + + 1 _doScroller: - 0.87809523809523804 + 0.99479166666666663 @@ -1105,38 +470,43 @@ YES - {{1, 0}, {499, 17}} + {{1, 0}, {268, 17}} + 4 - + - {{478, 63}, {501, 360}} + {{236, 94}, {270, 360}} - - 562 + + + 133682 - + QSAAAEEgAABBmAAAQZgAAA 268 - {{179, 20}, {171, 17}} + {{126, 51}, {224, 17}} + + _NS:1505 YES 68288064 - 272630784 - Model values for Key Path: + 71304192 + Change model values for Key Path: + _NS:1505 6 @@ -1150,14 +520,17 @@ 268 - {{352, 16}, {104, 26}} + {{352, 47}, {91, 26}} + + _NS:9 YES -2076049856 2048 + _NS:9 109199360 129 @@ -1172,8 +545,14 @@ 1048576 2147483647 1 - - + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + _popUpItemAction: @@ -1189,8 +568,8 @@ 1048576 2147483647 - - + + _popUpItemAction: @@ -1206,15 +585,18 @@ 268 - {{452, 20}, {59, 17}} + {{452, 51}, {90, 17}} + + _NS:1505 YES 68288064 272630784 - In Range + In Row Range + _NS:1505 @@ -1223,13 +605,16 @@ 268 - {{547, 17}, {19, 27}} + {{573, 48}, {19, 27}} + + _NS:1083 YES 917024 0 + _NS:1083 100 1 @@ -1239,13 +624,16 @@ 268 - {{619, 17}, {19, 27}} + {{635, 48}, {19, 27}} + + _NS:1083 YES 917024 0 + _NS:1083 5 100 @@ -1256,9 +644,11 @@ 268 - {{830, 10}, {96, 32}} + {{670, 46}, {96, 32}} - + + + _NS:9 1000 YES @@ -1266,6 +656,7 @@ 134217728 Mutation + _NS:9 -2038284288 129 @@ -1278,14 +669,18 @@ 268 - {{926, 10}, {59, 32}} + {{670, 12}, {96, 32}} + + + _NS:9 YES 67108864 134217728 Set + _NS:9 -2038284288 129 @@ -1298,15 +693,18 @@ 268 - {{17, 431}, {244, 17}} + {{17, 462}, {183, 17}} + + _NS:1505 YES 68288064 272630784 Table Column Value Binding + _NS:1505 @@ -1315,47 +713,244 @@ 268 - {{478, 431}, {244, 17}} + {{233, 462}, {254, 17}} - + + + _NS:1505 YES 68288064 272630784 - Table View Content Binding + Table View Content Binding (cell based) + _NS:1505 - + - 268 - {{14, 24}, {96, 32}} + 265 + {{594, 462}, {260, 17}} + + + _NS:1505 YES - - 67239424 - 134217728 - Button + + 68288064 + 272630784 + Table View Content Binding (view based) - - -2038284033 - 129 - - - 200 - 25 + _NS:1505 + + + + + + 268 + {{780, 56}, {199, 17}} + + + + _NS:1535 + YES + + 68157504 + 272630784 + [content setValue: forKeyPath:] + + _NS:1535 + + + + + + + + 268 + {{780, 23}, {188, 17}} + + + + _NS:1535 + YES + + 68157504 + 272630784 + [self setContent:newContent] + + _NS:1535 + + + + + + + + 265 + + YES + + + 2304 + + YES + + + 256 + {251, 348} + + + + _NS:13 + YES + + + 256 + {251, 17} + + + + _NS:16 + + + + + -2147483392 + {{224, 0}, {16, 17}} + + + + _NS:19 + + + YES + + one + 248 + 40 + 1000 + + 75497536 + 2048 + + + + 3 + MC4zMzMzMzI5ODU2AA + + + + + 337641536 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 3 + 2 + + + 44 + -692060160 + + + 4 + 15 + 0 + YES + 0 + 1 + + + {{1, 17}, {251, 348}} + + + + _NS:11 + + + 4 + + + + -2147483392 + {{224, 17}, {15, 102}} + + + + _NS:58 + + _doScroller: + 0.9568965517241379 + + + + -2147483392 + {{1, 119}, {223, 15}} + + + + _NS:60 + 1 + + _doScroller: + 0.98818897637795278 + + + + 2304 + + YES + + + {{1, 0}, {251, 17}} + + + + _NS:15 + + + 4 + + + + {{598, 88}, {253, 366}} + + + + _NS:9 + 133682 + + + + + + QSAAAEEgAABCOAAAQjgAAA + - {999, 454} + {999, 485} + {{0, 0}, {1680, 1028}} - {1.79769e+308, 1.79769e+308} + {10000000000000, 10000000000000} + YES AppController @@ -1382,118 +977,6 @@ 451 - - - theWindow - - - - 459 - - - - arrayController - - - - 486 - - - - contentArray: rows - - - - - - contentArray: rows - contentArray - rows - 2 - - - 488 - - - - from - - - - 496 - - - - to - - - - 497 - - - - content: arrangedObjects - - - - - - content: arrangedObjects - content - arrangedObjects - 2 - - - 509 - - - - value: arrangedObjects.colOne - - - - - - value: arrangedObjects.colOne - value - arrangedObjects.colOne - 2 - - - 511 - - - - value: arrangedObjects.colTwo - - - - - - value: arrangedObjects.colTwo - value - arrangedObjects.colTwo - 2 - - - 514 - - - - takeIntegerValueFrom: - - - - 529 - - - - takeIntegerValueFrom: - - - - 530 - KeyPathPopup @@ -1534,53 +1017,243 @@ 552 + + + theWindow + + + + 644 + - target: arrangedObjects - + value: arrangedObjects.colOne + - + - target: arrangedObjects - target + value: arrangedObjects.colOne + value + arrangedObjects.colOne + 2 + + + 511 + + + + value: arrangedObjects.colTwo + + + + + + value: arrangedObjects.colTwo + value + arrangedObjects.colTwo + 2 + + + 514 + + + + contentArray: rows + + + + + + contentArray: rows + contentArray + rows + 2 + + + 488 + + + + takeIntegerValueFrom: + + + + 529 + + + + takeIntegerValueFrom: + + + + 530 + + + + content: arrangedObjects + + + + + + content: arrangedObjects + content arrangedObjects 2 - 560 + 509 - - add: - - + + content: arrangedObjects + + + + + + content: arrangedObjects + content + arrangedObjects + 2 + - 561 + 602 delegate - - + + - 650 + 617 - - selectAll: - - + + textField + + + 274 + + YES + + + 268 + {{0, 26}, {64, 17}} + + + {250, 750} + YES + + 67239488 + 272631808 + Value 1: + + + + + 1 + MC40ODczMjU5MTcxIDAuNDg3MzI1OTE3MSAwLjQ4NzMyNTkxNzEAA + + + + + + 268 + {{0, 7}, {64, 17}} + + + {250, 750} + YES + + 67239488 + 272631808 + Value 2: + + + + + + + + + 267 + {{57, 26}, {191, 17}} + + + {250, 750} + YES + + 67239488 + 272631808 + + + + + + 2 + MC44Mjc0NTEwNTAzIDAuMDU4ODIzNTMzMzYgMC4wNTA5ODAzOTY1NwA + + + + + + 267 + {{57, 7}, {191, 17}} + + + {250, 750} + YES + + 67239488 + 272631808 + + + + + + + + + {{1, 1}, {248, 44}} + + + - 653 + 610 - - selectNone: - - + + value: objectValue.colOne + + + + + + value: objectValue.colOne + value + objectValue.colOne + 2 + - 654 + 639 + + + + value: objectValue.colTwo + + + + + + value: objectValue.colTwo + value + objectValue.colTwo + 2 + + + 643 @@ -1626,20 +1299,23 @@ YES - - - - - - - + + + + + - + + + + + + @@ -1681,71 +1357,6 @@ - - 500 - - - YES - - - - - - - - - 501 - - - - - 502 - - - YES - - - - - - - 503 - - - - - 504 - - - - - 505 - - - YES - - - - - - 506 - - - YES - - - - - - 507 - - - - - 508 - - - 515 @@ -1868,6 +1479,127 @@ + + 553 + + + YES + + + + + + 554 + + + + + 555 + + + YES + + + + + + 556 + + + + + 567 + + + YES + + + + + + 568 + + + + + 581 + + + YES + + + + + + 582 + + + + + 583 + + + YES + + + + + + 584 + + + + + 585 + + + YES + + + + + + + + + 586 + + + YES + + + + + + 587 + + + + + 588 + + + + + 589 + + + + + 590 + + + YES + + + + + + + 593 + + + 460 @@ -1934,562 +1666,137 @@ - 553 - + 500 + YES - + + + + - 554 - - + 504 + + - 555 - + 503 + + + + + 502 + YES - + + - + - 556 - - - - - 557 - + 506 + YES - + - + - 558 - - + 507 + + - 562 - + 505 + YES - - - - - - + - - MainMenu + - 563 - - - YES - - + 508 + + - 564 - - - YES - - - - - - 565 - - - YES - - - - - - 566 - - - YES - - - - - - 567 - - - YES - - - - - - 568 - - - YES - - - - - - 569 - - - YES - - - - - - - - - 570 - - - - - 571 - - - - - 572 - - - - - 573 - - - - - 574 - - - YES - - - - - - - - - - - - 575 - - - - - 576 - - - - - 577 - - - - - 578 - - - - - 579 - - - - - 580 - - - - - 581 - - - - - 582 - - - YES - - - - - - 583 - - - - - 584 - - - YES - - - - - - - - - - - - - - - - - - - - - - 585 - - - - - 586 - - - - - 587 - - - - - 588 - - - YES - - - - - - 589 - - - - - 590 - - - YES - - - - - - 591 - - - YES - - - - - - 592 - - - YES - - - - - - 593 - - - YES - - - - - - 594 - - - - - 595 - - - - - 596 - - - - - 597 - - - - - 598 - - - - - 599 - - - - - 600 - - - - - 601 - - - - - 602 - - - YES - - - - - - - - - - 603 - - - - - 604 - - - - - 605 - - - - - 606 - - + 501 + + 607 - - + + + YES + + + + + + 608 - + YES - - - - + - + 609 - - - - - 610 - - - - - 611 - - - - - 612 - - - - - 613 - - - YES - - - - - - - 614 - - - - - 615 - - - - - 616 - - - YES - - - - - - - - 617 - - - - - 618 - - - - - 619 - - - - - 620 - - - YES - - - - - - 621 - - - - - 622 - - - YES - - - - - - - - - - - - - - - - 623 - - - - - 624 - - - - - 625 - - - - - 626 - - - - - 627 - - - - - 628 - - - YES - - - - - - 629 - - - - - 630 - - - - - 631 - - - - - 632 - - - - - 633 - - + + 634 - + YES - + - + 635 - - + + + + + 637 + + + YES + + + + + + 638 + + + + + 640 + + + YES + + + + + + 641 + + @@ -2500,7 +1807,6 @@ -1.IBPluginDependency -2.IBPluginDependency -3.IBPluginDependency - 371.IBEditorWindowLastContentRect 371.IBPluginDependency 371.IBWindowTemplateEditedContentRect 371.NSWindowTemplate.visibleAtLaunch @@ -2550,100 +1856,39 @@ 554.IBPluginDependency 555.IBPluginDependency 556.IBPluginDependency - 557.IBPluginDependency - 558.IBPluginDependency - 562.IBEditorWindowLastContentRect - 562.IBPluginDependency - 563.IBPluginDependency - 564.IBPluginDependency - 565.IBPluginDependency - 566.IBPluginDependency 567.IBPluginDependency 568.IBPluginDependency - 569.IBEditorWindowLastContentRect - 569.IBPluginDependency - 570.IBPluginDependency - 571.IBPluginDependency - 572.IBPluginDependency - 573.IBPluginDependency - 574.IBEditorWindowLastContentRect - 574.IBPluginDependency - 575.IBPluginDependency - 576.IBPluginDependency - 577.IBPluginDependency - 578.IBPluginDependency - 579.IBPluginDependency - 580.IBPluginDependency 581.IBPluginDependency 582.IBPluginDependency 583.IBPluginDependency - 584.IBEditorWindowLastContentRect 584.IBPluginDependency 585.IBPluginDependency 586.IBPluginDependency + 586.ibExternalAutomaticallyCalculatesRowSizeFromViewHeight 587.IBPluginDependency 588.IBPluginDependency 589.IBPluginDependency 590.IBPluginDependency - 591.IBPluginDependency - 592.IBPluginDependency + 590.isInViewBasedMode + 590.prototypeCellViews 593.IBPluginDependency - 594.IBPluginDependency - 595.IBPluginDependency - 596.IBPluginDependency - 597.IBPluginDependency - 598.IBPluginDependency - 599.IBPluginDependency - 600.IBPluginDependency - 601.IBPluginDependency - 602.IBEditorWindowLastContentRect - 602.IBPluginDependency - 603.IBPluginDependency - 604.IBPluginDependency - 605.IBPluginDependency - 606.IBPluginDependency 607.IBPluginDependency 608.IBPluginDependency 609.IBPluginDependency - 610.IBPluginDependency - 611.IBPluginDependency - 612.IBPluginDependency - 613.IBPluginDependency - 614.IBPluginDependency - 615.IBPluginDependency - 616.IBEditorWindowLastContentRect - 616.IBPluginDependency - 617.IBPluginDependency - 618.IBPluginDependency - 619.IBPluginDependency - 620.IBEditorWindowLastContentRect - 620.IBPluginDependency - 621.IBPluginDependency - 622.IBEditorWindowLastContentRect - 622.IBPluginDependency - 623.IBPluginDependency - 624.IBPluginDependency - 625.IBPluginDependency - 626.IBPluginDependency - 627.IBPluginDependency - 628.IBPluginDependency - 629.IBPluginDependency - 630.IBPluginDependency - 631.IBPluginDependency - 632.IBPluginDependency - 633.IBPluginDependency - 634.IBEditorWindowLastContentRect 634.IBPluginDependency 635.IBPluginDependency + 637.IBPluginDependency + 638.IBPluginDependency + 640.IBPluginDependency + 641.IBPluginDependency - + YES com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{441, 382}, {999, 454}} com.apple.InterfaceBuilder.CocoaPlugin - {{441, 382}, {999, 454}} + {{312, 306}, {663, 442}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -2693,21 +1938,24 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{1028, 456}, {412, 20}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin - {{1308, 383}, {192, 73}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{1809, 343}, {228, 113}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -2716,85 +1964,21 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - {{1214, 143}, {241, 313}} - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - {{916, 438}, {238, 103}} - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - {{916, 438}, {212, 63}} - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - {{916, 518}, {190, 23}} - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - {{1941, 253}, {196, 203}} - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - {{2137, 393}, {143, 23}} - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin YES - - YES - + YES - - YES - + - 654 + 644 @@ -2820,12 +2004,14 @@ KeyPathPopup lengthField locationField + theWindow - + YES NSPopUpButton NSTextField NSTextField + NSWindow @@ -2835,8 +2021,9 @@ KeyPathPopup lengthField locationField + theWindow - + YES KeyPathPopup @@ -2850,6 +2037,10 @@ locationField NSTextField + + theWindow + NSWindow + @@ -2870,7 +2061,6 @@ YES - 3 YES @@ -2879,10 +2069,10 @@ NSMenuCheckmark NSMenuMixedState - + YES - {9, 8} - {7, 2} + {11, 11} + {10, 3} diff --git a/Tests/Manual/TableTest/TableCibTest/AppController.j b/Tests/Manual/TableTest/TableCibTest/AppController.j index fa6cf8c8b..f7ac67c3f 100644 --- a/Tests/Manual/TableTest/TableCibTest/AppController.j +++ b/Tests/Manual/TableTest/TableCibTest/AppController.j @@ -45,4 +45,4 @@ CPLogRegister(CPLogConsole); return String((row + 1) * [[tableColumn identifier] intValue]); } -@end +@end \ No newline at end of file diff --git a/Tests/Manual/TableTest/ViewBased/AppController.j b/Tests/Manual/TableTest/ViewBased/AppController.j new file mode 100644 index 000000000..c966a5dd1 --- /dev/null +++ b/Tests/Manual/TableTest/ViewBased/AppController.j @@ -0,0 +1,120 @@ +/* + * AppController.j + * CPTableViewViewBased + * + * Created by cacaodev. + * Copyright 2011, Your Company All rights reserved. + */ + +@import + +CPLogRegister(CPLogConsole) + +@implementation AppController : CPObject +{ + CPTableView tableView; +} + +- (void)applicationDidFinishLaunching:(CPNotification)aNotification +{ + var theWindow = [[CPWindow alloc] initWithContentRect:CGRectMakeZero() styleMask:CPBorderlessBridgeWindowMask], + contentView = [theWindow contentView]; + + [self buildModel]; + + tableView = [[CPTableView alloc] initWithFrame:CGRectMakeZero()]; + [tableView setDataSource:self]; + [tableView setDelegate:self]; + + var columnA = [[CPTableColumn alloc] initWithIdentifier:"A"]; + [tableView addTableColumn:columnA]; + [[columnA headerView] setStringValue:"A"]; + [columnA setWidth:175]; + + var columnB = [[CPTableColumn alloc] initWithIdentifier:"B"]; + [tableView addTableColumn:columnB]; + [[columnB headerView] setStringValue:"B"]; + [columnB setWidth:175] + + var columnC = [[CPTableColumn alloc] initWithIdentifier:"C"]; + [tableView addTableColumn:columnC]; + [[columnC headerView] setStringValue:"C"]; + [columnC setWidth:175]; + + var columnD = [[CPTableColumn alloc] initWithIdentifier:"D"]; + [tableView addTableColumn:columnD]; + [[columnD headerView] setStringValue:"D"]; + [columnD setWidth:175]; + + var columnE = [[CPTableColumn alloc] initWithIdentifier:"E"]; + [tableView addTableColumn:columnE]; + [[columnE headerView] setStringValue:"E"]; + [columnE setWidth:175]; + + var scrollView = [[CPScrollView alloc] initWithFrame:CGRectMake(100,100,700,400)]; + [scrollView setDocumentView:tableView]; + [contentView addSubview:scrollView]; + + [theWindow orderFront:self]; +} + +- (void)buildModel // For the editable view aka the slider +{ + content = []; + + var count = 10000; + while (count--) + content.push({A:10,B:10,C:10,D:10,E:10}); +} + +- (IBAction)sliderAction:(id)sender +{ + var row = [tableView rowForView:sender], + column = [tableView columnForView:sender], + identifier = [[[tableView tableColumns] objectAtIndex:column] identifier]; + + CPLog.debug(_cmd + " from " + sender + " row = " + row + " column = " + column + " value = " + [sender intValue]); + content[row][identifier] = [sender doubleValue]; +} + +- (int)numberOfRowsInTableView:(id)aTableView +{ + return content.length; +} + +- (void)tableView:(CPTableView)aTableView dataViewForTableColumn:(CPTableColumn)aTableColumn row:(int)aRow +{ + var n = (aRow % 3), + viewKind = "view_kind_" + n, + tableColumnId = [aTableColumn identifier], + + view = [aTableView makeViewWithIdentifier:viewKind owner:self]; + + if (view == nil) + { + if (n == 0) + view = [[CPTableCellView alloc] initWithFrame:CGRectMakeZero()]; + else if (n == 1) + { + view = [[CPSlider alloc] initWithFrame:CGRectMakeZero()]; + [view setMinValue:0]; + [view setMaxValue:20]; + [view setTarget:self]; + [view setAction:@selector(sliderAction:)]; + } + else + view = [[CPLevelIndicator alloc] initWithFrame:CGRectMakeZero()]; + + [view setIdentifier:viewKind]; + } + + if (n == 0) + [view setObjectValue:("Column " + tableColumnId + " Row " + aRow)]; + else if (n == 1) + [view setDoubleValue:content[aRow][tableColumnId]]; + + return view; +} + +@end + diff --git a/Tests/Manual/TableTest/ViewBased/Info.plist b/Tests/Manual/TableTest/ViewBased/Info.plist new file mode 100644 index 000000000..e9f3abc61 --- /dev/null +++ b/Tests/Manual/TableTest/ViewBased/Info.plist @@ -0,0 +1,12 @@ + + + + + CPApplicationDelegateClass + AppController + CPBundleName + CPTableViewViewBased + CPPrincipalClass + CPApplication + + diff --git a/Tests/Manual/TableTest/ViewBased/Jakefile b/Tests/Manual/TableTest/ViewBased/Jakefile new file mode 100644 index 000000000..7cc00fb85 --- /dev/null +++ b/Tests/Manual/TableTest/ViewBased/Jakefile @@ -0,0 +1,93 @@ +/* + * Jakefile + * CPTableViewViewBased + * + * Created by You on August 11, 2010. + * Copyright 2010, Your Company All rights reserved. + */ + +var ENV = require("system").env, + FILE = require("file"), + JAKE = require("jake"), + task = JAKE.task, + FileList = JAKE.FileList, + app = require("cappuccino/jake").app, + configuration = ENV["CONFIG"] || ENV["CONFIGURATION"] || ENV["c"] || "Debug", + OS = require("os"); + +app ("CPTableViewViewBased", function(task) +{ + task.setBuildIntermediatesPath(FILE.join("Build", "CPTableViewViewBased.build", configuration)); + task.setBuildPath(FILE.join("Build", configuration)); + + task.setProductName("CPTableViewViewBased"); + task.setIdentifier("com.yourcompany.CPTableViewViewBased"); + task.setVersion("1.0"); + task.setAuthor("Your Company"); + task.setEmail("feedback @nospam@ yourcompany.com"); + task.setSummary("CPTableViewViewBased"); + task.setSources((new FileList("**/*.j")).exclude(FILE.join("Build", "**"))); + task.setResources(new FileList("Resources/**")); + task.setIndexFilePath("index.html"); + task.setInfoPlistPath("Info.plist"); + + if (configuration === "Debug") + task.setCompilerFlags("-DDEBUG -g"); + else + task.setCompilerFlags("-O"); +}); + +task ("default", ["CPTableViewViewBased"], function() +{ + printResults(configuration); +}); + +task ("build", ["default"]); + +task ("debug", function() +{ + ENV["CONFIGURATION"] = "Debug"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("release", function() +{ + ENV["CONFIGURATION"] = "Release"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("run", ["debug"], function() +{ + OS.system(["open", FILE.join("Build", "Debug", "CPTableViewViewBased", "index.html")]); +}); + +task ("run-release", ["release"], function() +{ + OS.system(["open", FILE.join("Build", "Release", "CPTableViewViewBased", "index.html")]); +}); + +task ("deploy", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Deployment", "CPTableViewViewBased")); + OS.system(["press", "-f", FILE.join("Build", "Release", "CPTableViewViewBased"), FILE.join("Build", "Deployment", "CPTableViewViewBased")]); + printResults("Deployment") +}); + +task ("desktop", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Desktop", "CPTableViewViewBased")); + require("cappuccino/nativehost").buildNativeHost(FILE.join("Build", "Release", "CPTableViewViewBased"), FILE.join("Build", "Desktop", "CPTableViewViewBased", "CPTableViewViewBased.app")); + printResults("Desktop") +}); + +task ("run-desktop", ["desktop"], function() +{ + OS.system([FILE.join("Build", "Desktop", "CPTableViewViewBased", "CPTableViewViewBased.app", "Contents", "MacOS", "NativeHost"), "-i"]); +}); + +function printResults(configuration) +{ + print("----------------------------"); + print(configuration+" app built at path: "+FILE.join("Build", configuration, "CPTableViewViewBased")); + print("----------------------------"); +} diff --git a/Tests/Manual/TableTest/ViewBased/Resources/spinner.gif b/Tests/Manual/TableTest/ViewBased/Resources/spinner.gif new file mode 100644 index 000000000..06dbc2bc2 Binary files /dev/null and b/Tests/Manual/TableTest/ViewBased/Resources/spinner.gif differ diff --git a/Tests/Manual/TableTest/ViewBased/index-debug.html b/Tests/Manual/TableTest/ViewBased/index-debug.html new file mode 100644 index 000000000..548147b89 --- /dev/null +++ b/Tests/Manual/TableTest/ViewBased/index-debug.html @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + CPTableViewViewBased + + + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/TableTest/ViewBased/index.html b/Tests/Manual/TableTest/ViewBased/index.html new file mode 100644 index 000000000..bcb4c1cf8 --- /dev/null +++ b/Tests/Manual/TableTest/ViewBased/index.html @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + CPTableViewViewBased + + + + + + + + + + + + +
+
+ + + +
+
+ + + + diff --git a/Tests/Manual/TableTest/ViewBased/main.j b/Tests/Manual/TableTest/ViewBased/main.j new file mode 100644 index 000000000..71e7aeed1 --- /dev/null +++ b/Tests/Manual/TableTest/ViewBased/main.j @@ -0,0 +1,18 @@ +/* + * AppController.j + * CPTableViewViewBased + * + * Created by You on August 11, 2010. + * Copyright 2010, Your Company All rights reserved. + */ + +@import +@import + +@import "AppController.j" + + +function main(args, namedArgs) +{ + CPApplicationMain(args, namedArgs); +} diff --git a/Tests/Manual/TableTest/ViewBasedCib/AppController.j b/Tests/Manual/TableTest/ViewBasedCib/AppController.j new file mode 100644 index 000000000..3093c068c --- /dev/null +++ b/Tests/Manual/TableTest/ViewBasedCib/AppController.j @@ -0,0 +1,275 @@ +/* + * AppController.j + * CPTableViewLionCibTest + * + * Created by You on March 8, 2012. + * Copyright 2012, Your Company All rights reserved. + */ + +@import +@import + +var TABLE_DRAG_TYPE = @"TABLE_DRAG_TYPE"; + +CPLogRegister(CPLogConsole) + +@implementation AppController : CPObject +{ + CPWindow theWindow; //this "outlet" is connected automatically by the Cib + @outlet CPTableView tableView @accessors(getter=tableView); + + CPArray content @accessors; +} + +- (void)applicationDidFinishLaunching:(CPNotification)note +{ + content = [CPArray new]; + + var path = [[CPBundle mainBundle] pathForResource:@"Data.plist"], + request = [CPURLRequest requestWithURL:path], + connection = [CPURLConnection connectionWithRequest:request delegate:self]; + + [tableView registerForDraggedTypes:[CPArray arrayWithObject:TABLE_DRAG_TYPE]]; +} + +- (void)awakeFromCib +{ + [theWindow setFullPlatformWindow:YES]; +} + +- (void)connection:(CPURLConnection)connection didReceiveData:(CPString)dataString +{ + if (!dataString) + return; + + var data = [[CPData alloc] initWithRawString:dataString], + theRows = [CPPropertyListSerialization propertyListFromData:data format:CPPropertyListXMLFormat_v1_0]; + + [self setContent:theRows]; +} + +@end + +@implementation TableViewDelegate : CPObject +{ + @outlet CPView externalView; + @outlet CPView personView; + @outlet CPView placeView; + @outlet CPArrayController contentController; + + @outlet CPTableCellView view; + @outlet CPImageView imageView; + @outlet CPTextField textField; + + CPTableView tableView; + CPArray content; + CPArray images @accessors; + BOOL variableRowHeight @accessors; +} + +- (id)init +{ + self = [super init]; + + images = [ + [CPDictionary dictionaryWithObjectsAndKeys:@"Brad", @"name", @"Resources/brad.jpg" ,@"path"], + [CPDictionary dictionaryWithObjectsAndKeys:@"George",@"name", @"Resources/george.jpg",@"path"], + [CPDictionary dictionaryWithObjectsAndKeys:@"John", @"name", @"Resources/john.jpg" ,@"path"] + ]; + + variableRowHeight = NO; + + return self; +} + +- (CPView)makeOrangeView +{ + var orangeView = [[CustomView alloc] initWithFrame:CGRectMakeZero()]; + [orangeView setIdentifier:@"Orange"]; + + return orangeView; +} + +- (CPArray)content +{ + if (!content) + content = [[CPApp delegate] content]; + + return content; +} + +- (CPTableView)tableView +{ + if (!tableView) + tableView = [[CPApp delegate] tableView]; + + return tableView; +} + +// DELEGATE METHODS FOR THE TABLE VIEW +- (void)tableView:(CPTableView)aTableView dataViewForTableColumn:(CPTableColumn)aTableColumn row:(int)aRow +{ + var identifier = [aTableColumn identifier]; + + if (identifier == @"multiple") + identifier = [[[self content] objectAtIndex:aRow] objectForKey:@"identifier"]; + + var aView = [aTableView makeViewWithIdentifier:identifier owner:self]; + + if (identifier == "Orange") + { + if (aView == nil) + aView = [self makeOrangeView]; + + [[aView textField] setStringValue:aRow]; + } + + return aView; +} + +- (BOOL)tableView:(CPTableView)aTableView writeRowsWithIndexes:(CPIndexSet)rowIndexes toPasteboard:(CPPasteboard)pboard +{ + [pboard declareTypes:[CPArray arrayWithObject:TABLE_DRAG_TYPE] owner:self]; + [pboard setData:rowIndexes forType:TABLE_DRAG_TYPE]; + + return YES; +} + +- (CPDragOperation)tableView:(CPTableView)aTableView + validateDrop:(id)info + proposedRow:(CPInteger)row + proposedDropOperation:(CPTableViewDropOperation)operation +{ + [aTableView setDropRow:row dropOperation:CPTableViewDropAbove]; + + return CPDragOperationMove; +} + +- (BOOL)tableView:(CPTableView)aTableView acceptDrop:(id)info row:(int)row dropOperation:(CPTableViewDropOperation)operation +{ + var pboard = [info draggingPasteboard], + sourceIndexes = [pboard dataForType:TABLE_DRAG_TYPE], + firstObject = [content objectAtIndex:[sourceIndexes firstIndex]]; + + [content moveIndexes:sourceIndexes toIndex:row]; + [contentController rearrangeObjects]; + + // Select the rows we just moved. + var destinationRange = CPMakeRange([content indexOfObject:firstObject], [sourceIndexes count]), + selectIndexes = [CPIndexSet indexSetWithIndexesInRange:destinationRange]; + + [aTableView selectRowIndexes:selectIndexes byExtendingSelection:NO]; + + return YES; +} + +- (int)tableView:(CPTableView)aTableView heightOfRow:(int)aRow +{ + var height; + + if (!variableRowHeight || !(height = [[[self content] objectAtIndex:aRow] objectForKey:@"slider"])) + return [aTableView rowHeight]; + + return [height intValue]; +} + +- (void)awakeFromCib +{ + // self is the owner parameter specified in -makeViewWithIdentifier:owner: + // This method is called each time a cib containing a CPTableCellView is instantiated. + // Outlets are now connected and available. + // If the view has its own xib, only the view will be instantiated and connected to the owner. + if (externalView) + { + CPLog.debug(_cmd + " loaded externalView : " + externalView); + [[externalView textField] setTextColor:[CPColor greenColor]]; + } +} + +// CELL VIEWS ACTIONS +- (IBAction)_sliderAction:(id)sender +{ + if (variableRowHeight) + { + var table = [self tableView], + row = [table rowForView:sender]; + + [table noteHeightOfRowsWithIndexesChanged:[CPIndexSet indexSetWithIndex:row]]; + [table reloadData]; + } + + // Action sent from a cellView subview to its target. + CPLog.debug(_cmd + " value=" + [sender intValue]); +} + +- (IBAction)_textFieldNotBezeledAction:(id)sender +{ + CPLog.debug(_cmd + " value=" + [sender stringValue]); +} + +- (IBAction)_textFieldBezeledAction:(id)sender +{ + CPLog.debug(_cmd + " value=" + [sender stringValue]); +} + +@end + +@implementation CustomView : CPView +{ + id objectValue @accessors; + CPTextField textField @accessors; +} + +- (id)initWithFrame:(CGRect)aFrame +{ + self = [super initWithFrame:CGRectMake(0, 0, 50, 50)]; + + textField = [[CPTextField alloc] initWithFrame:CGRectMake(5, 5, 40, 40)]; + [textField setFont:[CPFont systemFontOfSize:30]]; + [textField setAutoresizingMask:CPViewMinXMargin | CPViewMaxXMargin | CPViewMinYMargin | CPViewMaxYMargin]; + [self addSubview:textField]; + + return self; +} + +- (void)drawRect:(CGRect)aRect +{ + [[CPColor orangeColor] set]; + + var ctx = [[CPGraphicsContext currentContext] graphicsPort]; + CGContextFillRect(ctx, aRect); +} + +@end + +@implementation CPArray (MoveIndexes) + +- (void)moveIndexes:(CPIndexSet)indexes toIndex:(int)insertIndex +{ + var aboveCount = 0, + object, + removeIndex, + index = [indexes lastIndex]; + + while (index != CPNotFound) + { + if (index >= insertIndex) + { + removeIndex = index + aboveCount; + aboveCount ++; + } + else + { + removeIndex = index; + insertIndex --; + } + + object = [self objectAtIndex:removeIndex]; + [self removeObjectAtIndex:removeIndex]; + [self insertObject:object atIndex:insertIndex]; + + index = [indexes indexLessThanIndex:index]; + } +} + +@end diff --git a/Tests/Manual/TableTest/ViewBasedCib/Info.plist b/Tests/Manual/TableTest/ViewBasedCib/Info.plist new file mode 100644 index 000000000..155aca4b6 --- /dev/null +++ b/Tests/Manual/TableTest/ViewBasedCib/Info.plist @@ -0,0 +1,10 @@ + + + + + Main cib file base name + MainMenu.cib + CPBundleName + CPTableViewLionCibTest + + diff --git a/Tests/Manual/TableTest/ViewBasedCib/Jakefile b/Tests/Manual/TableTest/ViewBasedCib/Jakefile new file mode 100644 index 000000000..4ac5dc9c6 --- /dev/null +++ b/Tests/Manual/TableTest/ViewBasedCib/Jakefile @@ -0,0 +1,94 @@ +/* + * Jakefile + * CPTableViewLionCibTest + * + * Created by You on March 8, 2012. + * Copyright 2012, Your Company All rights reserved. + */ + +var ENV = require("system").env, + FILE = require("file"), + JAKE = require("jake"), + task = JAKE.task, + FileList = JAKE.FileList, + app = require("cappuccino/jake").app, + configuration = ENV["CONFIG"] || ENV["CONFIGURATION"] || ENV["c"] || "Debug", + OS = require("os"); + +app ("CPTableViewLionCibTest", function(task) +{ + task.setBuildIntermediatesPath(FILE.join("Build", "CPTableViewLionCibTest.build", configuration)); + task.setBuildPath(FILE.join("Build", configuration)); + + task.setProductName("CPTableViewLionCibTest"); + task.setIdentifier("com.yourcompany.CPTableViewLionCibTest"); + task.setVersion("1.0"); + task.setAuthor("Your Company"); + task.setEmail("feedback @nospam@ yourcompany.com"); + task.setSummary("CPTableViewLionCibTest"); + task.setSources((new FileList("**/*.j")).exclude(FILE.join("Build", "**"))); + task.setResources(new FileList("Resources/**")); + task.setIndexFilePath("index.html"); + task.setInfoPlistPath("Info.plist"); + task.setNib2CibFlags("-R Resources/"); + + if (configuration === "Debug") + task.setCompilerFlags("-DDEBUG -g"); + else + task.setCompilerFlags("-O"); +}); + +task ("default", ["CPTableViewLionCibTest"], function() +{ + printResults(configuration); +}); + +task ("build", ["default"]); + +task ("debug", function() +{ + ENV["CONFIGURATION"] = "Debug"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("release", function() +{ + ENV["CONFIGURATION"] = "Release"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("run", ["debug"], function() +{ + OS.system(["open", FILE.join("Build", "Debug", "CPTableViewLionCibTest", "index.html")]); +}); + +task ("run-release", ["release"], function() +{ + OS.system(["open", FILE.join("Build", "Release", "CPTableViewLionCibTest", "index.html")]); +}); + +task ("deploy", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Deployment", "CPTableViewLionCibTest")); + OS.system(["press", "-f", FILE.join("Build", "Release", "CPTableViewLionCibTest"), FILE.join("Build", "Deployment", "CPTableViewLionCibTest")]); + printResults("Deployment") +}); + +task ("desktop", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Desktop", "CPTableViewLionCibTest")); + require("cappuccino/nativehost").buildNativeHost(FILE.join("Build", "Release", "CPTableViewLionCibTest"), FILE.join("Build", "Desktop", "CPTableViewLionCibTest", "CPTableViewLionCibTest.app")); + printResults("Desktop") +}); + +task ("run-desktop", ["desktop"], function() +{ + OS.system([FILE.join("Build", "Desktop", "CPTableViewLionCibTest", "CPTableViewLionCibTest.app", "Contents", "MacOS", "NativeHost"), "-i"]); +}); + +function printResults(configuration) +{ + print("----------------------------"); + print(configuration+" app built at path: "+FILE.join("Build", configuration, "CPTableViewLionCibTest")); + print("----------------------------"); +} diff --git a/Tests/Manual/TableTest/ViewBasedCib/Resources/Data.plist b/Tests/Manual/TableTest/ViewBasedCib/Resources/Data.plist new file mode 100644 index 000000000..03a7a86ab --- /dev/null +++ b/Tests/Manual/TableTest/ViewBasedCib/Resources/Data.plist @@ -0,0 +1,234 @@ + + + + + + image + + path + Resources/brad.jpg + name + Brad + + show + + identifier + person + value + EDITABLE TEXT + + + show + + slider + 100 + identifier + place + name + Petrograd + value + EDITABLE TEXT + + + image + + path + Resources/george.jpg + name + George + + show + + identifier + person + value + EDITABLE TEXT + + + show + + identifier + multiple + name + Brad + value + EDITABLE TEXT + + + image + + path + Resources/john.jpg + name + John + + show + + identifier + person + value + EDITABLE TEXT + + + show + + slider + 150 + identifier + place + name + Brad + value + EDITABLE TEXT + + + show + + slider + 100 + identifier + place + name + Robert + value + EDITABLE TEXT + + + show + + identifier + person + name + Albert + value + EDITABLE TEXT + + + show + + identifier + person + name + Melissa + value + EDITABLE TEXT + + + image + + path + Resources/john.jpg + name + John + + identifier + multiple + value + EDITABLE TEXT + + + image + + name + Brad + path + Resources/brad.jpg + + identifier + person + value + EDITABLE TEXT + + + slider + 50 + identifier + place + name + Petrograd + value + EDITABLE TEXT + + + image + + name + George + path + Resources/george.jpg + + identifier + person + value + EDITABLE TEXT + + + identifier + multiple + name + Brad + value + EDITABLE TEXT + + + image + + name + John + path + Resources/john.jpg + + identifier + person + value + EDITABLE TEXT + + + slider + 200 + identifier + place + name + Brad + value + EDITABLE TEXT + + + identifier + place + name + Robert + value + EDITABLE TEXT + + + identifier + person + name + Albert + value + EDITABLE TEXT + + + identifier + person + name + Melissa + value + EDITABLE TEXT + + + image + + name + JFK + path + Resources/john.jpg + + identifier + multiple + value + EDITABLE TEXT + + + diff --git a/Tests/Manual/TableTest/ViewBasedCib/Resources/MainMenu.cib b/Tests/Manual/TableTest/ViewBasedCib/Resources/MainMenu.cib new file mode 100644 index 000000000..c8150d283 --- /dev/null +++ b/Tests/Manual/TableTest/ViewBasedCib/Resources/MainMenu.cib @@ -0,0 +1 @@ +280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;0E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;4E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;0E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;1;7E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;1;9E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;11E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;13E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;15E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;17E;D;K;6;CP$UIDd;2;18E;D;K;6;CP$UIDd;2;19E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;89E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;90E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;2;91E;E;D;K;10;$classnameS;20;CPCibOutletConnectorK;8;$classesA;S;20;CPCibOutletConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;11E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;86E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;92E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;86E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;50E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;93E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;86E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;44E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;94E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;50E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;87E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;95E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;50E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;87E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;92E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;87E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;89E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;96E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;87E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;62E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;97E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;87E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;54E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;98E;E;D;K;10;$classnameS;21;CPCibControlConnectorK;8;$classesA;S;21;CPCibControlConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;60E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;87E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;99E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;74E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;87E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;87E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;101E;E;D;K;10;$classnameS;21;CPCibBindingConnectorK;8;$classesA;S;21;CPCibBindingConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;61E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;87E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;102E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;103E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;104E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;106E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;85E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;87E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;107E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;108E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;104E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;109E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;76E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;110E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;108E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;111E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;112E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;71E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;68E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;113E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;108E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;114E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;115E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;67E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;62E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;116E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;108E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;117E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;118E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;58E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;54E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;119E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;108E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;120E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;1;0E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;73E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;122E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;108E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;123E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;124E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;74E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;73E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;110E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;108E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;111E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;125E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;89E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;86E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;126E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;127E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;128E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;129E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;65E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;62E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;130E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;131E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;132E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;65E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;62E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;134E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;103E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;117E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;60E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;54E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;136E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;108E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;137E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;138E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;63E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;62E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;139E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;108E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;140E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;50E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;89E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;142E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;128E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;143E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;144E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;90E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;43E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;145E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;146E;K;30;_CPCibWindowTemplateWTFlagsKeyD;K;6;CP$UIDd;3;147E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;148E;K;33;_CPCibWindowTemplateScreenRectKeyD;K;6;CP$UIDd;3;149E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;150E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;151E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;46E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;153E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;153E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;154E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;E;D;K;10;$classnameS;12;CPScrollViewK;8;$classesA;S;12;CPScrollViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;47E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;46E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;156E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;157E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;158E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;46E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;159E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;160E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;162E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;3;163E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;84E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;2;81E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;164E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;164E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;164E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;164E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;165E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;165E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;165E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;166E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;167E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;3;152E;E;D;K;10;$classnameS;11;CPTableViewK;8;$classesA;S;11;CPTableViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;49E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;162E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;168E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;168E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;162E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;170E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;171E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;12;$agrid-colorD;K;6;CP$UIDd;3;172E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;173E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;174E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;175E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;152E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;173E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;165E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;165E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;165E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;165E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;165E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;176E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;172E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;3;177E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;165E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;3;179E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;2;83E;K;26;CPTableViewAutosaveNameKeyD;K;6;CP$UIDd;1;0E;K;35;CPTableViewArchivedReusableViewsKeyD;K;6;CP$UIDd;3;180E;E;D;K;10;$classnameS;13;CPTableColumnK;8;$classesA;S;13;CPTableColumnS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;181E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;182E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;183E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;184E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;186E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;187E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;177E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;188E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;165E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;15;CPTableCellViewK;8;$classesA;S;15;CPTableCellViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;189E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;190E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;191E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;192E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;193E;E;D;K;10;$classnameS;5;CPBoxK;8;$classesA;S;5;CPBoxS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;55E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;54E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;194E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;195E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;196E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;54E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;159E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;152E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;197E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;18;$abackground-colorD;K;6;CP$UIDd;3;198E;K;14;$aborder-colorD;K;6;CP$UIDd;3;199E;K;14;$aborder-widthD;K;6;CP$UIDd;3;167E;K;15;$acorner-radiusD;K;6;CP$UIDd;3;200E;K;16;$acontent-marginD;K;6;CP$UIDd;3;202E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;173E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;203E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;204E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;152E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;11;CPTextFieldK;8;$classesA;S;11;CPTextFieldS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;205E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;206E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;207E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;205E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;208E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;209E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;173E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;173E;K;6;$afontD;K;6;CP$UIDd;3;211E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;165E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;212E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;173E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;188E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;188E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;188E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;213E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;173E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;173E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;8;CPSliderK;8;$classesA;S;8;CPSliderS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;59E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;205E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;214E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;215E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;205E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;216E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;217E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;152E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;152E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;218E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;173E;K;19;CPSliderMinValueKeyD;K;6;CP$UIDd;3;219E;K;19;CPSliderMaxValueKeyD;K;6;CP$UIDd;3;220E;K;23;CPSliderAltIncrValueKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;205E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;221E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;222E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;205E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;223E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;209E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;173E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;167E;K;6;$afontD;K;6;CP$UIDd;3;224E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;165E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;225E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;173E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;188E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;188E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;188E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;226E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;167E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;173E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;227E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;228E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;229E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;192E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;230E;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;62E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;231E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;232E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;62E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;233E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;209E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;173E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;173E;K;6;$afontD;K;6;CP$UIDd;3;211E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;165E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;234E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;173E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;188E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;188E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;188E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;213E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;173E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;173E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;11;CPImageViewK;8;$classesA;S;11;CPImageViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;64E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;62E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;235E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;236E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;62E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;237E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;152E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;152E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;177E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;173E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;3;152E;E;D;K;10;$classnameS;10;CPCheckBoxK;8;$classesA;S;10;CPCheckBoxS;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;66E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;62E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;238E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;239E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;62E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;240E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;241E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;242E;K;11;$aalignmentD;K;6;CP$UIDd;3;152E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;152E;K;6;$afontD;K;6;CP$UIDd;3;211E;K;16;$aimage-positionD;K;6;CP$UIDd;3;167E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;203E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;173E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;243E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;244E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;188E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;203E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;203E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;165E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;167E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;152E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;245E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;246E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;247E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;192E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;181E;E;D;K;10;$classnameS;18;CPSegmentedControlK;8;$classesA;S;18;CPSegmentedControlS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;69E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;68E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;248E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;249E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;68E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;250E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;251E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;167E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;152E;K;6;$afontD;K;6;CP$UIDd;3;252E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;173E;K;29;CPSegmentedControlSegmentsKeyD;K;6;CP$UIDd;3;253E;K;29;CPSegmentedControlSelectedKeyD;K;6;CP$UIDd;3;203E;K;33;CPSegmentedControlSegmentStyleKeyD;K;6;CP$UIDd;3;203E;K;33;CPSegmentedControlTrackingModeKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;68E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;254E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;255E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;68E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;256E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;209E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;167E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;173E;K;6;$afontD;K;6;CP$UIDd;3;211E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;165E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;257E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;173E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;188E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;188E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;188E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;226E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;173E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;167E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;258E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;259E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;183E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;184E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;260E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;261E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;177E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;188E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;165E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;262E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;263E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;264E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;192E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;258E;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;73E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;265E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;266E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;73E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;216E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;209E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;267E;K;11;$aalignmentD;K;6;CP$UIDd;3;173E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;152E;K;6;$afontD;K;6;CP$UIDd;3;268E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;165E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;269E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;173E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;165E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;165E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;165E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;270E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;152E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;173E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;271E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;272E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;164E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;273E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;274E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;275E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;177E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;188E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;165E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;276E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;277E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;278E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;192E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;271E;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;76E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;279E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;280E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;281E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;76E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;208E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;209E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;282E;K;11;$aalignmentD;K;6;CP$UIDd;3;173E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;173E;K;6;$afontD;K;6;CP$UIDd;3;211E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;165E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;269E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;173E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;165E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;165E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;188E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;226E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;173E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;173E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;283E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;284E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;164E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;273E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;285E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;286E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;177E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;188E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;165E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;287E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;288E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;164E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;273E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;289E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;290E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;177E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;188E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;165E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;10;CPScrollerK;8;$classesA;S;10;CPScrollerS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;48E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;291E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;292E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;48E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;293E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;294E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;295E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;296E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;152E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;48E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;297E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;173E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;152E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;188E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;298E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;17;CPTableHeaderViewK;8;$classesA;S;17;CPTableHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;163E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;299E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;299E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;163E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;300E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;29;CPTableHeaderViewTableViewKeyD;K;6;CP$UIDd;2;50E;K;33;CPTableHeaderViewDrawsColumnLinesD;K;6;CP$UIDd;3;165E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;48E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;301E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;302E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;48E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;293E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;294E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;295E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;296E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;152E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;48E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;303E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;173E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;152E;K;23;CPScrollerIsVerticalKeyD;K;6;CP$UIDd;3;165E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;304E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;66E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;46E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;305E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;306E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;46E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;307E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;241E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;242E;K;11;$aalignmentD;K;6;CP$UIDd;3;173E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;152E;K;6;$afontD;K;6;CP$UIDd;3;211E;K;16;$aimage-positionD;K;6;CP$UIDd;3;177E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;203E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;173E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;308E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;244E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;188E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;203E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;203E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;165E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;177E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;152E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;309E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;310E;E;D;K;10;$classnameS;17;CPArrayControllerK;8;$classesA;S;17;CPArrayControllerS;18;CPObjectControllerS;12;CPControllerS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;28;CPObjectControllerContentKeyD;K;6;CP$UIDd;1;0E;K;36;CPObjectControllerObjectClassNameKeyD;K;6;CP$UIDd;3;311E;K;31;CPObjectControllerIsEditableKeyD;K;6;CP$UIDd;3;165E;K;49;CPObjectControllerAutomaticallyPreparesContentKeyD;K;6;CP$UIDd;3;188E;K;37;CPArrayControllerAvoidsEmptySelectionD;K;6;CP$UIDd;3;165E;K;49;CPArrayControllerClearsFilterPredicateOnInsertionD;K;6;CP$UIDd;3;165E;K;41;CPArrayControllerFilterRestrictsInsertionD;K;6;CP$UIDd;3;165E;K;35;CPArrayControllerPreservesSelectionD;K;6;CP$UIDd;3;165E;K;39;CPArrayControllerSelectsInsertedObjectsD;K;6;CP$UIDd;3;165E;K;47;CPArrayControllerAlwaysUsesMultipleValuesMarkerD;K;6;CP$UIDd;3;188E;K;47;CPArrayControllerAutomaticallyRearrangesObjectsD;K;6;CP$UIDd;3;188E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;44E;E;E;S;8;delegateS;9;tableViewS;9;theWindowS;10;dataSourceS;17;contentControllerS;10;personViewS;9;placeViewS;14;_sliderAction:S;24;_textFieldBezeledAction:S;27;_textFieldNotBezeledAction:S;25;hidden: variableRowHeightS;6;hiddenS;17;variableRowHeightD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;K;22;CPValueTransformerNameD;K;6;CP$UIDd;3;312E;E;E;S;24;value: variableRowHeightS;5;valueD;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;E;E;S;24;value: objectValue.valueS;17;objectValue.valueD;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;E;E;S;29;value: objectValue.identifierS;22;objectValue.identifierD;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;E;E;S;23;value: objectValue.showS;16;objectValue.showD;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;E;E;S;23;value: objectValue.nameS;16;objectValue.nameD;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;E;E;S;18;value: objectValueS;11;objectValueD;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;E;E;D;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;E;E;S;21;contentArray: contentS;12;contentArrayS;7;contentD;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;E;E;S;32;valueURL: objectValue.image.pathS;8;valueURLS;22;objectValue.image.pathD;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;K;28;CPRaisesForNotApplicableKeysD;K;6;CP$UIDd;3;188E;K;26;CPConditionallySetsEnabledD;K;6;CP$UIDd;3;188E;K;38;CPAllowsEditingMultipleValuesSelectionD;K;6;CP$UIDd;3;188E;E;E;S;24;hidden: objectValue.showD;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;K;22;CPValueTransformerNameD;K;6;CP$UIDd;3;312E;E;E;S;25;value: objectValue.sliderS;18;objectValue.sliderD;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;K;22;CPValidatesImmediatelyD;K;6;CP$UIDd;3;165E;E;E;S;29;value: objectValue.image.nameS;22;objectValue.image.nameD;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;K;28;CPRaisesForNotApplicableKeysD;K;6;CP$UIDd;3;188E;K;38;CPAllowsEditingMultipleValuesSelectionD;K;6;CP$UIDd;3;188E;E;E;S;24;content: arrangedObjectsS;15;arrangedObjectsD;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;E;E;S;32;{10000000000000, 10000000000000}S;8;CPWindowd;10;1946157056S;24;{{335, 282}, {994, 356}}S;22;{{0, 0}, {1680, 1028}}d;1;7S;6;Windowd;1;0S;20;{{0, 0}, {994, 356}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;85E;E;E;S;6;normalS;21;{{0, 45}, {995, 312}}S;20;{{0, 0}, {995, 312}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;166E;E;E;d;2;18S;10;scrollviewD;K;10;$classnameS;10;CPClipViewK;8;$classesA;S;10;CPClipViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;161E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;48E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;313E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;168E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;314E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;48E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;293E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;315E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;316E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;50E;E;D;K;6;$classD;K;6;CP$UIDd;3;161E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;48E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;317E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;318E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;319E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;48E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;293E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;315E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;320E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;83E;E;d;2;10T;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;48E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;321E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;321E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;48E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;E;d;1;2S;20;{{0, 0}, {993, 294}}D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;169E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;322E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;3;169E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;323E;E;d;1;4d;2;87S;6;{3, 2}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;E;E;d;1;3D;K;10;$classnameS;13;_CPCornerViewK;8;$classesA;S;13;_CPCornerViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;178E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;48E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;324E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;325E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;48E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;293E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;326E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;327E;E;D;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;K;6;personD;K;6;CP$UIDd;3;329E;K;32;AutomaticTableColumnIdentifier.1D;K;6;CP$UIDd;3;330E;K;32;AutomaticTableColumnIdentifier.2D;K;6;CP$UIDd;3;331E;K;8;multipleD;K;6;CP$UIDd;3;332E;K;5;placeD;K;6;CP$UIDd;3;333E;E;E;S;8;multipled;3;234d;2;40d;4;1000D;K;10;$classnameS;24;_CPTableColumnHeaderViewK;8;$classesA;S;24;_CPTableColumnHeaderViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;185E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;321E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;321E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;334E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;335E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;152E;K;12;$atext-colorD;K;6;CP$UIDd;3;336E;K;6;$afontD;K;6;CP$UIDd;3;337E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;338E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;337E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;336E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;152E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;339E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;340E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;209E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;282E;K;11;$aalignmentD;K;6;CP$UIDd;3;152E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;173E;K;6;$afontD;K;6;CP$UIDd;3;342E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;343E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;344E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;165E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;165E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;188E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;315E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;173E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;152E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;F;S;20;{{1, 94}, {234, 82}}S;19;{{0, 0}, {234, 82}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;56E;E;E;d;2;45S;5;placeS;19;{{3, 3}, {228, 76}}S;19;{{0, 0}, {228, 76}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;205E;E;E;S;3;boxD;K;6;$classD;K;6;CP$UIDd;3;169E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;345E;E;D;K;6;$classD;K;6;CP$UIDd;3;169E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;346E;E;d;1;5D;K;10;$classnameS;21;_CPKeyedArchiverValueK;8;$classesA;S;21;_CPKeyedArchiverValueS;7;CPValueS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;201E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;347E;E;d;1;1S;3;BoxD;K;6;$classD;K;6;CP$UIDd;2;45E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;56E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;152E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;384E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;385E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;386E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;56E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;159E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;20;CPReuseIdentifierKeyD;K;6;CP$UIDd;3;316E;E;S;20;{{12, 10}, {99, 22}}S;18;{{0, 0}, {99, 22}}d;2;34S;9;textfieldD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;210E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;348E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;349E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;188E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;188E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;165E;E;S;4;CityD;K;6;$classD;K;6;CP$UIDd;3;169E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;350E;E;S;21;{{12, 26}, {200, 21}}S;19;{{0, 0}, {200, 21}}d;2;42S;6;sliderd;3;100d;2;50d;3;200S;21;{{130, 41}, {82, 17}}S;18;{{0, 0}, {82, 17}}d;2;41D;K;6;$classD;K;6;CP$UIDd;3;210E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;348E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;351E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;165E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;188E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;165E;E;S;10;Row HeightD;K;6;$classD;K;6;CP$UIDd;3;169E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;352E;E;S;19;{{1, 1}, {234, 91}}S;19;{{0, 0}, {234, 91}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;67E;E;E;S;6;personS;18;{{3, 3}, {76, 22}}S;18;{{0, 0}, {76, 22}}d;2;38S;4;NameS;20;{{146, 0}, {88, 85}}S;18;{{0, 0}, {88, 85}}d;2;57S;19;{{1, 27}, {60, 21}}S;18;{{0, 0}, {60, 21}}d;2;36S;9;check-boxS;8;selectedS;4;showS;0;S;21;{{1, 178}, {234, 87}}S;19;{{0, 0}, {234, 87}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;70E;E;E;S;21;{{37, 32}, {164, 25}}S;19;{{0, 0}, {164, 25}}d;2;13S;17;segmented-controlD;K;6;$classD;K;6;CP$UIDd;3;210E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;348E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;349E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;165E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;188E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;165E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;355E;D;K;6;CP$UIDd;3;356E;E;E;S;19;{{3, 3}, {228, 22}}S;19;{{0, 0}, {228, 22}}d;2;39S;4;TextS;32;AutomaticTableColumnIdentifier.2d;3;284D;K;6;$classD;K;6;CP$UIDd;3;185E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;321E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;321E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;357E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;335E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;152E;K;12;$atext-colorD;K;6;CP$UIDd;3;336E;K;6;$afontD;K;6;CP$UIDd;3;337E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;358E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;337E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;336E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;152E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;339E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;340E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;209E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;282E;K;11;$aalignmentD;K;6;CP$UIDd;3;152E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;173E;K;6;$afontD;K;6;CP$UIDd;3;359E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;343E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;344E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;165E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;165E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;188E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;315E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;173E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;152E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;S;21;{{388, 1}, {284, 86}}S;19;{{0, 0}, {284, 86}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;74E;E;E;S;20;{{8, 21}, {267, 43}}S;19;{{0, 0}, {267, 43}}S;16;bezeled+editableD;K;6;$classD;K;6;CP$UIDd;3;210E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;348E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;360E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;188E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;188E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;165E;E;S;13;Editable TextD;K;6;$classD;K;6;CP$UIDd;3;169E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;361E;E;S;32;AutomaticTableColumnIdentifier.1d;3;147f;22;3.4028234663852886e+38D;K;6;$classD;K;6;CP$UIDd;3;185E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;321E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;321E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;362E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;335E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;152E;K;12;$atext-colorD;K;6;CP$UIDd;3;336E;K;6;$afontD;K;6;CP$UIDd;3;337E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;363E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;337E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;336E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;152E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;339E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;340E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;209E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;282E;K;11;$aalignmentD;K;6;CP$UIDd;3;152E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;173E;K;6;$afontD;K;6;CP$UIDd;3;364E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;343E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;344E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;165E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;165E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;188E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;315E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;173E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;152E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;S;21;{{238, 1}, {147, 87}}S;19;{{0, 0}, {147, 87}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;77E;E;E;d;3;666S;19;{{3, 8}, {141, 22}}S;19;{{0, 0}, {141, 22}}S;8;editableS;6;Oranged;3;149D;K;6;$classD;K;6;CP$UIDd;3;185E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;321E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;321E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;365E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;335E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;152E;K;12;$atext-colorD;K;6;CP$UIDd;3;336E;K;6;$afontD;K;6;CP$UIDd;3;337E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;366E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;337E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;336E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;152E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;339E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;340E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;209E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;282E;K;11;$aalignmentD;K;6;CP$UIDd;3;152E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;173E;K;6;$afontD;K;6;CP$UIDd;3;367E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;343E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;344E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;165E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;165E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;188E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;315E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;173E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;152E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;S;13;TableCellViewd;3;164D;K;6;$classD;K;6;CP$UIDd;3;185E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;321E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;321E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;368E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;335E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;152E;K;12;$atext-colorD;K;6;CP$UIDd;3;336E;K;6;$afontD;K;6;CP$UIDd;3;337E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;369E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;337E;K;36;_CPTableColumnHeaderViewTextColorKeyD;K;6;CP$UIDd;3;336E;K;42;_CPTableColumnHeaderViewTextShadowColorKeyD;K;6;CP$UIDd;1;0E;K;36;_CPTableColumnHeaderViewAlignmentKeyD;K;6;CP$UIDd;3;152E;K;40;_CPTableColumnHeaderViewLineBreakModeKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;339E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;340E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;209E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;282E;K;11;$aalignmentD;K;6;CP$UIDd;3;152E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;173E;K;6;$afontD;K;6;CP$UIDd;3;370E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;343E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;344E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;165E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;165E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;188E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;315E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;173E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;152E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;S;21;{{1, -76}, {755, 15}}S;19;{{0, 0}, {755, 15}}d;1;8d;11;-2147483648S;8;scrollerS;8;disabledS;29;_horizontalScrollerDidScroll:f;18;0.9968944099378882S;19;{{0, 0}, {993, 25}}S;14;tableHeaderRowS;23;{{224, 193}, {15, 102}}S;19;{{0, 0}, {15, 102}}S;27;_verticalScrollerDidScroll:f;18;0.9595687331536388S;22;{{828, 15}, {150, 21}}S;19;{{0, 0}, {150, 21}}d;2;33S;19;Variable Row HeightS;13;AppControllerS;17;TableViewDelegateS;19;CPMutableDictionaryS;15;CPNegateBooleanS;20;{{1, 1}, {993, 294}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;50E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;169E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;371E;E;S;6;_NS:11S;21;{{1, 295}, {993, 17}}S;19;{{0, 0}, {993, 17}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;83E;E;E;S;6;_NS:15S;16;{{0, 0}, {0, 0}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;203E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;372E;D;K;6;CP$UIDd;3;372E;D;K;6;CP$UIDd;3;372E;D;K;6;CP$UIDd;3;203E;E;E;S;22;{{224, 289}, {16, 23}}S;18;{{0, 0}, {16, 23}}S;10;cornerviewS;6;_NS:19D;K;10;$classnameS;5;CPCibK;8;$classesA;S;5;CPCibS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;328E;K;16;CPCibDataFileKeyD;K;6;CP$UIDd;3;373E;E;D;K;6;$classD;K;6;CP$UIDd;3;328E;K;16;CPCibDataFileKeyD;K;6;CP$UIDd;3;374E;E;D;K;6;$classD;K;6;CP$UIDd;3;328E;K;16;CPCibDataFileKeyD;K;6;CP$UIDd;3;375E;E;D;K;6;$classD;K;6;CP$UIDd;3;328E;K;16;CPCibDataFileKeyD;K;6;CP$UIDd;3;376E;E;D;K;6;$classD;K;6;CP$UIDd;3;328E;K;16;CPCibDataFileKeyD;K;6;CP$UIDd;3;377E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;379E;E;E;S;12;columnHeaderD;K;6;$classD;K;6;CP$UIDd;3;169E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;380E;E;D;K;6;$classD;K;6;CP$UIDd;3;210E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;348E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;381E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;165E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;188E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;165E;E;S;14;Multiple CellsS;17;{{3, 0}, {-6, 0}}S;17;{{0, 0}, {-6, 0}}D;K;10;$classnameS;17;_CPThemeAttributeK;8;$classesA;S;17;_CPThemeAttributeS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;341E;K;4;nameD;K;6;CP$UIDd;3;382E;K;12;defaultValueD;K;6;CP$UIDd;3;211E;K;6;valuesD;K;6;CP$UIDd;3;383E;E;S;9;Text Celld;4;3072D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;387E;D;K;6;CP$UIDd;3;388E;D;K;6;CP$UIDd;3;389E;D;K;6;CP$UIDd;3;390E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;391E;D;K;6;CP$UIDd;3;392E;D;K;6;CP$UIDd;3;393E;D;K;6;CP$UIDd;3;203E;E;E;S;22;{"width":0,"height":0}S;28;_CPFontSystemFacePlaceholderd;2;-1D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;203E;E;E;d;2;14D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;394E;D;K;6;CP$UIDd;3;394E;D;K;6;CP$UIDd;3;394E;D;K;6;CP$UIDd;3;203E;E;E;D;K;10;$classnameS;14;_CPSegmentItemK;8;$classesA;S;14;_CPSegmentItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;353E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;244E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;188E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;165E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;152E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;395E;E;D;K;6;$classD;K;6;CP$UIDd;3;353E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;244E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;165E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;165E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;203E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;395E;E;D;K;6;$classD;K;6;CP$UIDd;3;353E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;1;0E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;188E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;165E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;152E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;395E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;396E;E;E;S;16;Editable BezeledD;K;6;$classD;K;6;CP$UIDd;3;341E;K;4;nameD;K;6;CP$UIDd;3;382E;K;12;defaultValueD;K;6;CP$UIDd;3;211E;K;6;valuesD;K;6;CP$UIDd;3;397E;E;d;2;26D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;398E;D;K;6;CP$UIDd;3;398E;D;K;6;CP$UIDd;3;398E;D;K;6;CP$UIDd;3;203E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;399E;E;E;S;20;Editable Non BezeledD;K;6;$classD;K;6;CP$UIDd;3;341E;K;4;nameD;K;6;CP$UIDd;3;382E;K;12;defaultValueD;K;6;CP$UIDd;3;211E;K;6;valuesD;K;6;CP$UIDd;3;400E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;401E;E;E;S;15;Created In CodeD;K;6;$classD;K;6;CP$UIDd;3;341E;K;4;nameD;K;6;CP$UIDd;3;382E;K;12;defaultValueD;K;6;CP$UIDd;3;211E;K;6;valuesD;K;6;CP$UIDd;3;402E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;403E;E;E;S;12;External CibD;K;6;$classD;K;6;CP$UIDd;3;341E;K;4;nameD;K;6;CP$UIDd;3;382E;K;12;defaultValueD;K;6;CP$UIDd;3;211E;K;6;valuesD;K;6;CP$UIDd;3;404E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;203E;E;E;f;12;0.7997416835S;12600;MjgwTlBMSVNUOzEuMDtEO0s7NDskdG9wRDtLOzE4O0NQQ2liT2JqZWN0RGF0YUtleUQ7Szs2O0NQJFVJRGQ7MTsyRTtFO0s7ODskb2JqZWN0c0E7Uzs1OyRudWxsRDtLOzEwOyRjbGFzc25hbWVTOzE2O19DUENpYk9iamVjdERhdGFLOzg7JGNsYXNzZXNBO1M7MTY7X0NQQ2liT2JqZWN0RGF0YVM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7MUU7SzsyODtfQ1BDaWJPYmplY3REYXRhTmFtZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YU5hbWVzVmFsdWVzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzI7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNWYWx1ZXNLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzszMDtfQ1BDaWJPYmplY3REYXRhQ29ubmVjdGlvbnNLZXlEO0s7NjtDUCRVSURkOzE7NEU7SzsyODtfQ1BDaWJPYmplY3REYXRhRnJhbWV3b3JrS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MjY7X0NQQ2liT2JqZWN0RGF0YU5leHRPaWRLZXlEO0s7NjtDUCRVSURkOzE7NUU7SzszMDtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c0tleXNLZXlEO0s7NjtDUCRVSURkOzE7NkU7SzszMjtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c1ZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs3RTtLOzI2O19DUENpYk9iamVjdERhdGFPaWRLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzhFO0s7Mjg7X0NQQ2liT2JqZWN0RGF0YU9pZFZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs5RTtLOzI4O19DUENpYk9iamVjdERhdGFGaWxlT3duZXJLZXlEO0s7NjtDUCRVSURkOzI7MTFFO0s7MzM7X0NQQ2liT2JqZWN0RGF0YVZpc2libGVXaW5kb3dzS2V5RDtLOzY7Q1AkVUlEZDsyOzEzRTtFO0Q7SzsxMDskY2xhc3NuYW1lUzs3O0NQQXJyYXlLOzg7JGNsYXNzZXNBO1M7NztDUEFycmF5Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsxNUU7RDtLOzY7Q1AkVUlEZDsyOzE2RTtEO0s7NjtDUCRVSURkOzI7MTdFO0Q7Szs2O0NQJFVJRGQ7MjsxOEU7RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtEO0s7NjtDUCRVSURkOzI7MjBFO0Q7Szs2O0NQJFVJRGQ7MjsyMkU7RDtLOzY7Q1AkVUlEZDsxOzBFO0Q7Szs2O0NQJFVJRGQ7MjsyNEU7RDtLOzY7Q1AkVUlEZDsxOzBFO0Q7Szs2O0NQJFVJRGQ7MjsyNkU7RDtLOzY7Q1AkVUlEZDsxOzBFO0Q7Szs2O0NQJFVJRGQ7MjsyN0U7RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsxMUU7RDtLOzY7Q1AkVUlEZDsyOzIwRTtEO0s7NjtDUCRVSURkOzI7MjJFO0Q7Szs2O0NQJFVJRGQ7MjsyMEU7RDtLOzY7Q1AkVUlEZDsyOzI0RTtEO0s7NjtDUCRVSURkOzI7MjBFO0Q7Szs2O0NQJFVJRGQ7MjsyNkU7RDtLOzY7Q1AkVUlEZDsyOzExRTtFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0U7RTtEO0s7MTA7JGNsYXNzbmFtZVM7MTg7X0NQQ2liQ3VzdG9tT2JqZWN0Szs4OyRjbGFzc2VzQTtTOzE4O19DUENpYkN1c3RvbU9iamVjdFM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MTBFO0s7Mjc7X0NQQ2liQ3VzdG9tT2JqZWN0Q2xhc3NOYW1lRDtLOzY7Q1AkVUlEZDsyOzI4RTtFO0Q7SzsxMDskY2xhc3NuYW1lUzs1O0NQU2V0Szs4OyRjbGFzc2VzQTtTOzU7Q1BTZXRTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzEyRTtLOzE1O0NQU2V0T2JqZWN0c0tleUQ7Szs2O0NQJFVJRGQ7MjsyOUU7RTtEO0s7MTA7JGNsYXNzbmFtZVM7MjE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9ySzs4OyRjbGFzc2VzQTtTOzIxO0NQQ2liQmluZGluZ0Nvbm5lY3RvclM7MTQ7Q1BDaWJDb25uZWN0b3JTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzE0RTtLOzI0O19DUENpYkNvbm5lY3RvclNvdXJjZUtleUQ7Szs2O0NQJFVJRGQ7MjsyNkU7SzsyOTtfQ1BDaWJDb25uZWN0b3JEZXN0aW5hdGlvbktleUQ7Szs2O0NQJFVJRGQ7MjsyMEU7SzsyMztfQ1BDaWJDb25uZWN0b3JMYWJlbEtleUQ7Szs2O0NQJFVJRGQ7MjszMEU7SzszMTtDUENpYkJpbmRpbmdDb25uZWN0b3JCaW5kaW5nS2V5RDtLOzY7Q1AkVUlEZDsyOzMxRTtLOzMxO0NQQ2liQmluZGluZ0Nvbm5lY3RvcktleVBhdGhLZXlEO0s7NjtDUCRVSURkOzI7MzJFO0s7MzE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9yT3B0aW9uc0tleUQ7Szs2O0NQJFVJRGQ7MjszNEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MTRFO0s7MjQ7X0NQQ2liQ29ubmVjdG9yU291cmNlS2V5RDtLOzY7Q1AkVUlEZDsyOzI0RTtLOzI5O19DUENpYkNvbm5lY3RvckRlc3RpbmF0aW9uS2V5RDtLOzY7Q1AkVUlEZDsyOzIwRTtLOzIzO19DUENpYkNvbm5lY3RvckxhYmVsS2V5RDtLOzY7Q1AkVUlEZDsyOzM1RTtLOzMxO0NQQ2liQmluZGluZ0Nvbm5lY3RvckJpbmRpbmdLZXlEO0s7NjtDUCRVSURkOzI7MzZFO0s7MzE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9yS2V5UGF0aEtleUQ7Szs2O0NQJFVJRGQ7MjszN0U7SzszMTtDUENpYkJpbmRpbmdDb25uZWN0b3JPcHRpb25zS2V5RDtLOzY7Q1AkVUlEZDsyOzM4RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxNEU7SzsyNDtfQ1BDaWJDb25uZWN0b3JTb3VyY2VLZXlEO0s7NjtDUCRVSURkOzI7MjRFO0s7Mjk7X0NQQ2liQ29ubmVjdG9yRGVzdGluYXRpb25LZXlEO0s7NjtDUCRVSURkOzI7MjBFO0s7MjM7X0NQQ2liQ29ubmVjdG9yTGFiZWxLZXlEO0s7NjtDUCRVSURkOzI7MzlFO0s7MzE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9yQmluZGluZ0tleUQ7Szs2O0NQJFVJRGQ7Mjs0MEU7SzszMTtDUENpYkJpbmRpbmdDb25uZWN0b3JLZXlQYXRoS2V5RDtLOzY7Q1AkVUlEZDsyOzQxRTtLOzMxO0NQQ2liQmluZGluZ0Nvbm5lY3Rvck9wdGlvbnNLZXlEO0s7NjtDUCRVSURkOzI7NDJFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzE0RTtLOzI0O19DUENpYkNvbm5lY3RvclNvdXJjZUtleUQ7Szs2O0NQJFVJRGQ7MjsyMkU7SzsyOTtfQ1BDaWJDb25uZWN0b3JEZXN0aW5hdGlvbktleUQ7Szs2O0NQJFVJRGQ7MjsyMEU7SzsyMztfQ1BDaWJDb25uZWN0b3JMYWJlbEtleUQ7Szs2O0NQJFVJRGQ7Mjs0M0U7SzszMTtDUENpYkJpbmRpbmdDb25uZWN0b3JCaW5kaW5nS2V5RDtLOzY7Q1AkVUlEZDsyOzMxRTtLOzMxO0NQQ2liQmluZGluZ0Nvbm5lY3RvcktleVBhdGhLZXlEO0s7NjtDUCRVSURkOzI7NDFFO0s7MzE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9yT3B0aW9uc0tleUQ7Szs2O0NQJFVJRGQ7Mjs0NEU7RTtEO0s7MTA7JGNsYXNzbmFtZVM7MTU7Q1BUYWJsZUNlbGxWaWV3Szs4OyRjbGFzc2VzQTtTOzE1O0NQVGFibGVDZWxsVmlld1M7NjtDUFZpZXdTOzExO0NQUmVzcG9uZGVyUzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxOUU7SzsxODtDUFJlc3BvbmRlck1lbnVLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzsxMjtDUFZpZXdUYWdLZXlEO0s7NjtDUCRVSURkOzI7NDVFO0s7MTQ7Q1BWaWV3RnJhbWVLZXlEO0s7NjtDUCRVSURkOzI7NDZFO0s7MTU7Q1BWaWV3Qm91bmRzS2V5RDtLOzY7Q1AkVUlEZDsyOzQ2RTtLOzE3O0NQVmlld1N1YnZpZXdzS2V5RDtLOzY7Q1AkVUlEZDsyOzQ3RTtLOzIyO0NQVmlld0F1dG9yZXNpemluZ01hc2tEO0s7NjtDUCRVSURkOzI7NDhFO0s7MTk7Q1BWaWV3VGhlbWVDbGFzc0tleUQ7Szs2O0NQJFVJRGQ7MTswRTtLOzE5O0NQVmlld1RoZW1lU3RhdGVLZXlEO0s7NjtDUCRVSURkOzI7NDlFO0s7MjA7Q1BSZXVzZUlkZW50aWZpZXJLZXlEO0s7NjtDUCRVSURkOzI7NTBFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzEwO0NQQ2hlY2tCb3hLOzg7JGNsYXNzZXNBO1M7MTA7Q1BDaGVja0JveFM7ODtDUEJ1dHRvblM7OTtDUENvbnRyb2xTOzY7Q1BWaWV3UzsxMTtDUFJlc3BvbmRlclM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MjFFO0s7Mjc7Q1BSZXNwb25kZXJOZXh0UmVzcG9uZGVyS2V5RDtLOzY7Q1AkVUlEZDsyOzIwRTtLOzE4O0NQUmVzcG9uZGVyTWVudUtleUQ7Szs2O0NQJFVJRGQ7MTswRTtLOzEyO0NQVmlld1RhZ0tleUQ7Szs2O0NQJFVJRGQ7Mjs0NUU7SzsxNDtDUFZpZXdGcmFtZUtleUQ7Szs2O0NQJFVJRGQ7Mjs1MUU7SzsxNTtDUFZpZXdCb3VuZHNLZXlEO0s7NjtDUCRVSURkOzI7NTJFO0s7MTg7Q1BWaWV3U3VwZXJ2aWV3S2V5RDtLOzY7Q1AkVUlEZDsyOzIwRTtLOzIyO0NQVmlld0F1dG9yZXNpemluZ01hc2tEO0s7NjtDUCRVSURkOzI7NTNFO0s7MTk7Q1BWaWV3VGhlbWVDbGFzc0tleUQ7Szs2O0NQJFVJRGQ7Mjs1NEU7SzsxOTtDUFZpZXdUaGVtZVN0YXRlS2V5RDtLOzY7Q1AkVUlEZDsyOzU1RTtLOzExOyRhYWxpZ25tZW50RDtLOzY7Q1AkVUlEZDsyOzQ1RTtLOzE3OyRhbGluZS1icmVhay1tb2RlRDtLOzY7Q1AkVUlEZDsyOzQ1RTtLOzY7JGFmb250RDtLOzY7Q1AkVUlEZDsyOzU3RTtLOzE2OyRhaW1hZ2UtcG9zaXRpb25EO0s7NjtDUCRVSURkOzI7NThFO0s7MTc7Q1BDb250cm9sVmFsdWVLZXlEO0s7NjtDUCRVSURkOzI7NTlFO0s7MjQ7Q1BDb250cm9sU2VuZEFjdGlvbk9uS2V5RDtLOzY7Q1AkVUlEZDsyOzYwRTtLOzE2O0NQQnV0dG9uVGl0bGVLZXlEO0s7NjtDUCRVSURkOzI7NjFFO0s7MjU7Q1BCdXR0b25BbHRlcm5hdGVUaXRsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs2MkU7SzsyNztDUEJ1dHRvbkFsbG93c01peGVkU3RhdGVLZXlEO0s7NjtDUCRVSURkOzI7NjNFO0s7MjM7Q1BCdXR0b25IaWdobGlnaHRzQnlLZXlEO0s7NjtDUCRVSURkOzI7NTlFO0s7MjM7Q1BCdXR0b25TaG93c1N0YXRlQnlLZXlEO0s7NjtDUCRVSURkOzI7NTlFO0s7MzI7Q1BCdXR0b25JbWFnZURpbXNXaGVuRGlzYWJsZWRLZXlEO0s7NjtDUCRVSURkOzI7NjRFO0s7MjQ7Q1BCdXR0b25JbWFnZVBvc2l0aW9uS2V5RDtLOzY7Q1AkVUlEZDsyOzU4RTtLOzI4O0NQQnV0dG9uS2V5RXF1aXZhbGVudE1hc2tLZXlEO0s7NjtDUCRVSURkOzI7NDVFO0s7MjQ7Q1BCdXR0b25QZXJpb2RpY0RlbGF5S2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7Mjc7Q1BCdXR0b25QZXJpb2RpY0ludGVydmFsS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzExO0NQSW1hZ2VWaWV3Szs4OyRjbGFzc2VzQTtTOzExO0NQSW1hZ2VWaWV3Uzs5O0NQQ29udHJvbFM7NjtDUFZpZXdTOzExO0NQUmVzcG9uZGVyUzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsyM0U7SzsyNztDUFJlc3BvbmRlck5leHRSZXNwb25kZXJLZXlEO0s7NjtDUCRVSURkOzI7MjBFO0s7MTg7Q1BSZXNwb25kZXJNZW51S2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MTI7Q1BWaWV3VGFnS2V5RDtLOzY7Q1AkVUlEZDsyOzQ1RTtLOzE0O0NQVmlld0ZyYW1lS2V5RDtLOzY7Q1AkVUlEZDsyOzY1RTtLOzE1O0NQVmlld0JvdW5kc0tleUQ7Szs2O0NQJFVJRGQ7Mjs2NkU7SzsxODtDUFZpZXdTdXBlcnZpZXdLZXlEO0s7NjtDUCRVSURkOzI7MjBFO0s7MjI7Q1BWaWV3QXV0b3Jlc2l6aW5nTWFza0Q7Szs2O0NQJFVJRGQ7Mjs2N0U7SzsxOTtDUFZpZXdUaGVtZUNsYXNzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MTk7Q1BWaWV3VGhlbWVTdGF0ZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0OUU7SzsxMTskYWFsaWdubWVudEQ7Szs2O0NQJFVJRGQ7Mjs0NUU7SzsxNzskYWxpbmUtYnJlYWstbW9kZUQ7Szs2O0NQJFVJRGQ7Mjs0NUU7SzsxNTskYWltYWdlLXNjYWxpbmdEO0s7NjtDUCRVSURkOzI7NjhFO0s7MjQ7Q1BDb250cm9sU2VuZEFjdGlvbk9uS2V5RDtLOzY7Q1AkVUlEZDsyOzYwRTtLOzIzO0NQSW1hZ2VWaWV3SGFzU2hhZG93S2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7Mjg7Q1BJbWFnZVZpZXdJbWFnZUFsaWdubWVudEtleUQ7Szs2O0NQJFVJRGQ7Mjs0NUU7RTtEO0s7MTA7JGNsYXNzbmFtZVM7MTE7Q1BUZXh0RmllbGRLOzg7JGNsYXNzZXNBO1M7MTE7Q1BUZXh0RmllbGRTOzk7Q1BDb250cm9sUzs2O0NQVmlld1M7MTE7Q1BSZXNwb25kZXJTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzI1RTtLOzI3O0NQUmVzcG9uZGVyTmV4dFJlc3BvbmRlcktleUQ7Szs2O0NQJFVJRGQ7MjsyMEU7SzsxODtDUFJlc3BvbmRlck1lbnVLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzsxMjtDUFZpZXdUYWdLZXlEO0s7NjtDUCRVSURkOzI7NDVFO0s7MTQ7Q1BWaWV3RnJhbWVLZXlEO0s7NjtDUCRVSURkOzI7NjlFO0s7MTU7Q1BWaWV3Qm91bmRzS2V5RDtLOzY7Q1AkVUlEZDsyOzcwRTtLOzE4O0NQVmlld1N1cGVydmlld0tleUQ7Szs2O0NQJFVJRGQ7MjsyMEU7SzsyMjtDUFZpZXdBdXRvcmVzaXppbmdNYXNrRDtLOzY7Q1AkVUlEZDsyOzcxRTtLOzE5O0NQVmlld1RoZW1lQ2xhc3NLZXlEO0s7NjtDUCRVSURkOzI7NzJFO0s7MTk7Q1BWaWV3VGhlbWVTdGF0ZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0OUU7SzsxMTskYWFsaWdubWVudEQ7Szs2O0NQJFVJRGQ7Mjs2MEU7SzsxNzskYWxpbmUtYnJlYWstbW9kZUQ7Szs2O0NQJFVJRGQ7Mjs2MEU7Szs2OyRhZm9udEQ7Szs2O0NQJFVJRGQ7Mjs1N0U7SzszNTtDUENvbnRyb2xTZW5kc0FjdGlvbk9uRW5kRWRpdGluZ0tleUQ7Szs2O0NQJFVJRGQ7Mjs2NEU7SzsxNztDUENvbnRyb2xWYWx1ZUtleUQ7Szs2O0NQJFVJRGQ7Mjs3M0U7SzsyNDtDUENvbnRyb2xTZW5kQWN0aW9uT25LZXlEO0s7NjtDUCRVSURkOzI7NjBFO0s7MjQ7Q1BUZXh0RmllbGRJc0VkaXRhYmxlS2V5RDtLOzY7Q1AkVUlEZDsyOzYzRTtLOzI2O0NQVGV4dEZpZWxkSXNTZWxlY3RhYmxlS2V5RDtLOzY7Q1AkVUlEZDsyOzYzRTtLOzI5O0NQVGV4dEZpZWxkRHJhd3NCYWNrZ3JvdW5kS2V5RDtLOzY7Q1AkVUlEZDsyOzYzRTtLOzI5O0NQVGV4dEZpZWxkQmFja2dyb3VuZENvbG9yS2V5RDtLOzY7Q1AkVUlEZDsyOzc1RTtLOzI3O0NQVGV4dEZpZWxkTGluZUJyZWFrTW9kZUtleUQ7Szs2O0NQJFVJRGQ7Mjs2MEU7SzsyMztDUFRleHRGaWVsZEFsaWdubWVudEtleUQ7Szs2O0NQJFVJRGQ7Mjs2MEU7SzszMTtDUFRleHRGaWVsZFBsYWNlaG9sZGVyU3RyaW5nS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzEwRTtLOzI3O19DUENpYkN1c3RvbU9iamVjdENsYXNzTmFtZUQ7Szs2O0NQJFVJRGQ7Mjs3NkU7RTtTOzg7Q1BPYmplY3REO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtFO0U7UzsyOTt2YWx1ZTogb2JqZWN0VmFsdWUuaW1hZ2UubmFtZVM7NTt2YWx1ZVM7MjI7b2JqZWN0VmFsdWUuaW1hZ2UubmFtZUQ7SzsxMDskY2xhc3NuYW1lUzsxMjtDUERpY3Rpb25hcnlLOzg7JGNsYXNzZXNBO1M7MTI7Q1BEaWN0aW9uYXJ5Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjszM0U7SzsxMDtDUC5vYmplY3RzRDtLOzI4O0NQUmFpc2VzRm9yTm90QXBwbGljYWJsZUtleXNEO0s7NjtDUCRVSURkOzI7NjNFO0s7Mzg7Q1BBbGxvd3NFZGl0aW5nTXVsdGlwbGVWYWx1ZXNTZWxlY3Rpb25EO0s7NjtDUCRVSURkOzI7NjNFO0U7RTtTOzMyO3ZhbHVlVVJMOiBvYmplY3RWYWx1ZS5pbWFnZS5wYXRoUzs4O3ZhbHVlVVJMUzsyMjtvYmplY3RWYWx1ZS5pbWFnZS5wYXRoRDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzMzRTtLOzEwO0NQLm9iamVjdHNEO0s7Mjg7Q1BSYWlzZXNGb3JOb3RBcHBsaWNhYmxlS2V5c0Q7Szs2O0NQJFVJRGQ7Mjs2M0U7SzsyNjtDUENvbmRpdGlvbmFsbHlTZXRzRW5hYmxlZEQ7Szs2O0NQJFVJRGQ7Mjs2M0U7SzszODtDUEFsbG93c0VkaXRpbmdNdWx0aXBsZVZhbHVlc1NlbGVjdGlvbkQ7Szs2O0NQJFVJRGQ7Mjs2M0U7RTtFO1M7MjQ7aGlkZGVuOiBvYmplY3RWYWx1ZS5zaG93Uzs2O2hpZGRlblM7MTY7b2JqZWN0VmFsdWUuc2hvd0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjszM0U7SzsxMDtDUC5vYmplY3RzRDtLOzIyO0NQVmFsdWVUcmFuc2Zvcm1lck5hbWVEO0s7NjtDUCRVSURkOzI7NzdFO0U7RTtTOzIzO3ZhbHVlOiBvYmplY3RWYWx1ZS5zaG93RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzMzRTtLOzEwO0NQLm9iamVjdHNEO0U7RTtkOzE7MFM7MTk7e3swLCAwfSwgezIzNCwgOTF9fUQ7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsyNkU7RDtLOzY7Q1AkVUlEZDsyOzI0RTtEO0s7NjtDUCRVSURkOzI7MjJFO0U7RTtkOzI7NDVTOzY7bm9ybWFsUzs2O3BlcnNvblM7MTk7e3sxLCAyN30sIHs2MCwgMjF9fVM7MTg7e3swLCAwfSwgezYwLCAyMX19ZDsyOzM2Uzs5O2NoZWNrLWJveFM7ODtzZWxlY3RlZEQ7SzsxMDskY2xhc3NuYW1lUzs2O0NQRm9udEs7ODskY2xhc3Nlc0E7Uzs2O0NQRm9udFM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7NTZFO0s7MTM7Q1BGb250TmFtZUtleUQ7Szs2O0NQJFVJRGQ7Mjs3OEU7SzsxMztDUEZvbnRTaXplS2V5RDtLOzY7Q1AkVUlEZDsyOzc5RTtLOzE1O0NQRm9udElzQm9sZEtleUQ7Szs2O0NQJFVJRGQ7Mjs2M0U7SzsxNztDUEZvbnRJc0l0YWxpY0tleUQ7Szs2O0NQJFVJRGQ7Mjs2M0U7SzsxNztDUEZvbnRJc1N5c3RlbUtleUQ7Szs2O0NQJFVJRGQ7Mjs2NEU7RTtkOzE7MmQ7MTsxZDsxOzRTOzQ7c2hvd1M7MDtGO1Q7UzsyMDt7ezE0NiwgMH0sIHs4OCwgODV9fVM7MTg7e3swLCAwfSwgezg4LCA4NX19ZDsyOzU3ZDsxOzNTOzE4O3t7MywgM30sIHs3NiwgMjJ9fVM7MTg7e3swLCAwfSwgezc2LCAyMn19ZDsyOzM4Uzs5O3RleHRmaWVsZFM7NDtOYW1lRDtLOzEwOyRjbGFzc25hbWVTOzc7Q1BDb2xvcks7ODskY2xhc3Nlc0E7Uzs3O0NQQ29sb3JTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzc0RTtLOzIwO0NQQ29sb3JDb21wb25lbnRzS2V5RDtLOzY7Q1AkVUlEZDsyOzgwRTtFO1M7MTM7Q1BBcHBsaWNhdGlvblM7MTU7Q1BOZWdhdGVCb29sZWFuUzsyODtfQ1BGb250U3lzdGVtRmFjZVBsYWNlaG9sZGVyZDsyOy0xRDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RDtLOzY7Q1AkVUlEZDsyOzU5RTtEO0s7NjtDUCRVSURkOzI7NTlFO0Q7Szs2O0NQJFVJRGQ7Mjs1OUU7RDtLOzY7Q1AkVUlEZDsyOzU5RTtFO0U7RTtLOzk7JGFyY2hpdmVyUzsxNTtDUEtleWVkQXJjaGl2ZXJLOzg7JHZlcnNpb25TOzY7MTAwMDAwRTs=S;7408;MjgwTlBMSVNUOzEuMDtEO0s7NDskdG9wRDtLOzE4O0NQQ2liT2JqZWN0RGF0YUtleUQ7Szs2O0NQJFVJRGQ7MTsyRTtFO0s7ODskb2JqZWN0c0E7Uzs1OyRudWxsRDtLOzEwOyRjbGFzc25hbWVTOzE2O19DUENpYk9iamVjdERhdGFLOzg7JGNsYXNzZXNBO1M7MTY7X0NQQ2liT2JqZWN0RGF0YVM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7MUU7SzsyODtfQ1BDaWJPYmplY3REYXRhTmFtZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YU5hbWVzVmFsdWVzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzI7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNWYWx1ZXNLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzszMDtfQ1BDaWJPYmplY3REYXRhQ29ubmVjdGlvbnNLZXlEO0s7NjtDUCRVSURkOzE7NEU7SzsyODtfQ1BDaWJPYmplY3REYXRhRnJhbWV3b3JrS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MjY7X0NQQ2liT2JqZWN0RGF0YU5leHRPaWRLZXlEO0s7NjtDUCRVSURkOzE7NUU7SzszMDtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c0tleXNLZXlEO0s7NjtDUCRVSURkOzE7NkU7SzszMjtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c1ZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs3RTtLOzI2O19DUENpYk9iamVjdERhdGFPaWRLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzhFO0s7Mjg7X0NQQ2liT2JqZWN0RGF0YU9pZFZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs5RTtLOzI4O19DUENpYk9iamVjdERhdGFGaWxlT3duZXJLZXlEO0s7NjtDUCRVSURkOzI7MTFFO0s7MzM7X0NQQ2liT2JqZWN0RGF0YVZpc2libGVXaW5kb3dzS2V5RDtLOzY7Q1AkVUlEZDsyOzEzRTtFO0Q7SzsxMDskY2xhc3NuYW1lUzs3O0NQQXJyYXlLOzg7JGNsYXNzZXNBO1M7NztDUEFycmF5Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsxNUU7RDtLOzY7Q1AkVUlEZDsyOzE3RTtFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsxOUU7RDtLOzY7Q1AkVUlEZDsyOzIxRTtEO0s7NjtDUCRVSURkOzE7MEU7RDtLOzY7Q1AkVUlEZDsyOzIyRTtFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RDtLOzY7Q1AkVUlEZDsyOzExRTtEO0s7NjtDUCRVSURkOzI7MTlFO0Q7Szs2O0NQJFVJRGQ7MjsyMUU7RDtLOzY7Q1AkVUlEZDsyOzExRTtFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0U7RTtEO0s7MTA7JGNsYXNzbmFtZVM7MTg7X0NQQ2liQ3VzdG9tT2JqZWN0Szs4OyRjbGFzc2VzQTtTOzE4O19DUENpYkN1c3RvbU9iamVjdFM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MTBFO0s7Mjc7X0NQQ2liQ3VzdG9tT2JqZWN0Q2xhc3NOYW1lRDtLOzY7Q1AkVUlEZDsyOzIzRTtFO0Q7SzsxMDskY2xhc3NuYW1lUzs1O0NQU2V0Szs4OyRjbGFzc2VzQTtTOzU7Q1BTZXRTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzEyRTtLOzE1O0NQU2V0T2JqZWN0c0tleUQ7Szs2O0NQJFVJRGQ7MjsyNEU7RTtEO0s7MTA7JGNsYXNzbmFtZVM7MjE7Q1BDaWJDb250cm9sQ29ubmVjdG9ySzs4OyRjbGFzc2VzQTtTOzIxO0NQQ2liQ29udHJvbENvbm5lY3RvclM7MTQ7Q1BDaWJDb25uZWN0b3JTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzE0RTtLOzI0O19DUENpYkNvbm5lY3RvclNvdXJjZUtleUQ7Szs2O0NQJFVJRGQ7MjsyMUU7SzsyOTtfQ1BDaWJDb25uZWN0b3JEZXN0aW5hdGlvbktleUQ7Szs2O0NQJFVJRGQ7MjsxMUU7SzsyMztfQ1BDaWJDb25uZWN0b3JMYWJlbEtleUQ7Szs2O0NQJFVJRGQ7MjsyNUU7RTtEO0s7MTA7JGNsYXNzbmFtZVM7MjE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9ySzs4OyRjbGFzc2VzQTtTOzIxO0NQQ2liQmluZGluZ0Nvbm5lY3RvclM7MTQ7Q1BDaWJDb25uZWN0b3JTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzE2RTtLOzI0O19DUENpYkNvbm5lY3RvclNvdXJjZUtleUQ7Szs2O0NQJFVJRGQ7MjsyMUU7SzsyOTtfQ1BDaWJDb25uZWN0b3JEZXN0aW5hdGlvbktleUQ7Szs2O0NQJFVJRGQ7MjsxOUU7SzsyMztfQ1BDaWJDb25uZWN0b3JMYWJlbEtleUQ7Szs2O0NQJFVJRGQ7MjsyNkU7SzszMTtDUENpYkJpbmRpbmdDb25uZWN0b3JCaW5kaW5nS2V5RDtLOzY7Q1AkVUlEZDsyOzI3RTtLOzMxO0NQQ2liQmluZGluZ0Nvbm5lY3RvcktleVBhdGhLZXlEO0s7NjtDUCRVSURkOzI7MjhFO0s7MzE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9yT3B0aW9uc0tleUQ7Szs2O0NQJFVJRGQ7MjszMEU7RTtEO0s7MTA7JGNsYXNzbmFtZVM7MTU7Q1BUYWJsZUNlbGxWaWV3Szs4OyRjbGFzc2VzQTtTOzE1O0NQVGFibGVDZWxsVmlld1M7NjtDUFZpZXdTOzExO0NQUmVzcG9uZGVyUzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxOEU7SzsxODtDUFJlc3BvbmRlck1lbnVLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzsxMjtDUFZpZXdUYWdLZXlEO0s7NjtDUCRVSURkOzI7MzFFO0s7MTQ7Q1BWaWV3RnJhbWVLZXlEO0s7NjtDUCRVSURkOzI7MzJFO0s7MTU7Q1BWaWV3Qm91bmRzS2V5RDtLOzY7Q1AkVUlEZDsyOzMyRTtLOzE3O0NQVmlld1N1YnZpZXdzS2V5RDtLOzY7Q1AkVUlEZDsyOzMzRTtLOzIyO0NQVmlld0F1dG9yZXNpemluZ01hc2tEO0s7NjtDUCRVSURkOzI7MzRFO0s7MTk7Q1BWaWV3VGhlbWVDbGFzc0tleUQ7Szs2O0NQJFVJRGQ7MTswRTtLOzE5O0NQVmlld1RoZW1lU3RhdGVLZXlEO0s7NjtDUCRVSURkOzI7MzVFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzExO0NQVGV4dEZpZWxkSzs4OyRjbGFzc2VzQTtTOzExO0NQVGV4dEZpZWxkUzs5O0NQQ29udHJvbFM7NjtDUFZpZXdTOzExO0NQUmVzcG9uZGVyUzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsyMEU7SzsyNztDUFJlc3BvbmRlck5leHRSZXNwb25kZXJLZXlEO0s7NjtDUCRVSURkOzI7MTlFO0s7MTg7Q1BSZXNwb25kZXJNZW51S2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MTI7Q1BWaWV3VGFnS2V5RDtLOzY7Q1AkVUlEZDsyOzM2RTtLOzE0O0NQVmlld0ZyYW1lS2V5RDtLOzY7Q1AkVUlEZDsyOzM3RTtLOzE1O0NQVmlld0JvdW5kc0tleUQ7Szs2O0NQJFVJRGQ7MjszOEU7SzsxODtDUFZpZXdTdXBlcnZpZXdLZXlEO0s7NjtDUCRVSURkOzI7MTlFO0s7MjI7Q1BWaWV3QXV0b3Jlc2l6aW5nTWFza0Q7Szs2O0NQJFVJRGQ7MjszOUU7SzsxOTtDUFZpZXdUaGVtZUNsYXNzS2V5RDtLOzY7Q1AkVUlEZDsyOzQwRTtLOzE5O0NQVmlld1RoZW1lU3RhdGVLZXlEO0s7NjtDUCRVSURkOzI7NDFFO0s7MTE7JGFhbGlnbm1lbnREO0s7NjtDUCRVSURkOzI7NDJFO0s7MTc7JGFsaW5lLWJyZWFrLW1vZGVEO0s7NjtDUCRVSURkOzI7NDJFO0s7NjskYWZvbnREO0s7NjtDUCRVSURkOzI7NDRFO0s7MzU7Q1BDb250cm9sU2VuZHNBY3Rpb25PbkVuZEVkaXRpbmdLZXlEO0s7NjtDUCRVSURkOzI7NDVFO0s7MTc7Q1BDb250cm9sVmFsdWVLZXlEO0s7NjtDUCRVSURkOzI7NDZFO0s7MjQ7Q1BDb250cm9sU2VuZEFjdGlvbk9uS2V5RDtLOzY7Q1AkVUlEZDsyOzQyRTtLOzI0O0NQVGV4dEZpZWxkSXNFZGl0YWJsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0NUU7SzsyNjtDUFRleHRGaWVsZElzU2VsZWN0YWJsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0NUU7SzsyOTtDUFRleHRGaWVsZERyYXdzQmFja2dyb3VuZEtleUQ7Szs2O0NQJFVJRGQ7Mjs0N0U7SzsyOTtDUFRleHRGaWVsZEJhY2tncm91bmRDb2xvcktleUQ7Szs2O0NQJFVJRGQ7Mjs0OUU7SzsyNztDUFRleHRGaWVsZExpbmVCcmVha01vZGVLZXlEO0s7NjtDUCRVSURkOzI7NDJFO0s7MjM7Q1BUZXh0RmllbGRBbGlnbm1lbnRLZXlEO0s7NjtDUCRVSURkOzI7NDJFO0s7MzE7Q1BUZXh0RmllbGRQbGFjZWhvbGRlclN0cmluZ0tleUQ7Szs2O0NQJFVJRGQ7MTswRTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxMEU7SzsyNztfQ1BDaWJDdXN0b21PYmplY3RDbGFzc05hbWVEO0s7NjtDUCRVSURkOzI7NTBFO0U7Uzs4O0NQT2JqZWN0RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RTtFO1M7Mjc7X3RleHRGaWVsZE5vdEJlemVsZWRBY3Rpb246UzsyNDt2YWx1ZTogb2JqZWN0VmFsdWUudmFsdWVTOzU7dmFsdWVTOzE3O29iamVjdFZhbHVlLnZhbHVlRDtLOzEwOyRjbGFzc25hbWVTOzEyO0NQRGljdGlvbmFyeUs7ODskY2xhc3Nlc0E7UzsxMjtDUERpY3Rpb25hcnlTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzI5RTtLOzEwO0NQLm9iamVjdHNEO0U7RTtkOzE7MFM7MTk7e3swLCAwfSwgezE0NywgODd9fUQ7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsyMUU7RTtFO2Q7Mjs0NVM7Njtub3JtYWxkOzM7NjY2UzsxOTt7ezMsIDh9LCB7MTQxLCAyMn19UzsxOTt7ezAsIDB9LCB7MTQxLCAyMn19ZDsyOzM0Uzs5O3RleHRmaWVsZFM7ODtlZGl0YWJsZWQ7MTs0RDtLOzEwOyRjbGFzc25hbWVTOzY7Q1BGb250Szs4OyRjbGFzc2VzQTtTOzY7Q1BGb250Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7Mjs0M0U7SzsxMztDUEZvbnROYW1lS2V5RDtLOzY7Q1AkVUlEZDsyOzUxRTtLOzEzO0NQRm9udFNpemVLZXlEO0s7NjtDUCRVSURkOzI7NTJFO0s7MTU7Q1BGb250SXNCb2xkS2V5RDtLOzY7Q1AkVUlEZDsyOzQ3RTtLOzE3O0NQRm9udElzSXRhbGljS2V5RDtLOzY7Q1AkVUlEZDsyOzQ3RTtLOzE3O0NQRm9udElzU3lzdGVtS2V5RDtLOzY7Q1AkVUlEZDsyOzQ1RTtFO1Q7UzsxMztFZGl0YWJsZSBUZXh0RjtEO0s7MTA7JGNsYXNzbmFtZVM7NztDUENvbG9ySzs4OyRjbGFzc2VzQTtTOzc7Q1BDb2xvclM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7NDhFO0s7MjA7Q1BDb2xvckNvbXBvbmVudHNLZXlEO0s7NjtDUCRVSURkOzI7NTNFO0U7UzsxMztDUEFwcGxpY2F0aW9uUzsyODtfQ1BGb250U3lzdGVtRmFjZVBsYWNlaG9sZGVyZDsyOy0xRDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RDtLOzY7Q1AkVUlEZDsyOzU0RTtEO0s7NjtDUCRVSURkOzI7NTRFO0Q7Szs2O0NQJFVJRGQ7Mjs1NEU7RDtLOzY7Q1AkVUlEZDsyOzU1RTtFO0U7ZjsxODswLjY4NjI3NDUwOTgwMzkyMTZkOzE7MUU7Szs5OyRhcmNoaXZlclM7MTU7Q1BLZXllZEFyY2hpdmVySzs4OyR2ZXJzaW9uUzs2OzEwMDAwMEU7S;8020;MjgwTlBMSVNUOzEuMDtEO0s7NDskdG9wRDtLOzE4O0NQQ2liT2JqZWN0RGF0YUtleUQ7Szs2O0NQJFVJRGQ7MTsyRTtFO0s7ODskb2JqZWN0c0E7Uzs1OyRudWxsRDtLOzEwOyRjbGFzc25hbWVTOzE2O19DUENpYk9iamVjdERhdGFLOzg7JGNsYXNzZXNBO1M7MTY7X0NQQ2liT2JqZWN0RGF0YVM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7MUU7SzsyODtfQ1BDaWJPYmplY3REYXRhTmFtZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YU5hbWVzVmFsdWVzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzI7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNWYWx1ZXNLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzszMDtfQ1BDaWJPYmplY3REYXRhQ29ubmVjdGlvbnNLZXlEO0s7NjtDUCRVSURkOzE7NEU7SzsyODtfQ1BDaWJPYmplY3REYXRhRnJhbWV3b3JrS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MjY7X0NQQ2liT2JqZWN0RGF0YU5leHRPaWRLZXlEO0s7NjtDUCRVSURkOzE7NUU7SzszMDtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c0tleXNLZXlEO0s7NjtDUCRVSURkOzE7NkU7SzszMjtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c1ZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs3RTtLOzI2O19DUENpYk9iamVjdERhdGFPaWRLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzhFO0s7Mjg7X0NQQ2liT2JqZWN0RGF0YU9pZFZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs5RTtLOzI4O19DUENpYk9iamVjdERhdGFGaWxlT3duZXJLZXlEO0s7NjtDUCRVSURkOzI7MTFFO0s7MzM7X0NQQ2liT2JqZWN0RGF0YVZpc2libGVXaW5kb3dzS2V5RDtLOzY7Q1AkVUlEZDsyOzEzRTtFO0Q7SzsxMDskY2xhc3NuYW1lUzs3O0NQQXJyYXlLOzg7JGNsYXNzZXNBO1M7NztDUEFycmF5Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsxNUU7RDtLOzY7Q1AkVUlEZDsyOzE3RTtEO0s7NjtDUCRVSURkOzI7MThFO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RDtLOzY7Q1AkVUlEZDsyOzIwRTtEO0s7NjtDUCRVSURkOzI7MjJFO0Q7Szs2O0NQJFVJRGQ7MTswRTtEO0s7NjtDUCRVSURkOzI7MjNFO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtEO0s7NjtDUCRVSURkOzI7MTFFO0Q7Szs2O0NQJFVJRGQ7MjsyMEU7RDtLOzY7Q1AkVUlEZDsyOzIyRTtEO0s7NjtDUCRVSURkOzI7MTFFO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RTtFO0Q7SzsxMDskY2xhc3NuYW1lUzsxODtfQ1BDaWJDdXN0b21PYmplY3RLOzg7JGNsYXNzZXNBO1M7MTg7X0NQQ2liQ3VzdG9tT2JqZWN0Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxMEU7SzsyNztfQ1BDaWJDdXN0b21PYmplY3RDbGFzc05hbWVEO0s7NjtDUCRVSURkOzI7MjRFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzU7Q1BTZXRLOzg7JGNsYXNzZXNBO1M7NTtDUFNldFM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MTJFO0s7MTU7Q1BTZXRPYmplY3RzS2V5RDtLOzY7Q1AkVUlEZDsyOzI1RTtFO0Q7SzsxMDskY2xhc3NuYW1lUzsyMTtDUENpYkNvbnRyb2xDb25uZWN0b3JLOzg7JGNsYXNzZXNBO1M7MjE7Q1BDaWJDb250cm9sQ29ubmVjdG9yUzsxNDtDUENpYkNvbm5lY3RvclM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MTRFO0s7MjQ7X0NQQ2liQ29ubmVjdG9yU291cmNlS2V5RDtLOzY7Q1AkVUlEZDsyOzIyRTtLOzI5O19DUENpYkNvbm5lY3RvckRlc3RpbmF0aW9uS2V5RDtLOzY7Q1AkVUlEZDsyOzExRTtLOzIzO19DUENpYkNvbm5lY3RvckxhYmVsS2V5RDtLOzY7Q1AkVUlEZDsyOzI2RTtFO0Q7SzsxMDskY2xhc3NuYW1lUzsyMTtDUENpYkJpbmRpbmdDb25uZWN0b3JLOzg7JGNsYXNzZXNBO1M7MjE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9yUzsxNDtDUENpYkNvbm5lY3RvclM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MTZFO0s7MjQ7X0NQQ2liQ29ubmVjdG9yU291cmNlS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7Mjk7X0NQQ2liQ29ubmVjdG9yRGVzdGluYXRpb25LZXlEO0s7NjtDUCRVSURkOzI7MjBFO0s7MjM7X0NQQ2liQ29ubmVjdG9yTGFiZWxLZXlEO0s7NjtDUCRVSURkOzI7MjdFO0s7MzE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9yQmluZGluZ0tleUQ7Szs2O0NQJFVJRGQ7MjsyOEU7SzszMTtDUENpYkJpbmRpbmdDb25uZWN0b3JLZXlQYXRoS2V5RDtLOzY7Q1AkVUlEZDsyOzI5RTtLOzMxO0NQQ2liQmluZGluZ0Nvbm5lY3Rvck9wdGlvbnNLZXlEO0s7NjtDUCRVSURkOzI7MzFFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzE2RTtLOzI0O19DUENpYkNvbm5lY3RvclNvdXJjZUtleUQ7Szs2O0NQJFVJRGQ7MjsyMkU7SzsyOTtfQ1BDaWJDb25uZWN0b3JEZXN0aW5hdGlvbktleUQ7Szs2O0NQJFVJRGQ7MjsyMEU7SzsyMztfQ1BDaWJDb25uZWN0b3JMYWJlbEtleUQ7Szs2O0NQJFVJRGQ7MjszMkU7SzszMTtDUENpYkJpbmRpbmdDb25uZWN0b3JCaW5kaW5nS2V5RDtLOzY7Q1AkVUlEZDsyOzI4RTtLOzMxO0NQQ2liQmluZGluZ0Nvbm5lY3RvcktleVBhdGhLZXlEO0s7NjtDUCRVSURkOzI7MzNFO0s7MzE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9yT3B0aW9uc0tleUQ7Szs2O0NQJFVJRGQ7MjszNEU7RTtEO0s7MTA7JGNsYXNzbmFtZVM7MTU7Q1BUYWJsZUNlbGxWaWV3Szs4OyRjbGFzc2VzQTtTOzE1O0NQVGFibGVDZWxsVmlld1M7NjtDUFZpZXdTOzExO0NQUmVzcG9uZGVyUzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxOUU7SzsxODtDUFJlc3BvbmRlck1lbnVLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzsxMjtDUFZpZXdUYWdLZXlEO0s7NjtDUCRVSURkOzI7MzVFO0s7MTQ7Q1BWaWV3RnJhbWVLZXlEO0s7NjtDUCRVSURkOzI7MzZFO0s7MTU7Q1BWaWV3Qm91bmRzS2V5RDtLOzY7Q1AkVUlEZDsyOzM2RTtLOzE3O0NQVmlld1N1YnZpZXdzS2V5RDtLOzY7Q1AkVUlEZDsyOzM3RTtLOzIyO0NQVmlld0F1dG9yZXNpemluZ01hc2tEO0s7NjtDUCRVSURkOzI7MzhFO0s7MTk7Q1BWaWV3VGhlbWVDbGFzc0tleUQ7Szs2O0NQJFVJRGQ7MTswRTtLOzE5O0NQVmlld1RoZW1lU3RhdGVLZXlEO0s7NjtDUCRVSURkOzI7MzlFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzExO0NQVGV4dEZpZWxkSzs4OyRjbGFzc2VzQTtTOzExO0NQVGV4dEZpZWxkUzs5O0NQQ29udHJvbFM7NjtDUFZpZXdTOzExO0NQUmVzcG9uZGVyUzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsyMUU7SzsyNztDUFJlc3BvbmRlck5leHRSZXNwb25kZXJLZXlEO0s7NjtDUCRVSURkOzI7MjBFO0s7MTg7Q1BSZXNwb25kZXJNZW51S2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MTI7Q1BWaWV3VGFnS2V5RDtLOzY7Q1AkVUlEZDsyOzM1RTtLOzE0O0NQVmlld0ZyYW1lS2V5RDtLOzY7Q1AkVUlEZDsyOzQwRTtLOzE1O0NQVmlld0JvdW5kc0tleUQ7Szs2O0NQJFVJRGQ7Mjs0MUU7SzsxODtDUFZpZXdTdXBlcnZpZXdLZXlEO0s7NjtDUCRVSURkOzI7MjBFO0s7MjI7Q1BWaWV3QXV0b3Jlc2l6aW5nTWFza0Q7Szs2O0NQJFVJRGQ7Mjs0MkU7SzsxOTtDUFZpZXdUaGVtZUNsYXNzS2V5RDtLOzY7Q1AkVUlEZDsyOzQzRTtLOzE5O0NQVmlld1RoZW1lU3RhdGVLZXlEO0s7NjtDUCRVSURkOzI7NDRFO0s7MTE7JGFhbGlnbm1lbnREO0s7NjtDUCRVSURkOzI7NDVFO0s7MTc7JGFsaW5lLWJyZWFrLW1vZGVEO0s7NjtDUCRVSURkOzI7MzVFO0s7NjskYWZvbnREO0s7NjtDUCRVSURkOzI7NDdFO0s7MzU7Q1BDb250cm9sU2VuZHNBY3Rpb25PbkVuZEVkaXRpbmdLZXlEO0s7NjtDUCRVSURkOzI7NDhFO0s7MTc7Q1BDb250cm9sVmFsdWVLZXlEO0s7NjtDUCRVSURkOzI7NDlFO0s7MjQ7Q1BDb250cm9sU2VuZEFjdGlvbk9uS2V5RDtLOzY7Q1AkVUlEZDsyOzQ1RTtLOzI0O0NQVGV4dEZpZWxkSXNFZGl0YWJsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0OEU7SzsyNjtDUFRleHRGaWVsZElzU2VsZWN0YWJsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0OEU7SzsyOTtDUFRleHRGaWVsZERyYXdzQmFja2dyb3VuZEtleUQ7Szs2O0NQJFVJRGQ7Mjs0OEU7SzsyOTtDUFRleHRGaWVsZEJhY2tncm91bmRDb2xvcktleUQ7Szs2O0NQJFVJRGQ7Mjs1MUU7SzsyNztDUFRleHRGaWVsZExpbmVCcmVha01vZGVLZXlEO0s7NjtDUCRVSURkOzI7MzVFO0s7MjM7Q1BUZXh0RmllbGRBbGlnbm1lbnRLZXlEO0s7NjtDUCRVSURkOzI7NDVFO0s7MzE7Q1BUZXh0RmllbGRQbGFjZWhvbGRlclN0cmluZ0tleUQ7Szs2O0NQJFVJRGQ7MTswRTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxMEU7SzsyNztfQ1BDaWJDdXN0b21PYmplY3RDbGFzc05hbWVEO0s7NjtDUCRVSURkOzI7NTJFO0U7Uzs4O0NQT2JqZWN0RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RTtFO1M7MjQ7X3RleHRGaWVsZEJlemVsZWRBY3Rpb246UzsxODt2YWx1ZTogb2JqZWN0VmFsdWVTOzU7dmFsdWVTOzExO29iamVjdFZhbHVlRDtLOzEwOyRjbGFzc25hbWVTOzEyO0NQRGljdGlvbmFyeUs7ODskY2xhc3Nlc0E7UzsxMjtDUERpY3Rpb25hcnlTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzMwRTtLOzEwO0NQLm9iamVjdHNEO0U7RTtTOzI0O3ZhbHVlOiBvYmplY3RWYWx1ZS52YWx1ZVM7MTc7b2JqZWN0VmFsdWUudmFsdWVEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MzBFO0s7MTA7Q1Aub2JqZWN0c0Q7RTtFO2Q7MTswUzsxOTt7ezAsIDB9LCB7Mjg0LCA4Nn19RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RDtLOzY7Q1AkVUlEZDsyOzIyRTtFO0U7ZDsyOzQ1Uzs2O25vcm1hbFM7MjA7e3s4LCAyMX0sIHsyNjcsIDQzfX1TOzE5O3t7MCwgMH0sIHsyNjcsIDQzfX1kOzI7NDJTOzk7dGV4dGZpZWxkUzsxNjtiZXplbGVkK2VkaXRhYmxlZDsxOzREO0s7MTA7JGNsYXNzbmFtZVM7NjtDUEZvbnRLOzg7JGNsYXNzZXNBO1M7NjtDUEZvbnRTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzQ2RTtLOzEzO0NQRm9udE5hbWVLZXlEO0s7NjtDUCRVSURkOzI7NTNFO0s7MTM7Q1BGb250U2l6ZUtleUQ7Szs2O0NQJFVJRGQ7Mjs1NEU7SzsxNTtDUEZvbnRJc0JvbGRLZXlEO0s7NjtDUCRVSURkOzI7NTVFO0s7MTc7Q1BGb250SXNJdGFsaWNLZXlEO0s7NjtDUCRVSURkOzI7NTVFO0s7MTc7Q1BGb250SXNTeXN0ZW1LZXlEO0s7NjtDUCRVSURkOzI7NDhFO0U7VDtTOzEzO0VkaXRhYmxlIFRleHREO0s7MTA7JGNsYXNzbmFtZVM7NztDUENvbG9ySzs4OyRjbGFzc2VzQTtTOzc7Q1BDb2xvclM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7NTBFO0s7MjA7Q1BDb2xvckNvbXBvbmVudHNLZXlEO0s7NjtDUCRVSURkOzI7NTZFO0U7UzsxMztDUEFwcGxpY2F0aW9uUzsyODtfQ1BGb250U3lzdGVtRmFjZVBsYWNlaG9sZGVyZDsyOzI2RjtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtEO0s7NjtDUCRVSURkOzI7NTdFO0Q7Szs2O0NQJFVJRGQ7Mjs1N0U7RDtLOzY7Q1AkVUlEZDsyOzU3RTtEO0s7NjtDUCRVSURkOzI7NThFO0U7RTtmOzEyOzAuOTU0NzAwMTAwOGQ7MTsxRTtLOzk7JGFyY2hpdmVyUzsxNTtDUEtleWVkQXJjaGl2ZXJLOzg7JHZlcnNpb25TOzY7MTAwMDAwRTs=S;10488;MjgwTlBMSVNUOzEuMDtEO0s7NDskdG9wRDtLOzE4O0NQQ2liT2JqZWN0RGF0YUtleUQ7Szs2O0NQJFVJRGQ7MTsyRTtFO0s7ODskb2JqZWN0c0E7Uzs1OyRudWxsRDtLOzEwOyRjbGFzc25hbWVTOzE2O19DUENpYk9iamVjdERhdGFLOzg7JGNsYXNzZXNBO1M7MTY7X0NQQ2liT2JqZWN0RGF0YVM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7MUU7SzsyODtfQ1BDaWJPYmplY3REYXRhTmFtZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YU5hbWVzVmFsdWVzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzI7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNWYWx1ZXNLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzszMDtfQ1BDaWJPYmplY3REYXRhQ29ubmVjdGlvbnNLZXlEO0s7NjtDUCRVSURkOzE7NEU7SzsyODtfQ1BDaWJPYmplY3REYXRhRnJhbWV3b3JrS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MjY7X0NQQ2liT2JqZWN0RGF0YU5leHRPaWRLZXlEO0s7NjtDUCRVSURkOzE7NUU7SzszMDtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c0tleXNLZXlEO0s7NjtDUCRVSURkOzE7NkU7SzszMjtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c1ZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs3RTtLOzI2O19DUENpYk9iamVjdERhdGFPaWRLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzhFO0s7Mjg7X0NQQ2liT2JqZWN0RGF0YU9pZFZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs5RTtLOzI4O19DUENpYk9iamVjdERhdGFGaWxlT3duZXJLZXlEO0s7NjtDUCRVSURkOzI7MTFFO0s7MzM7X0NQQ2liT2JqZWN0RGF0YVZpc2libGVXaW5kb3dzS2V5RDtLOzY7Q1AkVUlEZDsyOzEzRTtFO0Q7SzsxMDskY2xhc3NuYW1lUzs3O0NQQXJyYXlLOzg7JGNsYXNzZXNBO1M7NztDUEFycmF5Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsxNUU7RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtEO0s7NjtDUCRVSURkOzI7MTdFO0Q7Szs2O0NQJFVJRGQ7MjsxOUU7RDtLOzY7Q1AkVUlEZDsxOzBFO0Q7Szs2O0NQJFVJRGQ7MjsyMUU7RDtLOzY7Q1AkVUlEZDsxOzBFO0Q7Szs2O0NQJFVJRGQ7MjsyMkU7RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsxMUU7RDtLOzY7Q1AkVUlEZDsyOzE3RTtEO0s7NjtDUCRVSURkOzI7MTlFO0Q7Szs2O0NQJFVJRGQ7MjsxN0U7RDtLOzY7Q1AkVUlEZDsyOzIxRTtEO0s7NjtDUCRVSURkOzI7MTFFO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RTtFO0Q7SzsxMDskY2xhc3NuYW1lUzsxODtfQ1BDaWJDdXN0b21PYmplY3RLOzg7JGNsYXNzZXNBO1M7MTg7X0NQQ2liQ3VzdG9tT2JqZWN0Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxMEU7SzsyNztfQ1BDaWJDdXN0b21PYmplY3RDbGFzc05hbWVEO0s7NjtDUCRVSURkOzI7MjNFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzU7Q1BTZXRLOzg7JGNsYXNzZXNBO1M7NTtDUFNldFM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MTJFO0s7MTU7Q1BTZXRPYmplY3RzS2V5RDtLOzY7Q1AkVUlEZDsyOzI0RTtFO0Q7SzsxMDskY2xhc3NuYW1lUzsyMTtDUENpYkJpbmRpbmdDb25uZWN0b3JLOzg7JGNsYXNzZXNBO1M7MjE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9yUzsxNDtDUENpYkNvbm5lY3RvclM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MTRFO0s7MjQ7X0NQQ2liQ29ubmVjdG9yU291cmNlS2V5RDtLOzY7Q1AkVUlEZDsyOzE5RTtLOzI5O19DUENpYkNvbm5lY3RvckRlc3RpbmF0aW9uS2V5RDtLOzY7Q1AkVUlEZDsyOzE3RTtLOzIzO19DUENpYkNvbm5lY3RvckxhYmVsS2V5RDtLOzY7Q1AkVUlEZDsyOzI1RTtLOzMxO0NQQ2liQmluZGluZ0Nvbm5lY3RvckJpbmRpbmdLZXlEO0s7NjtDUCRVSURkOzI7MjZFO0s7MzE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9yS2V5UGF0aEtleUQ7Szs2O0NQJFVJRGQ7MjsyN0U7SzszMTtDUENpYkJpbmRpbmdDb25uZWN0b3JPcHRpb25zS2V5RDtLOzY7Q1AkVUlEZDsyOzI5RTtFO0Q7SzsxMDskY2xhc3NuYW1lUzsxNTtDUFRhYmxlQ2VsbFZpZXdLOzg7JGNsYXNzZXNBO1M7MTU7Q1BUYWJsZUNlbGxWaWV3Uzs2O0NQVmlld1M7MTE7Q1BSZXNwb25kZXJTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzE2RTtLOzE4O0NQUmVzcG9uZGVyTWVudUtleUQ7Szs2O0NQJFVJRGQ7MTswRTtLOzEyO0NQVmlld1RhZ0tleUQ7Szs2O0NQJFVJRGQ7MjszMEU7SzsxNDtDUFZpZXdGcmFtZUtleUQ7Szs2O0NQJFVJRGQ7MjszMUU7SzsxNTtDUFZpZXdCb3VuZHNLZXlEO0s7NjtDUCRVSURkOzI7MzFFO0s7MTc7Q1BWaWV3U3Vidmlld3NLZXlEO0s7NjtDUCRVSURkOzI7MzJFO0s7MjI7Q1BWaWV3QXV0b3Jlc2l6aW5nTWFza0Q7Szs2O0NQJFVJRGQ7MjszM0U7SzsxOTtDUFZpZXdUaGVtZUNsYXNzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MTk7Q1BWaWV3VGhlbWVTdGF0ZUtleUQ7Szs2O0NQJFVJRGQ7MjszNEU7SzsyMDtDUFJldXNlSWRlbnRpZmllcktleUQ7Szs2O0NQJFVJRGQ7MjszNUU7RTtEO0s7MTA7JGNsYXNzbmFtZVM7MTE7Q1BUZXh0RmllbGRLOzg7JGNsYXNzZXNBO1M7MTE7Q1BUZXh0RmllbGRTOzk7Q1BDb250cm9sUzs2O0NQVmlld1M7MTE7Q1BSZXNwb25kZXJTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzE4RTtLOzI3O0NQUmVzcG9uZGVyTmV4dFJlc3BvbmRlcktleUQ7Szs2O0NQJFVJRGQ7MjsxN0U7SzsxODtDUFJlc3BvbmRlck1lbnVLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzsxMjtDUFZpZXdUYWdLZXlEO0s7NjtDUCRVSURkOzI7MzBFO0s7MTQ7Q1BWaWV3RnJhbWVLZXlEO0s7NjtDUCRVSURkOzI7MzZFO0s7MTU7Q1BWaWV3Qm91bmRzS2V5RDtLOzY7Q1AkVUlEZDsyOzM3RTtLOzE4O0NQVmlld1N1cGVydmlld0tleUQ7Szs2O0NQJFVJRGQ7MjsxN0U7SzsyMjtDUFZpZXdBdXRvcmVzaXppbmdNYXNrRDtLOzY7Q1AkVUlEZDsyOzM4RTtLOzE5O0NQVmlld1RoZW1lQ2xhc3NLZXlEO0s7NjtDUCRVSURkOzI7MzlFO0s7MTk7Q1BWaWV3VGhlbWVTdGF0ZUtleUQ7Szs2O0NQJFVJRGQ7MjszNEU7SzsxMTskYWFsaWdubWVudEQ7Szs2O0NQJFVJRGQ7Mjs0MEU7SzsxNzskYWxpbmUtYnJlYWstbW9kZUQ7Szs2O0NQJFVJRGQ7Mjs0MUU7Szs2OyRhZm9udEQ7Szs2O0NQJFVJRGQ7Mjs0M0U7SzszNTtDUENvbnRyb2xTZW5kc0FjdGlvbk9uRW5kRWRpdGluZ0tleUQ7Szs2O0NQJFVJRGQ7Mjs0NEU7SzsxNztDUENvbnRyb2xWYWx1ZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0NUU7SzsyNDtDUENvbnRyb2xTZW5kQWN0aW9uT25LZXlEO0s7NjtDUCRVSURkOzI7NDFFO0s7MjQ7Q1BUZXh0RmllbGRJc0VkaXRhYmxlS2V5RDtLOzY7Q1AkVUlEZDsyOzQ2RTtLOzI2O0NQVGV4dEZpZWxkSXNTZWxlY3RhYmxlS2V5RDtLOzY7Q1AkVUlEZDsyOzQ2RTtLOzI5O0NQVGV4dEZpZWxkRHJhd3NCYWNrZ3JvdW5kS2V5RDtLOzY7Q1AkVUlEZDsyOzQ2RTtLOzI5O0NQVGV4dEZpZWxkQmFja2dyb3VuZENvbG9yS2V5RDtLOzY7Q1AkVUlEZDsyOzQ4RTtLOzI3O0NQVGV4dEZpZWxkTGluZUJyZWFrTW9kZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0MUU7SzsyMztDUFRleHRGaWVsZEFsaWdubWVudEtleUQ7Szs2O0NQJFVJRGQ7Mjs0MEU7SzszMTtDUFRleHRGaWVsZFBsYWNlaG9sZGVyU3RyaW5nS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzE4O0NQU2VnbWVudGVkQ29udHJvbEs7ODskY2xhc3Nlc0E7UzsxODtDUFNlZ21lbnRlZENvbnRyb2xTOzk7Q1BDb250cm9sUzs2O0NQVmlld1M7MTE7Q1BSZXNwb25kZXJTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzIwRTtLOzI3O0NQUmVzcG9uZGVyTmV4dFJlc3BvbmRlcktleUQ7Szs2O0NQJFVJRGQ7MjsxN0U7SzsxODtDUFJlc3BvbmRlck1lbnVLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzsxMjtDUFZpZXdUYWdLZXlEO0s7NjtDUCRVSURkOzI7MzBFO0s7MTQ7Q1BWaWV3RnJhbWVLZXlEO0s7NjtDUCRVSURkOzI7NDlFO0s7MTU7Q1BWaWV3Qm91bmRzS2V5RDtLOzY7Q1AkVUlEZDsyOzUwRTtLOzE4O0NQVmlld1N1cGVydmlld0tleUQ7Szs2O0NQJFVJRGQ7MjsxN0U7SzsyMjtDUFZpZXdBdXRvcmVzaXppbmdNYXNrRDtLOzY7Q1AkVUlEZDsyOzUxRTtLOzE5O0NQVmlld1RoZW1lQ2xhc3NLZXlEO0s7NjtDUCRVSURkOzI7NTJFO0s7MTk7Q1BWaWV3VGhlbWVTdGF0ZUtleUQ7Szs2O0NQJFVJRGQ7MjszNEU7SzsxMTskYWFsaWdubWVudEQ7Szs2O0NQJFVJRGQ7Mjs0MEU7SzsxNzskYWxpbmUtYnJlYWstbW9kZUQ7Szs2O0NQJFVJRGQ7MjszMEU7Szs2OyRhZm9udEQ7Szs2O0NQJFVJRGQ7Mjs1M0U7SzsyNDtDUENvbnRyb2xTZW5kQWN0aW9uT25LZXlEO0s7NjtDUCRVSURkOzI7NDFFO0s7Mjk7Q1BTZWdtZW50ZWRDb250cm9sU2VnbWVudHNLZXlEO0s7NjtDUCRVSURkOzI7NTRFO0s7Mjk7Q1BTZWdtZW50ZWRDb250cm9sU2VsZWN0ZWRLZXlEO0s7NjtDUCRVSURkOzI7NTVFO0s7MzM7Q1BTZWdtZW50ZWRDb250cm9sU2VnbWVudFN0eWxlS2V5RDtLOzY7Q1AkVUlEZDsyOzU1RTtLOzMzO0NQU2VnbWVudGVkQ29udHJvbFRyYWNraW5nTW9kZUtleUQ7Szs2O0NQJFVJRGQ7MjszMEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MTBFO0s7Mjc7X0NQQ2liQ3VzdG9tT2JqZWN0Q2xhc3NOYW1lRDtLOzY7Q1AkVUlEZDsyOzU2RTtFO1M7ODtDUE9iamVjdEQ7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0U7RTtTOzI5O3ZhbHVlOiBvYmplY3RWYWx1ZS5pZGVudGlmaWVyUzs1O3ZhbHVlUzsyMjtvYmplY3RWYWx1ZS5pZGVudGlmaWVyRDtLOzEwOyRjbGFzc25hbWVTOzEyO0NQRGljdGlvbmFyeUs7ODskY2xhc3Nlc0E7UzsxMjtDUERpY3Rpb25hcnlTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzI4RTtLOzEwO0NQLm9iamVjdHNEO0U7RTtkOzE7MFM7MTk7e3swLCAwfSwgezIzNCwgODd9fUQ7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsxOUU7RDtLOzY7Q1AkVUlEZDsyOzIxRTtFO0U7ZDsyOzQ1Uzs2O25vcm1hbFM7ODttdWx0aXBsZVM7MTk7e3szLCAzfSwgezIyOCwgMjJ9fVM7MTk7e3swLCAwfSwgezIyOCwgMjJ9fWQ7MjszOVM7OTt0ZXh0ZmllbGRkOzE7MmQ7MTs0RDtLOzEwOyRjbGFzc25hbWVTOzY7Q1BGb250Szs4OyRjbGFzc2VzQTtTOzY7Q1BGb250Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7Mjs0MkU7SzsxMztDUEZvbnROYW1lS2V5RDtLOzY7Q1AkVUlEZDsyOzU3RTtLOzEzO0NQRm9udFNpemVLZXlEO0s7NjtDUCRVSURkOzI7NThFO0s7MTU7Q1BGb250SXNCb2xkS2V5RDtLOzY7Q1AkVUlEZDsyOzQ2RTtLOzE3O0NQRm9udElzSXRhbGljS2V5RDtLOzY7Q1AkVUlEZDsyOzQ2RTtLOzE3O0NQRm9udElzU3lzdGVtS2V5RDtLOzY7Q1AkVUlEZDsyOzQ0RTtFO1Q7Uzs0O1RleHRGO0Q7SzsxMDskY2xhc3NuYW1lUzs3O0NQQ29sb3JLOzg7JGNsYXNzZXNBO1M7NztDUENvbG9yUzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7Mjs0N0U7SzsyMDtDUENvbG9yQ29tcG9uZW50c0tleUQ7Szs2O0NQJFVJRGQ7Mjs1OUU7RTtTOzIxO3t7MzcsIDMyfSwgezE2NCwgMjV9fVM7MTk7e3swLCAwfSwgezE2NCwgMjV9fWQ7MjsxM1M7MTc7c2VnbWVudGVkLWNvbnRyb2xEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7NDJFO0s7MTM7Q1BGb250TmFtZUtleUQ7Szs2O0NQJFVJRGQ7Mjs1N0U7SzsxMztDUEZvbnRTaXplS2V5RDtLOzY7Q1AkVUlEZDsyOzU4RTtLOzE1O0NQRm9udElzQm9sZEtleUQ7Szs2O0NQJFVJRGQ7Mjs0NEU7SzsxNztDUEZvbnRJc0l0YWxpY0tleUQ7Szs2O0NQJFVJRGQ7Mjs0NkU7SzsxNztDUEZvbnRJc1N5c3RlbUtleUQ7Szs2O0NQJFVJRGQ7Mjs0NEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtEO0s7NjtDUCRVSURkOzI7NjFFO0Q7Szs2O0NQJFVJRGQ7Mjs2MkU7RDtLOzY7Q1AkVUlEZDsyOzYzRTtFO0U7ZDsxOzFTOzEzO0NQQXBwbGljYXRpb25TOzI4O19DUEZvbnRTeXN0ZW1GYWNlUGxhY2Vob2xkZXJkOzI7LTFEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtEO0s7NjtDUCRVSURkOzI7NjRFO0Q7Szs2O0NQJFVJRGQ7Mjs2NEU7RDtLOzY7Q1AkVUlEZDsyOzY0RTtEO0s7NjtDUCRVSURkOzI7NTVFO0U7RTtEO0s7MTA7JGNsYXNzbmFtZVM7MTQ7X0NQU2VnbWVudEl0ZW1LOzg7JGNsYXNzZXNBO1M7MTQ7X0NQU2VnbWVudEl0ZW1TOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzYwRTtLOzIxO0NQU2VnbWVudEl0ZW1JbWFnZUtleUQ7Szs2O0NQJFVJRGQ7MTswRTtLOzIxO0NQU2VnbWVudEl0ZW1MYWJlbEtleUQ7Szs2O0NQJFVJRGQ7Mjs2NUU7SzsyMDtDUFNlZ21lbnRJdGVtTWVudUtleUQ7Szs2O0NQJFVJRGQ7MTswRTtLOzI0O0NQU2VnbWVudEl0ZW1TZWxlY3RlZEtleUQ7Szs2O0NQJFVJRGQ7Mjs0NkU7SzsyMztDUFNlZ21lbnRJdGVtRW5hYmxlZEtleUQ7Szs2O0NQJFVJRGQ7Mjs0NEU7SzsxOTtDUFNlZ21lbnRJdGVtVGFnS2V5RDtLOzY7Q1AkVUlEZDsyOzMwRTtLOzIxO0NQU2VnbWVudEl0ZW1XaWR0aEtleUQ7Szs2O0NQJFVJRGQ7Mjs2NkU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7NjBFO0s7MjE7Q1BTZWdtZW50SXRlbUltYWdlS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MjE7Q1BTZWdtZW50SXRlbUxhYmVsS2V5RDtLOzY7Q1AkVUlEZDsyOzY1RTtLOzIwO0NQU2VnbWVudEl0ZW1NZW51S2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MjQ7Q1BTZWdtZW50SXRlbVNlbGVjdGVkS2V5RDtLOzY7Q1AkVUlEZDsyOzQ0RTtLOzIzO0NQU2VnbWVudEl0ZW1FbmFibGVkS2V5RDtLOzY7Q1AkVUlEZDsyOzQ0RTtLOzE5O0NQU2VnbWVudEl0ZW1UYWdLZXlEO0s7NjtDUCRVSURkOzI7NTVFO0s7MjE7Q1BTZWdtZW50SXRlbVdpZHRoS2V5RDtLOzY7Q1AkVUlEZDsyOzY2RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7Mjs2MEU7SzsyMTtDUFNlZ21lbnRJdGVtSW1hZ2VLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzsyMTtDUFNlZ21lbnRJdGVtTGFiZWxLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzsyMDtDUFNlZ21lbnRJdGVtTWVudUtleUQ7Szs2O0NQJFVJRGQ7MTswRTtLOzI0O0NQU2VnbWVudEl0ZW1TZWxlY3RlZEtleUQ7Szs2O0NQJFVJRGQ7Mjs0NkU7SzsyMztDUFNlZ21lbnRJdGVtRW5hYmxlZEtleUQ7Szs2O0NQJFVJRGQ7Mjs0NEU7SzsxOTtDUFNlZ21lbnRJdGVtVGFnS2V5RDtLOzY7Q1AkVUlEZDsyOzMwRTtLOzIxO0NQU2VnbWVudEl0ZW1XaWR0aEtleUQ7Szs2O0NQJFVJRGQ7Mjs2NkU7RTtmOzE4OzAuNjg2Mjc0NTA5ODAzOTIxNlM7MDtkOzI7NTJFO0s7OTskYXJjaGl2ZXJTOzE1O0NQS2V5ZWRBcmNoaXZlcks7ODskdmVyc2lvblM7NjsxMDAwMDBFOw==S;16008;MjgwTlBMSVNUOzEuMDtEO0s7NDskdG9wRDtLOzE4O0NQQ2liT2JqZWN0RGF0YUtleUQ7Szs2O0NQJFVJRGQ7MTsyRTtFO0s7ODskb2JqZWN0c0E7Uzs1OyRudWxsRDtLOzEwOyRjbGFzc25hbWVTOzE2O19DUENpYk9iamVjdERhdGFLOzg7JGNsYXNzZXNBO1M7MTY7X0NQQ2liT2JqZWN0RGF0YVM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7MUU7SzsyODtfQ1BDaWJPYmplY3REYXRhTmFtZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YU5hbWVzVmFsdWVzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzA7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MzI7X0NQQ2liT2JqZWN0RGF0YUNsYXNzZXNWYWx1ZXNLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzszMDtfQ1BDaWJPYmplY3REYXRhQ29ubmVjdGlvbnNLZXlEO0s7NjtDUCRVSURkOzE7NEU7SzsyODtfQ1BDaWJPYmplY3REYXRhRnJhbWV3b3JrS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MjY7X0NQQ2liT2JqZWN0RGF0YU5leHRPaWRLZXlEO0s7NjtDUCRVSURkOzE7NUU7SzszMDtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c0tleXNLZXlEO0s7NjtDUCRVSURkOzE7NkU7SzszMjtfQ1BDaWJPYmplY3REYXRhT2JqZWN0c1ZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs3RTtLOzI2O19DUENpYk9iamVjdERhdGFPaWRLZXlzS2V5RDtLOzY7Q1AkVUlEZDsxOzhFO0s7Mjg7X0NQQ2liT2JqZWN0RGF0YU9pZFZhbHVlc0tleUQ7Szs2O0NQJFVJRGQ7MTs5RTtLOzI4O19DUENpYk9iamVjdERhdGFGaWxlT3duZXJLZXlEO0s7NjtDUCRVSURkOzI7MTFFO0s7MzM7X0NQQ2liT2JqZWN0RGF0YVZpc2libGVXaW5kb3dzS2V5RDtLOzY7Q1AkVUlEZDsyOzEzRTtFO0Q7SzsxMDskY2xhc3NuYW1lUzs3O0NQQXJyYXlLOzg7JGNsYXNzZXNBO1M7NztDUEFycmF5Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsxNUU7RDtLOzY7Q1AkVUlEZDsyOzE3RTtEO0s7NjtDUCRVSURkOzI7MThFO0Q7Szs2O0NQJFVJRGQ7MjsxOUU7RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtEO0s7NjtDUCRVSURkOzI7MjFFO0Q7Szs2O0NQJFVJRGQ7MjsyM0U7RDtLOzY7Q1AkVUlEZDsyOzI1RTtEO0s7NjtDUCRVSURkOzE7MEU7RDtLOzY7Q1AkVUlEZDsyOzI3RTtEO0s7NjtDUCRVSURkOzE7MEU7RDtLOzY7Q1AkVUlEZDsyOzI4RTtEO0s7NjtDUCRVSURkOzE7MEU7RDtLOzY7Q1AkVUlEZDsyOzI5RTtFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RDtLOzY7Q1AkVUlEZDsyOzExRTtEO0s7NjtDUCRVSURkOzI7MjFFO0Q7Szs2O0NQJFVJRGQ7MjsyM0U7RDtLOzY7Q1AkVUlEZDsyOzI1RTtEO0s7NjtDUCRVSURkOzI7MjNFO0Q7Szs2O0NQJFVJRGQ7MjsyN0U7RDtLOzY7Q1AkVUlEZDsyOzIzRTtEO0s7NjtDUCRVSURkOzI7MjhFO0Q7Szs2O0NQJFVJRGQ7MjsxMUU7RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0U7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzE4O19DUENpYkN1c3RvbU9iamVjdEs7ODskY2xhc3Nlc0E7UzsxODtfQ1BDaWJDdXN0b21PYmplY3RTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzEwRTtLOzI3O19DUENpYkN1c3RvbU9iamVjdENsYXNzTmFtZUQ7Szs2O0NQJFVJRGQ7MjszMEU7RTtEO0s7MTA7JGNsYXNzbmFtZVM7NTtDUFNldEs7ODskY2xhc3Nlc0E7Uzs1O0NQU2V0Uzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxMkU7SzsxNTtDUFNldE9iamVjdHNLZXlEO0s7NjtDUCRVSURkOzI7MzFFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzIxO0NQQ2liQ29udHJvbENvbm5lY3Rvcks7ODskY2xhc3Nlc0E7UzsyMTtDUENpYkNvbnRyb2xDb25uZWN0b3JTOzE0O0NQQ2liQ29ubmVjdG9yUzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxNEU7SzsyNDtfQ1BDaWJDb25uZWN0b3JTb3VyY2VLZXlEO0s7NjtDUCRVSURkOzI7MjdFO0s7Mjk7X0NQQ2liQ29ubmVjdG9yRGVzdGluYXRpb25LZXlEO0s7NjtDUCRVSURkOzI7MTFFO0s7MjM7X0NQQ2liQ29ubmVjdG9yTGFiZWxLZXlEO0s7NjtDUCRVSURkOzI7MzJFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzIxO0NQQ2liQmluZGluZ0Nvbm5lY3Rvcks7ODskY2xhc3Nlc0E7UzsyMTtDUENpYkJpbmRpbmdDb25uZWN0b3JTOzE0O0NQQ2liQ29ubmVjdG9yUzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxNkU7SzsyNDtfQ1BDaWJDb25uZWN0b3JTb3VyY2VLZXlEO0s7NjtDUCRVSURkOzI7MjhFO0s7Mjk7X0NQQ2liQ29ubmVjdG9yRGVzdGluYXRpb25LZXlEO0s7NjtDUCRVSURkOzI7MjFFO0s7MjM7X0NQQ2liQ29ubmVjdG9yTGFiZWxLZXlEO0s7NjtDUCRVSURkOzI7MzNFO0s7MzE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9yQmluZGluZ0tleUQ7Szs2O0NQJFVJRGQ7MjszNEU7SzszMTtDUENpYkJpbmRpbmdDb25uZWN0b3JLZXlQYXRoS2V5RDtLOzY7Q1AkVUlEZDsyOzM1RTtLOzMxO0NQQ2liQmluZGluZ0Nvbm5lY3Rvck9wdGlvbnNLZXlEO0s7NjtDUCRVSURkOzI7MzdFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzE2RTtLOzI0O19DUENpYkNvbm5lY3RvclNvdXJjZUtleUQ7Szs2O0NQJFVJRGQ7MjsyN0U7SzsyOTtfQ1BDaWJDb25uZWN0b3JEZXN0aW5hdGlvbktleUQ7Szs2O0NQJFVJRGQ7MjsyMUU7SzsyMztfQ1BDaWJDb25uZWN0b3JMYWJlbEtleUQ7Szs2O0NQJFVJRGQ7MjszOEU7SzszMTtDUENpYkJpbmRpbmdDb25uZWN0b3JCaW5kaW5nS2V5RDtLOzY7Q1AkVUlEZDsyOzM0RTtLOzMxO0NQQ2liQmluZGluZ0Nvbm5lY3RvcktleVBhdGhLZXlEO0s7NjtDUCRVSURkOzI7MzlFO0s7MzE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9yT3B0aW9uc0tleUQ7Szs2O0NQJFVJRGQ7Mjs0MEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7MTZFO0s7MjQ7X0NQQ2liQ29ubmVjdG9yU291cmNlS2V5RDtLOzY7Q1AkVUlEZDsyOzI1RTtLOzI5O19DUENpYkNvbm5lY3RvckRlc3RpbmF0aW9uS2V5RDtLOzY7Q1AkVUlEZDsyOzExRTtLOzIzO19DUENpYkNvbm5lY3RvckxhYmVsS2V5RDtLOzY7Q1AkVUlEZDsyOzQxRTtLOzMxO0NQQ2liQmluZGluZ0Nvbm5lY3RvckJpbmRpbmdLZXlEO0s7NjtDUCRVSURkOzI7NDJFO0s7MzE7Q1BDaWJCaW5kaW5nQ29ubmVjdG9yS2V5UGF0aEtleUQ7Szs2O0NQJFVJRGQ7Mjs0M0U7SzszMTtDUENpYkJpbmRpbmdDb25uZWN0b3JPcHRpb25zS2V5RDtLOzY7Q1AkVUlEZDsyOzQ0RTtFO0Q7SzsxMDskY2xhc3NuYW1lUzsxNTtDUFRhYmxlQ2VsbFZpZXdLOzg7JGNsYXNzZXNBO1M7MTU7Q1BUYWJsZUNlbGxWaWV3Uzs2O0NQVmlld1M7MTE7Q1BSZXNwb25kZXJTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzIwRTtLOzE4O0NQUmVzcG9uZGVyTWVudUtleUQ7Szs2O0NQJFVJRGQ7MTswRTtLOzEyO0NQVmlld1RhZ0tleUQ7Szs2O0NQJFVJRGQ7Mjs0NUU7SzsxNDtDUFZpZXdGcmFtZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0NkU7SzsxNTtDUFZpZXdCb3VuZHNLZXlEO0s7NjtDUCRVSURkOzI7NDZFO0s7MTc7Q1BWaWV3U3Vidmlld3NLZXlEO0s7NjtDUCRVSURkOzI7NDdFO0s7MjI7Q1BWaWV3QXV0b3Jlc2l6aW5nTWFza0Q7Szs2O0NQJFVJRGQ7Mjs0OEU7SzsxOTtDUFZpZXdUaGVtZUNsYXNzS2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MTk7Q1BWaWV3VGhlbWVTdGF0ZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0OUU7SzsyMDtDUFJldXNlSWRlbnRpZmllcktleUQ7Szs2O0NQJFVJRGQ7Mjs1MEU7RTtEO0s7MTA7JGNsYXNzbmFtZVM7NTtDUEJveEs7ODskY2xhc3Nlc0E7Uzs1O0NQQm94Uzs2O0NQVmlld1M7MTE7Q1BSZXNwb25kZXJTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzIyRTtLOzI3O0NQUmVzcG9uZGVyTmV4dFJlc3BvbmRlcktleUQ7Szs2O0NQJFVJRGQ7MjsyMUU7SzsxODtDUFJlc3BvbmRlck1lbnVLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzsxMjtDUFZpZXdUYWdLZXlEO0s7NjtDUCRVSURkOzI7NDVFO0s7MTQ7Q1BWaWV3RnJhbWVLZXlEO0s7NjtDUCRVSURkOzI7NTFFO0s7MTU7Q1BWaWV3Qm91bmRzS2V5RDtLOzY7Q1AkVUlEZDsyOzUyRTtLOzE3O0NQVmlld1N1YnZpZXdzS2V5RDtLOzY7Q1AkVUlEZDsyOzUzRTtLOzE4O0NQVmlld1N1cGVydmlld0tleUQ7Szs2O0NQJFVJRGQ7MjsyMUU7SzsyMjtDUFZpZXdBdXRvcmVzaXppbmdNYXNrRDtLOzY7Q1AkVUlEZDsyOzU0RTtLOzI1O0NQVmlld0F1dG9yZXNpemVzU3Vidmlld3NEO0s7NjtDUCRVSURkOzI7NDVFO0s7MTk7Q1BWaWV3VGhlbWVDbGFzc0tleUQ7Szs2O0NQJFVJRGQ7Mjs1NUU7SzsxOTtDUFZpZXdUaGVtZVN0YXRlS2V5RDtLOzY7Q1AkVUlEZDsyOzQ5RTtLOzE4OyRhYmFja2dyb3VuZC1jb2xvckQ7Szs2O0NQJFVJRGQ7Mjs1N0U7SzsxNDskYWJvcmRlci1jb2xvckQ7Szs2O0NQJFVJRGQ7Mjs1OEU7SzsxNDskYWJvcmRlci13aWR0aEQ7Szs2O0NQJFVJRGQ7Mjs1OUU7SzsxNTskYWNvcm5lci1yYWRpdXNEO0s7NjtDUCRVSURkOzI7NjBFO0s7MTY7JGFjb250ZW50LW1hcmdpbkQ7Szs2O0NQJFVJRGQ7Mjs2MkU7SzsxMjtDUEJveFR5cGVLZXlEO0s7NjtDUCRVSURkOzI7NjNFO0s7MTg7Q1BCb3hCb3JkZXJUeXBlS2V5RDtLOzY7Q1AkVUlEZDsyOzY0RTtLOzEwO0NQQm94VGl0bGVEO0s7NjtDUCRVSURkOzI7NjVFO0s7MTg7Q1BCb3hUaXRsZVBvc2l0aW9uRDtLOzY7Q1AkVUlEZDsyOzQ1RTtLOzE0O0NQQm94VGl0bGVWaWV3RDtLOzY7Q1AkVUlEZDsxOzBFO0U7RDtLOzEwOyRjbGFzc25hbWVTOzExO0NQVGV4dEZpZWxkSzs4OyRjbGFzc2VzQTtTOzExO0NQVGV4dEZpZWxkUzs5O0NQQ29udHJvbFM7NjtDUFZpZXdTOzExO0NQUmVzcG9uZGVyUzs4O0NQT2JqZWN0RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsyNEU7SzsyNztDUFJlc3BvbmRlck5leHRSZXNwb25kZXJLZXlEO0s7NjtDUCRVSURkOzI7NjZFO0s7MTg7Q1BSZXNwb25kZXJNZW51S2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MTI7Q1BWaWV3VGFnS2V5RDtLOzY7Q1AkVUlEZDsyOzQ1RTtLOzE0O0NQVmlld0ZyYW1lS2V5RDtLOzY7Q1AkVUlEZDsyOzY3RTtLOzE1O0NQVmlld0JvdW5kc0tleUQ7Szs2O0NQJFVJRGQ7Mjs2OEU7SzsxODtDUFZpZXdTdXBlcnZpZXdLZXlEO0s7NjtDUCRVSURkOzI7NjZFO0s7MjI7Q1BWaWV3QXV0b3Jlc2l6aW5nTWFza0Q7Szs2O0NQJFVJRGQ7Mjs2OUU7SzsxOTtDUFZpZXdUaGVtZUNsYXNzS2V5RDtLOzY7Q1AkVUlEZDsyOzcwRTtLOzE5O0NQVmlld1RoZW1lU3RhdGVLZXlEO0s7NjtDUCRVSURkOzI7NDlFO0s7MTE7JGFhbGlnbm1lbnREO0s7NjtDUCRVSURkOzI7NjNFO0s7MTc7JGFsaW5lLWJyZWFrLW1vZGVEO0s7NjtDUCRVSURkOzI7NTlFO0s7NjskYWZvbnREO0s7NjtDUCRVSURkOzI7NzJFO0s7MzU7Q1BDb250cm9sU2VuZHNBY3Rpb25PbkVuZEVkaXRpbmdLZXlEO0s7NjtDUCRVSURkOzI7NzNFO0s7MTc7Q1BDb250cm9sVmFsdWVLZXlEO0s7NjtDUCRVSURkOzI7NzRFO0s7MjQ7Q1BDb250cm9sU2VuZEFjdGlvbk9uS2V5RDtLOzY7Q1AkVUlEZDsyOzYzRTtLOzI0O0NQVGV4dEZpZWxkSXNFZGl0YWJsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs3NUU7SzsyNjtDUFRleHRGaWVsZElzU2VsZWN0YWJsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs3NUU7SzsyOTtDUFRleHRGaWVsZERyYXdzQmFja2dyb3VuZEtleUQ7Szs2O0NQJFVJRGQ7Mjs3NUU7SzsyOTtDUFRleHRGaWVsZEJhY2tncm91bmRDb2xvcktleUQ7Szs2O0NQJFVJRGQ7Mjs3NkU7SzsyNztDUFRleHRGaWVsZExpbmVCcmVha01vZGVLZXlEO0s7NjtDUCRVSURkOzI7NTlFO0s7MjM7Q1BUZXh0RmllbGRBbGlnbm1lbnRLZXlEO0s7NjtDUCRVSURkOzI7NjNFO0s7MzE7Q1BUZXh0RmllbGRQbGFjZWhvbGRlclN0cmluZ0tleUQ7Szs2O0NQJFVJRGQ7MTswRTtFO0Q7SzsxMDskY2xhc3NuYW1lUzs4O0NQU2xpZGVySzs4OyRjbGFzc2VzQTtTOzg7Q1BTbGlkZXJTOzk7Q1BDb250cm9sUzs2O0NQVmlld1M7MTE7Q1BSZXNwb25kZXJTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzI2RTtLOzI3O0NQUmVzcG9uZGVyTmV4dFJlc3BvbmRlcktleUQ7Szs2O0NQJFVJRGQ7Mjs2NkU7SzsxODtDUFJlc3BvbmRlck1lbnVLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzsxMjtDUFZpZXdUYWdLZXlEO0s7NjtDUCRVSURkOzI7NDVFO0s7MTQ7Q1BWaWV3RnJhbWVLZXlEO0s7NjtDUCRVSURkOzI7NzdFO0s7MTU7Q1BWaWV3Qm91bmRzS2V5RDtLOzY7Q1AkVUlEZDsyOzc4RTtLOzE4O0NQVmlld1N1cGVydmlld0tleUQ7Szs2O0NQJFVJRGQ7Mjs2NkU7SzsyMjtDUFZpZXdBdXRvcmVzaXppbmdNYXNrRDtLOzY7Q1AkVUlEZDsyOzc5RTtLOzE5O0NQVmlld1RoZW1lQ2xhc3NLZXlEO0s7NjtDUCRVSURkOzI7ODBFO0s7MTk7Q1BWaWV3VGhlbWVTdGF0ZUtleUQ7Szs2O0NQJFVJRGQ7Mjs0OUU7SzsxMTskYWFsaWdubWVudEQ7Szs2O0NQJFVJRGQ7Mjs0NUU7SzsxNzskYWxpbmUtYnJlYWstbW9kZUQ7Szs2O0NQJFVJRGQ7Mjs0NUU7SzsxNztDUENvbnRyb2xWYWx1ZUtleUQ7Szs2O0NQJFVJRGQ7Mjs4MUU7SzsyNDtDUENvbnRyb2xTZW5kQWN0aW9uT25LZXlEO0s7NjtDUCRVSURkOzI7NjNFO0s7MTk7Q1BTbGlkZXJNaW5WYWx1ZUtleUQ7Szs2O0NQJFVJRGQ7Mjs4MkU7SzsxOTtDUFNsaWRlck1heFZhbHVlS2V5RDtLOzY7Q1AkVUlEZDsyOzgzRTtLOzIzO0NQU2xpZGVyQWx0SW5jclZhbHVlS2V5RDtLOzY7Q1AkVUlEZDsyOzQ1RTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsyNEU7SzsyNztDUFJlc3BvbmRlck5leHRSZXNwb25kZXJLZXlEO0s7NjtDUCRVSURkOzI7NjZFO0s7MTg7Q1BSZXNwb25kZXJNZW51S2V5RDtLOzY7Q1AkVUlEZDsxOzBFO0s7MTI7Q1BWaWV3VGFnS2V5RDtLOzY7Q1AkVUlEZDsyOzQ1RTtLOzE0O0NQVmlld0ZyYW1lS2V5RDtLOzY7Q1AkVUlEZDsyOzg0RTtLOzE1O0NQVmlld0JvdW5kc0tleUQ7Szs2O0NQJFVJRGQ7Mjs4NUU7SzsxODtDUFZpZXdTdXBlcnZpZXdLZXlEO0s7NjtDUCRVSURkOzI7NjZFO0s7MjI7Q1BWaWV3QXV0b3Jlc2l6aW5nTWFza0Q7Szs2O0NQJFVJRGQ7Mjs4NkU7SzsxOTtDUFZpZXdUaGVtZUNsYXNzS2V5RDtLOzY7Q1AkVUlEZDsyOzcwRTtLOzE5O0NQVmlld1RoZW1lU3RhdGVLZXlEO0s7NjtDUCRVSURkOzI7NDlFO0s7MTE7JGFhbGlnbm1lbnREO0s7NjtDUCRVSURkOzI7NjNFO0s7MTc7JGFsaW5lLWJyZWFrLW1vZGVEO0s7NjtDUCRVSURkOzI7NjNFO0s7NjskYWZvbnREO0s7NjtDUCRVSURkOzI7ODdFO0s7MzU7Q1BDb250cm9sU2VuZHNBY3Rpb25PbkVuZEVkaXRpbmdLZXlEO0s7NjtDUCRVSURkOzI7NzNFO0s7MTc7Q1BDb250cm9sVmFsdWVLZXlEO0s7NjtDUCRVSURkOzI7ODhFO0s7MjQ7Q1BDb250cm9sU2VuZEFjdGlvbk9uS2V5RDtLOzY7Q1AkVUlEZDsyOzYzRTtLOzI0O0NQVGV4dEZpZWxkSXNFZGl0YWJsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs3NUU7SzsyNjtDUFRleHRGaWVsZElzU2VsZWN0YWJsZUtleUQ7Szs2O0NQJFVJRGQ7Mjs3NUU7SzsyOTtDUFRleHRGaWVsZERyYXdzQmFja2dyb3VuZEtleUQ7Szs2O0NQJFVJRGQ7Mjs3NUU7SzsyOTtDUFRleHRGaWVsZEJhY2tncm91bmRDb2xvcktleUQ7Szs2O0NQJFVJRGQ7Mjs4OUU7SzsyNztDUFRleHRGaWVsZExpbmVCcmVha01vZGVLZXlEO0s7NjtDUCRVSURkOzI7NjNFO0s7MjM7Q1BUZXh0RmllbGRBbGlnbm1lbnRLZXlEO0s7NjtDUCRVSURkOzI7NjNFO0s7MzE7Q1BUZXh0RmllbGRQbGFjZWhvbGRlclN0cmluZ0tleUQ7Szs2O0NQJFVJRGQ7MTswRTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjsxMEU7SzsyNztfQ1BDaWJDdXN0b21PYmplY3RDbGFzc05hbWVEO0s7NjtDUCRVSURkOzI7OTBFO0U7Uzs4O0NQT2JqZWN0RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RTtFO1M7MTQ7X3NsaWRlckFjdGlvbjpTOzIzO3ZhbHVlOiBvYmplY3RWYWx1ZS5uYW1lUzs1O3ZhbHVlUzsxNjtvYmplY3RWYWx1ZS5uYW1lRDtLOzEwOyRjbGFzc25hbWVTOzEyO0NQRGljdGlvbmFyeUs7ODskY2xhc3Nlc0E7UzsxMjtDUERpY3Rpb25hcnlTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzM2RTtLOzEwO0NQLm9iamVjdHNEO0U7RTtTOzI1O3ZhbHVlOiBvYmplY3RWYWx1ZS5zbGlkZXJTOzE4O29iamVjdFZhbHVlLnNsaWRlckQ7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjszNkU7SzsxMDtDUC5vYmplY3RzRDtLOzIyO0NQVmFsaWRhdGVzSW1tZWRpYXRlbHlEO0s7NjtDUCRVSURkOzI7NzNFO0U7RTtTOzI1O2hpZGRlbjogdmFyaWFibGVSb3dIZWlnaHRTOzY7aGlkZGVuUzsxNzt2YXJpYWJsZVJvd0hlaWdodEQ7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MjszNkU7SzsxMDtDUC5vYmplY3RzRDtLOzIyO0NQVmFsdWVUcmFuc2Zvcm1lck5hbWVEO0s7NjtDUCRVSURkOzI7OTFFO0U7RTtkOzE7MFM7MTk7e3swLCAwfSwgezIzNCwgODJ9fUQ7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7MTszRTtLOzEwO0NQLm9iamVjdHNBO0Q7Szs2O0NQJFVJRGQ7MjsyM0U7RTtFO2Q7Mjs0NVM7Njtub3JtYWxTOzU7cGxhY2VTOzE5O3t7MywgM30sIHsyMjgsIDc2fX1TOzE5O3t7MCwgMH0sIHsyMjgsIDc2fX1EO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtEO0s7NjtDUCRVSURkOzI7NjZFO0U7RTtkOzI7MThTOzM7Ym94RDtLOzEwOyRjbGFzc25hbWVTOzc7Q1BDb2xvcks7ODskY2xhc3Nlc0E7Uzs3O0NQQ29sb3JTOzg7Q1BPYmplY3RFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzU2RTtLOzIwO0NQQ29sb3JDb21wb25lbnRzS2V5RDtLOzY7Q1AkVUlEZDsyOzkzRTtFO0Q7Szs2OyRjbGFzc0Q7Szs2O0NQJFVJRGQ7Mjs1NkU7SzsyMDtDUENvbG9yQ29tcG9uZW50c0tleUQ7Szs2O0NQJFVJRGQ7Mjs5NEU7RTtkOzE7MmQ7MTs1RDtLOzEwOyRjbGFzc25hbWVTOzIxO19DUEtleWVkQXJjaGl2ZXJWYWx1ZUs7ODskY2xhc3Nlc0E7UzsyMTtfQ1BLZXllZEFyY2hpdmVyVmFsdWVTOzc7Q1BWYWx1ZVM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7NjFFO0s7MTU7Q1BWYWx1ZVZhbHVlS2V5RDtLOzY7Q1AkVUlEZDsyOzk1RTtFO2Q7MTs0ZDsxOzFTOzM7Qm94RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzkyRTtLOzI3O0NQUmVzcG9uZGVyTmV4dFJlc3BvbmRlcktleUQ7Szs2O0NQJFVJRGQ7MjsyM0U7SzsxODtDUFJlc3BvbmRlck1lbnVLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzsxMjtDUFZpZXdUYWdLZXlEO0s7NjtDUCRVSURkOzI7NDVFO0s7MTQ7Q1BWaWV3RnJhbWVLZXlEO0s7NjtDUCRVSURkOzM7MTAxRTtLOzE1O0NQVmlld0JvdW5kc0tleUQ7Szs2O0NQJFVJRGQ7MzsxMDJFO0s7MTc7Q1BWaWV3U3Vidmlld3NLZXlEO0s7NjtDUCRVSURkOzM7MTAzRTtLOzE4O0NQVmlld1N1cGVydmlld0tleUQ7Szs2O0NQJFVJRGQ7MjsyM0U7SzsyMjtDUFZpZXdBdXRvcmVzaXppbmdNYXNrRDtLOzY7Q1AkVUlEZDsyOzU0RTtLOzE5O0NQVmlld1RoZW1lQ2xhc3NLZXlEO0s7NjtDUCRVSURkOzE7MEU7SzsxOTtDUFZpZXdUaGVtZVN0YXRlS2V5RDtLOzY7Q1AkVUlEZDsyOzQ5RTtLOzIwO0NQUmV1c2VJZGVudGlmaWVyS2V5RDtLOzY7Q1AkVUlEZDszOzEwNEU7RTtTOzIxO3t7MTMwLCA0MX0sIHs4MiwgMTd9fVM7MTg7e3swLCAwfSwgezgyLCAxN319ZDsyOzQxUzs5O3RleHRmaWVsZEQ7SzsxMDskY2xhc3NuYW1lUzs2O0NQRm9udEs7ODskY2xhc3Nlc0E7Uzs2O0NQRm9udFM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7NzFFO0s7MTM7Q1BGb250TmFtZUtleUQ7Szs2O0NQJFVJRGQ7Mjs5NkU7SzsxMztDUEZvbnRTaXplS2V5RDtLOzY7Q1AkVUlEZDsyOzk3RTtLOzE1O0NQRm9udElzQm9sZEtleUQ7Szs2O0NQJFVJRGQ7Mjs3M0U7SzsxNztDUEZvbnRJc0l0YWxpY0tleUQ7Szs2O0NQJFVJRGQ7Mjs3NUU7SzsxNztDUEZvbnRJc1N5c3RlbUtleUQ7Szs2O0NQJFVJRGQ7Mjs3M0U7RTtUO1M7MTA7Um93IEhlaWdodEY7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzU2RTtLOzIwO0NQQ29sb3JDb21wb25lbnRzS2V5RDtLOzY7Q1AkVUlEZDsyOzk4RTtFO1M7MjE7e3sxMiwgMjZ9LCB7MjAwLCAyMX19UzsxOTt7ezAsIDB9LCB7MjAwLCAyMX19ZDsyOzQyUzs2O3NsaWRlcmQ7MzsxMDBkOzI7NTBkOzM7MjAwUzsyMDt7ezEyLCAxMH0sIHs5OSwgMjJ9fVM7MTg7e3swLCAwfSwgezk5LCAyMn19ZDsyOzM0RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsyOzcxRTtLOzEzO0NQRm9udE5hbWVLZXlEO0s7NjtDUCRVSURkOzI7OTZFO0s7MTM7Q1BGb250U2l6ZUtleUQ7Szs2O0NQJFVJRGQ7Mjs5OUU7SzsxNTtDUEZvbnRJc0JvbGRLZXlEO0s7NjtDUCRVSURkOzI7NzVFO0s7MTc7Q1BGb250SXNJdGFsaWNLZXlEO0s7NjtDUCRVSURkOzI7NzVFO0s7MTc7Q1BGb250SXNTeXN0ZW1LZXlEO0s7NjtDUCRVSURkOzI7NzNFO0U7Uzs0O0NpdHlEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzI7NTZFO0s7MjA7Q1BDb2xvckNvbXBvbmVudHNLZXlEO0s7NjtDUCRVSURkOzM7MTAwRTtFO1M7MTM7Q1BBcHBsaWNhdGlvblM7MTU7Q1BOZWdhdGVCb29sZWFuRDtLOzEwOyRjbGFzc25hbWVTOzY7Q1BWaWV3Szs4OyRjbGFzc2VzQTtTOzY7Q1BWaWV3UzsxMTtDUFJlc3BvbmRlclM7ODtDUE9iamVjdEU7RTtEO0s7NjskY2xhc3NEO0s7NjtDUCRVSURkOzE7M0U7SzsxMDtDUC5vYmplY3RzQTtEO0s7NjtDUCRVSURkOzM7MTA1RTtEO0s7NjtDUCRVSURkOzM7MTA2RTtEO0s7NjtDUCRVSURkOzM7MTA3RTtEO0s7NjtDUCRVSURkOzM7MTA4RTtFO0U7RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RDtLOzY7Q1AkVUlEZDszOzEwOUU7RDtLOzY7Q1AkVUlEZDszOzExMEU7RDtLOzY7Q1AkVUlEZDszOzExMUU7RDtLOzY7Q1AkVUlEZDsyOzY0RTtFO0U7UzsyMjt7IndpZHRoIjowLCJoZWlnaHQiOjB9UzsyODtfQ1BGb250U3lzdGVtRmFjZVBsYWNlaG9sZGVyZDsyOzE0RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RDtLOzY7Q1AkVUlEZDszOzExMkU7RDtLOzY7Q1AkVUlEZDszOzExMkU7RDtLOzY7Q1AkVUlEZDszOzExMkU7RDtLOzY7Q1AkVUlEZDsyOzY0RTtFO0U7ZDsyOy0xRDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RDtLOzY7Q1AkVUlEZDsyOzY0RTtEO0s7NjtDUCRVSURkOzI7NjRFO0Q7Szs2O0NQJFVJRGQ7Mjs2NEU7RDtLOzY7Q1AkVUlEZDsyOzY0RTtFO0U7UzsxOTt7ezIsIDJ9LCB7MjI0LCA3Mn19UzsxOTt7ezAsIDB9LCB7MjI0LCA3Mn19RDtLOzY7JGNsYXNzRDtLOzY7Q1AkVUlEZDsxOzNFO0s7MTA7Q1Aub2JqZWN0c0E7RDtLOzY7Q1AkVUlEZDsyOzI4RTtEO0s7NjtDUCRVSURkOzI7MjdFO0Q7Szs2O0NQJFVJRGQ7MjsyNUU7RTtFO1M7NjtfTlM6MTFmOzEyOzAuMjk0MTE3NjQ3MWY7MTE7MC41MzcyNTQ5MDJmOzEyOzAuODE1Njg2Mjc0NWY7NDswLjEyZjsxMjswLjI4NDQzMTcwMzZmOzEyOzAuNDM1NzY3Mzg5MWY7MTI7MC42OTg4NDA3MjU4ZjsxODswLjY4NjI3NDUwOTgwMzkyMTZFO0s7OTskYXJjaGl2ZXJTOzE1O0NQS2V5ZWRBcmNoaXZlcks7ODskdmVyc2lvblM7NjsxMDAwMDBFOw==D;K;10;$classnameS;19;_CPImageAndTextViewK;8;$classesA;S;19;_CPImageAndTextViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;378E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;186E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;321E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;321E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;186E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;159E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;188E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;405E;D;K;6;CP$UIDd;3;405E;D;K;6;CP$UIDd;3;405E;D;K;6;CP$UIDd;3;203E;E;E;d;2;11S;4;fontD;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;406E;K;6;normalD;K;6;CP$UIDd;3;407E;E;E;S;19;{{2, 2}, {224, 72}}S;19;{{0, 0}, {224, 72}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;E;E;f;12;0.2941176471f;11;0.537254902f;12;0.8156862745f;4;0.12f;12;0.2844317036f;12;0.4357673891f;12;0.6988407258f;18;0.6862745098039216d;2;52D;K;6;$classD;K;6;CP$UIDd;3;378E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;260E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;321E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;321E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;260E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;159E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;188E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;E;D;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;406E;K;6;normalD;K;6;CP$UIDd;3;407E;E;E;f;12;0.9547001008D;K;6;$classD;K;6;CP$UIDd;3;378E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;274E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;321E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;321E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;274E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;159E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;188E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;E;D;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;406E;K;6;normalD;K;6;CP$UIDd;3;407E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;378E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;285E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;321E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;321E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;285E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;159E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;188E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;E;D;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;406E;K;6;normalD;K;6;CP$UIDd;3;407E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;378E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;289E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;321E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;321E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;289E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;159E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;3;188E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;155E;E;D;K;6;$classD;K;6;CP$UIDd;3;105E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;406E;K;6;normalD;K;6;CP$UIDd;3;407E;E;E;f;18;0.5019607843137255D;K;6;$classD;K;6;CP$UIDd;3;210E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;408E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;409E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;165E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;188E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;188E;E;D;K;6;$classD;K;6;CP$UIDd;3;210E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;348E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;409E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;188E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;188E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;165E;E;S;17;Arial, sans-serifd;2;12E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Tests/Manual/TableTest/ViewBasedCib/Resources/MainMenu.xib b/Tests/Manual/TableTest/ViewBasedCib/Resources/MainMenu.xib new file mode 100644 index 000000000..6efbb62c5 --- /dev/null +++ b/Tests/Manual/TableTest/ViewBasedCib/Resources/MainMenu.xib @@ -0,0 +1,1740 @@ + + + + 1070 + 11G63 + 2844 + 1138.51 + 569.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 2844 + + + YES + NSArrayController + NSBox + NSButton + NSButtonCell + NSCustomObject + NSImageCell + NSImageView + NSScrollView + NSScroller + NSSegmentedCell + NSSegmentedControl + NSSlider + NSSliderCell + NSTableCellView + NSTableColumn + NSTableHeaderView + NSTableView + NSTextField + NSTextFieldCell + NSView + NSWindowTemplate + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + YES + + NSApplication + + + FirstResponder + + + NSApplication + + + 7 + 2 + {{335, 390}, {994, 356}} + 1946157056 + Window + NSWindow + + + + + 256 + + YES + + + 274 + + YES + + + 2304 + + YES + + + 256 + {993, 294} + + + + _NS:13 + YES + + + 256 + {993, 17} + + + + _NS:16 + + + + + -2147483392 + {{224, 0}, {16, 17}} + + + + _NS:19 + + + YES + + multiple + 234 + 40 + 1000 + + 75497536 + 2048 + Multiple Cells + + LucidaGrande + 11 + 3100 + + + 3 + MC4zMzMzMzI5ODU2AA + + + 6 + System + headerTextColor + + 3 + MAA + + + + + 337696320 + 2048 + Text Cell + + LucidaGrande + 13 + 1044 + + + + 6 + System + controlBackgroundColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + + + 3 + YES + YES + + + + 147 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Editable Non Bezeled + + + 6 + System + headerColor + + 3 + MQA + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 284 + 40 + 1000 + + 75584576 + 2048 + Editable Bezeled + + + + + + 337728576 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + Orange + 149 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Created In Code + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + TableCellView + 164 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + External Cib + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 3 + 2 + + 6 + System + alternateSelectedControlColor + + 1 + MCAwIDEAA + + + + 3 + MC43OTk3NDE2ODM1AA + + 87 + -20971520 + + + 3 + 4 + 15 + 0 + YES + 0 + 1 + + + {{1, 17}, {993, 294}} + + + + _NS:11 + + + 4 + + + + -2147483392 + {{224, 17}, {15, 102}} + + + + _NS:58 + + _doScroller: + 0.95956873315363878 + + + + -2147483392 + {{1, 373}, {755, 15}} + + + + _NS:60 + 1 + + _doScroller: + 0.99689440993788825 + + + + 2304 + + YES + + + {{1, 0}, {993, 17}} + + + + _NS:15 + + + 4 + + + + {{0, -1}, {995, 312}} + + + + _NS:9 + 133682 + + + + + + QSAAAEEgAABCsgAAQrIAAA + + + + 265 + {{828, 320}, {150, 18}} + + + + _NS:9 + YES + + -2080374784 + 268435456 + Variable Row Height + + _NS:9 + + 1210863872 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + + + {994, 356} + + + + + {{0, 0}, {1680, 1028}} + {10000000000000, 10000000000000} + YES + + + AppController + + + TableViewDelegate + + + YES + + YES + YES + YES + YES + YES + + + + + YES + + + delegate + + + + 451 + + + + tableView + + + + 488 + + + + theWindow + + + + 596 + + + + content: arrangedObjects + + + + + + content: arrangedObjects + content + arrangedObjects + 2 + + + 572 + + + + delegate + + + + 661 + + + + dataSource + + + + 698 + + + + value: objectValue.image.name + + + 270 + {{0, 66}, {82, 22}} + + + {250, 750} + YES + + 67239488 + 272631808 + Name + + + + 6 + System + textBackgroundColor + + + + 6 + System + textColor + + + + + + + 301 + + YES + + + + 313 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{146, 6}, {88, 85}} + + + _NS:9 + YES + + 134217728 + 33554432 + _NS:9 + 0 + 3 + 2 + NO + + YES + + + + 268 + {{1, 43}, {60, 18}} + + + _NS:9 + YES + + -2080374784 + 0 + show + + _NS:9 + + 1211912448 + 2 + + + + + 200 + 25 + + + + {{1, 1}, {234, 91}} + + + + + + value: objectValue.image.name + value + objectValue.image.name + + YES + + YES + NSAllowsEditingMultipleValuesSelection + NSRaisesForNotApplicableKeys + + + YES + + + + + 2 + + + 701 + + + + value: objectValue.slider + + + 298 + {{10, 25}, {204, 21}} + + + _NS:9 + YES + + -2080374784 + 0 + + _NS:9 + + 200 + 50 + 100 + 0.0 + 0 + 1 + NO + NO + + + + + 301 + + YES + + + 18 + + YES + + + 274 + + YES + + + 266 + {{9, 40}, {105, 22}} + + + _NS:20 + {250, 750} + YES + + 67108928 + 272631808 + City + + _NS:20 + + + + + + + + + 297 + {{127, 14}, {88, 17}} + + + _NS:1535 + YES + + 68157504 + 272630784 + Row Height + + LucidaGrande-Bold + 14 + 16 + + _NS:1535 + + + 6 + System + controlColor + + + + + + + {{2, 2}, {224, 72}} + + + _NS:11 + + + {{3, 3}, {228, 76}} + + + _NS:9 + {0, 0} + + 67108864 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 4 + 0 + NO + + 5 + + 1 + MC4yODQ0MzE3MDM2IDAuNDM1NzY3Mzg5MSAwLjY5ODg0MDcyNTgAA + + + 1 + MC4yOTQxMTc2NDcxIDAuNTM3MjU0OTAyIDAuODE1Njg2Mjc0NSAwLjEyAA + + 1 + + + + + {{1, 94}, {234, 82}} + + _NS:9 + + + + + value: objectValue.slider + value + objectValue.slider + + NSValidatesImmediately + + + 2 + + + 715 + + + + hidden: objectValue.show + + + + + + hidden: objectValue.show + hidden + objectValue.show + + NSValueTransformerName + NSNegateBoolean + + 2 + + + 594 + + + + valueURL: objectValue.image.path + + + + + + valueURL: objectValue.image.path + valueURL + objectValue.image.path + + YES + + YES + NSAllowsEditingMultipleValuesSelection + NSConditionallySetsEnabled + NSRaisesForNotApplicableKeys + + + YES + + + + + + 2 + + + 697 + + + + contentArray: content + + + + + + contentArray: content + contentArray + content + 2 + + + 505 + + + + value: objectValue.value + + + 298 + {{12, 25}, {259, 36}} + + + _NS:20 + {250, 750} + YES + + 341835777 + 272629760 + Editable Text + + LucidaGrande + 26 + 16 + + _NS:20 + + YES + + 3 + MC45NTQ3MDAxMDA4AA + + + + + + + 301 + + YES + + + {{388, 1}, {284, 86}} + + _NS:9 + + + + + value: objectValue.value + value + objectValue.value + 2 + + + 588 + + + + value: objectValue + + + + + + value: objectValue + value + objectValue + 2 + + + 574 + + + + value: objectValue.name + + + + + + value: objectValue.name + value + objectValue.name + 2 + + + 591 + + + + value: objectValue.show + + + + + + value: objectValue.show + value + objectValue.show + 2 + + + 590 + + + + value: objectValue.identifier + + + 271 + {{0, 62}, {234, 22}} + + + _NS:20 + {250, 750} + YES + + 67108928 + 138414080 + Text + + _NS:20 + + + + + + + + 301 + + YES + + + + 261 + {{35, 30}, {164, 24}} + + + _NS:9 + YES + + 67108864 + 0 + + LucidaGrande + 13 + 16 + + _NS:9 + + + YES + + 52 + + 0 + + + 52 + + 1 + YES + 0 + + + 52 + 0 + + + 1 + 1 + + + + {{1, 178}, {234, 87}} + + _NS:9 + + + + + value: objectValue.identifier + value + objectValue.identifier + 2 + + + 593 + + + + value: objectValue.value + + + 266 + {{0, 57}, {147, 22}} + + + {250, 750} + 666 + YES + + 337772097 + 272631808 + Editable Text + + + + + + + + + 301 + + YES + + + {{238, 1}, {147, 87}} + + + + + + value: objectValue.value + value + objectValue.value + 2 + + + 629 + + + + _sliderAction: + + + + 655 + + + + _textFieldBezeledAction: + + + + 656 + + + + _textFieldNotBezeledAction: + + + + 657 + + + + personView + + + + 658 + + + + placeView + + + + 659 + + + + contentController + + + + 694 + + + + value: variableRowHeight + + + + + + value: variableRowHeight + value + variableRowHeight + 2 + + + 714 + + + + hidden: variableRowHeight + + + + + + hidden: variableRowHeight + hidden + variableRowHeight + + NSValueTransformerName + NSNegateBoolean + + 2 + + + 719 + + + + + YES + + 0 + + YES + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 371 + + + YES + + + + + + 372 + + + YES + + + + + + + 450 + + + + + 460 + + + YES + + + + + + + + + 461 + + + YES + + + + + + + + + + 462 + + + + + 463 + + + + + 464 + + + + + 465 + + + YES + + + + + + + + + 466 + + + YES + + + + + + + 467 + + + + + 468 + + + + + 469 + + + YES + + + + + + + + 470 + + + YES + + + + + + 471 + + + + + 494 + + + YES + + + + + + 495 + + + + + 503 + + + + + 521 + + + YES + + + + + + 523 + + + YES + + + + + + 524 + + + + + 535 + + + YES + + + + + + 546 + + + YES + + + + + + + + 537 + + + YES + + + + + + 538 + + + + + 547 + + + YES + + + + + + + 549 + + + YES + + + + + + 550 + + + + + 492 + + + YES + + + + + + 493 + + + + + 542 + + + YES + + + + + + 543 + + + + + 599 + + + YES + + + + + + 600 + + + + + 622 + + + YES + + + + + + + 623 + + + + + 624 + + + YES + + + + + + 625 + + + YES + + + + + + 626 + + + + + 633 + + + YES + + + + + + 634 + + + + + 639 + + + YES + + + + + + 640 + + + + + 652 + + + + + 710 + + + YES + + + + + + 711 + + + + + 716 + + + YES + + + + + + 717 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 371.IBPluginDependency + 371.IBWindowTemplateEditedContentRect + 371.NSWindowTemplate.visibleAtLaunch + 372.IBPluginDependency + 450.IBPluginDependency + 460.IBPluginDependency + 461.IBPluginDependency + 461.ibExternalAutomaticallyCalculatesRowSizeFromViewHeight + 462.IBPluginDependency + 463.IBPluginDependency + 464.IBPluginDependency + 465.IBPluginDependency + 465.isInViewBasedMode + 465.prototypeCellViews + 466.IBPluginDependency + 466.isInViewBasedMode + 466.prototypeCellViews + 467.IBPluginDependency + 468.IBPluginDependency + 469.IBPluginDependency + 469.userInterfaceItemIdentifier + 470.IBPluginDependency + 471.IBPluginDependency + 492.IBPluginDependency + 493.IBPluginDependency + 494.IBPluginDependency + 495.IBPluginDependency + 503.IBPluginDependency + 521.IBPluginDependency + 523.IBPluginDependency + 524.IBPluginDependency + 535.IBPluginDependency + 535.userInterfaceItemIdentifier + 537.IBPluginDependency + 538.IBPluginDependency + 542.IBPluginDependency + 543.IBPluginDependency + 546.IBPluginDependency + 547.IBPluginDependency + 547.userInterfaceItemIdentifier + 549.IBPluginDependency + 550.IBPluginDependency + 599.IBPluginDependency + 600.IBPluginDependency + 622.IBPluginDependency + 622.isInViewBasedMode + 622.prototypeCellViews + 623.IBPluginDependency + 624.IBPluginDependency + 625.IBPluginDependency + 626.IBPluginDependency + 633.IBPluginDependency + 633.isInViewBasedMode + 634.IBPluginDependency + 639.IBPluginDependency + 639.isInViewBasedMode + 640.IBPluginDependency + 652.IBPluginDependency + 710.IBPluginDependency + 711.IBPluginDependency + 716.IBPluginDependency + 717.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{303, 221}, {480, 360}} + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + + + + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + person + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + place + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + multiple + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + + + + YES + + + + + 719 + + + + YES + + AppController + NSObject + + IBProjectSource + ./Classes/AppController.h + + + + TableViewDelegate + NSObject + + IBProjectSource + ./Classes/TableViewDelegate.h + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + 3 + + NSSwitch + {15, 15} + + + diff --git a/Tests/Manual/TableTest/ViewBasedCib/Resources/TableCellView.cib b/Tests/Manual/TableTest/ViewBasedCib/Resources/TableCellView.cib new file mode 100644 index 000000000..9639dfe50 --- /dev/null +++ b/Tests/Manual/TableTest/ViewBasedCib/Resources/TableCellView.cib @@ -0,0 +1 @@ +280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;0E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;4E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;0E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;1;7E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;1;9E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;11E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;13E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;15E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;17E;D;K;6;CP$UIDd;2;18E;D;K;6;CP$UIDd;2;19E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;45E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;37E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;46E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;2;47E;E;D;K;10;$classnameS;20;CPCibOutletConnectorK;8;$classesA;S;20;CPCibOutletConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;11E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;31E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;48E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;11E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;35E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;49E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;11E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;33E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;50E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;11E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;31E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;51E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;31E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;35E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;49E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;31E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;33E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;50E;E;D;K;10;$classnameS;21;CPCibBindingConnectorK;8;$classesA;S;21;CPCibBindingConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;43E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;11E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;52E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;53E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;54E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;56E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;37E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;43E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;57E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;58E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;59E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;60E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;37E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;43E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;61E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;62E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;59E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;63E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;37E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;43E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;64E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;65E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;66E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;37E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;31E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;68E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;69E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;70E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;71E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;37E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;31E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;72E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;73E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;70E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;74E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;35E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;31E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;75E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;76E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;77E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;78E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;79E;E;D;K;10;$classnameS;15;CPTableCellViewK;8;$classesA;S;15;CPTableCellViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;80E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;81E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;81E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;82E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;83E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;84E;E;D;K;10;$classnameS;11;CPTextFieldK;8;$classesA;S;11;CPTextFieldS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;32E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;31E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;80E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;85E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;86E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;31E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;87E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;88E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;84E;K;11;$aalignmentD;K;6;CP$UIDd;2;89E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;89E;K;6;$afontD;K;6;CP$UIDd;2;91E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;92E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;93E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;89E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;2;94E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;2;94E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;2;94E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;2;96E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;89E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;89E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;11;CPImageViewK;8;$classesA;S;11;CPImageViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;31E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;80E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;97E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;98E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;31E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;99E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;84E;K;11;$aalignmentD;K;6;CP$UIDd;2;80E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;80E;K;15;$aimage-scalingD;K;6;CP$UIDd;2;80E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;101E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;89E;K;23;CPImageViewHasShadowKeyD;K;6;CP$UIDd;1;0E;K;28;CPImageViewImageAlignmentKeyD;K;6;CP$UIDd;2;80E;E;D;K;10;$classnameS;13;CPPopUpButtonK;8;$classesA;S;13;CPPopUpButtonS;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;36E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;31E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;2;45E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;80E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;102E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;103E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;31E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;104E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;105E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;106E;K;11;$aalignmentD;K;6;CP$UIDd;2;80E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;89E;K;6;$afontD;K;6;CP$UIDd;3;107E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;80E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;89E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;1;0E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;108E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;94E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;109E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;2;80E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;2;92E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;110E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;2;80E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;111E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;37E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;112E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;113E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;45E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;114E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;115E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;37E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;112E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;45E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;114E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;116E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;37E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;112E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;45E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;114E;E;D;K;10;$classnameS;17;CPArrayControllerK;8;$classesA;S;17;CPArrayControllerS;18;CPObjectControllerS;12;CPControllerS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;42E;K;28;CPObjectControllerContentKeyD;K;6;CP$UIDd;1;0E;K;36;CPObjectControllerObjectClassNameKeyD;K;6;CP$UIDd;3;117E;K;31;CPObjectControllerIsEditableKeyD;K;6;CP$UIDd;2;94E;K;49;CPObjectControllerAutomaticallyPreparesContentKeyD;K;6;CP$UIDd;2;94E;K;37;CPArrayControllerAvoidsEmptySelectionD;K;6;CP$UIDd;2;92E;K;49;CPArrayControllerClearsFilterPredicateOnInsertionD;K;6;CP$UIDd;2;94E;K;41;CPArrayControllerFilterRestrictsInsertionD;K;6;CP$UIDd;2;92E;K;35;CPArrayControllerPreservesSelectionD;K;6;CP$UIDd;2;92E;K;39;CPArrayControllerSelectsInsertedObjectsD;K;6;CP$UIDd;2;92E;K;47;CPArrayControllerAlwaysUsesMultipleValuesMarkerD;K;6;CP$UIDd;2;94E;K;47;CPArrayControllerAutomaticallyRearrangesObjectsD;K;6;CP$UIDd;2;92E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;44E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;118E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;119E;E;S;17;TableViewDelegateD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;S;12;externalViewS;9;imageViewS;9;textFieldS;4;viewS;20;contentArray: imagesS;12;contentArrayS;6;imagesD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;55E;K;10;CP.objectsD;K;22;CPValidatesImmediatelyD;K;6;CP$UIDd;2;92E;E;E;S;24;content: arrangedObjectsS;7;contentS;15;arrangedObjectsD;K;6;$classD;K;6;CP$UIDd;2;55E;K;10;CP.objectsD;E;E;S;31;contentObjects: arrangedObjectsS;14;contentObjectsD;K;6;$classD;K;6;CP$UIDd;2;55E;K;10;CP.objectsD;E;E;S;35;contentValues: arrangedObjects.nameS;13;contentValuesS;20;arrangedObjects.nameD;K;6;$classD;K;6;CP$UIDd;2;55E;K;10;CP.objectsD;E;E;S;33;selectedObject: objectValue.imageS;14;selectedObjectS;17;objectValue.imageD;K;6;$classD;K;6;CP$UIDd;2;55E;K;10;CP.objectsD;K;22;CPValidatesImmediatelyD;K;6;CP$UIDd;2;92E;E;E;S;25;hidden: objectValue.imageS;6;hiddenD;K;6;$classD;K;6;CP$UIDd;2;55E;K;10;CP.objectsD;K;22;CPValueTransformerNameD;K;6;CP$UIDd;3;120E;E;E;S;32;valueURL: objectValue.image.pathS;8;valueURLS;22;objectValue.image.pathD;K;6;$classD;K;6;CP$UIDd;2;55E;K;10;CP.objectsD;K;22;CPValidatesImmediatelyD;K;6;CP$UIDd;2;92E;E;E;S;13;CPApplicationd;1;0S;20;{{0, 0}, {375, 108}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;37E;E;E;d;2;18S;6;normalS;22;{{107, 46}, {161, 17}}S;19;{{0, 0}, {161, 17}}d;2;45S;9;textfieldd;1;4D;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;121E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;122E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;94E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;94E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;2;92E;E;T;S;24;Loaded From External CibF;D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;95E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;123E;E;S;19;{{3, 16}, {69, 77}}S;18;{{0, 0}, {69, 77}}d;2;20D;K;10;$classnameS;20;_CPCibCustomResourceK;8;$classesA;S;20;_CPCibCustomResourceS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;100E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;124E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;125E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;126E;E;S;21;{{79, 13}, {160, 25}}S;19;{{0, 0}, {160, 25}}d;2;36S;12;popup-buttonS;8;borderedD;K;6;$classD;K;6;CP$UIDd;2;90E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;121E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;122E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;92E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;94E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;2;92E;E;S;0;d;2;12d;1;2S;6;Item 1S;17;_popUpItemAction:d;1;1d;7;1048576S;6;Item 2S;6;Item 3S;19;CPMutableDictionaryS;10;OtherViewsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;E;E;S;7;CPIsNilS;28;_CPFontSystemFacePlaceholderd;2;-1D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;113E;E;E;S;7;CPImageS;8;brad.jpgD;K;6;$classD;K;6;CP$UIDd;2;55E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;129E;E;E;f;18;0.6862745098039216D;K;10;$classnameS;21;_CPKeyedArchiverValueK;8;$classesA;S;21;_CPKeyedArchiverValueS;7;CPValueS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;128E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;130E;E;S;26;{"width":100,"height":134}E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Tests/Manual/TableTest/ViewBasedCib/Resources/TableCellView.xib b/Tests/Manual/TableTest/ViewBasedCib/Resources/TableCellView.xib new file mode 100644 index 000000000..2aff333ee --- /dev/null +++ b/Tests/Manual/TableTest/ViewBasedCib/Resources/TableCellView.xib @@ -0,0 +1,548 @@ + + + + 1070 + 11G63 + 2844 + 1138.51 + 569.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 2844 + + + NSArrayController + NSCustomObject + NSImageCell + NSImageView + NSMenu + NSMenuItem + NSPopUpButton + NSPopUpButtonCell + NSTableCellView + NSTextField + NSTextFieldCell + + + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + + TableViewDelegate + + + FirstResponder + + + NSApplication + + + + 274 + + + + 276 + + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + {{3, 15}, {69, 77}} + + + + _NS:11 + YES + + 134217728 + 33554432 + + NSImage + brad + + _NS:11 + 0 + 0 + 0 + NO + + YES + + + + 301 + {{104, 45}, {167, 17}} + + + + _NS:20 + {250, 750} + YES + + 67108928 + 272631808 + Loaded From External Cib + + LucidaGrande + 13 + 1044 + + _NS:20 + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 268 + {{77, 68}, {165, 26}} + + + + _NS:9 + YES + + -2076049856 + 2048 + + _NS:9 + + 109199360 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + + + YES + + OtherViews + + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + {375, 108} + + + + _NS:9 + + + + YES + YES + YES + YES + YES + + + + + + + textField + + + + 22 + + + + imageView + + + + 23 + + + + view + + + + 24 + + + + externalView + + + + 25 + + + + imageView + + + + 6 + + + + textField + + + + 7 + + + + valueURL: objectValue.image.path + + + + + + valueURL: objectValue.image.path + valueURL + objectValue.image.path + + NSValidatesImmediately + + + 2 + + + 163 + + + + hidden: objectValue.image + + + + + + hidden: objectValue.image + hidden + objectValue.image + + NSValueTransformerName + NSIsNil + + 2 + + + 179 + + + + content: arrangedObjects + + + + + + content: arrangedObjects + content + arrangedObjects + 2 + + + 190 + + + + contentObjects: arrangedObjects + + + + + + contentObjects: arrangedObjects + contentObjects + arrangedObjects + + 2 + + + 191 + + + + contentValues: arrangedObjects.name + + + + + + contentValues: arrangedObjects.name + contentValues + arrangedObjects.name + + 2 + + + 192 + + + + selectedObject: objectValue.image + + + + + + selectedObject: objectValue.image + selectedObject + objectValue.image + + NSValidatesImmediately + + + + 2 + + + 193 + + + + contentArray: images + + + + + + contentArray: images + contentArray + images + + NSValidatesImmediately + + + 2 + + + 154 + + + + + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + + + + + + + + 2 + + + + + + + + 3 + + + + + + + + 4 + + + + + 5 + + + + + 26 + + + + + + + + 27 + + + + + + + + 28 + + + + + + + + + + 29 + + + + + 30 + + + + + 31 + + + + + 41 + + + + + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + + + 193 + + + + + TableViewDelegate + NSObject + + IBProjectSource + ./Classes/TableViewDelegate.h + + + + + 0 + IBCocoaFramework + YES + 3 + + {11, 11} + {10, 3} + {100, 134} + + + diff --git a/Tests/Manual/TableTest/ViewBasedCib/Resources/brad.jpg b/Tests/Manual/TableTest/ViewBasedCib/Resources/brad.jpg new file mode 100644 index 000000000..9bb7ab22f Binary files /dev/null and b/Tests/Manual/TableTest/ViewBasedCib/Resources/brad.jpg differ diff --git a/Tests/Manual/TableTest/ViewBasedCib/Resources/george.jpg b/Tests/Manual/TableTest/ViewBasedCib/Resources/george.jpg new file mode 100644 index 000000000..6d65b24f6 Binary files /dev/null and b/Tests/Manual/TableTest/ViewBasedCib/Resources/george.jpg differ diff --git a/Tests/Manual/TableTest/ViewBasedCib/Resources/john.jpg b/Tests/Manual/TableTest/ViewBasedCib/Resources/john.jpg new file mode 100644 index 000000000..43132a09f Binary files /dev/null and b/Tests/Manual/TableTest/ViewBasedCib/Resources/john.jpg differ diff --git a/Tests/Manual/TableTest/ViewBasedCib/Resources/na.png b/Tests/Manual/TableTest/ViewBasedCib/Resources/na.png new file mode 100644 index 000000000..d98ee162f Binary files /dev/null and b/Tests/Manual/TableTest/ViewBasedCib/Resources/na.png differ diff --git a/Tests/Manual/TableTest/ViewBasedCib/Resources/spinner.gif b/Tests/Manual/TableTest/ViewBasedCib/Resources/spinner.gif new file mode 100644 index 000000000..06dbc2bc2 Binary files /dev/null and b/Tests/Manual/TableTest/ViewBasedCib/Resources/spinner.gif differ diff --git a/Tests/Manual/TableTest/ViewBasedCib/index-debug.html b/Tests/Manual/TableTest/ViewBasedCib/index-debug.html new file mode 100644 index 000000000..fcf70860d --- /dev/null +++ b/Tests/Manual/TableTest/ViewBasedCib/index-debug.html @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + CPTableViewLionCibTest + + + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/TableTest/ViewBasedCib/index.html b/Tests/Manual/TableTest/ViewBasedCib/index.html new file mode 100644 index 000000000..f9c67fec8 --- /dev/null +++ b/Tests/Manual/TableTest/ViewBasedCib/index.html @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + CPTableViewLionCibTest + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/TableTest/ViewBasedCib/main.j b/Tests/Manual/TableTest/ViewBasedCib/main.j new file mode 100644 index 000000000..e8f935aed --- /dev/null +++ b/Tests/Manual/TableTest/ViewBasedCib/main.j @@ -0,0 +1,18 @@ +/* + * AppController.j + * CPTableViewLionCibTest + * + * Created by You on March 8, 2012. + * Copyright 2012, Your Company All rights reserved. + */ + +@import +@import + +@import "AppController.j" + + +function main(args, namedArgs) +{ + CPApplicationMain(args, namedArgs); +} diff --git a/Tests/Manual/ThemeBrowser/SCString.j b/Tests/Manual/ThemeBrowser/SCString.j index 1e5aeb1e1..67fc71965 100644 --- a/Tests/Manual/ThemeBrowser/SCString.j +++ b/Tests/Manual/ThemeBrowser/SCString.j @@ -494,7 +494,7 @@ SCKit = (function() { if (argsArray.length === 0) return template; - argsDict = [CPDictionary dictionary]; + argsDict = @{}; for (var i = 0; i < argsArray.length; ++i) [argsDict setObject:argsArray[i] forKey:String(i, 10)]; diff --git a/Tests/Objective-J/CFDictionaryTest.j b/Tests/Objective-J/CFDictionaryTest.j index 924d209fe..946022f01 100644 --- a/Tests/Objective-J/CFDictionaryTest.j +++ b/Tests/Objective-J/CFDictionaryTest.j @@ -20,7 +20,7 @@ { var dict = new CFMutableDictionary(); [self assert:0 equals:dict.countOfValue(@"123")]; - + dict.setValueForKey(@"abc", @"123"); [self assert:1 equals:dict.countOfValue(@"123")]; diff --git a/Tests/Objective-J/PassByReferenceTest.j b/Tests/Objective-J/PassByReferenceTest.j new file mode 100644 index 000000000..4a128d868 --- /dev/null +++ b/Tests/Objective-J/PassByReferenceTest.j @@ -0,0 +1,156 @@ +@import + +var addRef = function(aRef) + { + @deref(aRef) += 1; + }, + subtractRef = function(aRef) + { + @deref(aRef) -= 1; + }, + multiplyRef = function(aRef) + { + @deref(aRef) *= 2; + }, + divideRef = function(aRef) + { + @deref(aRef) /= 2; + }, + setRef = function(aRef) + { + @deref(aRef) = 5; + }, + getRef = function(aRef) + { + return @deref(aRef) + }, + incrementRefPrefix = function(aRef) + { + return ++@deref(aRef); + }, + incrementRefPostfix = function(aRef) + { + return @deref(aRef)++; + }, + decrementRefPrefix = function(aRef) + { + return --@deref(aRef); + }, + decrementRefPostfix = function(aRef) + { + return @deref(aRef)--; + }; + +@implementation PassByReferenceTest : OJTestCase + +- (void)testGetByReference +{ + var x = -1; + + [self assert:-1 equals:@deref(@ref(x))]; + [self assert:-1 equals:getRef(@ref(x))]; +} + +- (void)testSetByReference +{ + var x = -1; + + setRef(@ref(x)); + + [self assert:5 equals:x]; +} + +- (void)testAddByReference +{ + var x = -1; + + addRef(@ref(x)); + + [self assert:0 equals:x]; +} + +- (void)testSubtractByReference +{ + var x = -1; + + subtractRef(@ref(x)); + + [self assert:-2 equals:x]; +} + +- (void)testIncrementPrefixByReference +{ + var x = -1, + r = incrementRefPrefix(@ref(x)); + + [self assert:0 equals:r]; + [self assert:0 equals:x]; +} + +- (void)testIncrementPostfixByReference +{ + var x = -1, + r = incrementRefPostfix(@ref(x)); + + [self assert:-1 equals:r]; + [self assert:0 equals:x]; +} + +- (void)testDecrementPrefixByReference +{ + var x = -1, + r = decrementRefPrefix(@ref(x)); + + [self assert:-2 equals:r]; + [self assert:-2 equals:x]; +} + +- (void)testDecrementPostfixByReference +{ + var x = -1, + r = decrementRefPostfix(@ref(x)); + + [self assert:-1 equals:r]; + [self assert:-2 equals:x]; +} + +- (void)testMultiplyByReference +{ + var x = -1; + + multiplyRef(@ref(x)); + + [self assert:-2 equals:x]; +} + +- (void)testDivideByReference +{ + var x = -1; + + divideRef(@ref(x)); + + [self assert:-0.5 equals:x]; +} + +- (void)testComplexDereference +{ + var x = 1, + xRef = @ref(x), + xRefRef = @ref(xRef), + y = 10, + yRef = @ref(y), + yRefRef = @ref(yRef); + + var r = @deref(@deref(xRefRef))++; + + [self assert:1 equals:r]; + [self assert:2 equals:x]; + + var r = @deref(@deref(x == 1 ? xRefRef : yRefRef))++; + + [self assert:10 equals:r]; + [self assert:2 equals:x]; + [self assert:11 equals:y]; +} + +@end diff --git a/Tools/Editors/Emacs/README.txt b/Tools/Editors/Emacs/README.txt index 2e4d9e506..0ae28549d 100644 --- a/Tools/Editors/Emacs/README.txt +++ b/Tools/Editors/Emacs/README.txt @@ -18,8 +18,7 @@ Installation Add objc-c-mode.el and objj-mode.el to your load path and require objj-mode. - (add-to-list 'load-path "/path/to/objc-c-mode.el") - (add-to-list 'load-path "/path/to/objj-mode.el") + (add-to-list 'load-path "/path/to/cappuccino/Tools/Editors/Emacs/") (require 'objj-mode) Other diff --git a/Tools/Editors/Emacs/objj-mode.el b/Tools/Editors/Emacs/objj-mode.el index 6ffea6da0..6a80cbd7e 100644 --- a/Tools/Editors/Emacs/objj-mode.el +++ b/Tools/Editors/Emacs/objj-mode.el @@ -5,8 +5,7 @@ ;;; To install, save this somewhere and add the following to your .emacs file: ;;; -;;; (add-to-list 'load-path "/path/to/objc-c-mode.el") -;;; (add-to-list 'load-path "/path/to/objj-mode.el") +;;; (add-to-list 'load-path "/path/to/cappuccino/Tools/Editors/Emacs/") ;;; (require 'objj-mode) ;;; ;;; Features: diff --git a/Tools/capp/Configuration.j b/Tools/capp/Configuration.j index bd00efebf..c8070f7c9 100644 --- a/Tools/capp/Configuration.j +++ b/Tools/capp/Configuration.j @@ -24,7 +24,7 @@ var DefaultDictionary = nil, if (self !== [Configuration class]) return; - DefaultDictionary = [CPDictionary dictionary]; + DefaultDictionary = @{}; [DefaultDictionary setObject:@"You" forKey:@"user.name"]; [DefaultDictionary setObject:@"you@yourcompany.com" forKey:@"user.email"]; @@ -63,14 +63,14 @@ var DefaultDictionary = nil, if (self) { path = aPath; - temporaryDictionary = [CPDictionary dictionary]; + temporaryDictionary = @{}; if (path && FILE.isReadable(path)) dictionary = CFPropertyList.readPropertyListFromFile(path); // readPlist will return nil if the file is empty if (!dictionary) - dictionary = [CPDictionary dictionary]; + dictionary = @{}; } return self; diff --git a/Tools/capp/Resources/Templates/Application/AppController.j b/Tools/capp/Resources/Templates/Application/AppController.j index 5f90308e4..81fe8d0cf 100644 --- a/Tools/capp/Resources/Templates/Application/AppController.j +++ b/Tools/capp/Resources/Templates/Application/AppController.j @@ -6,8 +6,8 @@ * Copyright __project.year__, __organization.name__ All rights reserved. */ -@import - +@import +@import @implementation AppController : CPObject { diff --git a/Tools/capp/Resources/Templates/NibApplication/AppController.j b/Tools/capp/Resources/Templates/NibApplication/AppController.j index 82285810b..cb34bb65c 100644 --- a/Tools/capp/Resources/Templates/NibApplication/AppController.j +++ b/Tools/capp/Resources/Templates/NibApplication/AppController.j @@ -6,7 +6,8 @@ * Copyright __project.year__, __organization.name__ All rights reserved. */ -@import +@import +@import @implementation AppController : CPObject diff --git a/Tools/nib2cib/Converter+Mac.j b/Tools/nib2cib/Converter+Mac.j index 74941e149..63ba94421 100644 --- a/Tools/nib2cib/Converter+Mac.j +++ b/Tools/nib2cib/Converter+Mac.j @@ -44,33 +44,9 @@ [self replaceFontForObject:object]; - if (![object isKindOfClass:[CPView class]]) - continue; - - var superview = [object superview]; - - if (!superview || [superview NS_isFlipped]) - continue; - - var superviewHeight = CGRectGetHeight([superview bounds]), - frame = [object frame]; - - [object setFrameOrigin:CGPointMake(CGRectGetMinX(frame), superviewHeight - CGRectGetMaxY(frame))]; - - var NS_autoresizingMask = [object autoresizingMask], - autoresizingMask = NS_autoresizingMask & ~(CPViewMaxYMargin | CPViewMinYMargin); - - if (!(NS_autoresizingMask & (CPViewMaxYMargin | CPViewMinYMargin | CPViewHeightSizable))) - autoresizingMask |= CPViewMinYMargin; - else - { - if (NS_autoresizingMask & CPViewMaxYMargin) - autoresizingMask |= CPViewMinYMargin; - if (NS_autoresizingMask & CPViewMinYMargin) - autoresizingMask |= CPViewMaxYMargin; - } - - [object setAutoresizingMask:autoresizingMask]; + // Give the object a chance to do any final rewiring before being saved back. + if ([object respondsToSelector:@selector(awakeFromNib)]) + [object awakeFromNib]; } // Re-archive the CP data. diff --git a/Tools/nib2cib/Converter.j b/Tools/nib2cib/Converter.j index c340b7f2c..ca3fe7f7c 100644 --- a/Tools/nib2cib/Converter.j +++ b/Tools/nib2cib/Converter.j @@ -54,6 +54,7 @@ ConverterConversionException = @"ConverterConversionException"; NibFormat format @accessors(readonly); CPArray themes @accessors(readonly); CPArray userNSClasses @accessors; + BOOL compileNib @accessors; } + (Converter)sharedConverter @@ -71,6 +72,7 @@ ConverterConversionException = @"ConverterConversionException"; inputPath = aPath; format = nibFormat; themes = themeList; + compileNib = YES; } return self; @@ -99,6 +101,8 @@ ConverterConversionException = @"ConverterConversionException"; CPLog.info("Auto-detected CocoaTouch Xib File"); } + CPLog.info("Converting Xib file to plist..."); + var nibData = [self CPCompliantNibDataAtFilePath:inputPath]; if (inferredFormat === NibFormatMac) @@ -115,18 +119,23 @@ ConverterConversionException = @"ConverterConversionException"; - (CPData)CPCompliantNibDataAtFilePath:(CPString)aFilePath { - CPLog.info("Converting Xib file to plist..."); - var temporaryNibFilePath = "", temporaryPlistFilePath = ""; try { - // Compile xib or nib to make sure we have a non-new format nib. - temporaryNibFilePath = FILE.join("/tmp", FILE.basename(aFilePath) + ".tmp.nib"); + if (compileNib) + { + // Compile xib or nib to make sure we have a non-new format nib. + temporaryNibFilePath = FILE.join("/tmp", FILE.basename(aFilePath) + ".tmp.nib"); - if (OS.popen(["/usr/bin/ibtool", aFilePath, "--compile", temporaryNibFilePath]).wait() === 1) - [CPException raise:ConverterConversionException reason:@"Could not compile file: " + aFilePath]; + if (OS.popen(["/usr/bin/ibtool", aFilePath, "--compile", temporaryNibFilePath]).wait() === 1) + [CPException raise:ConverterConversionException reason:@"Could not compile file: " + aFilePath]; + } + else + { + temporaryNibFilePath = aFilePath; + } // Convert from binary plist to XML plist var temporaryPlistFilePath = FILE.join("/tmp", FILE.basename(aFilePath) + ".tmp.plist"); diff --git a/Tools/nib2cib/NSAppKit.j b/Tools/nib2cib/NSAppKit.j index 83c170926..ba4015446 100644 --- a/Tools/nib2cib/NSAppKit.j +++ b/Tools/nib2cib/NSAppKit.j @@ -47,6 +47,7 @@ @import "NSMatrix.j" @import "NSMenu.j" @import "NSMenuItem.j" +@import "NSNib.j" @import "NSNibConnector.j" @import "NSObjectController.j" @import "NSOutlineView.j" @@ -64,6 +65,7 @@ @import "NSSplitView.j" @import "NSStepper.j" @import "NSTableColumn.j" +@import "NSTableCellView.j" @import "NSTableHeaderView.j" @import "NSTableView.j" @import "NSTabView.j" diff --git a/Tools/nib2cib/NSBrowser.j b/Tools/nib2cib/NSBrowser.j index 2979861da..ae20ed34a 100644 --- a/Tools/nib2cib/NSBrowser.j +++ b/Tools/nib2cib/NSBrowser.j @@ -51,12 +51,18 @@ @end @implementation NSBrowser : CPBrowser -{ -} - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSButton.j b/Tools/nib2cib/NSButton.j index 26581674b..d31a62596 100644 --- a/Tools/nib2cib/NSButton.j +++ b/Tools/nib2cib/NSButton.j @@ -66,23 +66,17 @@ var NSButtonIsBorderedMask = 0x00800000, - (id)NS_initWithCoder:(CPCoder)aCoder { - self = [super NS_initWithCoder:aCoder]; - - if (self) - { - var cell = [aCoder decodeObjectForKey:@"NSCell"]; - self = [self NS_initWithCell:cell]; - } - - return self; + return [super NS_initWithCoder:aCoder]; } /*! Intialise a button given a cell. This method is meant for reuse by controls which contain cells other than CPButton itself. */ -- (id)NS_initWithCell:(NSCell)cell +- (void)NS_initWithCell:(NSCell)cell { + [super NS_initWithCell:cell]; + var alternateImage = [cell alternateImage], positionOffsetSizeWidth = 0, positionOffsetOriginX = 0, @@ -275,8 +269,6 @@ var NSButtonIsBorderedMask = 0x00800000, _highlightsBy = [cell highlightsBy]; _showsStateBy = [cell showsStateBy]; - - return self; } @end @@ -285,7 +277,15 @@ var NSButtonIsBorderedMask = 0x00800000, - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSColorWell.j b/Tools/nib2cib/NSColorWell.j index dbb0a0042..f2119fe49 100644 --- a/Tools/nib2cib/NSColorWell.j +++ b/Tools/nib2cib/NSColorWell.j @@ -59,7 +59,15 @@ - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSComboBox.j b/Tools/nib2cib/NSComboBox.j index 08434c265..e38627a57 100644 --- a/Tools/nib2cib/NSComboBox.j +++ b/Tools/nib2cib/NSComboBox.j @@ -32,35 +32,33 @@ - (id)NS_initWithCoder:(CPCoder)aCoder { - self = [super NS_initWithCoder:aCoder]; + return [super NS_initWithCoder:aCoder]; +} - if (self) +- (void)NS_initWithCell:(NSCell)cell +{ + [super NS_initWithCell:cell]; + + _items = [cell itemList]; + _usesDataSource = [cell usesDataSource]; + _completes = [cell completes]; + _numberOfVisibleItems = [cell visibleItemCount]; + _hasVerticalScroller = [cell hasVerticalScroller]; + [self setButtonBordered:[cell borderedButton]]; + + // Make sure the height is clipped to the max given by the theme + var maxSize = [[[Converter sharedConverter] themes][0] valueForAttributeWithName:@"max-size" forClass:[CPComboBox class]], + size = [self frameSize], + widthOffset = -3; + + // Adjust for differences between Cocoa and Cappuccino widget framing. + if ([[[Converter sharedConverter] themes][0] name] == @"Aristo") { - var cell = [aCoder decodeObjectForKey:@"NSCell"]; - - _items = [cell itemList]; - _usesDataSource = [cell usesDataSource]; - _completes = [cell completes]; - _numberOfVisibleItems = [cell visibleItemCount]; - _hasVerticalScroller = [cell hasVerticalScroller]; - [self setButtonBordered:[cell borderedButton]]; - - // Make sure the height is clipped to the max given by the theme - var maxSize = [[[Converter sharedConverter] themes][0] valueForAttributeWithName:@"max-size" forClass:[CPComboBox class]], - size = [self frameSize], - widthOffset = -3; - - // Adjust for differences between Cocoa and Cappuccino widget framing. - if ([[[Converter sharedConverter] themes][0] name] == @"Aristo") - { - _frame.origin.x += 1; - widthOffset = -5; - } - - [self setFrameSize:CGSizeMake(size.width + widthOffset, MIN(size.height, maxSize.height))]; + _frame.origin.x += 1; + widthOffset = -5; } - return self; + [self setFrameSize:CGSizeMake(size.width + widthOffset, MIN(size.height, maxSize.height))]; } @end @@ -69,7 +67,15 @@ - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSControl.j b/Tools/nib2cib/NSControl.j index 5db1eeff3..548e2f68d 100644 --- a/Tools/nib2cib/NSControl.j +++ b/Tools/nib2cib/NSControl.j @@ -34,29 +34,15 @@ if (self) { - var cell = [aCoder decodeObjectForKey:@"NSCell"]; - - [self sendActionOn:CPLeftMouseUpMask]; - [self setSendsActionOnEndEditing:[cell sendsActionOnEndEditing]]; - - [self setObjectValue:[cell objectValue]]; - - [self setFont:[cell font]]; - [self setAlignment:[cell alignment]]; - // Enabled state is derived from the NSEnabled flag or the control's cell. // For example NSTableView uses the NSEnabled flag, but NSButton uses it's cell isEnabled state. // We use the NSEnabled flag here and override the behavior in controls using different logic (NSButton). [self setEnabled:[aCoder decodeBoolForKey:@"NSEnabled"]]; - [self setContinuous:[cell isContinuous]]; + [self sendActionOn:CPLeftMouseUpMask]; [self setTarget:[aCoder decodeObjectForKey:@"NSTarget"]]; [self setAction:[aCoder decodeObjectForKey:@"NSAction"]]; - [self setLineBreakMode:[cell lineBreakMode]]; - - [self setFormatter:[cell formatter]]; - // In IB, both cells and controls can have tags. // If the control has a tag, that takes precedence. if ([aCoder containsValueForKey:@"NSTag"]) @@ -66,15 +52,32 @@ return self; } +- (void)NS_initWithCell:(NSCell)cell +{ + [self setSendsActionOnEndEditing:[cell sendsActionOnEndEditing]]; + [self setObjectValue:[cell objectValue]]; + [self setFont:[cell font]]; + [self setAlignment:[cell alignment]]; + [self setContinuous:[cell isContinuous]]; + [self setLineBreakMode:[cell lineBreakMode]]; + [self setFormatter:[cell formatter]]; +} + @end @implementation NSControl : CPControl -{ -} - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSImageView.j b/Tools/nib2cib/NSImageView.j index 48f94a3f1..593f1b424 100644 --- a/Tools/nib2cib/NSImageView.j +++ b/Tools/nib2cib/NSImageView.j @@ -29,29 +29,33 @@ - (id)NS_initWithCoder:(CPCoder)aCoder { - self = [super NS_initWithCoder:aCoder]; + return [super NS_initWithCoder:aCoder]; +} - if (self) - { - var cell = [aCoder decodeObjectForKey:@"NSCell"]; +- (void)NS_initWithCell:(NSCell)cell +{ + [super NS_initWithCell:cell]; - [self setImageScaling:[cell imageScaling]]; - [self setImageAlignment:[cell imageAlignment]]; - _isEditable = [cell isEditable]; - } - - return self; + [self setImageScaling:[cell imageScaling]]; + [self setImageAlignment:[cell imageAlignment]]; + _isEditable = [cell isEditable]; } @end @implementation NSImageView : CPImageView -{ -} - (id)initWithCoder:(CPCoder)aCoder { - return [super NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSLevelIndicator.j b/Tools/nib2cib/NSLevelIndicator.j index b65ac45c0..3acf47f6d 100644 --- a/Tools/nib2cib/NSLevelIndicator.j +++ b/Tools/nib2cib/NSLevelIndicator.j @@ -35,22 +35,17 @@ _minValue = [cell minValue]; _maxValue = [cell maxValue]; - self = [super NS_initWithCoder:aCoder]; - - if (self) - { - self = [self NS_initWithCell:cell]; - } - - return self; + return [super NS_initWithCoder:aCoder]; } /*! Intialise the receiver given a cell. This method is meant for reuse by controls which contain cells other than CPLevelIndicator itself. */ -- (id)NS_initWithCell:(NSCell)cell +- (void)NS_initWithCell:(NSCell)cell { + [super NS_initWithCell:cell]; + _minValue = [cell minValue]; _maxValue = [cell maxValue]; _levelIndicatorStyle = [cell levelIndicatorStyle]; @@ -63,8 +58,6 @@ [self setEditable:[cell isEditable]]; [self setEnabled:[cell isEnabled]]; [self setContinuous:[cell isContinuous]]; - - return self; } @end @@ -75,7 +68,15 @@ - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSNib.j b/Tools/nib2cib/NSNib.j new file mode 100644 index 000000000..b54a4ecc9 --- /dev/null +++ b/Tools/nib2cib/NSNib.j @@ -0,0 +1,50 @@ + +@import +@class Converter + +var FILE = require("file"), + OS = require("os"), + UUID = require("uuid"); + +@implementation CPCib (NSCoding) + +- (id)NS_initWithCoder:(CPCoder)aCoder +{ + self = [super init]; + + var nibPath = @"/tmp/" + UUID.uuid() + ".nib", + data = [aCoder decodeObjectForKey:@"NSNibFileData"], + sharedConverter = [Converter sharedConverter]; + + FILE.write(nibPath, data.bytes(), {charset:"UTF-16" }); + + var converter = [[Converter alloc] initWithInputPath:"" + format:[sharedConverter format] + themes:[sharedConverter themes]]; + [converter setCompileNib:NO]; + + CPLog.info("Converting sub nib to plist..."); + + var nibData = [converter CPCompliantNibDataAtFilePath:nibPath]; + _data = [converter convertedDataFromMacData:nibData resourcesPath:[sharedConverter resourcesPath]]; + + return self; +} + +@end + +@implementation NSNib : CPCib +{ +} + +- (id)initWithCoder:(CPCoder)aCoder +{ + return [self NS_initWithCoder:aCoder]; +} + +- (Class)classForKeyedArchiver +{ + return [CPCib class]; +} + +@end diff --git a/Tools/nib2cib/NSNibConnector.j b/Tools/nib2cib/NSNibConnector.j index fe78a84e2..a5fd47b85 100644 --- a/Tools/nib2cib/NSNibConnector.j +++ b/Tools/nib2cib/NSNibConnector.j @@ -132,7 +132,7 @@ var NSTransformers = [CPSet setWithObjects: _binding = [aCoder decodeObjectForKey:@"NSBinding"]; _keyPath = [aCoder decodeObjectForKey:@"NSKeyPath"]; - _options = [CPDictionary dictionary]; + _options = @{}; var NSOptions = [aCoder decodeObjectForKey:@"NSOptions"], keyEnumerator = [NSOptions keyEnumerator], diff --git a/Tools/nib2cib/NSNumberFormatter.j b/Tools/nib2cib/NSNumberFormatter.j index 3eca40a74..e54858a36 100644 --- a/Tools/nib2cib/NSNumberFormatter.j +++ b/Tools/nib2cib/NSNumberFormatter.j @@ -35,11 +35,11 @@ [self setNumberStyle:[attributes valueForKey:@"numberStyle"] || CPNumberFormatterNoStyle]; - // if ([attributes containsKey:@"minimum"]) - // [self setMinimum:[attributes valueForKey:@"minimum"]]; + if ([attributes containsKey:@"minimum"]) + [self setMinimum:[attributes valueForKey:@"minimum"]]; - // if ([attributes containsKey:@"maximum"]) - // [self setMaximum:[attributes valueForKey:@"maximum"]]; + if ([attributes containsKey:@"maximum"]) + [self setMaximum:[attributes valueForKey:@"maximum"]]; } return self; diff --git a/Tools/nib2cib/NSOutlineView.j b/Tools/nib2cib/NSOutlineView.j index e0ddae889..aca77a835 100644 --- a/Tools/nib2cib/NSOutlineView.j +++ b/Tools/nib2cib/NSOutlineView.j @@ -57,7 +57,15 @@ - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSPopUpButton.j b/Tools/nib2cib/NSPopUpButton.j index 0a58d88b2..ad09130e8 100644 --- a/Tools/nib2cib/NSPopUpButton.j +++ b/Tools/nib2cib/NSPopUpButton.j @@ -30,23 +30,22 @@ - (id)NS_initWithCoder:(CPCoder)aCoder { - if (self = [super NS_initWithCoder:aCoder]) - { - var cell = [aCoder decodeObjectForKey:@"NSCell"]; + return [super NS_initWithCoder:aCoder]; +} - _menu = [cell menu]; +- (void)NS_initWithCell:(NSCell)cell +{ + [super NS_initWithCell:cell]; - // adjust the frame - _frame.origin.x -= 4; - _frame.origin.y -= 4; - _frame.size.width += 7; - _bounds.size.width += 7; + _menu = [cell menu]; + [self setPullsDown:[cell pullsDown]]; + _preferredEdge = [cell preferredEdge]; - [self setPullsDown:[cell pullsDown]]; - _preferredEdge = [cell preferredEdge]; - } - - return self; + // adjust the frame + _frame.origin.x -= 4; + _frame.origin.y -= 4; + _frame.size.width += 7; + _bounds.size.width += 7; } @end @@ -57,7 +56,15 @@ - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSPredicateEditor.j b/Tools/nib2cib/NSPredicateEditor.j index add06a19b..9c4578130 100644 --- a/Tools/nib2cib/NSPredicateEditor.j +++ b/Tools/nib2cib/NSPredicateEditor.j @@ -44,7 +44,15 @@ - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSRuleEditor.j b/Tools/nib2cib/NSRuleEditor.j index aa2db53ae..dac606ea6 100644 --- a/Tools/nib2cib/NSRuleEditor.j +++ b/Tools/nib2cib/NSRuleEditor.j @@ -65,7 +65,15 @@ - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSScroller.j b/Tools/nib2cib/NSScroller.j index 5c6b26a4b..e67d4bd49 100644 --- a/Tools/nib2cib/NSScroller.j +++ b/Tools/nib2cib/NSScroller.j @@ -76,7 +76,15 @@ - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSSearchField.j b/Tools/nib2cib/NSSearchField.j index 05fd4e50e..30bf0d384 100644 --- a/Tools/nib2cib/NSSearchField.j +++ b/Tools/nib2cib/NSSearchField.j @@ -31,27 +31,24 @@ - (id)NS_initWithCoder:(CPCoder)aCoder { - self = [super NS_initWithCoder:aCoder]; + return [super NS_initWithCoder:aCoder]; +} - if (self) +- (void)NS_initWithCell:(NSCell)cell +{ + [super NS_initWithCell:cell]; + + [self setRecentsAutosaveName:[cell recentsAutosaveName]]; + [self setMaximumRecents:[cell maximumRecents]]; + [self setSendsWholeSearchString:[cell sendsWholeSearchString]]; + [self setSendsSearchStringImmediately:[cell sendsSearchStringImmediately]]; + + if ([[[Converter sharedConverter] themes][0] name] == @"Aristo" && [self isBezeled]) { - var cell = [aCoder decodeObjectForKey:@"NSCell"]; - - [self setRecentsAutosaveName:[cell recentsAutosaveName]]; - [self setMaximumRecents:[cell maximumRecents]]; - [self setSendsWholeSearchString:[cell sendsWholeSearchString]]; - [self setSendsSearchStringImmediately:[cell sendsSearchStringImmediately]]; - - if ([[[Converter sharedConverter] themes][0] name] == @"Aristo" && [self isBezeled]) - { - // NSTextField.j makes the field +7.0 pixels tall. We want +8.0 to go to 30. - var frame = [self frame]; - [self setFrameSize:CGSizeMake(frame.size.width, frame.size.height)]; - } - + // NSTextField.j makes the field +7.0 pixels tall. We want +8.0 to go to 30. + var frame = [self frame]; + [self setFrameSize:CGSizeMake(frame.size.width, frame.size.height)]; } - - return self; } @end @@ -64,6 +61,12 @@ { self = [self NS_initWithCoder:aCoder]; + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + return self; } diff --git a/Tools/nib2cib/NSSecureTextField.j b/Tools/nib2cib/NSSecureTextField.j index d1d1ea5f9..f114a6e79 100644 --- a/Tools/nib2cib/NSSecureTextField.j +++ b/Tools/nib2cib/NSSecureTextField.j @@ -31,7 +31,15 @@ - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSSegmentedControl.j b/Tools/nib2cib/NSSegmentedControl.j index 35394ec49..8525a2611 100644 --- a/Tools/nib2cib/NSSegmentedControl.j +++ b/Tools/nib2cib/NSSegmentedControl.j @@ -34,45 +34,45 @@ _segments = []; _themeStates = []; - if (self = [super NS_initWithCoder:aCoder]) + return [super NS_initWithCoder:aCoder]; +} + +- (void)NS_initWithCell:(NSCell)cell +{ + [super NS_initWithCell:cell]; + + var frame = [self frame], + originalWidth = frame.size.width; + + frame.size.width = 0; + frame.origin.x = MAX(frame.origin.x - 4.0, 0.0); + + [self setFrame:frame]; + + _segments = [cell segments]; + _selectedSegment = [cell selectedSegment]; + _segmentStyle = [cell segmentStyle]; + _trackingMode = [cell trackingMode]; + + [self setValue:CPCenterTextAlignment forThemeAttribute:@"alignment"]; + + // HACK + + for (var i = 0; i < _segments.length; i++) { - var frame = [self frame], - originalWidth = frame.size.width; + _themeStates[i] = _segments[i].selected ? CPThemeStateSelected : CPThemeStateNormal; - frame.size.width = 0; - frame.origin.x = MAX(frame.origin.x - 4.0, 0.0); - - [self setFrame:frame]; - - var cell = [aCoder decodeObjectForKey:"NSCell"]; - - _segments = [cell segments]; - _selectedSegment = [cell selectedSegment]; - _segmentStyle = [cell segmentStyle]; - _trackingMode = [cell trackingMode]; - - [self setValue:CPCenterTextAlignment forThemeAttribute:@"alignment"]; - - // HACK - - for (var i = 0; i < _segments.length; i++) - { - _themeStates[i] = _segments[i].selected ? CPThemeStateSelected : CPThemeStateNormal; - - [self tileWithChangedSegment:i]; - } - - // Adjust for differences between Cocoa and Cappuccino widget framing. - frame.origin.x += 6; - - if ([[[Converter sharedConverter] themes][0] name] == @"Aristo2") - frame.size.height += 1; - - frame.size.width = originalWidth; - [self setFrame:frame]; + [self tileWithChangedSegment:i]; } - return self; + // Adjust for differences between Cocoa and Cappuccino widget framing. + frame.origin.x += 6; + + if ([[[Converter sharedConverter] themes][0] name] == @"Aristo2") + frame.size.height += 1; + + frame.size.width = originalWidth; + [self setFrame:frame]; } @end @@ -83,7 +83,15 @@ - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSSlider.j b/Tools/nib2cib/NSSlider.j index 239aa42cd..b9acdebce 100644 --- a/Tools/nib2cib/NSSlider.j +++ b/Tools/nib2cib/NSSlider.j @@ -35,23 +35,15 @@ _minValue = [cell minValue]; _maxValue = [cell maxValue]; - self = [super NS_initWithCoder:aCoder]; + return [super NS_initWithCoder:aCoder]; +} - if (self) - { - _altIncrementValue = [cell altIncrementValue]; +- (void)NS_initWithCell:(NSCell)cell +{ + [super NS_initWithCell:cell]; - [self setSliderType:[cell sliderType]]; - - var frame = [self frame]; - - if ([self sliderType] === CPCircularSlider) - [self setFrameSize:CGSizeMake(frame.size.width + 2.0, frame.size.height + 2.0)]; - else - [self setFrame:CGRectMake(frame.origin.x + 2, frame.origin.y, frame.size.width - 4, frame.size.height)]; - } - - return self; + _altIncrementValue = [cell altIncrementValue]; + [self setSliderType:[cell sliderType]]; } @end @@ -62,7 +54,22 @@ - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + + var frame = [self frame]; + + if ([self sliderType] === CPCircularSlider) + [self setFrameSize:CGSizeMake(frame.size.width + 2.0, frame.size.height + 2.0)]; + else + [self setFrame:CGRectMake(frame.origin.x + 2, frame.origin.y, frame.size.width - 4, frame.size.height)]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSStepper.j b/Tools/nib2cib/NSStepper.j index d7e91f141..043461e86 100644 --- a/Tools/nib2cib/NSStepper.j +++ b/Tools/nib2cib/NSStepper.j @@ -29,37 +29,41 @@ - (id)NS_initWithCoder:(CPCoder)aCoder { - self = [super NS_initWithCoder:aCoder]; + return [super NS_initWithCoder:aCoder]; +} - if (self) - { - var cell = [aCoder decodeObjectForKey:@"NSCell"]; +- (void)NS_initWithCell:(NSCell)cell +{ + [super NS_initWithCell:cell]; - self._minValue = [cell minValue]; - self._maxValue = [cell maxValue]; - self._increment = [cell increment]; - self._valueWraps = [cell valueWraps]; - self._autorepeat = [cell autorepeat]; - self._objectValue = [cell objectValue]; + self._minValue = [cell minValue]; + self._maxValue = [cell maxValue]; + self._increment = [cell increment]; + self._valueWraps = [cell valueWraps]; + self._autorepeat = [cell autorepeat]; + self._objectValue = [cell objectValue]; - // Convert Cocoa normal size to Cappuccino normal size. - self._frame.origin.y += 2; - self._frame.size.height -= 2; - self._bounds.size.height -= 2; - } - - return self; + // Convert Cocoa normal size to Cappuccino normal size. + self._frame.origin.y += 2; + self._frame.size.height -= 2; + self._bounds.size.height -= 2; } @end @implementation NSStepper : CPStepper -{ -} - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSTabViewItem.j b/Tools/nib2cib/NSTabViewItem.j index 5962968f0..07a34237c 100644 --- a/Tools/nib2cib/NSTabViewItem.j +++ b/Tools/nib2cib/NSTabViewItem.j @@ -41,6 +41,12 @@ return self; } +- (void)awakeFromNib +{ + if ([_view superview]) + [_view removeFromSuperview]; +} + @end @implementation NSTabViewItem : CPTabViewItem diff --git a/Tools/nib2cib/NSTableCellView.j b/Tools/nib2cib/NSTableCellView.j new file mode 100644 index 000000000..6a2ff3723 --- /dev/null +++ b/Tools/nib2cib/NSTableCellView.j @@ -0,0 +1,25 @@ + +@import + +@implementation CPTableCellView (NSCoding) + +- (id)NS_initWithCoder:(CPCoder)aCoder +{ + return [super NS_initWithCoder:aCoder]; +} + +@end + +@implementation NSTableCellView : CPTableCellView + +- (id)initWithCoder:(CPCoder)aCoder +{ + return [self NS_initWithCoder:aCoder]; +} + +- (Class)classForKeyedArchiver +{ + return [CPTableCellView class]; +} + +@end diff --git a/Tools/nib2cib/NSTableColumn.j b/Tools/nib2cib/NSTableColumn.j index 83f5742cf..86a353152 100644 --- a/Tools/nib2cib/NSTableColumn.j +++ b/Tools/nib2cib/NSTableColumn.j @@ -49,14 +49,14 @@ var IBDefaultFontSizeTableHeader = 11.0; if ([dataViewCell isKindOfClass:[NSImageCell class]]) { _dataView = [[CPImageView alloc] initWithFrame:CGRectMakeZero()]; - [_dataView setImageScaling:[dataViewCell imageScaling]]; - [_dataView setImageAlignment:[dataViewCell imageAlignment]]; + [_dataView NS_initWithCell:dataViewCell]; } else if ([dataViewCell isKindOfClass:[NSTextFieldCell class]]) { _dataView = [[CPTextField alloc] initWithFrame:CGRectMakeZero()]; + [_dataView NS_initWithCell:dataViewCell]; - var font = [dataViewCell font], + var font = [_dataView font], selectedFont = nil; if (font) @@ -69,28 +69,16 @@ var IBDefaultFontSizeTableHeader = 11.0; [_dataView setFont:font]; [_dataView setValue:selectedFont forThemeAttribute:@"font" inState:CPThemeStateSelectedDataView]; - - [_dataView setLineBreakMode:CPLineBreakByTruncatingTail]; - - [_dataView setValue:CPCenterVerticalTextAlignment forThemeAttribute:@"vertical-alignment"]; - [_dataView setValue:CGInsetMake(0.0, 5.0, 0.0, 5.0) forThemeAttribute:@"content-inset"]; - - var textColor = [dataViewCell textColor], - defaultColor = [_dataView currentValueForThemeAttribute:@"text-color"]; - - // Don't change the text color if it is not the default, that messes up the theme lookups later - if (![textColor isEqual:defaultColor]) - [_dataView setTextColor:[dataViewCell textColor]]; } else if ([dataViewCell isKindOfClass:[NSButtonCell class]]) { _dataView = [[CPButton alloc] initWithFrame:CGRectMakeZero()]; - _dataView = [_dataView NS_initWithCell:dataViewCell]; + [_dataView NS_initWithCell:dataViewCell]; } else if ([dataViewCell isKindOfClass:[NSLevelIndicatorCell class]]) { _dataView = [[CPLevelIndicator alloc] initWithFrame:CGRectMakeZero()]; - _dataView = [_dataView NS_initWithCell:dataViewCell]; + [_dataView NS_initWithCell:dataViewCell]; } [_dataView setValue:[dataViewCell alignment] forThemeAttribute:@"alignment"]; diff --git a/Tools/nib2cib/NSTableView.j b/Tools/nib2cib/NSTableView.j index 05bbb5ab1..46eefdd7c 100644 --- a/Tools/nib2cib/NSTableView.j +++ b/Tools/nib2cib/NSTableView.j @@ -64,6 +64,8 @@ _tableColumns = [aCoder decodeObjectForKey:@"NSTableColumns"]; [_tableColumns makeObjectsPerformSelector:@selector(setTableView:) withObject:self]; + _archivedDataViews = [aCoder decodeObjectForKey:@"NSTableViewArchivedReusableViewsKey"]; + _intercellSpacing = CGSizeMake([aCoder decodeFloatForKey:@"NSIntercellSpacingWidth"], [aCoder decodeFloatForKey:@"NSIntercellSpacingHeight"]); @@ -97,7 +99,15 @@ - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSTextField.j b/Tools/nib2cib/NSTextField.j index b930ff4ab..9aa9f5bfb 100644 --- a/Tools/nib2cib/NSTextField.j +++ b/Tools/nib2cib/NSTextField.j @@ -30,68 +30,71 @@ - (id)NS_initWithCoder:(CPCoder)aCoder { - self = [super NS_initWithCoder:aCoder]; + return [super NS_initWithCoder:aCoder]; +} - if (self) +- (void)NS_initWithCell:(NSCell)cell +{ + [super NS_initWithCell:cell]; + + [self setEditable:[cell isEditable]]; + [self setSelectable:[cell isSelectable]]; + [self setSendsActionOnEndEditing:[cell sendsActionOnEndEditing]]; + + [self setBordered:[cell isBordered]]; + [self setBezeled:[cell isBezeled]]; + [self setBezelStyle:[cell bezelStyle]]; + [self setDrawsBackground:[cell drawsBackground]]; + + [self setLineBreakMode:[cell lineBreakMode]]; + [self setAlignment:[cell alignment]]; + [self setTextFieldBackgroundColor:[cell backgroundColor]]; + + [self setPlaceholderString:[cell placeholderString]]; + + var textColor = [cell textColor], + defaultColor = [self currentValueForThemeAttribute:@"text-color"]; + + // Don't change the text color if it is not the default, that messes up the theme lookups later + if (![textColor isEqual:defaultColor]) + [self setTextColor:[cell textColor]]; + + // Only adjust the origin and size if this is a bezeled textfield. + // This ensures that labels positioned in IB are properly positioned after nibcib. + var frame = [self frame]; + + if ([self isBezeled]) { - var cell = [aCoder decodeObjectForKey:@"NSCell"]; - - [self sendActionOn:CPKeyUpMask | CPKeyDownMask]; - - [self setEditable:[cell isEditable]]; - [self setSelectable:[cell isSelectable]]; - - [self setBordered:[cell isBordered]]; - [self setBezeled:[cell isBezeled]]; - [self setBezelStyle:[cell bezelStyle]]; - [self setDrawsBackground:[cell drawsBackground]]; - - [self setLineBreakMode:[cell lineBreakMode]]; - [self setAlignment:[cell alignment]]; - [self setTextFieldBackgroundColor:[cell backgroundColor]]; - - [self setPlaceholderString:[cell placeholderString]]; - - var textColor = [cell textColor], - defaultColor = [self currentValueForThemeAttribute:@"text-color"]; - - // Don't change the text color if it is not the default, that messes up the theme lookups later - if (![textColor isEqual:defaultColor]) - [self setTextColor:[cell textColor]]; - - // Only adjust the origin and size if this is a bezeled textfield. - // This ensures that labels positioned in IB are properly positioned after nibcib. - var frame = [self frame]; - - if ([self isBezeled]) - { - [self setFrameOrigin:CGPointMake(frame.origin.x - 4.0, frame.origin.y - 3.0)]; - [self setFrameSize:CGSizeMake(frame.size.width + 8.0, frame.size.height + 7.0)]; - } - else - { - [self setFrameOrigin:CGPointMake(frame.origin.x + 3.0, frame.origin.y)]; - [self setFrameSize:CGSizeMake(frame.size.width - 6.0, frame.size.height)]; - } - - CPLog.debug("NSTextField: title=\"" + [self stringValue] + "\", placeholder=" + ([cell placeholderString] == null ? "" : '"' + [cell placeholderString] + '"') + ", isBordered=" + [self isBordered] + ", isBezeled=" + [self isBezeled] + ", bezelStyle=" + [self bezelStyle]); - - if ([self formatter]) - CPLog.debug(">> Formatter: " + [[self formatter] description]); + [self setFrameOrigin:CGPointMake(frame.origin.x - 4.0, frame.origin.y - 3.0)]; + [self setFrameSize:CGSizeMake(frame.size.width + 8.0, frame.size.height + 7.0)]; + } + else + { + [self setFrameOrigin:CGPointMake(frame.origin.x + 3.0, frame.origin.y)]; + [self setFrameSize:CGSizeMake(frame.size.width - 6.0, frame.size.height)]; } - return self; + CPLog.debug("NSTextField: title=\"" + [self stringValue] + "\", placeholder=" + ([cell placeholderString] == null ? "" : '"' + [cell placeholderString] + '"') + ", isBordered=" + [self isBordered] + ", isBezeled=" + [self isBezeled] + ", bezelStyle=" + [self bezelStyle]); + + if ([self formatter]) + CPLog.debug(">> Formatter: " + [[self formatter] description]); } @end @implementation NSTextField : CPTextField -{ -} - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSTokenField.j b/Tools/nib2cib/NSTokenField.j index a471542d1..dbbb1501a 100644 --- a/Tools/nib2cib/NSTokenField.j +++ b/Tools/nib2cib/NSTokenField.j @@ -31,38 +31,36 @@ - (id)NS_initWithCoder:(CPCoder)aCoder { - self = [super NS_initWithCoder:aCoder]; - - if (self) - { - var cell = [aCoder decodeObjectForKey:@"NSCell"]; - self = [self NS_initWithCell:cell]; - } - - return self; + return [super NS_initWithCoder:aCoder]; } /*! Intialise the receiver given a cell. This method is meant for reuse by controls which contain cells other than CPTokenField itself. */ -- (id)NS_initWithCell:(NSCell)cell +- (void)NS_initWithCell:(NSCell)cell { + [super NS_initWithCell:cell]; + // Uncomment if we add support for token styles. // _style = [cell tokenStyle]; - - return self; } @end @implementation NSTokenField : CPTokenField -{ -} - (id)initWithCoder:(CPCoder)aCoder { - return [self NS_initWithCoder:aCoder]; + self = [self NS_initWithCoder:aCoder]; + + if (self) + { + var cell = [aCoder decodeObjectForKey:@"NSCell"]; + [self NS_initWithCell:cell]; + } + + return self; } - (Class)classForKeyedArchiver diff --git a/Tools/nib2cib/NSView.j b/Tools/nib2cib/NSView.j index d730f768e..07eb674f8 100644 --- a/Tools/nib2cib/NSView.j +++ b/Tools/nib2cib/NSView.j @@ -69,6 +69,9 @@ var NSViewAutoresizingMask = 0x3F, _themeAttributes = {}; _themeState = CPThemeStateNormal; [self _loadThemeAttributes]; + + if ([aCoder containsValueForKey:@"NSReuseIdentifierKey"]) + _identifier = [aCoder decodeObjectForKey:@"NSReuseIdentifierKey"]; } return self; @@ -79,6 +82,34 @@ var NSViewAutoresizingMask = 0x3F, return NO; } +- (void)awakeFromNib +{ + var superview = [self superview]; + + if (!superview || [superview NS_isFlipped]) + return; + + var superviewHeight = CGRectGetHeight([superview bounds]), + frame = [self frame]; + + [self setFrameOrigin:CGPointMake(CGRectGetMinX(frame), superviewHeight - CGRectGetMaxY(frame))]; + + var NS_autoresizingMask = [self autoresizingMask], + autoresizingMask = NS_autoresizingMask & ~(CPViewMaxYMargin | CPViewMinYMargin); + + if (!(NS_autoresizingMask & (CPViewMaxYMargin | CPViewMinYMargin | CPViewHeightSizable))) + autoresizingMask |= CPViewMinYMargin; + else + { + if (NS_autoresizingMask & CPViewMaxYMargin) + autoresizingMask |= CPViewMinYMargin; + if (NS_autoresizingMask & CPViewMinYMargin) + autoresizingMask |= CPViewMaxYMargin; + } + + [self setAutoresizingMask:autoresizingMask]; +} + @end @implementation NSView : CPView diff --git a/Tools/nib2cib/Nib2Cib.j b/Tools/nib2cib/Nib2Cib.j index 74a91490e..fa0887f01 100644 --- a/Tools/nib2cib/Nib2Cib.j +++ b/Tools/nib2cib/Nib2Cib.j @@ -67,7 +67,7 @@ var FILE = require("file"), nibInfo = {}; appDirectory = @""; resourcesDirectory = @""; - infoPlist = [CPDictionary dictionary]; + infoPlist = @{}; userNSClasses = []; } @@ -139,7 +139,7 @@ var FILE = require("file"), [CPFont setSystemFontSize:parseFloat(systemFontSize, 10)]; } else - infoPlist = [CPDictionary dictionary]; + infoPlist = @{}; var themeList = [self getThemeList:options], themes = [self loadThemesFromList:themeList]; diff --git a/bootstrap.sh b/bootstrap.sh index 0d2e32071..078b5431d 100755 --- a/bootstrap.sh +++ b/bootstrap.sh @@ -48,19 +48,47 @@ function ask_append_shell_config () { config_string="$1" shell_config_file="" - # use order outlined by http://hayne.net/MacDev/Notes/unixFAQ.html#shellStartup - if [ -f "$HOME/.bash_profile" ]; then - shell_config_file="$HOME/.bash_profile" - elif [ -f "$HOME/.bash_login" ]; then - shell_config_file="$HOME/.bash_login" - elif [ -f "$HOME/.profile" ]; then - shell_config_file="$HOME/.profile" - elif [ -f "$HOME/.bashrc" ]; then - shell_config_file="$HOME/.bashrc" - elif [ -f "$HOME/.zshrc" ]; then - shell_config_file="$HOME/.zshrc" - fi + if [[ "$SHELL" == *zsh* ]]; then + if [ -f "$HOME/.zshrc" ]; then + shell_config_file="$HOME/.zshrc" + elif [ -f "$HOME/.profile" ]; then + shell_config_file="$HOME/.profile" + else + touch "$HOME/.profile" + shell_config_file="$HOME/.zshrc" + fi + elif [[ "$SHELL" == *bash* ]]; then + if [ -f "$HOME/.bash_profile" ]; then + shell_config_file="$HOME/.bash_profile" + elif [ -f "$HOME/.bash_login" ]; then + shell_config_file="$HOME/.bash_login" + elif [ -f "$HOME/.bashrc" ]; then + shell_config_file="$HOME/.bashrc" + elif [ -f "$HOME/.profile" ]; then + shell_config_file="$HOME/.profile" + else + touch "$HOME/.profile" + shell_config_file="$HOME/.profile" + fi + else + echo " Could not automatically determine your shell. Looking for other configuration possibilities." + # use order outlined by http://hayne.net/MacDev/Notes/unixFAQ.html#shellStartup + if [ -f "$HOME/.bash_profile" ]; then + shell_config_file="$HOME/.bash_profile" + elif [ -f "$HOME/.bash_login" ]; then + shell_config_file="$HOME/.bash_login" + elif [ -f "$HOME/.bashrc" ]; then + shell_config_file="$HOME/.bashrc" + elif [ -f "$HOME/.zshrc" ]; then + shell_config_file="$HOME/.zshrc" + elif [ -f "$HOME/.profile" ]; then + shell_config_file="$HOME/.profile" + else + touch "$HOME/.profile" + shell_config_file="$HOME/.profile" + fi + fi echo " \"$config_string\" will be appended to \"$shell_config_file\"." if prompt "no"; then