diff --git a/AppKit/AppKit.j b/AppKit/AppKit.j index 2a34e76f4..27f3a3001 100644 --- a/AppKit/AppKit.j +++ b/AppKit/AppKit.j @@ -20,7 +20,9 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +@import "_CPToolTip.j" @import "CALayer.j" +@import "CGGeometry.j" @import "CPAccordionView.j" @import "CPAlert.j" @import "CPAnimation.j" @@ -36,10 +38,10 @@ @import "CPCibBindingConnector.j" @import "CPCibConnector.j" @import "CPCibControlConnector.j" +@import "CPCibHelpConnector.j" @import "CPCibLoading.j" @import "CPCibOutletConnector.j" @import "CPCibRuntimeAttributesConnector.j" -@import "CPCibHelpConnector.j" @import "CPClipView.j" @import "CPCollectionView.j" @import "CPCollectionViewItem.j" @@ -47,6 +49,7 @@ @import "CPColorPanel.j" @import "CPColorSpace.j" @import "CPColorWell.j" +@import "CPComboBox.j" @import "CPCompatibility.j" @import "CPControl.j" @import "CPController.j" @@ -59,7 +62,6 @@ @import "CPFlashView.j" @import "CPFont.j" @import "CPFontManager.j" -@import "CPGeometry.j" @import "CPGradient.j" @import "CPGraphics.j" @import "CPImage.j" @@ -98,13 +100,12 @@ @import "CPTokenField.j" @import "CPToolbar.j" @import "CPToolbarItem.j" -@import "_CPToolTip.j" @import "CPTreeNode.j" @import "CPUserDefaultsController.j" @import "CPView.j" @import "CPViewAnimation.j" @import "CPViewController.j" @import "CPWebView.j" -@import "CPWorkspace.j" @import "CPWindow.j" @import "CPWindowController.j" +@import "CPWorkspace.j" diff --git a/AppKit/CPApplication.j b/AppKit/CPApplication.j index 15ad65916..f92a27412 100644 --- a/AppKit/CPApplication.j +++ b/AppKit/CPApplication.j @@ -254,7 +254,7 @@ CPRunContinuesResponse = -1002; count = [URLStrings count]; for (; index < count; ++index) - needsUntitled = ![self _openURL:[CPURL URLWithString:URLStrings[index]]] || needsUntitled; + needsUntitled = ![self _openURL:[CPURL URLWithString:URLStrings[index]]] && needsUntitled; if (needsUntitled && [_delegate respondsToSelector:@selector(applicationShouldOpenUntitledFile:)]) needsUntitled = [_delegate applicationShouldOpenUntitledFile:self]; @@ -373,7 +373,7 @@ CPRunContinuesResponse = -1002; standardPath = [[CPBundle bundleForClass:[self class]] pathForResource:@"standardApplicationIcon.png"]; // FIXME move this into the CIB eventually - [applicationLabel setFont:[CPFont boldSystemFontOfSize:14.0]]; + [applicationLabel setFont:[CPFont boldSystemFontOfSize:[CPFont systemFontSize] + 2]]; [applicationLabel setAlignment:CPCenterTextAlignment]; [versionLabel setAlignment:CPCenterTextAlignment]; [copyrightLabel setAlignment:CPCenterTextAlignment]; @@ -576,27 +576,33 @@ CPRunContinuesResponse = -1002; { _currentEvent = anEvent; +#if PLATFORM(DOM) var willPropagate = [[[anEvent window] platformWindow] _willPropagateCurrentDOMEvent]; // temporarily pretend we won't propagate the event. we'll restore the saved value later // we do this outside the if so that changes user code might make in _handleKeyEquiv. are preserved [[[anEvent window] platformWindow] _propagateCurrentDOMEvent:NO]; +#endif // Check if this is a candidate for key equivalent... if ([anEvent _couldBeKeyEquivalent] && [self _handleKeyEquivalent:anEvent]) { +#if PLATFORM(DOM) var characters = [anEvent characters], modifierFlags = [anEvent modifierFlags]; // Unconditionally propagate on these keys to solve browser copy paste bugs if ((characters == "c" || characters == "x" || characters == "v") && (modifierFlags & CPPlatformActionKeyMask)) [[[anEvent window] platformWindow] _propagateCurrentDOMEvent:YES]; +#endif return; } +#if PLATFORM(DOM) // if we make it this far, then restore the original willPropagate value [[[anEvent window] platformWindow] _propagateCurrentDOMEvent:willPropagate]; +#endif if (_eventListeners.length) { @@ -1180,7 +1186,11 @@ _CPRunModalLoop = function(anEvent) var theWindow = [anEvent window], modalSession = CPApp._currentSession; - if (theWindow == modalSession._window || [theWindow worksWhenModal]) + // The special case for popovers here is not clear. In Cocoa the popover window does not respond YES to worksWhenModal, + // yet it works when there is a modal window. Maybe it starts its own modal session, but interaction with the original + // modal window seems to continue working as well. Regardless of correctness, this solution beats popovers not working + // at all from sheets. + if (theWindow == modalSession._window || [theWindow worksWhenModal] || ([theWindow isKindOfClass:_CPAttachedWindow] && [[theWindow targetView] window] === modalSession._window)) [theWindow sendEvent:anEvent]; }; diff --git a/AppKit/CPArrayController.j b/AppKit/CPArrayController.j index 764096a0b..3e22ad838 100644 --- a/AppKit/CPArrayController.j +++ b/AppKit/CPArrayController.j @@ -879,6 +879,9 @@ [_arrangedObjects removeObjectAtIndex:pos]; [_selectionIndexes shiftIndexesStartingAtIndex:pos by:-1]; + + // This will automatically handle the avoidsEmptySelection case. + [self __setSelectionIndexes:_selectionIndexes]; } [self didChangeValueForKey:@"content"]; diff --git a/AppKit/CPButton.j b/AppKit/CPButton.j index 7944347cc..b70039120 100644 --- a/AppKit/CPButton.j +++ b/AppKit/CPButton.j @@ -29,20 +29,21 @@ /* @group CPBezelStyle */ -CPRoundedBezelStyle = 1; -CPRegularSquareBezelStyle = 2; + // IB style +CPRoundedBezelStyle = 1; // Push +CPRegularSquareBezelStyle = 2; // Bevel CPThickSquareBezelStyle = 3; CPThickerSquareBezelStyle = 4; -CPDisclosureBezelStyle = 5; -CPShadowlessSquareBezelStyle = 6; -CPCircularBezelStyle = 7; -CPTexturedSquareBezelStyle = 8; -CPHelpButtonBezelStyle = 9; -CPSmallSquareBezelStyle = 10; -CPTexturedRoundedBezelStyle = 11; -CPRoundRectBezelStyle = 12; -CPRecessedBezelStyle = 13; -CPRoundedDisclosureBezelStyle = 14; +CPDisclosureBezelStyle = 5; // Disclosure triangle +CPShadowlessSquareBezelStyle = 6; // Square +CPCircularBezelStyle = 7; // Round +CPTexturedSquareBezelStyle = 8; // Textured +CPHelpButtonBezelStyle = 9; // Help +CPSmallSquareBezelStyle = 10; // Gradient +CPTexturedRoundedBezelStyle = 11; // Round Textured +CPRoundRectBezelStyle = 12; // Round Rect +CPRecessedBezelStyle = 13; // Recessed +CPRoundedDisclosureBezelStyle = 14; // Disclosure CPHUDBezelStyle = -1; @@ -576,35 +577,18 @@ CPButtonImageOffset = 3.0; { var contentInset = [self currentValueForThemeAttribute:@"content-inset"]; - if (_CGInsetIsEmpty(contentInset)) - return bounds; - - bounds = _CGRectMakeCopy(bounds); - bounds.origin.x += contentInset.left; - bounds.origin.y += contentInset.top; - bounds.size.width -= contentInset.left + contentInset.right; - bounds.size.height -= contentInset.top + contentInset.bottom; - - return bounds; + return _CGRectInsetByInset(bounds, contentInset); } - (CGRect)bezelRectForBounds:(CGRect)bounds { + // Is this necessary? The theme itself can just change its inset to a zero inset when !CPThemeStateBordered. if (![self isBordered]) - return _CGRectMakeZero(); + return bounds; var bezelInset = [self currentValueForThemeAttribute:@"bezel-inset"]; - if (_CGInsetIsEmpty(bezelInset)) - return bounds; - - bounds = _CGRectMakeCopy(bounds); - bounds.origin.x += bezelInset.left; - bounds.origin.y += bezelInset.top; - bounds.size.width -= bezelInset.left + bezelInset.right; - bounds.size.height -= bezelInset.top + bezelInset.bottom; - - return bounds; + return _CGRectInsetByInset(bounds, bezelInset); } - (CGSize)_minimumFrameSize diff --git a/AppKit/CPColorPanel.j b/AppKit/CPColorPanel.j index d9fe9bbf7..25ee0ddda 100644 --- a/AppKit/CPColorPanel.j +++ b/AppKit/CPColorPanel.j @@ -144,7 +144,7 @@ CPColorPickerViewHeight = 370; - (void)setColor:(CPColor)aColor { _color = aColor; - [_previewView setBackgroundColor: _color]; + [_previewView setBackgroundColor:_color]; [CPApp sendAction:@selector(changeColor:) to:nil from:self]; @@ -299,7 +299,7 @@ CPColorPickerViewHeight = 370; bounds = [contentView bounds]; _toolbar = [[CPView alloc] initWithFrame:CGRectMake(0, 6, CGRectGetWidth(bounds), TOOLBAR_HEIGHT)]; - [_toolbar setAutoresizingMask: CPViewWidthSizable]; + [_toolbar setAutoresizingMask:CPViewWidthSizable]; var totalToolbarWidth = count * ICON_WIDTH + (count - 1) * ICON_PADDING, leftOffset = (CGRectGetWidth(bounds) - totalToolbarWidth) / 2.0, @@ -339,7 +339,7 @@ CPColorPickerViewHeight = 370; [previewBox addSubview:_previewView]; - var _previewLabel = [[CPTextField alloc] initWithFrame: CPRectMake(10, TOOLBAR_HEIGHT + 10, 60, 15)]; + var _previewLabel = [[CPTextField alloc] initWithFrame:CGRectMake(10, TOOLBAR_HEIGHT + 10, 60, 15)]; [_previewLabel setStringValue:"Preview:"]; [_previewLabel setTextColor:[CPColor blackColor]]; [_previewLabel setAlignment:CPRightTextAlignment]; @@ -357,14 +357,14 @@ CPColorPickerViewHeight = 370; [swatchBox addSubview:_swatchView]; - var _swatchLabel = [[CPTextField alloc] initWithFrame: CPRectMake(10, TOOLBAR_HEIGHT + 8 + PREVIEW_HEIGHT + 6, 60, 15)]; - [_swatchLabel setStringValue: "Swatches:"]; + var _swatchLabel = [[CPTextField alloc] initWithFrame:CGRectMake(10, TOOLBAR_HEIGHT + 8 + PREVIEW_HEIGHT + 6, 60, 15)]; + [_swatchLabel setStringValue:"Swatches:"]; [_swatchLabel setTextColor:[CPColor blackColor]]; [_swatchLabel setAlignment:CPRightTextAlignment]; - var opacityLabel = [[CPTextField alloc] initWithFrame: CPRectMake(10, TOOLBAR_HEIGHT + PREVIEW_HEIGHT + 35, 60, 20)]; - [opacityLabel setStringValue: "Opacity:"]; + var opacityLabel = [[CPTextField alloc] initWithFrame:CGRectMake(10, TOOLBAR_HEIGHT + PREVIEW_HEIGHT + 35, 60, 20)]; + [opacityLabel setStringValue:"Opacity:"]; [opacityLabel setTextColor:[CPColor blackColor]]; [opacityLabel setAlignment:CPRightTextAlignment]; @@ -389,7 +389,7 @@ CPColorPickerViewHeight = 370; _action = nil; _activePicker = nil; - [_previewView setBackgroundColor: _color]; + [_previewView setBackgroundColor:_color]; if (buttonForLater) [self _setPicker:buttonForLater]; @@ -407,12 +407,13 @@ CPColorPickerViewHeight = 370; CPColorDragType = "CPColorDragType"; + var CPColorPanelSwatchesCookie = "CPColorPanelSwatchesCookie"; /* @ignore */ @implementation _CPColorPanelSwatches : CPView { - CPView[] _swatches; + CPArray _swatches; CPColor _dragColor; CPColorPanel _colorPanel; CPCookie _swatchCookie; @@ -422,13 +423,13 @@ var CPColorPanelSwatchesCookie = "CPColorPanelSwatchesCookie"; { self = [super initWithFrame:aFrame]; - [self setBackgroundColor: [CPColor grayColor]]; + [self setBackgroundColor:[CPColor grayColor]]; [self registerForDraggedTypes:[CPArray arrayWithObjects:CPColorDragType]]; var whiteColor = [CPColor whiteColor]; - _swatchCookie = [[CPCookie alloc] initWithName: CPColorPanelSwatchesCookie]; + _swatchCookie = [[CPCookie alloc] initWithName:CPColorPanelSwatchesCookie]; var colorList = [self startingColorList]; _swatches = []; @@ -436,15 +437,15 @@ var CPColorPanelSwatchesCookie = "CPColorPanelSwatchesCookie"; for (var i = 0; i < 50; i++) { // FIXME: http://280north.lighthouseapp.com/projects/13294-cappuccino/tickets/25-implement-cpbox - var view = [[CPView alloc] initWithFrame: CPRectMake(13 * i + 1, 1, 12, 12)], + var view = [[CPView alloc] initWithFrame:CPRectMake(13 * i + 1, 1, 12, 12)], fillView = [[CPView alloc] initWithFrame:CGRectInset([view bounds], 1.0, 1.0)]; [view setBackgroundColor:whiteColor]; - [fillView setBackgroundColor: (i < colorList.length) ? colorList[i] : whiteColor]; + [fillView setBackgroundColor:(i < colorList.length) ? colorList[i] : whiteColor]; [view addSubview:fillView]; - [self addSubview: view]; + [self addSubview:view]; _swatches.push(view); } @@ -461,7 +462,7 @@ var CPColorPanelSwatchesCookie = "CPColorPanelSwatchesCookie"; { var cookieValue = [_swatchCookie value]; - if (cookieValue == "") + if (!cookieValue) { return [ [CPColor blackColor], @@ -480,7 +481,7 @@ var CPColorPanelSwatchesCookie = "CPColorPanelSwatchesCookie"; result = []; for (var i = 0; i < cookieValue.length; i++) - result.push([CPColor colorWithHexString: cookieValue[i]]); + result.push([CPColor colorWithHexString:cookieValue[i]]); return result; } @@ -495,7 +496,7 @@ var CPColorPanelSwatchesCookie = "CPColorPanelSwatchesCookie"; var future = new Date(); future.setYear(2019); - [_swatchCookie setValue: JSON.stringify(result) expires:future domain: nil]; + [_swatchCookie setValue:JSON.stringify(result) expires:future domain:nil]; } - (void)setColorPanel:(CPColorPanel)panel @@ -528,7 +529,7 @@ var CPColorPanelSwatchesCookie = "CPColorPanelSwatchesCookie"; if (!CGRectContainsPoint(bounds, point) || point.x > [self bounds].size.width - 1 || point.x < 1) return NO; - [_colorPanel setColor: [self colorAtIndex:FLOOR(point.x / 13)] updatePicker: YES]; + [_colorPanel setColor:[self colorAtIndex:FLOOR(point.x / 13)] updatePicker:YES]; } - (void)mouseDragged:(CPEvent)anEvent @@ -545,10 +546,10 @@ var CPColorPanelSwatchesCookie = "CPColorPanelSwatchesCookie"; // FIXME: http://280north.lighthouseapp.com/projects/13294-cappuccino/tickets/25-implement-cpbox _dragColor = [[swatch subviews][0] backgroundColor]; - var bounds = CPRectCreateCopy([swatch bounds]); + var bounds = CGRectMakeCopy([swatch bounds]); // FIXME: http://280north.lighthouseapp.com/projects/13294-cappuccino/tickets/25-implement-cpbox - var dragView = [[CPView alloc] initWithFrame: bounds], + var dragView = [[CPView alloc] initWithFrame:bounds], dragFillView = [[CPView alloc] initWithFrame:CGRectInset(bounds, 1.0, 1.0)]; [dragView setBackgroundColor:[CPColor blackColor]]; @@ -556,13 +557,13 @@ var CPColorPanelSwatchesCookie = "CPColorPanelSwatchesCookie"; [dragView addSubview:dragFillView]; - [self dragView: dragView - at: CPPointMake(point.x - bounds.size.width / 2.0, point.y - bounds.size.height / 2.0) - offset: CPPointMake(0.0, 0.0) - event: anEvent - pasteboard: nil - source: self - slideBack: YES]; + [self dragView:dragView + at:CGPointMake(point.x - bounds.size.width / 2.0, point.y - bounds.size.height / 2.0) + offset:CGPointMake(0.0, 0.0) + event:anEvent + pasteboard:nil + source:self + slideBack:YES]; } - (void)pasteboard:(CPPasteboard)aPasteboard provideDataForType:(CPString)aType @@ -580,7 +581,7 @@ var CPColorPanelSwatchesCookie = "CPColorPanelSwatchesCookie"; if (![pasteboard availableTypeFromArray:[CPColorDragType]] || location.x > [self bounds].size.width - 1 || location.x < 1) return NO; - [self setColor:[CPKeyedUnarchiver unarchiveObjectWithData:[pasteboard dataForType:CPColorDragType]] atIndex: FLOOR(location.x / 13)]; + [self setColor:[CPKeyedUnarchiver unarchiveObjectWithData:[pasteboard dataForType:CPColorDragType]] atIndex:FLOOR(location.x / 13)]; } @end @@ -635,7 +636,7 @@ var CPColorPanelSwatchesCookie = "CPColorPanelSwatchesCookie"; var bounds = CPRectMake(0, 0, 15, 15); // FIXME: http://280north.lighthouseapp.com/projects/13294-cappuccino/tickets/25-implement-cpbox - var dragView = [[CPView alloc] initWithFrame: bounds], + var dragView = [[CPView alloc] initWithFrame:bounds], dragFillView = [[CPView alloc] initWithFrame:CGRectInset(bounds, 1.0, 1.0)]; [dragView setBackgroundColor:[CPColor blackColor]]; @@ -643,13 +644,13 @@ var CPColorPanelSwatchesCookie = "CPColorPanelSwatchesCookie"; [dragView addSubview:dragFillView]; - [self dragView: dragView - at: CPPointMake(point.x - bounds.size.width / 2.0, point.y - bounds.size.height / 2.0) - offset: CPPointMake(0.0, 0.0) - event: anEvent - pasteboard: nil - source: self - slideBack: YES]; + [self dragView:dragView + at:CPPointMake(point.x - bounds.size.width / 2.0, point.y - bounds.size.height / 2.0) + offset:CPPointMake(0.0, 0.0) + event:anEvent + pasteboard:nil + source:self + slideBack:YES]; } - (void)pasteboard:(CPPasteboard)aPasteboard provideDataForType:(CPString)aType diff --git a/AppKit/CPColorPicker.j b/AppKit/CPColorPicker.j index 032f78dc4..7fe4e7c09 100644 --- a/AppKit/CPColorPicker.j +++ b/AppKit/CPColorPicker.j @@ -44,10 +44,11 @@ */ - (id)initWithPickerMask:(int)aMask colorPanel:(CPColorPanel)aPanel { - self = [super init]; - - _panel = aPanel; - _mask = aMask; + if (self = [super init]) + { + _panel = aPanel; + _mask = aMask; + } return self; } @@ -76,7 +77,6 @@ */ - (void)setMode:(CPColorPanelMode)mode { - return; } /*! @@ -85,7 +85,6 @@ */ - (void)setColor:(CPColor)aColor { - return; } @end @@ -110,12 +109,12 @@ - (id)initView { - aFrame = CPRectMake(0, 0, CPColorPickerViewWidth, CPColorPickerViewHeight); + var aFrame = _CGRectMake(0, 0, CPColorPickerViewWidth, CPColorPickerViewHeight); _pickerView = [[CPView alloc] initWithFrame:aFrame]; [_pickerView setAutoresizingMask:CPViewWidthSizable | CPViewHeightSizable]; - _brightnessSlider = [[CPSlider alloc] initWithFrame:CGRectMake(0, (aFrame.size.height - 34), aFrame.size.width, 15)]; + _brightnessSlider = [[CPSlider alloc] initWithFrame:_CGRectMake(0, (aFrame.size.height - 34), aFrame.size.width, 15)]; [_brightnessSlider setValue:15.0 forThemeAttribute:@"track-width"]; [_brightnessSlider setValue:[CPColor colorWithPatternImage:[[CPImage alloc] initWithContentsOfFile:[[CPBundle bundleForClass:[CPColorPicker class]] pathForResource:@"brightness_bar.png"]]] forThemeAttribute:@"track-color"]; @@ -128,9 +127,9 @@ [_brightnessSlider setAction:@selector(brightnessSliderDidChange:)]; [_brightnessSlider setAutoresizingMask:CPViewWidthSizable | CPViewMinYMargin]; - _hueSaturationView = [[__CPColorWheel alloc] initWithFrame: CPRectMake(0, 0, aFrame.size.width, aFrame.size.height - 38)]; - [_hueSaturationView setDelegate: self]; - [_hueSaturationView setAutoresizingMask: (CPViewWidthSizable | CPViewHeightSizable)]; + _hueSaturationView = [[__CPColorWheel alloc] initWithFrame:_CGRectMake(0, 0, aFrame.size.width, aFrame.size.height - 38)]; + [_hueSaturationView setDelegate:self]; + [_hueSaturationView setAutoresizingMask:(CPViewWidthSizable | CPViewHeightSizable)]; [_pickerView addSubview:_hueSaturationView]; [_pickerView addSubview:_brightnessSlider]; @@ -225,46 +224,49 @@ - (id)initWithFrame:(CPRect)aFrame { - self = [super initWithFrame:aFrame]; - - var path = [[CPBundle bundleForClass:CPColorPicker] pathForResource:@"wheel.png"]; - - _wheelImage = new Image(); - _wheelImage.src = path; - _wheelImage.style.position = "absolute"; - - path = [[CPBundle bundleForClass:CPColorPicker] pathForResource:@"wheel_black.png"]; - - _blackWheelImage = new Image(); - _blackWheelImage.src = path; - _blackWheelImage.style.opacity = "0"; - _blackWheelImage.style.filter = "alpha(opacity=0)" - _blackWheelImage.style.position = "absolute"; - + if (self = [super initWithFrame:aFrame]) + { #if PLATFORM(DOM) - _DOMElement.appendChild(_wheelImage); - _DOMElement.appendChild(_blackWheelImage); + var path = [[CPBundle bundleForClass:CPColorPicker] pathForResource:@"wheel.png"]; + + _wheelImage = new Image(); + _wheelImage.src = path; + _wheelImage.style.position = "absolute"; + + path = [[CPBundle bundleForClass:CPColorPicker] pathForResource:@"wheel_black.png"]; + + _blackWheelImage = new Image(); + _blackWheelImage.src = path; + _blackWheelImage.style.opacity = "0"; + _blackWheelImage.style.filter = "alpha(opacity=0)" + _blackWheelImage.style.position = "absolute"; + + _DOMElement.appendChild(_wheelImage); + _DOMElement.appendChild(_blackWheelImage); #endif - [self setWheelSize:aFrame.size]; + [self setWheelSize:aFrame.size]; - _crosshair = [[CPView alloc] initWithFrame:CPRectMake(_radius - 2, _radius - 2, 4, 4)]; - [_crosshair setBackgroundColor:[CPColor blackColor]]; + _crosshair = [[CPView alloc] initWithFrame:CGRectMake(_radius - 2, _radius - 2, 4, 4)]; + [_crosshair setBackgroundColor:[CPColor blackColor]]; - var view = [[CPView alloc] initWithFrame:CGRectInset([_crosshair bounds], 1.0, 1.0)]; - [view setBackgroundColor:[CPColor whiteColor]]; + var view = [[CPView alloc] initWithFrame:CGRectInset([_crosshair bounds], 1.0, 1.0)]; + [view setBackgroundColor:[CPColor whiteColor]]; - [_crosshair addSubview:view]; + [_crosshair addSubview:view]; - [self addSubview:_crosshair]; + [self addSubview:_crosshair]; + } return self; } - (void)setWheelBrightness:(float)brightness { +#if PLATFORM(DOM) _blackWheelImage.style.opacity = 1.0 - brightness; _blackWheelImage.style.filter = "alpha(opacity=" + (1.0 - brightness) * 100 + ")" +#endif } - (void)setFrameSize:(CPSize)aSize @@ -277,6 +279,7 @@ { var min = MIN(aSize.width, aSize.height); +#if PLATFORM(DOM) _blackWheelImage.style.width = min; _blackWheelImage.style.height = min; _blackWheelImage.width = min; @@ -290,6 +293,7 @@ _wheelImage.height = min; _wheelImage.style.top = (aSize.height - min) / 2.0 + "px"; _wheelImage.style.left = (aSize.width - min) / 2.0 + "px"; +#endif _radius = min / 2.0; diff --git a/AppKit/CPColorWell.j b/AppKit/CPColorWell.j index 9b86c4c6c..35e113211 100644 --- a/AppKit/CPColorWell.j +++ b/AppKit/CPColorWell.j @@ -43,7 +43,6 @@ var _CPColorWellDidBecomeExclusiveNotification = @"_CPColorWellDidBecomeExclusiv BOOL _bordered; CPColor _color; - CPView _wellView; } + (Class)_binderClassForBinding:(CPString)theBinding @@ -54,6 +53,17 @@ var _CPColorWellDidBecomeExclusiveNotification = @"_CPColorWellDidBecomeExclusiv return [super _binderClassForBinding:theBinding]; } ++ (CPString)defaultThemeClass +{ + return @"colorwell"; +} + ++ (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"]]; +} + - (void)_reverseSetBinding { var binderClass = [[self class] _binderClassForBinding:CPValueBinding], @@ -69,11 +79,8 @@ var _CPColorWellDidBecomeExclusiveNotification = @"_CPColorWellDidBecomeExclusiv if (self) { _active = NO; - _bordered = YES; _color = [CPColor whiteColor]; - - [self drawBezelWithHighlight:NO]; - [self drawWellInside:CGRectInset([self bounds], 3.0, 3.0)]; + [self setBordered:YES]; [self _registerForNotifications]; } @@ -98,25 +105,23 @@ var _CPColorWellDidBecomeExclusiveNotification = @"_CPColorWellDidBecomeExclusiv object:[CPColorPanel sharedColorPanel]]; } +/*! + Sets whether the color well is bordered. +*/ +- (void)setBordered:(BOOL)shouldBeBordered +{ + if (shouldBeBordered) + [self setThemeState:CPThemeStateBordered]; + else + [self unsetThemeState:CPThemeStateBordered]; +} + /*! Returns whether the color well is bordered */ - (BOOL)isBordered { - return _bordered; -} - -/*! - Sets the color well's current color. -*/ -- (void)setBordered:(BOOL)bordered -{ - if (_bordered == bordered) - return; - - _bordered = bordered; - - [self drawWellInside:CGRectInset([self bounds], 3.0, 3.0)]; + return [self hasThemeState:CPThemeStateBordered]; } // Managing Color From Color Wells @@ -139,7 +144,7 @@ var _CPColorWellDidBecomeExclusiveNotification = @"_CPColorWellDidBecomeExclusiv _color = aColor; - [self drawWellInside:CGRectInset([self bounds], 3.0, 3.0)]; + [self setNeedsLayout]; } /*! @@ -202,31 +207,6 @@ var _CPColorWellDidBecomeExclusiveNotification = @"_CPColorWellDidBecomeExclusiv return _active; } -// Drawing a Color Well - -- (void)drawBezelWithHighlight:(BOOL)shouldHighlight -{ -} - -/*! - Draws the colored area inside the color well without borders. - @param aRect the location at which to draw -*/ -- (void)drawWellInside:(CGRect)aRect -{ - if (!_wellView) - { - _wellView = [[CPView alloc] initWithFrame:aRect]; - [_wellView setAutoresizingMask:CPViewWidthSizable | CPViewHeightSizable]; - - [self addSubview:_wellView]; - } - else - [_wellView setFrame:aRect]; - - [_wellView setBackgroundColor:_color]; -} - - (void)colorPanelDidChangeColor:(CPNotification)aNotification { [self takeColorFrom:[aNotification object]]; @@ -245,27 +225,11 @@ var _CPColorWellDidBecomeExclusiveNotification = @"_CPColorWellDidBecomeExclusiv [self deactivate]; } -- (void)mouseDown:(CPEvent)anEvent +- (void)stopTracking:(CGPoint)lastPoint at:(CGPoint)aPoint mouseIsUp:(BOOL)mouseIsUp { - if (![self isEnabled]) - return; + [self highlight:NO]; - [self drawBezelWithHighlight:YES]; -} - -- (void)mouseDragged:(CPEvent)anEvent -{ - if (![self isEnabled]) - return; - - [self drawBezelWithHighlight:CGRectContainsPoint([self bounds], [self convertPoint:[anEvent locationInWindow] fromView:nil])]; -} - -- (void)mouseUp:(CPEvent)anEvent -{ - [self drawBezelWithHighlight:NO]; - - if (!CGRectContainsPoint([self bounds], [self convertPoint:[anEvent locationInWindow] fromView:nil]) || ![self isEnabled]) + if (!mouseIsUp || !CGRectContainsPoint([self bounds], aPoint) || ![self isEnabled]) return; [self activate:YES]; @@ -276,6 +240,73 @@ var _CPColorWellDidBecomeExclusiveNotification = @"_CPColorWellDidBecomeExclusiv [colorPanel orderFront:self]; } +- (CGRect)contentRectForBounds:(CGRect)bounds +{ + var contentInset = [self currentValueForThemeAttribute:@"content-inset"]; + + return _CGRectInsetByInset(bounds, contentInset); +} + +- (CGRect)bezelRectForBounds:(CGRect)bounds +{ + var bezelInset = [self currentValueForThemeAttribute:@"bezel-inset"]; + + return _CGRectInsetByInset(bounds, bezelInset); +} + +- (CGRect)contentBorderRectForBounds:(CGRect)bounds +{ + var contentBorderInset = [self currentValueForThemeAttribute:@"content-border-inset"]; + + return _CGRectInsetByInset(bounds, contentBorderInset); +} + +- (CGRect)rectForEphemeralSubviewNamed:(CPString)aName +{ + switch (aName) + { + case "bezel-view": + return [self bezelRectForBounds:[self bounds]]; + case "content-view": + return [self contentRectForBounds:[self bounds]]; + case "content-border-view": + return [self contentBorderRectForBounds:[self bounds]]; + } + + return [super rectForEphemeralSubviewNamed:aName]; +} + +- (CPView)createEphemeralSubviewNamed:(CPString)aName +{ + var view = [[CPView alloc] initWithFrame:_CGRectMakeZero()]; + + [view setHitTests:NO]; + + return view; +} + +- (void)layoutSubviews +{ + var bezelView = [self layoutEphemeralSubviewNamed:@"bezel-view" + positioned:CPWindowBelow + relativeToEphemeralSubviewNamed:@"content-view"]; + + [bezelView setBackgroundColor:[self currentValueForThemeAttribute:@"bezel-color"]]; + + var contentView = [self layoutEphemeralSubviewNamed:@"content-view" + positioned:CPWindowAbove + relativeToEphemeralSubviewNamed:@"bezel-view"]; + + + [contentView setBackgroundColor:_color]; + + var contentBorderView = [self layoutEphemeralSubviewNamed:@"content-border-view" + positioned:CPWindowAbove + relativeToEphemeralSubviewNamed:@"content-view"]; + + [contentBorderView setBackgroundColor:[self currentValueForThemeAttribute:@"content-border-color"]]; +} + @end @implementation CPColorWellValueBinder : CPBinder @@ -336,11 +367,8 @@ var CPColorWellColorKey = "CPColorWellColorKey", if (self) { _active = NO; - _bordered = [aCoder decodeBoolForKey:CPColorWellBorderedKey]; _color = [aCoder decodeObjectForKey:CPColorWellColorKey]; - - [self drawBezelWithHighlight:NO]; - [self drawWellInside:CGRectInset([self bounds], 3.0, 3.0)]; + [self setBordered:[aCoder decodeBoolForKey:CPColorWellBorderedKey]]; [self _registerForNotifications]; } @@ -354,19 +382,10 @@ var CPColorWellColorKey = "CPColorWellColorKey", */ - (void)encodeWithCoder:(CPCoder)aCoder { - // We do this in order to avoid encoding the _wellView, which - // should just automatically be created programmatically as needed. - var actualSubviews = _subviews; - - _subviews = [_subviews copy]; - [_subviews removeObjectIdenticalTo:_wellView]; - [super encodeWithCoder:aCoder]; - _subviews = actualSubviews; - [aCoder encodeObject:_color forKey:CPColorWellColorKey]; - [aCoder encodeObject:_bordered forKey:CPColorWellBorderedKey]; + [aCoder encodeObject:[self isBordered] forKey:CPColorWellBorderedKey]; } @end diff --git a/AppKit/CPComboBox.j b/AppKit/CPComboBox.j new file mode 100644 index 000000000..efd17405c --- /dev/null +++ b/AppKit/CPComboBox.j @@ -0,0 +1,1192 @@ +/* + * CPComboBox.j + * AppKit + * + * Created by Aparajita Fishman. + * Copyright (c) 2012, The Cappuccino Foundation + * + * 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 "CPTextField.j" +@import "_CPPopUpList.j" + + +CPComboBoxSelectionDidChangeNotification = @"CPComboBoxSelectionDidChangeNotification"; +CPComboBoxSelectionIsChangingNotification = @"CPComboBoxSelectionIsChangingNotification"; +CPComboBoxWillDismissNotification = @"CPComboBoxWillDismissNotification"; +CPComboBoxWillPopUpNotification = @"CPComboBoxWillPopUpNotification"; + +CPComboBoxStateButtonBordered = CPThemeState("button-bordered"); + +var CPComboBoxTextSubview = @"text", + CPComboBoxButtonSubview = @"button", + CPComboBoxDefaultNumberOfVisibleItems = 5, + CPComboBoxFocusRingWidth = -1; + + +@implementation CPComboBox : CPTextField +{ + CPArray _items; + _CPPopUpList _listDelegate; + CPComboBoxDataSource _dataSource; + BOOL _usesDataSource; + BOOL _completes; + BOOL _canComplete; + int _numberOfVisibleItems; + BOOL _forceSelection; + BOOL _hasVerticalScroller; + CPString _selectedStringValue; + BOOL _popUpButtonCausedResign; +} + ++ (CPString)defaultThemeClass +{ + return "combobox"; +} + ++ (id)themeAttributes +{ + return [CPDictionary dictionaryWithObjectsAndKeys:_CGSizeMake(21.0, 29.0), @"popup-button-size", _CGInsetMake(3.0, 3.0, 3.0, 3.0), @"border-inset"]; +} + ++ (Class)_binderClassForBinding:(CPString)theBinding +{ + if (theBinding === CPContentBinding || theBinding === CPContentValuesBinding) + return [_CPComboBoxContentBinder class]; + + return [super _binderClassForBinding:theBinding]; +} + +- (id)initWithFrame:(CGRect)aFrame +{ + self = [super initWithFrame:aFrame]; + + if (self) + [self _initComboBox]; + + return self; +} + +- (void)_initComboBox +{ + _items = [CPArray array]; + _listClass = [_CPPopUpList class]; + _usesDataSource = NO; + _completes = NO; + _canComplete = NO; + _numberOfVisibleItems = CPComboBoxDefaultNumberOfVisibleItems; + _forceSelection = NO; + _hasVerticalScroller = YES; + _selectedStringValue = @""; + _popUpButtonCausedResign = NO; + + [self setTheme:[CPTheme defaultTheme]]; + [self setBordered:YES]; + [self setBezeled:YES]; + [self setEditable:YES]; + [self setThemeState:CPComboBoxStateButtonBordered]; +} + +#pragma mark Setting Display Attributes + +- (BOOL)hasVerticalScroller +{ + return _hasVerticalScroller; +} + +- (void)setHasVerticalScroller:(BOOL)flag +{ + flag = !!flag; + + if (_hasVerticalScroller === flag) + return; + + _hasVerticalScroller = flag; + [[_listDelegate scrollView] setHasVerticalScroller:flag]; +} + +- (CGSize)intercellSpacing +{ + return [[_listDelegate tableView] intercellSpacing]; +} + +- (void)setIntercellSpacing:(CGSize)aSize +{ + [[_listDelegate tableView] setIntercellSpacing:aSize]; +} + +- (BOOL)isButtonBordered +{ + return [self hasThemeState:CPComboBoxStateButtonBordered]; +} + +- (void)setButtonBordered:(BOOL)flag +{ + if (!!flag) + [self setThemeState:CPComboBoxStateButtonBordered]; + else + [self unsetThemeState:CPComboBoxStateButtonBordered]; +} + +- (float)itemHeight +{ + return [[_listDelegate tableView] rowHeight]; +} + +- (void)setItemHeight:(float)itemHeight +{ + [[_listDelegate tableView] setRowHeight:itemHeight]; + + // FIXME: This shouldn't be necessary, but CPTableView does not tile after setRowHeight + [[_listDelegate tableView] reloadData]; +} + +- (int)numberOfVisibleItems +{ + return _numberOfVisibleItems; +} + +- (void)setNumberOfVisibleItems:(int)visibleItems +{ + // There should always be at least 1 visible item! + _numberOfVisibleItems = MAX(visibleItems, 1); +} + +#pragma mark Setting a Delegate + +- (id < CPComboBoxDelegate >)delegate +{ + return [super delegate]; +} + +/*! + Sets the CPComboBox delegate. Note that although the Cocoa + docs say that the delegate must conform to the NSComboBoxDelegate + protocol, in actual fact it doesn't. Also note that the same + delegate may conform to the NSTextFieldDelegate protocol. +*/ +- (void)setDelegate:(id < CPComboBoxDelegate >)aDelegate +{ + var delegate = [self delegate]; + + if (aDelegate === delegate) + return; + + var defaultCenter = [CPNotificationCenter defaultCenter]; + + if (delegate) + { + [defaultCenter removeObserver:delegate name:CPComboBoxSelectionIsChangingNotification object:self]; + [defaultCenter removeObserver:delegate name:CPComboBoxSelectionDidChangeNotification object:self]; + [defaultCenter removeObserver:delegate name:CPComboBoxWillDismissNotification object:self]; + [defaultCenter removeObserver:delegate name:CPComboBoxWillPopUpNotification object:self]; + } + + if (aDelegate) + { + if ([aDelegate respondsToSelector:@selector(comboBoxSelectionIsChanging:)]) + [defaultCenter addObserver:delegate + selector:@selector(comboBoxSelectionIsChanging:) + name:CPComboBoxSelectionIsChangingNotification + object:self]; + + if ([aDelegate respondsToSelector:@selector(comboBoxSelectionDidChange:)]) + [defaultCenter addObserver:delegate + selector:@selector(comboBoxSelectionDidChange:) + name:CPComboBoxSelectionDidChangeNotification + object:self]; + + if ([aDelegate respondsToSelector:@selector(comboBoxWillPopUp:)]) + [defaultCenter addObserver:delegate + selector:@selector(comboBoxWillPopUp:) + name:CPComboBoxWillPopUpNotification + object:self]; + + if ([aDelegate respondsToSelector:@selector(comboBoxWillDismiss:)]) + [defaultCenter addObserver:delegate + selector:@selector(comboBoxWillDissmis:) + name:CPComboBoxWillDismissNotification + object:self]; + } + + [super setDelegate:aDelegate]; +} + +#pragma mark Setting a Data Source + +- (id < CPComboBoxDataSource >)dataSource +{ + if (!_usesDataSource) + [self _dataSourceWarningForMethod:_cmd condition:NO]; + + return _dataSource; +} + +- (void)setDataSource:(id < CPComboBoxDataSource >)aSource +{ + if (!_usesDataSource) + [self _dataSourceWarningForMethod:_cmd condition:NO]; + else if (_dataSource !== aSource) + { + if (![aSource respondsToSelector:@selector(numberOfItemsInComboBox:)] || + ![aSource respondsToSelector:@selector(comboBox:objectValueForItemAtIndex:)]) + { + CPLog.warn("Illegal %s data source (%s). Must implement numberOfItemsInComboBox: and comboBox:objectValueForItemAtIndex:", [self className], [aSource description]); + } + else + _dataSource = aSource; + } +} + +- (BOOL)usesDataSource +{ + return _usesDataSource; +} + +- (void)setUsesDataSource:(BOOL)flag +{ + flag = !!flag; + + if (_usesDataSource === flag) + return; + + _usesDataSource = flag; + + // Cocoa empties the internal item list if usesDataSource is YES + if (_usesDataSource) + [_items removeAllObjects]; + + [self reloadData]; +} + +#pragma mark Working with an Internal List + +- (void)addItemsWithObjectValues:(CPArray)objects +{ + [_items addObjectsFromArray:objects]; + + [self reloadDataSourceForSelector:_cmd]; +} + +- (void)addItemWithObjectValue:(id)anObject +{ + [_items addObject:anObject]; + + [self reloadDataSourceForSelector:_cmd]; +} + +- (void)insertItemWithObjectValue:(id)anObject atIndex:(int)anIndex +{ + // Issue the warning first, because removeObjectAtIndex may raise + if (_usesDataSource) + [self _dataSourceWarningForMethod:_cmd condition:YES]; + + [_items insertObject:anObject atIndex:anIndex]; + [self reloadData]; +} + +/*! + Returns the internal array of items. NOTE: Unlike Cocoa the array is mutable, + since all arrays in Objective-J are mutable. But you should treat it as + an immutable array. Do NOT attempt to change the returned array in any way. + + If usesDataSource is YES, a warning is logged and an empty array is returned. +*/ +- (CPArray)objectValues +{ + if (_usesDataSource) + [self _dataSourceWarningForMethod:_cmd condition:YES]; + + return _items; +} + +- (void)removeAllItems +{ + [_items removeAllObjects]; + + [self reloadDataSourceForSelector:_cmd]; +} + +- (void)removeItemAtIndex:(int)index +{ + // Issue the warning first, because removeObjectAtIndex may raise + if (_usesDataSource) + [self _dataSourceWarningForMethod:_cmd condition:YES]; + + [_items removeObjectAtIndex:index]; + [self reloadData]; +} + +- (void)removeItemWithObjectValue:(id)anObject +{ + [_items removeObject:anObject]; + + [self reloadDataSourceForSelector:_cmd]; +} + +- (int)numberOfItems +{ + if (_usesDataSource) + return [_dataSource numberOfItemsInComboBox:self]; + else + return _items.length; +} + +#pragma mark Manipulating the Displayed List + +/*! + Returns the delegate to be used when creating the pop up list. +*/ +- (_CPPopUpList)listDelegate +{ + return _listDelegate; +} + +/*! + Sets the delegate to be used when creating the pop up list. + By default this is _CPPopUpList. If you are using a subclass + of _CPPopUpList, call this method with your subclass. +*/ +- (void)setListDelegate:(_CPPopUpList)aDelegate +{ + if (_listDelegate === aDelegate) + return; + + var defaultCenter = [CPNotificationCenter defaultCenter]; + + if (_listDelegate) + { + [defaultCenter removeObserver:self name:_CPPopUpListWillPopUpNotification object:_listDelegate]; + [defaultCenter removeObserver:self name:_CPPopUpListWillDismissNotification object:_listDelegate]; + [defaultCenter removeObserver:self name:_CPPopUpListDidDismissNotification object:_listDelegate]; + [defaultCenter removeObserver:self name:_CPPopUpListItemWasClickedNotification object:_listDelegate]; + + var oldTableView = [_listDelegate tableView]; + + if (oldTableView) + { + [defaultCenter removeObserver:self name:CPTableViewSelectionIsChangingNotification object:oldTableView]; + [defaultCenter removeObserver:self name:CPTableViewSelectionDidChangeNotification object:oldTableView]; + } + } + + _listDelegate = aDelegate; + + [defaultCenter addObserver:self + selector:@selector(comboBoxWillPopUp:) + name:_CPPopUpListWillPopUpNotification + object:_listDelegate]; + + [defaultCenter addObserver:self + selector:@selector(comboBoxWillDismiss:) + name:_CPPopUpListWillDismissNotification + object:_listDelegate]; + + [defaultCenter addObserver:self + selector:@selector(listDidDismiss:) + name:_CPPopUpListDidDismissNotification + object:_listDelegate]; + + [defaultCenter addObserver:self + selector:@selector(itemWasClicked:) + name:_CPPopUpListItemWasClickedNotification + object:_listDelegate]; + + [[_listDelegate scrollView] setHasVerticalScroller:_hasVerticalScroller]; + + var tableView = [_listDelegate tableView]; + + [defaultCenter addObserver:self + selector:@selector(comboBoxSelectionIsChanging:) + name:CPTableViewSelectionIsChangingNotification + object:tableView]; + + [defaultCenter addObserver:self + selector:@selector(comboBoxSelectionDidChange:) + name:CPTableViewSelectionDidChangeNotification + object:tableView]; + + // Apply our text style to the list + [_listDelegate setFont:[self font]]; + [_listDelegate setAlignment:[self alignment]]; +} + +- (int)indexOfItemWithObjectValue:(id)anObject +{ + if (_usesDataSource) + [self _dataSourceWarningForMethod:_cmd condition:YES]; + + return [_items indexOfObject:anObject]; +} + +- (id)itemObjectValueAtIndex:(int)index +{ + if (_usesDataSource) + [self _dataSourceWarningForMethod:_cmd condition:YES]; + + return [_items objectAtIndex:index]; +} + +- (void)noteNumberOfItemsChanged +{ + [[_listDelegate tableView] noteNumberOfRowsChanged]; +} + +- (void)scrollItemAtIndexToTop:(int)index +{ + [_listDelegate scrollItemAtIndexToTop:index]; +} + +- (void)scrollItemAtIndexToVisible:(int)index +{ + [[_listDelegate tableView] scrollRowToVisible:index]; +} + +- (void)reloadData +{ + [[_listDelegate tableView] reloadData]; +} + +/*! @ignore */ +- (void)popUpList +{ + if (!_listDelegate) + [self setListDelegate:[[_CPPopUpList alloc] initWithDataSource:self]]; + + [self _selectMatchingItem]; + + // Note the offset here is 1 less than the focus ring width because the outer edge + // of the focus ring is very transparent and it looks better if the list is closer. + if (CPComboBoxFocusRingWidth < 0) + { + var inset = [self currentValueForThemeAttribute:@"border-inset"]; + + CPComboBoxFocusRingWidth = inset.bottom; + } + + [_listDelegate popUpRelativeToRect:[self _borderFrame] view:self offset:CPComboBoxFocusRingWidth - 1]; +} + +/*! @ignore */ +- (BOOL)listIsVisible +{ + return _listDelegate ? [_listDelegate isVisible] : NO; +} + +/*! @ignore */ +- (void)reloadDataSourceForSelector:(SEL)cmd +{ + if (_usesDataSource) + [self _dataSourceWarningForMethod:cmd condition:YES] + else + [self reloadData]; +} + +/*! + If the list is non-empty, sets the value of the field from the currently selected value of the list + and returns YES. If the list is empty or the list has no selected item, returns NO. + @ignore +*/ +- (BOOL)takeStringValueFromList +{ + if (_usesDataSource && _dataSource && [_dataSource numberOfItemsInComboBox:self] === 0) + return NO; + + var selectedStringValue = [_listDelegate selectedStringValue]; + + if (selectedStringValue === nil) + return NO; + else + _selectedStringValue = selectedStringValue; + + [self setStringValue:_selectedStringValue]; + [self _reverseSetBinding]; + + return YES; +} + +/*! + The receiver receives this notification when the list is closed. + @ignore +*/ +- (void)listDidDismiss:(CPNotification)aNotification +{ + [[self window] makeFirstResponder:self]; +} + +/*! + The receiver receives this notification when an item in the list is clicked. + @ignore +*/ +- (void)itemWasClicked:(CPNotification)aNotification +{ + [self takeStringValueFromList]; + [self sendAction:[self action] to:[self target]]; +} + +#pragma mark Manipulating the Selection + +- (void)deselectItemAtIndex:(int)index +{ + var table = [_listDelegate tableView], + row = [table selectedRow]; + + if (row !== index) + return; + + [table deselectRow:index]; +} + +- (int)indexOfSelectedItem +{ + return [[_listDelegate tableView] selectedRow]; +} + +- (id)objectValueOfSelectedItem +{ + var row = [[_listDelegate tableView] selectedRow]; + + if (row >= 0) + { + if (_usesDataSource) + [self _dataSourceWarningForMethod:_cmd condition:YES]; + + return _items[row]; + } + + return nil; +} + +- (void)selectItemAtIndex:(int)index +{ + var table = [_listDelegate tableView], + row = [table selectedRow]; + + if (row === index) + return; + + [table selectRowIndexes:[CPIndexSet indexSetWithIndex:index] byExtendingSelection:NO]; +} + +- (void)selectItemWithObjectValue:(id)anObject +{ + var index = [self indexOfItemWithObjectValue:anObject]; + + if (index !== CPNotFound) + [self selectItemAtIndex:index]; +} + +#pragma mark Completing the Text Field + +- (BOOL)completes +{ + return _completes; +} + +- (void)setCompletes:(BOOL)flag +{ + _completes = !!flag; +} + +- (CPString)completedString:(CPString)substring +{ + if (_usesDataSource) + return [self comboBoxCompletedString:substring]; + else + { + var index = [_items indexOfObjectPassingTest:CPComboBoxCompletionTest context:substring]; + + return index !== CPNotFound ? _items[index] : nil; + } +} + +/*! + Returns whether the combo box forces the user to enter or select + an item that is in the item list. +*/ +- (BOOL)forceSelection +{ + return _forceSelection; +} + +/*! + Sets whether the combo box forces the user to enter or select + an item that is in the item list. If \c flag is \c YES and the user enters a value + that is not in the list, when the field loses focus it will revert + to the previous value. If \c flag is \c NO, the user can enter any value they wish. + + Note that this flag is ignored if \ref setStringValue or \ref setObjectValue are + called directly. +*/ +- (void)setForceSelection:(BOOL)flag +{ + _forceSelection = !!flag; +} + +#pragma mark CPTextField Delegate Methods and Overrides + +/*! @ignore */ +- (BOOL)sendAction:(SEL)anAction to:(id)anObject +{ + // When the action is sent, be sure to get the value and close the list. + // This covers the case where the action is triggered by pressing a key + // that triggers the text field action. + + if ([self listIsVisible]) + { + [self takeStringValueFromList]; + [_listDelegate close]; + } + + return [super sendAction:anAction to:anObject]; +} + +/*! @ignore */ +- (void)setObjectValue:(id)object +{ + [super setObjectValue:object]; + + _selectedStringValue = [self stringValue]; +} + +/*! @ignore */ +- (void)interpretKeyEvents:(CPArray)events +{ + var theEvent = events[0]; + + // Only if characters are added at the end of the value can completion occur + _canComplete = NO; + + if (_completes) + { + if (![theEvent _couldBeKeyEquivalent] && [theEvent characters].charAt(0) !== CPDeleteCharacter) + { + var value = [self _inputElement].value, + selectedRange = [self selectedRange]; + + _canComplete = CPMaxRange(selectedRange) === value.length; + } + } + + [super interpretKeyEvents:events]; +} + +/*! @ignore */ +- (void)paste:(id)sender +{ + if (_completes) + { + // Completion can occur only if pasting at the end of the value + var value = [self _inputElement].value, + selectedRange = [self selectedRange]; + + _canComplete = CPMaxRange(selectedRange) === value.length; + } + else + _canComplete = NO; + + [super paste:sender]; +} + +/*! @ignore */ +- (void)textDidChange:(CPNotification)aNotification +{ + /* + Completion is attempted iff: + - _completes is YES + - Characters were added at the end of the value + */ + var uncompletedString = [self stringValue], + newString = uncompletedString; + + if (_completes && _canComplete) + { + newString = [self completedString:uncompletedString]; + + if (newString && newString.length > uncompletedString.length) + { + [self setStringValue:newString]; + [self setSelectedRange:CPMakeRange(uncompletedString.length, newString.length - uncompletedString.length)]; + } + } + + [self _selectMatchingItem]; + _canComplete = NO; + + [super textDidChange:aNotification]; +} + +/*! + Override of CPView -performKeyEquivalent + @ignore +*/ +- (BOOL)performKeyEquivalent:(CPEvent)anEvent +{ + if ([[self window] firstResponder] === self) + { + var key = [anEvent charactersIgnoringModifiers]; + + switch (key) + { + case CPDownArrowFunctionKey: + if (![self listIsVisible]) + { + [self popUpList]; + return YES; + } + break; + + case CPEscapeFunctionKey: + if ([self listIsVisible]) + { + // If we are forcing a selection and the user has entered a value which is not + // in the list, revert to the most recent valid value. + if (_forceSelection && ([self _inputElement].value !== _selectedStringValue)) + [self setStringValue:_selectedStringValue]; + } + break; + } + + if ([_listDelegate performKeyEquivalent:anEvent]) + return YES; + } + + return [super performKeyEquivalent:anEvent]; +} + +/*! @ignore */ +- (BOOL)resignFirstResponder +{ + var buttonCausedResign = _popUpButtonCausedResign; + + _popUpButtonCausedResign = NO; + + /* + If the list or popup button is clicked, we lose focus. The list will refuse first responder, + and we refuse to resign. But we still have to manually restore the focus to the input element. + */ + var shouldResign = !buttonCausedResign && (!_listDelegate || [_listDelegate controllingViewShouldResign]); + + if (!shouldResign) + { +#if PLATFORM(DOM) + // In FireFox this needs to be done in setTimeout, otherwise there is no caret + // We have to save the input element now, when we lose focus it will change. + var element = [self _inputElement]; + window.setTimeout(function() { element.focus(); }, 0); +#endif + + return NO; + } + + // The list was not clicked, we need to close it now + [_listDelegate close]; + + // If the field is empty, allow it to remain empty. + // Otherwise restore the most recently selected value if forcing selection. + var value = [self stringValue]; + + if (value) + { + if (_forceSelection && ![value isEqual:_selectedStringValue]) + [self setStringValue:_selectedStringValue]; + } + else + _selectedStringValue = @""; + + return [super resignFirstResponder]; +} + +- (void)setFont:(CPFont)aFont +{ + [super setFont:aFont]; + [_listDelegate setFont:aFont]; +} + +- (void)setAlignment:(CPTextAlignment)alignment +{ + [super setAlignment:alignment]; + [_listDelegate setAlignment:alignment]; +} + +#pragma mark Pop Up Button Layout + +- (CGRect)popupButtonRectForBounds:(CGRect)bounds +{ + var borderInset = [self currentValueForThemeAttribute:@"border-inset"], + buttonSize = [self currentValueForThemeAttribute:@"popup-button-size"]; + + bounds.origin.x = CGRectGetMaxX(bounds) - borderInset.right - buttonSize.width; + bounds.origin.y += borderInset.top; + + bounds.size.width = buttonSize.width; + bounds.size.height = buttonSize.height; + + return bounds; +} + +- (CGRect)rectForEphemeralSubviewNamed:(CPString)aName +{ + if (aName === "popup-button-view") + return [self popupButtonRectForBounds:[self bounds]]; + + return [super rectForEphemeralSubviewNamed:aName]; +} + +- (CPView)createEphemeralSubviewNamed:(CPString)aName +{ + if (aName === "popup-button-view") + { + var view = [[_CPComboBoxPopUpButton alloc] initWithFrame:_CGRectMakeZero() comboBox:self]; + + return view; + } + + return [super createEphemeralSubviewNamed:aName]; +} + +- (void)layoutSubviews +{ + [super layoutSubviews]; + + var popupButtonView = [self layoutEphemeralSubviewNamed:@"popup-button-view" + positioned:CPWindowAbove + relativeToEphemeralSubviewNamed:@"content-view"]; +} + +#pragma mark Internal Helpers + +/*! @ignore */ +- (void)_dataSourceWarningForMethod:(SEL)cmd condition:(CPString)flag +{ + CPLog.warn("-[%s %s] should not be called when usesDataSource is set to %s", [self className], cmd, flag ? "YES" : "NO"); +} + +/*! + Select the item that matches the current value of the combobox. + @ignore +*/ +- (void)_selectMatchingItem +{ + var index = CPNotFound, + stringValue = [self stringValue]; + + if (_usesDataSource) + { + if (_dataSource && [_dataSource respondsToSelector:@selector(comboBox:indexOfItemWithStringValue:)]) + index = [_dataSource comboBox:self indexOfItemWithStringValue:stringValue] + } + else + index = [self indexOfItemWithObjectValue:stringValue]; + + [_listDelegate selectRow:index]; + + // selectRow scrolls the row to visible, if a row is selected scroll it to the top + if (index !== CPNotFound) + { + [_listDelegate scrollItemAtIndexToTop:index]; + _selectedStringValue = stringValue; + } +} + +/*! + Calculate the frame in base coordinates that will nestle just below the visible border of the text field. + @ignore +*/ +- (CGRect)_borderFrame +{ + var inset = [self currentValueForThemeAttribute:@"border-inset"], + frame = [self bounds]; + + frame.origin.x += inset.left; + frame.origin.y += inset.top; + frame.size.width -= inset.left + inset.right; + frame.size.height -= inset.top + inset.bottom; + + return frame; +} + +/* @ignore */ +- (void)_popUpButtonWasClicked +{ + if (![self isEnabled]) + return; + + // If we are currently the first responder, we will be asked to resign when the list pops up. + // Set a flag to let resignResponder know that the button was clicked and we should not resign. + var firstResponder = [[self window] firstResponder]; + + _popUpButtonCausedResign = firstResponder === self; + + if ([self listIsVisible]) + [_listDelegate close]; + else + { + if (firstResponder !== self) + [[self window] makeFirstResponder:self]; + + [self popUpList]; + } +} + +@end + +@implementation CPComboBox (CPComboBoxDelegate) + +/*! @ignore */ +- (void)comboBoxSelectionIsChanging:(CPNotification)aNotification +{ + [[CPNotificationCenter defaultCenter] postNotificationName:CPComboBoxSelectionIsChangingNotification object:self]; +} + +/*! @ignore */ +- (void)comboBoxSelectionDidChange:(CPNotification)aNotification +{ + [[CPNotificationCenter defaultCenter] postNotificationName:CPComboBoxSelectionDidChangeNotification object:self]; +} + +/*! @ignore */ +- (void)comboBoxWillPopUp:(CPNotification)aNotification +{ + [[CPNotificationCenter defaultCenter] postNotificationName:CPComboBoxWillPopUpNotification object:self]; +} + +/*! @ignore */ +- (void)comboBoxWillDismiss:(CPNotification)aNotification +{ + [[CPNotificationCenter defaultCenter] postNotificationName:CPComboBoxWillDismissNotification object:self]; +} + +@end + +@implementation CPComboBox (CPComboBoxDataSource) + +/*! @ignore */ +- (CPString)comboBoxCompletedString:(CPString)uncompletedString +{ + if ([_dataSource respondsToSelector:@selector(comboBox:completedString:)]) + return [_dataSource comboBox:self completedString:uncompletedString]; + else + return nil; +} + +@end + +@implementation CPComboBox (_CPPopUpListDataSource) + +- (int)numberOfItemsInList:(_CPPopUpList)aList +{ + return [self numberOfItems]; +} + +- (int)numberOfVisibleItemsInList:(_CPPopUpList)aList +{ + return [self numberOfVisibleItems]; +} + +- (id)list:(_CPPopUpList)aList objectValueForItemAtIndex:(int)index +{ + if (_usesDataSource) + return [_dataSource comboBox:self objectValueForItemAtIndex:index]; + else + return _items[index]; +} + +- (id)list:(_CPPopUpList)aList displayValueForObjectValue:(id)aValue +{ + return aValue || @""; +} + +- (CPString)list:(_CPPopUpList)aList stringValueForObjectValue:(id)aValue +{ + return String(aValue); +} + +@end + +@implementation CPComboBox (Bindings) + +/*! @ignore */ +- (void)setContentValues:(CPArray)anArray +{ + [self setUsesDataSource:NO]; + [self removeAllItems]; + [self addItemsWithObjectValues:anArray]; +} + +/*! @ignore */ +- (void)setContent:(CPArray)anArray +{ + [self setUsesDataSource:NO]; + + // Directly nuke _items, [_items removeAll] will trigger an extra call to setContent + _items = []; + + var values = []; + + [anArray enumerateObjectsUsingBlock:function(object) + { + values.push([object description]); + }]; + + [self addItemsWithObjectValues:values]; +} + +@end + +var CPComboBoxItemsKey = @"CPComboBoxItemsKey", + CPComboBoxListKey = @"CPComboBoxListKey", + CPComboBoxDelegateKey = @"CPComboBoxDelegateKey", + CPComboBoxDataSourceKey = @"CPComboBoxDataSourceKey", + CPComboBoxUsesDataSourceKey = @"CPComboBoxUsesDataSourceKey", + CPComboBoxCompletesKey = @"CPComboBoxCompletesKey", + CPComboBoxNumberOfVisibleItemsKey = @"CPComboBoxNumberOfVisibleItemsKey", + CPComboBoxHasVerticalScrollerKey = @"CPComboBoxHasVerticalScrollerKey", + CPComboBoxButtonBorderedKey = @"CPComboBoxButtonBorderedKey"; + +@implementation CPComboBox (CPCoding) + +- (id)initWithCoder:(CPCoder)aCoder +{ + self = [super initWithCoder:aCoder]; + + if (self) + { + [self _initComboBox]; + + _items = [aCoder decodeObjectForKey:CPComboBoxItemsKey]; + _listDelegate = [aCoder decodeObjectForKey:CPComboBoxListKey]; + _delegate = [aCoder decodeObjectForKey:CPComboBoxDelegateKey]; + _dataSource = [aCoder decodeObjectForKey:CPComboBoxDataSourceKey]; + _usesDataSource = [aCoder decodeBoolForKey:CPComboBoxUsesDataSourceKey]; + _completes = [aCoder decodeBoolForKey:CPComboBoxCompletesKey]; + _numberOfVisibleItems = [aCoder decodeIntForKey:CPComboBoxNumberOfVisibleItemsKey]; + _hasVerticalScroller = [aCoder decodeBoolForKey:CPComboBoxHasVerticalScrollerKey]; + [self setButtonBordered:[aCoder decodeBoolForKey:CPComboBoxButtonBorderedKey]]; + } + + return self; +} + +- (void)encodeWithCoder:(CPCoder)aCoder +{ + [super encodeWithCoder:aCoder]; + + [aCoder encodeObject:_items forKey:CPComboBoxItemsKey]; + [aCoder encodeObject:_listDelegate forKey:CPComboBoxListKey]; + [aCoder encodeObject:_delegate forKey:CPComboBoxDelegateKey]; + [aCoder encodeObject:_dataSource forKey:CPComboBoxDataSourceKey]; + [aCoder encodeBool:_usesDataSource forKey:CPComboBoxUsesDataSourceKey]; + [aCoder encodeBool:_completes forKey:CPComboBoxCompletesKey]; + [aCoder encodeInt:_numberOfVisibleItems forKey:CPComboBoxNumberOfVisibleItemsKey]; + [aCoder encodeBool:_hasVerticalScroller forKey:CPComboBoxHasVerticalScrollerKey]; + [aCoder encodeBool:[self isButtonBordered] forKey:CPComboBoxButtonBorderedKey]; +} + +@end + + +var CPComboBoxCompletionTest = function(object, index, context) +{ + return object.toString().indexOf(context) === 0; +}; + + +/* + This class is only used for CPContentBinding and CPContentValuesBinding. +*/ +@implementation _CPComboBoxContentBinder : CPBinder + +- (void)setValueFor:(CPString)theBinding +{ + var destination = [_info objectForKey:CPObservedObjectKey], + keyPath = [_info objectForKey:CPObservedKeyPathKey], + options = [_info objectForKey:CPOptionsKey], + newValue = [destination valueForKeyPath:keyPath], + isPlaceholder = CPIsControllerMarker(newValue); + + [_source removeAllItems]; + + if (isPlaceholder) + { + // By default the placeholders will all result in an empty list + switch (newValue) + { + case CPMultipleValuesMarker: + newValue = [options objectForKey:CPMultipleValuesPlaceholderBindingOption] || []; + break; + + case CPNoSelectionMarker: + newValue = [options objectForKey:CPNoSelectionPlaceholderBindingOption] || []; + break; + + case CPNotApplicableMarker: + if ([options objectForKey:CPRaisesForNotApplicableKeysBindingOption]) + [CPException raise:CPGenericException + reason:@"can't transform non applicable key on: " + _source + " value: " + newValue]; + + newValue = [options objectForKey:CPNotApplicablePlaceholderBindingOption] || []; + break; + + case CPNullMarker: + newValue = [options objectForKey:CPNullPlaceholderBindingOption] || []; + break; + } + + if (![newValue isKindOfClass:[CPArray class]]) + newValue = []; + } + else + newValue = [self transformValue:newValue withOptions:options]; + + switch (theBinding) + { + case CPContentBinding: [_source setContent:newValue]; + break; + + case CPContentValuesBinding: [_source setContentValues:newValue]; + break; + } +} + +@end + +@implementation _CPComboBoxPopUpButton : CPView +{ + CPComboBox _comboBox; +} + +- (id)initWithFrame:(CGRect)aFrame comboBox:(CPComboBox)aComboBox +{ + self = [super initWithFrame:aFrame]; + + if (self) + _comboBox = aComboBox; + + return self; +} + +- (void)mouseDown:(CPEvent)theEvent +{ + [_comboBox _popUpButtonWasClicked]; +} + +- (BOOL)acceptsFirstResponder +{ + return NO; +} + +@end diff --git a/AppKit/CPControl.j b/AppKit/CPControl.j index 8f5c7b6f8..25cb70f99 100644 --- a/AppKit/CPControl.j +++ b/AppKit/CPControl.j @@ -112,7 +112,7 @@ var CPControlBlackColor = [CPColor blackColor]; CPTopVerticalTextAlignment, CPLineBreakByClipping, [CPColor blackColor], - [CPFont systemFontOfSize:12.0], + [CPFont systemFontOfSize:CPFontCurrentSystemSize], [CPNull null], _CGSizeMakeZero(), CPImageLeft, @@ -867,15 +867,14 @@ var CPControlBlackColor = [CPColor blackColor]; @end -var CPControlValueKey = "CPControlValueKey", - CPControlControlStateKey = @"CPControlControlStateKey", - CPControlIsEnabledKey = "CPControlIsEnabledKey", - - CPControlTargetKey = "CPControlTargetKey", - CPControlActionKey = "CPControlActionKey", - CPControlSendActionOnKey = "CPControlSendActionOnKey", - - CPControlSendsActionOnEndEditingKey = "CPControlSendsActionOnEndEditingKey", +var CPControlValueKey = @"CPControlValueKey", + CPControlControlStateKey = @"CPControlControlStateKey", + CPControlIsEnabledKey = @"CPControlIsEnabledKey", + CPControlTargetKey = @"CPControlTargetKey", + CPControlActionKey = @"CPControlActionKey", + CPControlSendActionOnKey = @"CPControlSendActionOnKey", + CPControlFormatterKey = @"CPControlFormatterKey", + CPControlSendsActionOnEndEditingKey = @"CPControlSendsActionOnEndEditingKey", __Deprecated__CPImageViewImageKey = @"CPImageViewImageKey"; @@ -900,6 +899,8 @@ var CPControlValueKey = "CPControlValueKey", [self sendActionOn:[aCoder decodeIntForKey:CPControlSendActionOnKey]]; [self setSendsActionOnEndEditing:[aCoder decodeBoolForKey:CPControlSendsActionOnEndEditingKey]]; + + [self setFormatter:[aCoder decodeObjectForKey:CPControlFormatterKey]]; } return self; @@ -929,6 +930,9 @@ var CPControlValueKey = "CPControlValueKey", [aCoder encodeObject:_action forKey:CPControlActionKey]; [aCoder encodeInt:_sendActionOn forKey:CPControlSendActionOnKey]; + + if (_formatter !== nil) + [aCoder encodeObject:_formatter forKey:CPControlFormatterKey]; } @end diff --git a/AppKit/CPFont.j b/AppKit/CPFont.j index b96e4560c..329a12111 100644 --- a/AppKit/CPFont.j +++ b/AppKit/CPFont.j @@ -28,46 +28,85 @@ CPFontDefaultSystemFontFace = @"Arial, sans-serif"; CPFontDefaultSystemFontSize = 12; -var _CPFonts = {}, - _CPFontSystemFontFace = CPFontDefaultSystemFontFace, - _CPFontSystemFontSize = 12, - _CPFontFallbackFaces = CPFontDefaultSystemFontFace.split(", "), - _CPFontStripRegExp = new RegExp("(^\\s*[\"']?|[\"']?\\s*$)", "g"); +/*! + To create a font of a size that will dynamically reflect the current + system font size, use this for the size argument. +*/ +CPFontCurrentSystemSize = -1; + +// For internal use only by this class and subclasses +_CPFontSystemFacePlaceholder = "_CPFontSystemFacePlaceholder"; + +var _CPFontCache = {}, + _CPSystemFontCache = {}, + _CPFontSystemFontFace = CPFontDefaultSystemFontFace, + _CPFontSystemFontSize = 12, + _CPFontFallbackFaces = CPFontDefaultSystemFontFace.split(", "), + _CPFontStripRegExp = new RegExp("(^\\s*[\"']?|[\"']?\\s*$)", "g"); +#define _CPRealFontSize(aSize) (aSize <= 0 ? _CPFontSystemFontSize : aSize) #define _CPFontNormalizedNames(aName) _CPFontNormalizedNameArray(aName).join(", ") -#define _CPCachedFont(aName, aSize, isBold, isItalic) _CPFonts[_CPFontCreateCSSString(_CPFontNormalizedNames(aName), aSize, isBold, isItalic)] +#define _CPCachedFont(aName, aSize, isBold, isItalic) _CPFontCache[_CPFontCreateCSSString(_CPFontNormalizedNames(aName), aSize, isBold, isItalic)] +#define _CPUserFont(aName, aSize, isBold, isItalic) _CPCachedFont(aName, aSize, isBold, isItalic) || [[CPFont alloc] _initWithName:aName size:aSize bold:isBold italic:isItalic system:NO] + +#define _CPSystemFontCacheKey(aSize, isBold) (String(aSize) + (isBold ? "b" : "")) +#define _CPCachedSystemFont(aSize, isBold) _CPSystemFontCache[_CPSystemFontCacheKey(aSize, isBold)] +#define _CPSystemFont(aSize, isBold) (_CPCachedSystemFont(aSize, isBold) || [[CPFont alloc] _initWithName:_CPFontSystemFacePlaceholder size:aSize bold:isBold italic:NO system:YES]) /*! - @ingroup appkit - @class CPFont +@ingroup appkit +@class CPFont - The CPFont class allows control of the fonts used for displaying text anywhere on the screen. - The primary method for getting a particular font is through one of the class methods that take - a name and/or size as arguments, and return the appropriate CPFont. +The CPFont class allows control of the fonts used for displaying text anywhere on the screen. +The primary method for getting a particular font is through one of the class methods that take +a name and/or size as arguments, and return the appropriate CPFont. - By default the system font face/size is Arial 12px, with a fallback to sans-serif. You may - configure this at runtime in two ways: +### System fonts +When you create a font using \c -systemFontOfSize: or \c -boldSystemFontOfSize:, a proxy font is +created that always refers to the current system font face and size. By default the system +font face/size is Arial 12px, with a fallback to sans-serif 12px. You may configure this at +runtime in two ways: - - By sending [CPFont @link CPFont::setSystemFontFace: setSystemFontFace:@endlink] and/or [CPFont @link CPFont::setSystemFontSize: setSystemFontSize:@endlink]. - - By configuring Info.plist for your application or for AppKit. You can set the font face - by adding a CPSystemFontFace string item to the Info.plist, and you can set the font size - by adding a CPSystemFontSize integer item to the Info.plist. +- By sending [CPFont setSystemFontFace:] and/or [CPFont setSystemFontSize:]. + Note that if you change the system font face or size during runtime, the next time + any view using a system font is redrawn, it will show the new font. +- By configuring Info.plist for your application or for AppKit. You can set the font face + by adding a CPSystemFontFace string item to the Info.plist, and you can set the font size + by adding a CPSystemFontSize integer item to the Info.plist. - Note that in either case, you can specify a comma-delimited list of fonts as the font face. - The browser will use the first available font in the list. CPFont always ensures that Arial - and sans-serif are in the generated CSS string, so there is no need to add them to the end - of your font list. +Note that in either case, you can specify a comma-delimited list of fonts as the font face. +Do not quote enclose font faces that contain spaces, that is done automatically when a CSS +representation of a font is requested. - If you are using nib2cib, you should use the second method (using Info.plist), - and be sure to run nib2cib again any time you modify the CPSystemFontFace or CPSystemFontSize items. - For example, you might add this to your application's Info.plist to set the system font to Lucida Grande, - with an automatic fallback to Arial or sans-serif: +The browser will use the first available font in the list you supply. CPFont always ensures +that Arial and sans-serif are in the CSS representation of a font as a fallback, so there is +no need to add them to the end of your font list. - @code +### nib2cib conversion +Fonts are converted by nib2cib according to the following algorithm: + +- If the font family is Lucida Grande, then a system font will be created. +- If the font is Lucida Grande 13 (plain), the "default" font will be used at runtime. + The default font is taken from the "font" theme attribute if one exists, + otherwise from the current system font face and size. +- Lucida Grande of any size other than 13 will retain its size. +- Fonts using any family other than Lucida Grande will be used as is, including the size. + +### Using custom web fonts +The configurability of CPFont makes it easy to use a custom web font as the system font. +For example, if you want to use the google font Asap as the system font, you would do the +following: + +- Add a to the of index-debug.html and index.html: +@code + +@endcode +- Specify Asap as the system font in Info.plist by adding the following item: +@code CPSystemFontFace -Lucida Grande - @endcode +Asap +@endcode */ @implementation CPFont : CPObject { @@ -78,6 +117,7 @@ var _CPFonts = {}, float _lineHeight; BOOL _isBold @accessors(readonly, getter=isBold); BOOL _isItalic @accessors(readonly, getter=isItalic); + BOOL _isSystem @accessors(readonly, getter=isSystem); CPString _cssString; } @@ -93,7 +133,7 @@ var _CPFonts = {}, systemFontFace = [[CPBundle bundleForClass:[CPView class]] objectForInfoDictionaryKey:@"CPSystemFontFace"]; if (systemFontFace) - [self setSystemFontFace:systemFontFace]; + _CPFontSystemFontFace = _CPFontNormalizedNames(systemFontFace); var systemFontSize = [[CPBundle mainBundle] objectForInfoDictionaryKey:@"CPSystemFontSize"]; @@ -117,7 +157,13 @@ var _CPFonts = {}, */ + (CPString)setSystemFontFace:(CPString)aFace { - _CPFontSystemFontFace = _CPFontNormalizedNames(aFace); + var normalizedFaces = _CPFontNormalizedNames(aFace); + + if (normalizedFaces === _CPFontSystemFontFace) + return; + + [self _invalidateSystemFontCache] + _CPFontSystemFontFace = aFace; } /*! @@ -133,101 +179,136 @@ var _CPFonts = {}, */ + (float)setSystemFontSize:(float)size { - if (size > 0) + if (size > 0 && size !== _CPFontSystemFontSize) + { + [self _invalidateSystemFontCache]; _CPFontSystemFontSize = size; + } +} + ++ (void)_invalidateSystemFontCache +{ + var systemSize = String(_CPFontSystemFontSize), + currentSize = String(CPFontCurrentSystemSize); + + for (key in _CPSystemFontCache) + { + if (_CPSystemFontCache.hasOwnProperty(key) && + (key.indexOf(systemSize) === 0 || key.indexOf(currentSize) === 0)) + { + delete _CPSystemFontCache[key]; + } + } } /*! Returns a font with the specified name and size. @param aName the name of the font - @param aSize the size of the font (in px) + @param aSize the size of the font (in px). 0 or negative will create a font + in the current system font size. @return the requested font */ + (CPFont)fontWithName:(CPString)aName size:(float)aSize { - return [CPFont fontWithName:aName size:aSize bold:NO italic:NO]; + return _CPUserFont(aName, aSize <= 0 ? _CPFontSystemFontSize : aSize, NO, NO); } /*! Returns a font with the specified name, size and style. @param aName the name of the font - @param aSize the size of the font (in px) + @param aSize the size of the font (in px). 0 or negative will create a font + in the current system font size. @param italic whether the font should be italicized @return the requested font */ + (CPFont)fontWithName:(CPString)aName size:(float)aSize italic:(BOOL)italic { - return [CPFont fontWithName:aName size:aSize bold:NO italic:italic]; + return _CPUserFont(aName, aSize <= 0 ? _CPFontSystemFontSize : aSize, NO, italic); } /*! Returns a bold font with the specified name and size. @param aName the name of the font - @param aSize the size of the font (in px) + @param aSize the size of the font (in px). 0 or negative will create a font + in the current system font size. @return the requested bold font */ + (CPFont)boldFontWithName:(CPString)aName size:(float)aSize { - return [CPFont fontWithName:aName size:aSize bold:YES italic:NO]; + return _CPUserFont(aName, aSize <= 0 ? _CPFontSystemFontSize : aSize, YES, NO); } /*! Returns a bold font with the specified name, size and style. @param aName the name of the font - @param aSize the size of the font (in px) + @param aSize the size of the font (in px). 0 or negative will create a font + in the current system font size. @param italic whether the font should be italicized @return the requested font */ + (CPFont)boldFontWithName:(CPString)aName size:(float)aSize italic:(BOOL)italic { - return [CPFont fontWithName:aName size:aSize bold:YES italic:italic]; + return _CPUserFont(aName, aSize <= 0 ? _CPFontSystemFontSize : aSize, YES, italic); +} + +/*! + Internal font getter like fontWithName:size:italic: with a bold selector. +*/ ++ (CPFont)_fontWithName:(CPString)aName size:(float)aSize bold:(BOOL)bold italic:(BOOL)italic +{ + return _CPUserFont(aName, aSize <= 0 ? _CPFontSystemFontSize : aSize, bold, italic); } /*! Returns the system font scaled to the specified size - @param aSize the size of the font (in px) + @param aSize the size of the font (in px). 0 creates a static font + in the current system font size. Negative creates a font + that dynamically tracks the current system font size. @return the requested system font */ + (CPFont)systemFontOfSize:(CPSize)aSize { - return [CPFont fontWithName:_CPFontSystemFontFace size:aSize bold:NO italic:NO]; + return _CPSystemFont(aSize === 0 ? _CPFontSystemFontSize : aSize, NO); } /*! Returns the bold system font scaled to the specified size - @param aSize the size of the font (in px) + @param aSize the size of the font (in px). 0 creates a static font + in the current system font size. Negative creates a font + that dynamically tracks the current system font size. @return the requested bold system font */ + (CPFont)boldSystemFontOfSize:(CPSize)aSize { - return [CPFont fontWithName:_CPFontSystemFontFace size:aSize bold:YES italic:NO]; + return _CPSystemFont(aSize === 0 ? _CPFontSystemFontSize : aSize, YES); } -/* FIXME Font Descriptor - @ignore -*/ -+ (CPFont)fontWithName:(CPString)aName size:(float)aSize bold:(BOOL)bold italic:(BOOL)italic -{ - return _CPCachedFont(aName, aSize, bold, italic) || [[CPFont alloc] _initWithName:aName size:aSize bold:bold italic:italic]; -} - -- (id)_initWithName:(CPString)aName size:(float)aSize bold:(BOOL)isBold italic:(BOOL)isItalic +- (id)_initWithName:(CPString)aName size:(float)aSize bold:(BOOL)isBold italic:(BOOL)isItalic system:(BOOL)isSystem { self = [super init]; if (self) { - _name = _CPFontNormalizedNames(aName); _size = aSize; _ascender = 0; _descender = 0; _lineHeight = 0; _isBold = isBold; _isItalic = isItalic; + _isSystem = isSystem; - _cssString = _CPFontCreateCSSString(_name, _size, _isBold, _isItalic); - - _CPFonts[_cssString] = self; + if (isSystem) + { + _name = aName; + _cssString = _CPFontCreateCSSString(_CPFontSystemFontFace, _size, _isBold, _isItalic); + _CPSystemFontCache[_CPSystemFontCacheKey(_size, _isBold)] = self; + } + else + { + _name = _CPFontNormalizedNames(aName); + _cssString = _CPFontCreateCSSString(_name, _size, _isBold, _isItalic); + _CPFontCache[_cssString] = self; + } } return self; @@ -238,10 +319,12 @@ var _CPFonts = {}, */ - (float)ascender { - if (!_ascender) - [self _getMetrics]; + var font = _isSystem ? _CPSystemFont(_size, _isBold) : self; - return _ascender; + if (!font._ascender) + [font _getMetrics]; + + return font._ascender; } /*! @@ -250,10 +333,12 @@ var _CPFonts = {}, */ - (float)descender { - if (!_descender) - [self _getMetrics]; + var font = _isSystem ? _CPSystemFont(_size, _isBold) : self; - return _descender; + if (!font._descender) + [font _getMetrics]; + + return font._descender; } /*! @@ -263,10 +348,12 @@ var _CPFonts = {}, */ - (float)defaultLineHeightForFont { - if (!_lineHeight) - [self _getMetrics]; + var font = _isSystem ? _CPSystemFont(_size, _isBold) : self; - return _lineHeight; + if (!font._lineHeight) + [font _getMetrics]; + + return font._lineHeight; } /*! @@ -274,7 +361,7 @@ var _CPFonts = {}, */ - (float)size { - return _size; + return _CPRealFontSize(_size); } /*! @@ -282,7 +369,9 @@ var _CPFonts = {}, */ - (CPString)cssString { - return _cssString; + var font = _isSystem ? _CPSystemFont(_size, _isBold) : self; + + return font._cssString; } /*! @@ -290,9 +379,17 @@ var _CPFonts = {}, */ - (CPString)familyName { + if (_isSystem) + return _CPFontSystemFontFace; + return _name; } +- (BOOL)isSystemSize +{ + return _size <= 0; +} + - (BOOL)isEqual:(id)anObject { return [anObject isKindOfClass:[CPFont class]] && [anObject cssString] === _cssString; @@ -305,7 +402,7 @@ var _CPFonts = {}, - (id)copy { - return [[CPFont alloc] _initWithName:_name size:_size bold:_isBold italic:_isItalic]; + return [[CPFont alloc] _initWithName:_name size:_size bold:_isBold italic:_isItalic system:_isSystem]; } - (void)_getMetrics @@ -322,7 +419,8 @@ var _CPFonts = {}, var CPFontNameKey = @"CPFontNameKey", CPFontSizeKey = @"CPFontSizeKey", CPFontIsBoldKey = @"CPFontIsBoldKey", - CPFontIsItalicKey = @"CPFontIsItalicKey"; + CPFontIsItalicKey = @"CPFontIsItalicKey", + CPFontIsSystemKey = @"CPFontIsSystemKey"; @implementation CPFont (CPCoding) @@ -336,9 +434,10 @@ var CPFontNameKey = @"CPFontNameKey", var fontName = [aCoder decodeObjectForKey:CPFontNameKey], size = [aCoder decodeFloatForKey:CPFontSizeKey], isBold = [aCoder decodeBoolForKey:CPFontIsBoldKey], - isItalic = [aCoder decodeBoolForKey:CPFontIsItalicKey]; + isItalic = [aCoder decodeBoolForKey:CPFontIsItalicKey], + isSystem = [aCoder decodeBoolForKey:CPFontIsSystemKey]; - return [self _initWithName:fontName size:size bold:isBold italic:isItalic]; + return [self _initWithName:fontName size:size bold:isBold italic:isItalic system:isSystem]; } /*! @@ -351,6 +450,7 @@ var CPFontNameKey = @"CPFontNameKey", [aCoder encodeFloat:_size forKey:CPFontSizeKey]; [aCoder encodeBool:_isBold forKey:CPFontIsBoldKey]; [aCoder encodeBool:_isItalic forKey:CPFontIsItalicKey]; + [aCoder encodeBool:_isSystem forKey:CPFontIsSystemKey]; } @end @@ -359,7 +459,7 @@ var CPFontNameKey = @"CPFontNameKey", // aName must be normalized var _CPFontCreateCSSString = function(aName, aSize, isBold, isItalic) { - var properties = (isItalic ? "italic " : "") + (isBold ? "bold " : "") + aSize + "px "; + var properties = (isItalic ? "italic " : "") + (isBold ? "bold " : "") + _CPRealFontSize(aSize) + "px "; return properties + _CPFontConcatNameWithFallback(aName); }; diff --git a/AppKit/CPFontManager.j b/AppKit/CPFontManager.j index b3666f148..cee4f062d 100644 --- a/AppKit/CPFontManager.j +++ b/AppKit/CPFontManager.j @@ -24,6 +24,19 @@ @import "CPFont.j" +CPItalicFontMask = 1 << 0; +CPBoldFontMask = 1 << 1; +CPUnboldFontMask = 1 << 2; +CPNonStandardCharacterSetFontMask = 1 << 3; +CPNarrowFontMask = 1 << 4; +CPExpandedFontMask = 1 << 5; +CPCondensedFontMask = 1 << 6; +CPSmallCapsFontMask = 1 << 7; +CPPosterFontMask = 1 << 8; +CPCompressedFontMask = 1 << 9; +CPFixedPitchFontMask = 1 << 10; +CPUnitalicFontMask = 1 << 24; + var CPSharedFontManager = nil, CPFontManagerFactory = Nil; @@ -33,7 +46,17 @@ var CPSharedFontManager = nil, */ @implementation CPFontManager : CPObject { - CPArray _availableFonts; + CPArray _availableFonts; + + id _target @accessors(property=target); + SEL _action @accessors(property=action); + + id _delegate @accessors(property=delegate); + + CPFont _selectedFont; + BOOL _multiple @accessors; + + CPDictionary _activeChange; } // Getting the Shared Font Manager @@ -59,6 +82,16 @@ var CPSharedFontManager = nil, CPFontManagerFactory = aClass; } +- (id)init +{ + if (self = [super init]) + { + _action = @selector(changeFont:); + } + + return self; +} + /*! Returns an array of the available fonts */ @@ -97,43 +130,128 @@ var CPSharedFontManager = nil, return _CPFontDetectFontAvailable(aFontName); } +- (void)setSelectedFont:(CPFont)aFont isMultiple:(BOOL)aFlag +{ + _selectedFont = aFont; + _isMultiple = aFlag; + + // TODO Notify CPFontPanel when it exists. +} + +- (CPFont)selectedFont +{ + return _selectedFont; +} + +- (BOOL)isMultiple +{ + return _isMultiple; +} + +- (int)weightOfFont:(CPFont)aFont +{ + // TODO Weight 5 is a normal of book weight and 9 and above is bold, but it would be nice to be more + // precise than that. + return [aFont isBold] ? 9 : 5; +} + +- (CPFontTraitMask)traitsOfFont:(CPFont)aFont +{ + return ([aFont isBold] ? CPBoldFontMask : 0) | ([aFont isItalic] ? CPItalicFontMask : 0); +} + +- (CPFont)convertFont:(CPFont)aFont +{ + if (!_activeChange) + return aFont; + + var addTraits = [_activeChange valueForKey:@"addTraits"]; + + if (addTraits) + aFont = [self convertFont:aFont toHaveTrait:addTraits]; + + return aFont; +} + +- (CPFont)convertFont:(CPFont)aFont toHaveTrait:(CPFontTraitMask)addTraits +{ + if (!aFont) + return nil; + + var shouldBeBold = ([aFont isBold] || (addTraits & CPBoldFontMask)) && !(addTraits & CPUnboldFontMask), + shouldBeItalic = ([aFont isItalic] || (addTraits & CPItalicFontMask)) && !(addTraits & CPUnitalicFontMask), + shouldBeSize = [aFont size]; + + // XXX On the current platform there will always be a bold/italic version of each font, but still leave + // || aFont in here for future platforms. + aFont = [CPFont _fontWithName:[aFont familyName] size:shouldBeSize bold:shouldBeBold italic:shouldBeItalic] || aFont; + + return aFont; +} + +- (CPFont)convertFont:(CPFont)aFont toFace:(CPString)aTypeface +{ + if (!aFont) + return nil; + + var shouldBeBold = [aFont isBold], + shouldBeItalic = [aFont isItalic], + shouldBeSize = [aFont size]; + + aFont = [CPFont _fontWithName:aTypeface size:shouldBeSize bold:shouldBeBold italic:shouldBeItalic] || aFont; + + return aFont; +} + +- (@action)addFontTrait:(id)sender +{ + _activeChange = [CPDictionary dictionaryWithObject:[sender tag] forKey:@"addTraits"]; + + [self sendAction]; +} + +- (BOOL)sendAction +{ + return [CPApp sendAction:_action to:_target from:self]; +} + @end var _CPFontDetectSpan, _CPFontDetectReferenceFonts, _CPFontDetectAllFonts = [ - /* "04b_21","A Charming Font","Abadi MT Condensed","Abadi MT Condensed Extra Bold","Abadi MT Condensed Light","Academy Engraved LET","Agency FB","Alba","Alba Matter","Alba Super","Algerian",*/ + /* "04b_21", "A Charming Font", "Abadi MT Condensed", "Abadi MT Condensed Extra Bold", "Abadi MT Condensed Light", "Academy Engraved LET", "Agency FB", "Alba", "Alba Matter", "Alba Super", "Algerian",*/ "American Typewriter", - /* "Andale Mono","Andale Mono IPA","Andy", */ - "Apple Chancery","Arial","Arial Black","Arial Narrow","Arial Rounded MT Bold","Arial Unicode MS", - /* "Avant Garde","Avantgarde","Baby Kruffy","Base 02","Baskerville","Baskerville Old Face","Bauhaus 93","Beesknees ITC","Bell MT","Berlin Sans FB","Berlin Sans FB Demi","Bernard MT Condensed","Bickley Script",*/ - "Big Caslon","Bitstream Vera Sans","Bitstream Vera Sans Mono","Bitstream Vera Serif", - /* "Blackadder ITC","Blackletter686 BT","Bodoni MT","Bodoni MT Black","Bodoni MT Condensed","Bodoni MT Poster Compressed","Book Antiqua","Bookman","Bookman Old Style","Bradley Hand ITC","Braggadocio","Britannic Bold","Broadway","Broadway BT",*/ + /* "Andale Mono", "Andale Mono IPA", "Andy", */ + "Apple Chancery", "Arial", "Arial Black", "Arial Narrow", "Arial Rounded MT Bold", "Arial Unicode MS", + /* "Avant Garde", "Avantgarde", "Baby Kruffy", "Base 02", "Baskerville", "Baskerville Old Face", "Bauhaus 93", "Beesknees ITC", "Bell MT", "Berlin Sans FB", "Berlin Sans FB Demi", "Bernard MT Condensed", "Bickley Script",*/ + "Big Caslon", "Bitstream Vera Sans", "Bitstream Vera Sans Mono", "Bitstream Vera Serif", + /* "Blackadder ITC", "Blackletter686 BT", "Bodoni MT", "Bodoni MT Black", "Bodoni MT Condensed", "Bodoni MT Poster Compressed", "Book Antiqua", "Bookman", "Bookman Old Style", "Bradley Hand ITC", "Braggadocio", "Britannic Bold", "Broadway", "Broadway BT",*/ "Brush Script MT", - /* "BudHand","CAMPBELL","Calibri","Californian FB","Calisto MT","Calligraph421 BT",*/ + /* "BudHand", "CAMPBELL", "Calibri", "Californian FB", "Calisto MT", "Calligraph421 BT",*/ "Cambria", - /* "Candara","Capitals",*/ - "Caslon","Castellar","Cataneo BT","Centaur","Century Gothic","Century Schoolbook","Century Schoolbook L", - /* "Champignon","Charcoal","Charter","Charter BT","Chicago","Chick","Chiller","ClearlyU","Colonna MT",*/ - "Comic Sans", "Comic Sans MS","Consolas","Constantia","Cooper Black","Copperplate","Copperplate Gothic Bold","Copperplate Gothic Light","Corbel","Courier","Courier New", - /* "Croobie","Curlz MT","Desdemona","Didot","DomBold BT","Edwardian Script ITC","Engravers MT","Eras Bold ITC","Eras Demi ITC","Eras Light ITC","Eras Medium ITC","Eurostile","FIRSTHOME","Fat","Felix Titling","Fine Hand","Fixed","Footlight MT Light","Forte","Franklin Gothic Book","Franklin Gothic Demi","Franklin Gothic Demi Cond","Franklin Gothic Heavy","Franklin Gothic Medium","Franklin Gothic Medium Cond","Freestyle Script","French Script MT","Freshbot","Frosty",*/ + /* "Candara", "Capitals",*/ + "Caslon", "Castellar", "Cataneo BT", "Centaur", "Century Gothic", "Century Schoolbook", "Century Schoolbook L", + /* "Champignon", "Charcoal", "Charter", "Charter BT", "Chicago", "Chick", "Chiller", "ClearlyU", "Colonna MT",*/ + "Comic Sans", "Comic Sans MS", "Consolas", "Constantia", "Cooper Black", "Copperplate", "Copperplate Gothic Bold", "Copperplate Gothic Light", "Corbel", "Courier", "Courier New", + /* "Croobie", "Curlz MT", "Desdemona", "Didot", "DomBold BT", "Edwardian Script ITC", "Engravers MT", "Eras Bold ITC", "Eras Demi ITC", "Eras Light ITC", "Eras Medium ITC", "Eurostile", "FIRSTHOME", "Fat", "Felix Titling", "Fine Hand", "Fixed", "Footlight MT Light", "Forte", "Franklin Gothic Book", "Franklin Gothic Demi", "Franklin Gothic Demi Cond", "Franklin Gothic Heavy", "Franklin Gothic Medium", "Franklin Gothic Medium Cond", "Freestyle Script", "French Script MT", "Freshbot", "Frosty",*/ "Futura", - /* "GENUINE","Gadget","Garamond",*/ - "Geneva","Georgia","Georgia Ref", "Geeza Pro", "Gigi","Gill Sans","Gill Sans MT","Gill Sans MT Condensed","Gill Sans MT Ext Condensed Bold","Gill Sans Ultra Bold","Gill Sans Ultra Bold Condensed", - /* "GlooGun","Gloucester MT Extra Condensed","Goudy Old Style","Goudy Stout","Haettenschweiler","Harlow Solid Italic","Harrington",*/ - "Helvetica","Helvetica Narrow","Helvetica Neue","Herculanum","High Tower Text","Highlight LET","Hoefler Text","Impact","Imprint MT Shadow", - /* "Informal Roman","Jenkins v2.0","John Handy LET","Jokerman","Jokerman LET","Jokewood","Juice ITC","Kabel Ult BT","Kartika","Kino MT","Kristen ITC","Kunstler Script","La Bamba LET", */ - "Lucida","Lucida Bright","Lucida Calligraphy","Lucida Console","Lucida Fax","Lucida Grande","Lucida Handwriting","Lucida Sans","Lucida Sans Typewriter","Lucida Sans Unicode", - /* "Luxi Mono","Luxi Sans","Luxi Serif","MARKETPRO","MS Reference Sans Serif","MS Reference Serif","Magneto","Maiandra GD", */ + /* "GENUINE", "Gadget", "Garamond",*/ + "Geneva", "Georgia", "Georgia Ref", "Geeza Pro", "Gigi", "Gill Sans", "Gill Sans MT", "Gill Sans MT Condensed", "Gill Sans MT Ext Condensed Bold", "Gill Sans Ultra Bold", "Gill Sans Ultra Bold Condensed", + /* "GlooGun", "Gloucester MT Extra Condensed", "Goudy Old Style", "Goudy Stout", "Haettenschweiler", "Harlow Solid Italic", "Harrington",*/ + "Helvetica", "Helvetica Narrow", "Helvetica Neue", "Herculanum", "High Tower Text", "Highlight LET", "Hoefler Text", "Impact", "Imprint MT Shadow", + /* "Informal Roman", "Jenkins v2.0", "John Handy LET", "Jokerman", "Jokerman LET", "Jokewood", "Juice ITC", "Kabel Ult BT", "Kartika", "Kino MT", "Kristen ITC", "Kunstler Script", "La Bamba LET", */ + "Lucida", "Lucida Bright", "Lucida Calligraphy", "Lucida Console", "Lucida Fax", "Lucida Grande", "Lucida Handwriting", "Lucida Sans", "Lucida Sans Typewriter", "Lucida Sans Unicode", + /* "Luxi Mono", "Luxi Sans", "Luxi Serif", "MARKETPRO", "MS Reference Sans Serif", "MS Reference Serif", "Magneto", "Maiandra GD", */ "Marker Felt", - /* "Matisse ITC","Matura MT Script Capitals","Mead Bold","Mekanik LET","Mercurius Script MT Bold", */ - "Microsoft Sans Serif","Milano LET","Minion Web","MisterEarl BT","Mistral","Monaco","Monotype Corsiva","Monotype.com","New Century Schoolbook","New York","News Gothic MT", - /* "Niagara Engraved","Niagara Solid","Nimbus Mono L","Nimbus Roman No9 L","OCR A Extended","OCRB","Odessa LET","Old English Text MT","OldDreadfulNo7 BT","One Stroke Script LET","Onyx","Optima","Orange LET","Palace Script MT","Palatino","Palatino Linotype", */ + /* "Matisse ITC", "Matura MT Script Capitals", "Mead Bold", "Mekanik LET", "Mercurius Script MT Bold", */ + "Microsoft Sans Serif", "Milano LET", "Minion Web", "MisterEarl BT", "Mistral", "Monaco", "Monotype Corsiva", "Monotype.com", "New Century Schoolbook", "New York", "News Gothic MT", + /* "Niagara Engraved", "Niagara Solid", "Nimbus Mono L", "Nimbus Roman No9 L", "OCR A Extended", "OCRB", "Odessa LET", "Old English Text MT", "OldDreadfulNo7 BT", "One Stroke Script LET", "Onyx", "Optima", "Orange LET", "Palace Script MT", "Palatino", "Palatino Linotype", */ "Papyrus", - /* "ParkAvenue BT","Pepita MT","Perpetua","Perpetua Titling MT","Placard Condensed","Playbill","Poornut","Pristina","Pump Demi Bold LET","Pussycat","Quixley LET","Rage Italic","Rage Italic LET","Ravie","Rockwell","Rockwell Condensed","Rockwell Extra Bold","Ruach LET","Runic MT Condensed","Sand","Script MT Bold","Scruff LET","Segoe UI","Showcard Gothic","Skia","Smudger LET","Snap ITC","Square721 BT","Staccato222 BT","Stencil","Sylfaen", */ - "Tahoma","Techno","Tempus Sans ITC","Terminal","Textile","Times","Times New Roman","Tiranti Solid LET","Trebuchet MS", - /* "Tw Cen MT","Tw Cen MT Condensed","Tw Cen MT Condensed Extra Bold","URW Antiqua T","URW Bookman L","URW Chancery L","URW Gothic L","URW Palladio L","Univers","University Roman LET","Utopia", */ - "Verdana","Verdana Ref", /* "Victorian LET","Viner Hand ITC","Vivaldi","Vladimir Script","Vrinda","Weltron Urban","Westwood LET","Wide Latin","Zapf Chancery", */ + /* "ParkAvenue BT", "Pepita MT", "Perpetua", "Perpetua Titling MT", "Placard Condensed", "Playbill", "Poornut", "Pristina", "Pump Demi Bold LET", "Pussycat", "Quixley LET", "Rage Italic", "Rage Italic LET", "Ravie", "Rockwell", "Rockwell Condensed", "Rockwell Extra Bold", "Ruach LET", "Runic MT Condensed", "Sand", "Script MT Bold", "Scruff LET", "Segoe UI", "Showcard Gothic", "Skia", "Smudger LET", "Snap ITC", "Square721 BT", "Staccato222 BT", "Stencil", "Sylfaen", */ + "Tahoma", "Techno", "Tempus Sans ITC", "Terminal", "Textile", "Times", "Times New Roman", "Tiranti Solid LET", "Trebuchet MS", + /* "Tw Cen MT", "Tw Cen MT Condensed", "Tw Cen MT Condensed Extra Bold", "URW Antiqua T", "URW Bookman L", "URW Chancery L", "URW Gothic L", "URW Palladio L", "Univers", "University Roman LET", "Utopia", */ + "Verdana", "Verdana Ref", /* "Victorian LET", "Viner Hand ITC", "Vivaldi", "Vladimir Script", "Vrinda", "Weltron Urban", "Westwood LET", "Wide Latin", "Zapf Chancery", */ "Zapfino"]; // Compare against the reference fonts. Return true if it produces a different size than at least one of them. diff --git a/AppKit/CPImage.j b/AppKit/CPImage.j index d87c0b5d4..f19991f7a 100644 --- a/AppKit/CPImage.j +++ b/AppKit/CPImage.j @@ -21,13 +21,12 @@ */ @import +@import @import @import @import @import -@import "CPGeometry.j" - CPImageLoadStatusInitialized = 0; CPImageLoadStatusLoading = 1; diff --git a/AppKit/CPKeyValueBinding.j b/AppKit/CPKeyValueBinding.j index 7b75920ad..c49b70aa1 100644 --- a/AppKit/CPKeyValueBinding.j +++ b/AppKit/CPKeyValueBinding.j @@ -557,6 +557,7 @@ CPContentBinding = @"content"; CPContentObjectBinding = @"contentObject"; CPContentObjectsBinding = @"contentObjects"; CPContentValuesBinding = @"contentValues"; +CPEditableBinding = @"editable"; CPEnabledBinding = @"enabled"; CPFontBinding = @"font"; CPFontNameBinding = @"fontName"; @@ -572,7 +573,9 @@ CPSelectedTagBinding = @"selectedTag"; CPSelectedValueBinding = @"selectedValue"; CPSelectedValuesBinding = @"selectedValues"; CPSelectionIndexesBinding = @"selectionIndexes"; +CPTextColorBinding = @"textColor"; CPTitleBinding = @"title"; +CPToolTipBinding = @"toolTip"; CPValueBinding = @"value"; CPValueURLBinding = @"valueURL"; CPValuePathBinding = @"valuePath"; diff --git a/AppKit/CPMenu/CPMenu.j b/AppKit/CPMenu/CPMenu.j index c022037cf..bdf617a8f 100644 --- a/AppKit/CPMenu/CPMenu.j +++ b/AppKit/CPMenu/CPMenu.j @@ -806,7 +806,7 @@ var _CPMenuBarVisible = NO, [aMenu _menuWillOpen]; if (!aFont) - aFont = [CPFont systemFontOfSize:12.0]; + aFont = [CPFont systemFontOfSize:[CPFont systemFontSize]]; var theWindow = [aView window], menuWindow = [_CPMenuWindow menuWindowWithMenu:aMenu font:aFont]; diff --git a/AppKit/CPMenu/_CPMenuBarWindow.j b/AppKit/CPMenu/_CPMenuBarWindow.j index 7f93dbd59..62d6a4426 100644 --- a/AppKit/CPMenu/_CPMenuBarWindow.j +++ b/AppKit/CPMenu/_CPMenuBarWindow.j @@ -39,7 +39,7 @@ var _CPMenuBarWindowBackgroundColor = nil, var bundle = [CPBundle bundleForClass:self]; - _CPMenuBarWindowFont = [CPFont boldSystemFontOfSize:12.0]; + _CPMenuBarWindowFont = [CPFont boldSystemFontOfSize:[CPFont systemFontSize]]; } + (CPFont)font @@ -74,7 +74,7 @@ var _CPMenuBarWindowBackgroundColor = nil, _titleField = [[CPTextField alloc] initWithFrame:CGRectMakeZero()]; - [_titleField setFont:[CPFont boldSystemFontOfSize:13.0]]; + [_titleField setFont:[CPFont boldSystemFontOfSize:[CPFont systemFontSize] + 1]]; [_titleField setAlignment:CPCenterTextAlignment]; [_titleField setTextShadowOffset:CGSizeMake(0, 1)]; @@ -335,7 +335,7 @@ var _CPMenuBarWindowBackgroundColor = nil, - (CPFont)font { - [CPFont systemFontOfSize:12.0]; + [CPFont systemFontOfSize:[CPFont systemFontSize]]; } - (void)tile diff --git a/AppKit/CPMenuItem/CPMenuItem.j b/AppKit/CPMenuItem/CPMenuItem.j index 063fed763..ea9e49225 100644 --- a/AppKit/CPMenuItem/CPMenuItem.j +++ b/AppKit/CPMenuItem/CPMenuItem.j @@ -281,7 +281,7 @@ var CPMenuItemStringRepresentationDictionary = [CPDictionary dictionary]; */ - (void)setFont:(CPFont)aFont { - if (_font == aFont) + if ([_font isEqual:aFont]) return; _font = aFont; diff --git a/AppKit/CPMenuItem/_CPMenuItemView.j b/AppKit/CPMenuItem/_CPMenuItemView.j index 86df38996..e29c93a2d 100644 --- a/AppKit/CPMenuItem/_CPMenuItemView.j +++ b/AppKit/CPMenuItem/_CPMenuItemView.j @@ -176,7 +176,7 @@ var _CPMenuItemSelectionColor = nil, - (void)setFont:(CPFont)aFont { - if (_font === aFont) + if ([_font isEqual:aFont]) return; _font = aFont; diff --git a/AppKit/CPOutlineView.j b/AppKit/CPOutlineView.j index 9bbcb6f9f..ffddcfab1 100644 --- a/AppKit/CPOutlineView.j +++ b/AppKit/CPOutlineView.j @@ -711,7 +711,8 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0, return _CGRectMakeZero(); var dataViewFrame = [self _frameOfOutlineDataViewAtRow:aRow], - frame = _CGRectMake(_CGRectGetMinX(dataViewFrame) - 10, _CGRectGetMinY(dataViewFrame), 10, _CGRectGetHeight(dataViewFrame)); + disclosureWidth = _CGRectGetWidth([_disclosureControlPrototype frame]), + frame = _CGRectMake(_CGRectGetMinX(dataViewFrame) - disclosureWidth, _CGRectGetMinY(dataViewFrame), disclosureWidth, _CGRectGetHeight(dataViewFrame)); return frame; } diff --git a/AppKit/CPPopUpButton.j b/AppKit/CPPopUpButton.j index 870186443..f840c2360 100644 --- a/AppKit/CPPopUpButton.j +++ b/AppKit/CPPopUpButton.j @@ -20,11 +20,12 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -@import -@import -@import -@import -@import +@import + +@import "CPButton.j" +@import "CPKeyValueBinding.j" +@import "CPMenu.j" +@import "CPMenuItem.j" var VISIBLE_MARGIN = 7.0; @@ -571,10 +572,18 @@ CPPopUpButtonStatePullsDown = CPThemeState("pulls-down"); if ([indexes containsIndex:0] && [self pullsDown]) [self _firstItemDidChange]; - // See whether the index has changed, despite the actual item not changing. - while ((index = [indexes indexGreaterThanIndex:index]) !== CPNotFound && - index <= indexOfSelectedItem) - --indexOfSelectedItem; + if (![self pullsDown] && [indexes containsIndex:indexOfSelectedItem]) + { + // If the selected item is removed the first item becomes selected. + indexOfSelectedItem = 0; + } + else + { + // See whether the index has changed, despite the actual item not changing. + while ((index = [indexes indexGreaterThanIndex:index]) !== CPNotFound && + index <= indexOfSelectedItem) + --indexOfSelectedItem; + } [self selectItemAtIndex:indexOfSelectedItem]; } diff --git a/AppKit/CPRuleEditor/CPPredicateEditorRowTemplate.j b/AppKit/CPRuleEditor/CPPredicateEditorRowTemplate.j index 0843f8ea1..fda92ebf0 100644 --- a/AppKit/CPRuleEditor/CPPredicateEditorRowTemplate.j +++ b/AppKit/CPRuleEditor/CPPredicateEditorRowTemplate.j @@ -686,6 +686,7 @@ CPTransformableAttributeType = 1800; [textField setBordered:YES]; [textField setEditable:YES]; [textField setFont:[CPFont systemFontOfSize:10]]; + [textField setSendsActionOnEndEditing:YES]; return textField; } diff --git a/AppKit/CPRuleEditor/CPRuleEditor.j b/AppKit/CPRuleEditor/CPRuleEditor.j index b2821254c..9f30eb120 100644 --- a/AppKit/CPRuleEditor/CPRuleEditor.j +++ b/AppKit/CPRuleEditor/CPRuleEditor.j @@ -402,13 +402,16 @@ var CPRuleEditorItemPBoardType = @"CPRuleEditorItemPBoardType", if (_stringsFilename !== stringsFilename) { - _stringsFilename = stringsFilename; + // Convert an empty string to nil + _stringsFilename = stringsFilename || nil; if (stringsFilename !== nil) { if (![stringsFilename hasSuffix:@".strings"]) stringsFilename = stringsFilename + @".strings"; + var path = [[CPBundle mainBundle] pathForResource:stringsFilename]; + if (path !== nil) [_standardLocalizer loadContentOfURL:[CPURL URLWithString:path]]; } @@ -504,7 +507,7 @@ var CPRuleEditorItemPBoardType = @"CPRuleEditorItemPBoardType", - (int)parentRowForRow:(int)rowIndex { if (rowIndex < 0 || rowIndex >= [self numberOfRows]) - [CPException raise:CPRangeException reason:_cmd+@" row " + rowIndex + " is out of range"]; + [CPException raise:CPRangeException reason:_cmd + @" row " + rowIndex + " is out of range"]; var targetObject = [[self _rowCacheForIndex:rowIndex] rowObject]; @@ -545,7 +548,7 @@ TODO: implement - (CPRuleEditorRowType)rowTypeForRow:(int)rowIndex { if (rowIndex < 0 || rowIndex > [self numberOfRows]) - [CPException raise:CPRangeException reason:_cmd+@"row " + rowIndex + " is out of range"]; + [CPException raise:CPRangeException reason:_cmd + @"row " + rowIndex + " is out of range"]; var rowcache = [self _rowCacheForIndex:rowIndex]; if (rowcache) @@ -585,7 +588,7 @@ TODO: implement if (indexInSubrows !== CPNotFound) { [indexes addIndex:i]; - objectsCount --; + objectsCount--; if ([self rowTypeForRow:i] === CPRuleEditorRowTypeCompound) i += [[self subrowIndexesForRow:i] count]; @@ -845,7 +848,7 @@ TODO: implement } catch(error) { - CPLogConsole(@"Compound predicate error: [%@]\npredicateType:%i",[error description],compoundType); + CPLogConsole(@"Compound predicate error: [%@]\npredicateType:%i", [error description], compoundType); compoundPredicate = nil; } finally @@ -890,23 +893,21 @@ TODO: implement try { if (selector !== nil) - predicate = [CPComparisonPredicate - predicateWithLeftExpression:lhs - rightExpression:rhs - customSelector:selector + predicate = [CPComparisonPredicate predicateWithLeftExpression:lhs + rightExpression:rhs + customSelector:selector ]; else - predicate = [CPComparisonPredicate - predicateWithLeftExpression:lhs - rightExpression:rhs - modifier:(modifier || CPDirectPredicateModifier) - type:operator - options:(options || CPCaseInsensitivePredicateOption) + predicate = [CPComparisonPredicate predicateWithLeftExpression:lhs + rightExpression:rhs + modifier:(modifier || CPDirectPredicateModifier) + type:operator + options:(options || CPCaseInsensitivePredicateOption) ]; } catch(error) { - CPLogConsole(@"Row predicate error: ["+[error description]+"] for row "+aRow); + CPLogConsole(@"Row predicate error: [" + [error description] + "] for row " + aRow); predicate = nil; } finally @@ -1132,7 +1133,7 @@ TODO: implement - (_CPRuleEditorViewSliceDropSeparator)_createSliceDropSeparator { - var view = [[_CPRuleEditorViewSliceDropSeparator alloc] initWithFrame:CGRectMake(0,-10, [self frame].size.width, 2)]; + var view = [[_CPRuleEditorViewSliceDropSeparator alloc] initWithFrame:CGRectMake(0, -10, [self frame].size.width, 2)]; [view setAutoresizingMask:CPViewWidthSizable]; return view; } @@ -1313,7 +1314,7 @@ TODO: implement return [_boundArrayOwner mutableArrayValueForKey:_boundArrayKeyPath]; } -- (BOOL)_nextUnusedItems:({CPArray})items andValues:({CPArray})values forRow:(int)rowIndex forRowType:(unsigned int)type +- (BOOL)_nextUnusedItems:(CPArray)items andValues:(CPArray)values forRow:(int)rowIndex forRowType:(unsigned int)type { var parentItem = [items lastObject], // if empty items array, this is NULL aka the root item; childrenCount = [self _queryNumberOfChildrenOfItem:parentItem withRowType:type], @@ -1395,7 +1396,7 @@ TODO: implement { var item = [items objectAtIndex:i], value = [values objectAtIndex:i], - itemAndValue = [CPDictionary dictionaryWithObjects:[item,value] forKeys:["item","value"]]; + itemAndValue = [CPDictionary dictionaryWithObjects:[item, value] forKeys:["item", "value"]]; [itemsAndValues addObject:itemAndValue]; } @@ -2106,9 +2107,9 @@ TODO: implement mainRowIndex = [slice rowIndex], draggingRows = [CPIndexSet indexSetWithIndex:mainRowIndex], selected_indices = [self _selectedSliceIndices], - pasteboard = [CPPasteboard pasteboardWithName: CPDragPboard]; + pasteboard = [CPPasteboard pasteboardWithName:CPDragPboard]; - [pasteboard declareTypes:[CPArray arrayWithObjects: CPRuleEditorItemPBoardType, nil] owner: self]; + [pasteboard declareTypes:[CPArray arrayWithObjects:CPRuleEditorItemPBoardType, nil] owner: self]; if ([selected_indices containsIndex:mainRowIndex]) [draggingRows addIndexes:selected_indices]; @@ -2311,7 +2312,7 @@ TODO: implement { var rowObject = [[self _rowCacheForIndex:current_index] rowObject], subrows = [self _subrowObjectsOfObject:rowObject], - subIndexes = [self _globalIndexesForSubrowIndexes:[CPIndexSet indexSetWithIndexesInRange:CPMakeRange(0,[subrows count])] ofParentObject:rowObject]; + subIndexes = [self _globalIndexesForSubrowIndexes:[CPIndexSet indexSetWithIndexesInRange:CPMakeRange(0, [subrows count])] ofParentObject:rowObject]; numberOfChildrenOfPreviousBrother = [subIndexes count]; } @@ -2413,17 +2414,17 @@ var CPRuleEditorAlignmentGridWidthKey = @"CPRuleEditorAlignmentGridWidth", if (self !== nil) { [self setFormattingStringsFilename:[coder decodeObjectForKey:CPRuleEditorStringsFilenameKey]]; - _alignmentGridWidth = [coder decodeFloatForKey:CPRuleEditorAlignmentGridWidthKey]; - _sliceHeight = [coder decodeDoubleForKey:CPRuleEditorSliceHeightKey]; + _alignmentGridWidth = [coder decodeFloatForKey:CPRuleEditorAlignmentGridWidthKey]; + _sliceHeight = [coder decodeDoubleForKey:CPRuleEditorSliceHeightKey]; _editable = [coder decodeBoolForKey:CPRuleEditorEditableKey]; _allowsEmptyCompoundRows = [coder decodeBoolForKey:CPRuleEditorAllowsEmptyCompoundRowsKey]; _disallowEmpty = [coder decodeBoolForKey:CPRuleEditorDisallowEmptyKey]; - _nestingMode = [coder decodeIntForKey:CPRuleEditorNestingModeKey]; - _typeKeyPath = [coder decodeObjectForKey:CPRuleEditorRowTypeKeyPathKey]; - _itemsKeyPath = [coder decodeObjectForKey:CPRuleEditorItemsKeyPathKey]; - _valuesKeyPath = [coder decodeObjectForKey:CPRuleEditorValuesKeyPathKey]; - _subrowsArrayKeyPath = [coder decodeObjectForKey:CPRuleEditorSubrowsArrayKeyPathKey]; - _boundArrayKeyPath = [coder decodeObjectForKey:CPRuleEditorBoundArrayKeyPathKey]; + _nestingMode = [coder decodeIntForKey:CPRuleEditorNestingModeKey]; + _typeKeyPath = [coder decodeObjectForKey:CPRuleEditorRowTypeKeyPathKey]; + _itemsKeyPath = [coder decodeObjectForKey:CPRuleEditorItemsKeyPathKey]; + _valuesKeyPath = [coder decodeObjectForKey:CPRuleEditorValuesKeyPathKey]; + _subrowsArrayKeyPath = [coder decodeObjectForKey:CPRuleEditorSubrowsArrayKeyPathKey]; + _boundArrayKeyPath = [coder decodeObjectForKey:CPRuleEditorBoundArrayKeyPathKey]; _slicesHolder = [[self subviews] objectAtIndex:0]; _boundArrayOwner = [coder decodeObjectForKey:CPRuleEditorBoundArrayOwnerKey]; diff --git a/AppKit/CPRuleEditor/_CPRuleEditorLocalizer.j b/AppKit/CPRuleEditor/_CPRuleEditorLocalizer.j index 638532901..e11febcc5 100644 --- a/AppKit/CPRuleEditor/_CPRuleEditorLocalizer.j +++ b/AppKit/CPRuleEditor/_CPRuleEditorLocalizer.j @@ -7,7 +7,7 @@ @import @import -var regex = new RegExp("\"(.+)\"\\s*=\\s*\"(.+)\"\\s*;\\s*(//.+)?"); +var LocalizerStringsRegex = new RegExp("\"(.+)\"\\s*=\\s*\"(.+)\"\\s*;\\s*(//.+)?"); @implementation _CPRuleEditorLocalizer : CPObject { @@ -24,9 +24,10 @@ var regex = new RegExp("\"(.+)\"\\s*=\\s*\"(.+)\"\\s*;\\s*(//.+)?"); - (void)reloadIfNeeded { - if (connection != nil) // Connection waiting + if (connection !== nil) // Connection waiting { connection = nil; + var data = [CPURLConnection sendSynchronousRequest:request returningResponse:NULL]; [self loadContent:[data rawString]]; } @@ -34,7 +35,7 @@ var regex = new RegExp("\"(.+)\"\\s*=\\s*\"(.+)\"\\s*;\\s*(//.+)?"); - (void)connection:(CPURLConnection)aConnection didReceiveData:(CPString)rawString { - if (connection != nil && rawString != nil) + if (connection !== nil && rawString !== nil) [self loadContent:rawString]; connection = nil; @@ -49,10 +50,12 @@ var regex = new RegExp("\"(.+)\"\\s*=\\s*\"(.+)\"\\s*;\\s*(//.+)?"); for (var i = 0 ; i < count ; i++) { var line = [lines objectAtIndex:i]; + if (line.length > 1) { - var match = regex.exec(line); - if (match.length >= 3) + var match = LocalizerStringsRegex.exec(line); + + if (match && match.length >= 3) [dict setObject:match[2] forKey:match[1]]; } } @@ -64,12 +67,13 @@ var regex = new RegExp("\"(.+)\"\\s*=\\s*\"(.+)\"\\s*;\\s*(//.+)?"); { [self reloadIfNeeded]; - if (_dictionary != nil && aString != nil) + if (_dictionary !== nil && aString !== nil) { var localized = [_dictionary objectForKey:aString]; - if (localized != nil) - return localized; + + if (localized !== nil) + return localized; } return aString; -} \ No newline at end of file +} diff --git a/AppKit/CPSliderColorPicker.j b/AppKit/CPSliderColorPicker.j index 3945d9619..3bf8106db 100644 --- a/AppKit/CPSliderColorPicker.j +++ b/AppKit/CPSliderColorPicker.j @@ -60,7 +60,7 @@ - (id)initWithPickerMask:(int)mask colorPanel:(CPColorPanel)owningColorPanel { - return [super initWithPickerMask:mask colorPanel: owningColorPanel]; + return [super initWithPickerMask:mask colorPanel:owningColorPanel]; } - (id)initView @@ -70,156 +70,156 @@ _contentView = [[CPView alloc] initWithFrame:aFrame]; [_contentView setAutoresizingMask:CPViewWidthSizable | CPViewHeightSizable]; - _rgbLabel = [[CPTextField alloc] initWithFrame: CGRectMake(0, 10, 100, 20)]; - [_rgbLabel setStringValue: "Red, Green, Blue"]; + _rgbLabel = [[CPTextField alloc] initWithFrame:CGRectMake(0, 10, 100, 20)]; + [_rgbLabel setStringValue:"Red, Green, Blue"]; [_rgbLabel setTextColor:[CPColor blackColor]]; - _redLabel = [[CPTextField alloc] initWithFrame: CGRectMake(0, 37, 15, 20)]; - [_redLabel setStringValue: "R"]; + _redLabel = [[CPTextField alloc] initWithFrame:CGRectMake(0, 37, 15, 20)]; + [_redLabel setStringValue:"R"]; [_redLabel setTextColor:[CPColor blackColor]]; - _redSlider = [[CPSlider alloc] initWithFrame: CGRectMake(15, 35, aFrame.size.width - 70, 20)]; - [_redSlider setMaxValue: 1.0]; - [_redSlider setMinValue: 0.0]; - [_redSlider setTarget: self]; - [_redSlider setAction: @selector(sliderChanged:)]; - [_redSlider setAutoresizingMask: CPViewWidthSizable]; + _redSlider = [[CPSlider alloc] initWithFrame:CGRectMake(15, 35, aFrame.size.width - 70, 20)]; + [_redSlider setMaxValue:1.0]; + [_redSlider setMinValue:0.0]; + [_redSlider setTarget:self]; + [_redSlider setAction:@selector(sliderChanged:)]; + [_redSlider setAutoresizingMask:CPViewWidthSizable]; // red value input box - _redValue = [[CPTextField alloc] initWithFrame: CGRectMake(aFrame.size.width - 45, 30, 45, 28)]; - [_redValue setAutoresizingMask: CPViewMinXMargin]; - [_redValue setEditable: YES]; - [_redValue setBezeled: YES]; - [_redValue setDelegate: self]; - [_contentView addSubview: _redValue]; + _redValue = [[CPTextField alloc] initWithFrame:CGRectMake(aFrame.size.width - 45, 30, 45, 28)]; + [_redValue setAutoresizingMask:CPViewMinXMargin]; + [_redValue setEditable:YES]; + [_redValue setBezeled:YES]; + [_redValue setDelegate:self]; + [_contentView addSubview:_redValue]; - _greenLabel = [[CPTextField alloc] initWithFrame: CGRectMake(0, 63, 15, 20)]; - [_greenLabel setStringValue: "G"]; + _greenLabel = [[CPTextField alloc] initWithFrame:CGRectMake(0, 63, 15, 20)]; + [_greenLabel setStringValue:"G"]; [_greenLabel setTextColor:[CPColor blackColor]]; - _greenSlider = [[CPSlider alloc] initWithFrame: CGRectMake(15, 61, aFrame.size.width - 70, 20)]; - [_greenSlider setMaxValue: 1.0]; - [_greenSlider setMinValue: 0.0]; - [_greenSlider setTarget: self]; - [_greenSlider setAction: @selector(sliderChanged:)]; - [_greenSlider setAutoresizingMask: CPViewWidthSizable]; + _greenSlider = [[CPSlider alloc] initWithFrame:CGRectMake(15, 61, aFrame.size.width - 70, 20)]; + [_greenSlider setMaxValue:1.0]; + [_greenSlider setMinValue:0.0]; + [_greenSlider setTarget:self]; + [_greenSlider setAction:@selector(sliderChanged:)]; + [_greenSlider setAutoresizingMask:CPViewWidthSizable]; // green value input box - _greenValue = [[CPTextField alloc] initWithFrame: CGRectMake(aFrame.size.width - 45, 56, 45, 28)]; - [_greenValue setAutoresizingMask: CPViewMinXMargin]; - [_greenValue setEditable: YES]; - [_greenValue setBezeled: YES]; - [_greenValue setDelegate: self]; - [_contentView addSubview: _greenValue]; + _greenValue = [[CPTextField alloc] initWithFrame:CGRectMake(aFrame.size.width - 45, 56, 45, 28)]; + [_greenValue setAutoresizingMask:CPViewMinXMargin]; + [_greenValue setEditable:YES]; + [_greenValue setBezeled:YES]; + [_greenValue setDelegate:self]; + [_contentView addSubview:_greenValue]; - _blueLabel = [[CPTextField alloc] initWithFrame: CGRectMake(0, 90, 15, 20)]; - [_blueLabel setStringValue: "B"]; + _blueLabel = [[CPTextField alloc] initWithFrame:CGRectMake(0, 90, 15, 20)]; + [_blueLabel setStringValue:"B"]; [_blueLabel setTextColor:[CPColor blackColor]]; - _blueSlider = [[CPSlider alloc] initWithFrame: CGRectMake(15, 87, aFrame.size.width - 70, 20)]; - [_blueSlider setMaxValue: 1.0]; - [_blueSlider setMinValue: 0.0]; - [_blueSlider setTarget: self]; - [_blueSlider setAction: @selector(sliderChanged:)]; - [_blueSlider setAutoresizingMask: CPViewWidthSizable]; + _blueSlider = [[CPSlider alloc] initWithFrame:CGRectMake(15, 87, aFrame.size.width - 70, 20)]; + [_blueSlider setMaxValue:1.0]; + [_blueSlider setMinValue:0.0]; + [_blueSlider setTarget:self]; + [_blueSlider setAction:@selector(sliderChanged:)]; + [_blueSlider setAutoresizingMask:CPViewWidthSizable]; // blue value input box - _blueValue = [[CPTextField alloc] initWithFrame: CGRectMake(aFrame.size.width - 45, 82, 45, 28)]; - [_blueValue setAutoresizingMask: CPViewMinXMargin]; - [_blueValue setEditable: YES]; - [_blueValue setBezeled: YES]; - [_blueValue setDelegate: self]; - [_contentView addSubview: _blueValue]; + _blueValue = [[CPTextField alloc] initWithFrame:CGRectMake(aFrame.size.width - 45, 82, 45, 28)]; + [_blueValue setAutoresizingMask:CPViewMinXMargin]; + [_blueValue setEditable:YES]; + [_blueValue setBezeled:YES]; + [_blueValue setDelegate:self]; + [_contentView addSubview:_blueValue]; - _hsbLabel = [[CPTextField alloc] initWithFrame: CGRectMake(0, 120, 190, 20)]; - [_hsbLabel setStringValue: "Hue, Saturation, Brightness"]; + _hsbLabel = [[CPTextField alloc] initWithFrame:CGRectMake(0, 120, 190, 20)]; + [_hsbLabel setStringValue:"Hue, Saturation, Brightness"]; [_hsbLabel setTextColor:[CPColor blackColor]]; - _hueLabel = [[CPTextField alloc] initWithFrame: CGRectMake(0, 145, 15, 20)]; - [_hueLabel setStringValue: "H"]; + _hueLabel = [[CPTextField alloc] initWithFrame:CGRectMake(0, 145, 15, 20)]; + [_hueLabel setStringValue:"H"]; [_hueLabel setTextColor:[CPColor blackColor]]; - _hueSlider = [[CPSlider alloc] initWithFrame: CGRectMake(15, 143, aFrame.size.width - 70, 20)]; - [_hueSlider setMaxValue: 359.0]; - [_hueSlider setMinValue: 0.0]; - [_hueSlider setTarget: self]; - [_hueSlider setAction: @selector(sliderChanged:)]; - [_hueSlider setAutoresizingMask: CPViewWidthSizable]; + _hueSlider = [[CPSlider alloc] initWithFrame:CGRectMake(15, 143, aFrame.size.width - 70, 20)]; + [_hueSlider setMaxValue:359.0]; + [_hueSlider setMinValue:0.0]; + [_hueSlider setTarget:self]; + [_hueSlider setAction:@selector(sliderChanged:)]; + [_hueSlider setAutoresizingMask:CPViewWidthSizable]; // hue value input box - _hueValue = [[CPTextField alloc] initWithFrame: CGRectMake(aFrame.size.width - 45, 138, 45, 28)]; - [_hueValue setAutoresizingMask: CPViewMinXMargin]; - [_hueValue setEditable: YES]; - [_hueValue setBezeled: YES]; - [_hueValue setDelegate: self]; - [_contentView addSubview: _hueValue]; + _hueValue = [[CPTextField alloc] initWithFrame:CGRectMake(aFrame.size.width - 45, 138, 45, 28)]; + [_hueValue setAutoresizingMask:CPViewMinXMargin]; + [_hueValue setEditable:YES]; + [_hueValue setBezeled:YES]; + [_hueValue setDelegate:self]; + [_contentView addSubview:_hueValue]; - _saturationLabel = [[CPTextField alloc] initWithFrame: CGRectMake(0, 170, 15, 20)]; - [_saturationLabel setStringValue: "S"]; + _saturationLabel = [[CPTextField alloc] initWithFrame:CGRectMake(0, 170, 15, 20)]; + [_saturationLabel setStringValue:"S"]; [_saturationLabel setTextColor:[CPColor blackColor]]; - _saturationSlider = [[CPSlider alloc] initWithFrame: CGRectMake(15, 168, aFrame.size.width - 70, 20)]; - [_saturationSlider setMaxValue: 100.0]; - [_saturationSlider setMinValue: 0.0]; - [_saturationSlider setTarget: self]; - [_saturationSlider setAction: @selector(sliderChanged:)]; - [_saturationSlider setAutoresizingMask: CPViewWidthSizable]; + _saturationSlider = [[CPSlider alloc] initWithFrame:CGRectMake(15, 168, aFrame.size.width - 70, 20)]; + [_saturationSlider setMaxValue:100.0]; + [_saturationSlider setMinValue:0.0]; + [_saturationSlider setTarget:self]; + [_saturationSlider setAction:@selector(sliderChanged:)]; + [_saturationSlider setAutoresizingMask:CPViewWidthSizable]; // saturation value input box - _saturationValue = [[CPTextField alloc] initWithFrame: CGRectMake(aFrame.size.width - 45, 164, 45, 28)]; - [_saturationValue setAutoresizingMask: CPViewMinXMargin]; - [_saturationValue setEditable: YES]; - [_saturationValue setBezeled: YES]; - [_saturationValue setDelegate: self]; - [_contentView addSubview: _saturationValue]; + _saturationValue = [[CPTextField alloc] initWithFrame:CGRectMake(aFrame.size.width - 45, 164, 45, 28)]; + [_saturationValue setAutoresizingMask:CPViewMinXMargin]; + [_saturationValue setEditable:YES]; + [_saturationValue setBezeled:YES]; + [_saturationValue setDelegate:self]; + [_contentView addSubview:_saturationValue]; - _brightnessLabel = [[CPTextField alloc] initWithFrame: CGRectMake(0, 196, 15, 20)]; - [_brightnessLabel setStringValue: "B"]; + _brightnessLabel = [[CPTextField alloc] initWithFrame:CGRectMake(0, 196, 15, 20)]; + [_brightnessLabel setStringValue:"B"]; [_brightnessLabel setTextColor:[CPColor blackColor]]; - _brightnessSlider = [[CPSlider alloc] initWithFrame: CGRectMake(15, 194, aFrame.size.width - 70, 20)]; - [_brightnessSlider setMaxValue: 100.0]; - [_brightnessSlider setMinValue: 0.0]; - [_brightnessSlider setTarget: self]; - [_brightnessSlider setAction: @selector(sliderChanged:)]; - [_brightnessSlider setAutoresizingMask: CPViewWidthSizable]; + _brightnessSlider = [[CPSlider alloc] initWithFrame:CGRectMake(15, 194, aFrame.size.width - 70, 20)]; + [_brightnessSlider setMaxValue:100.0]; + [_brightnessSlider setMinValue:0.0]; + [_brightnessSlider setTarget:self]; + [_brightnessSlider setAction:@selector(sliderChanged:)]; + [_brightnessSlider setAutoresizingMask:CPViewWidthSizable]; // brightness value input box - _brightnessValue = [[CPTextField alloc] initWithFrame: CGRectMake(aFrame.size.width - 45, 190, 45, 28)]; - [_brightnessValue setAutoresizingMask: CPViewMinXMargin]; - [_brightnessValue setEditable: YES]; - [_brightnessValue setBezeled: YES]; - [_brightnessValue setDelegate: self]; - [_contentView addSubview: _brightnessValue]; + _brightnessValue = [[CPTextField alloc] initWithFrame:CGRectMake(aFrame.size.width - 45, 190, 45, 28)]; + [_brightnessValue setAutoresizingMask:CPViewMinXMargin]; + [_brightnessValue setEditable:YES]; + [_brightnessValue setBezeled:YES]; + [_brightnessValue setDelegate:self]; + [_contentView addSubview:_brightnessValue]; - _hexLabel = [[CPTextField alloc] initWithFrame: CGRectMake(0, 230, 30, 20)]; - [_hexLabel setStringValue: "Hex"]; + _hexLabel = [[CPTextField alloc] initWithFrame:CGRectMake(0, 230, 30, 20)]; + [_hexLabel setStringValue:"Hex"]; [_hexLabel setTextColor:[CPColor blackColor]]; //hex input box - _hexValue = [[CPTextField alloc] initWithFrame: CGRectMake(32, 225, 80, 28)]; - [_hexValue setEditable: YES]; - [_hexValue setBezeled: YES]; - [_hexValue setDelegate: self]; - [_contentView addSubview: _hexValue]; + _hexValue = [[CPTextField alloc] initWithFrame:CGRectMake(32, 225, 80, 28)]; + [_hexValue setEditable:YES]; + [_hexValue setBezeled:YES]; + [_hexValue setDelegate:self]; + [_contentView addSubview:_hexValue]; - [_contentView addSubview: _rgbLabel]; - [_contentView addSubview: _redLabel]; - [_contentView addSubview: _greenLabel]; - [_contentView addSubview: _blueLabel]; - [_contentView addSubview: _redSlider]; - [_contentView addSubview: _greenSlider]; - [_contentView addSubview: _blueSlider]; + [_contentView addSubview:_rgbLabel]; + [_contentView addSubview:_redLabel]; + [_contentView addSubview:_greenLabel]; + [_contentView addSubview:_blueLabel]; + [_contentView addSubview:_redSlider]; + [_contentView addSubview:_greenSlider]; + [_contentView addSubview:_blueSlider]; - [_contentView addSubview: _hsbLabel]; - [_contentView addSubview: _hueLabel]; - [_contentView addSubview: _saturationLabel]; - [_contentView addSubview: _brightnessLabel]; - [_contentView addSubview: _hueSlider]; - [_contentView addSubview: _saturationSlider]; - [_contentView addSubview: _brightnessSlider]; + [_contentView addSubview:_hsbLabel]; + [_contentView addSubview:_hueLabel]; + [_contentView addSubview:_saturationLabel]; + [_contentView addSubview:_brightnessLabel]; + [_contentView addSubview:_hueSlider]; + [_contentView addSubview:_saturationSlider]; + [_contentView addSubview:_brightnessSlider]; - [_contentView addSubview: _hexLabel]; + [_contentView addSubview:_hexLabel]; } - (CPView)provideNewView:(BOOL)initialRequest @@ -250,35 +250,35 @@ { case _hueSlider: case _saturationSlider: - case _brightnessSlider: newColor = [CPColor colorWithHue: [_hueSlider floatValue] - saturation: [_saturationSlider floatValue] - brightness: [_brightnessSlider floatValue] - alpha: alpha]; + case _brightnessSlider: newColor = [CPColor colorWithHue:[_hueSlider floatValue] + saturation:[_saturationSlider floatValue] + brightness:[_brightnessSlider floatValue] + alpha:alpha]; - [self updateRGBSliders: newColor]; + [self updateRGBSliders:newColor]; break; case _redSlider: case _greenSlider: - case _blueSlider: newColor = [CPColor colorWithCalibratedRed: [_redSlider floatValue] - green: [_greenSlider floatValue] - blue: [_blueSlider floatValue] - alpha: alpha]; + case _blueSlider: newColor = [CPColor colorWithCalibratedRed:[_redSlider floatValue] + green:[_greenSlider floatValue] + blue:[_blueSlider floatValue] + alpha:alpha]; - [self updateHSBSliders: newColor]; + [self updateHSBSliders:newColor]; break; } [self updateLabels]; - [self updateHex: newColor]; - [colorPanel setColor: newColor]; + [self updateHex:newColor]; + [colorPanel setColor:newColor]; } - (void)setColor:(CPColor)aColor { - [self updateRGBSliders: aColor]; - [self updateHSBSliders: aColor]; - [self updateHex: aColor]; + [self updateRGBSliders:aColor]; + [self updateHSBSliders:aColor]; + [self updateHex:aColor]; [self updateLabels]; } @@ -307,13 +307,13 @@ - (void)updateLabels { - [_hueValue setStringValue: ROUND([_hueSlider floatValue])]; - [_saturationValue setStringValue: ROUND([_saturationSlider floatValue])]; - [_brightnessValue setStringValue: ROUND([_brightnessSlider floatValue])]; + [_hueValue setStringValue:ROUND([_hueSlider floatValue])]; + [_saturationValue setStringValue:ROUND([_saturationSlider floatValue])]; + [_brightnessValue setStringValue:ROUND([_brightnessSlider floatValue])]; - [_redValue setStringValue: ROUND([_redSlider floatValue] * 255)]; - [_greenValue setStringValue: ROUND([_greenSlider floatValue] * 255)]; - [_blueValue setStringValue: ROUND([_blueSlider floatValue] * 255)]; + [_redValue setStringValue:ROUND([_redSlider floatValue] * 255)]; + [_greenValue setStringValue:ROUND([_greenSlider floatValue] * 255)]; + [_blueValue setStringValue:ROUND([_blueSlider floatValue] * 255)]; } - (CPImage)provideNewButtonImage @@ -333,12 +333,12 @@ if (field === _hexValue) { - var newColor = [CPColor colorWithHexString: value]; + var newColor = [CPColor colorWithHexString:value]; if (newColor) { - [self setColor: newColor]; - [[self colorPanel] setColor: newColor]; + [self setColor:newColor]; + [[self colorPanel] setColor:newColor]; } } else @@ -346,27 +346,27 @@ switch (field) { case _redValue: [_redSlider setFloatValue:MAX(MIN(ROUND(value), 255) / 255.0, 0)]; - [self sliderChanged: _redSlider]; + [self sliderChanged:_redSlider]; break; case _greenValue: [_greenSlider setFloatValue:MAX(MIN(ROUND(value), 255) / 255.0, 0)]; - [self sliderChanged: _greenSlider]; + [self sliderChanged:_greenSlider]; break; case _blueValue: [_blueSlider setFloatValue:MAX(MIN(ROUND(value), 255) / 255.0, 0)]; - [self sliderChanged: _blueSlider]; + [self sliderChanged:_blueSlider]; break; case _hueValue: [_hueSlider setFloatValue:MAX(MIN(ROUND(value), 360), 0)]; - [self sliderChanged: _hueSlider]; + [self sliderChanged:_hueSlider]; break; case _saturationValue: [_saturationSlider setFloatValue:MAX(MIN(ROUND(value), 100), 0)]; - [self sliderChanged: _saturationSlider]; + [self sliderChanged:_saturationSlider]; break; case _brightnessValue: [_brightnessSlider setFloatValue:MAX(MIN(ROUND(value), 100), 0)]; - [self sliderChanged: _brightnessSlider]; + [self sliderChanged:_brightnessSlider]; break; } } diff --git a/AppKit/CPSplitView.j b/AppKit/CPSplitView.j index 499f6f7e4..cd6734518 100644 --- a/AppKit/CPSplitView.j +++ b/AppKit/CPSplitView.j @@ -89,7 +89,7 @@ var CPSplitViewHorizontalImage = nil, CPString _autosaveName; BOOL _shouldAutosave; - BOOL _needsRestoreFromAutosave; + CGSize _shouldRestoreFromAutosaveUnlessFrameSize; BOOL _needsResizeSubviews; int _suppressResizeNotificationsMask; @@ -452,9 +452,13 @@ var CPSplitViewHorizontalImage = nil, if (type == CPLeftMouseUp) { + // We disabled autosaving during tracking. + _shouldAutosave = YES; + if (_currentDivider != CPNotFound) { _currentDivider = CPNotFound; + [self _autosave]; [self _updateResizeCursor:anEvent]; } @@ -481,19 +485,19 @@ var CPSplitViewHorizontalImage = nil, { var minPosition = [self minPossiblePositionOfDividerAtIndex:i], maxPosition = [self maxPossiblePositionOfDividerAtIndex:i], - _preCollapsePosition = [_preCollapsePositions objectForKey:"" + i] || 0; + preCollapsePosition = [_preCollapsePositions objectForKey:"" + i] || 0; if ([_delegate splitView:self canCollapseSubview:_subviews[i]] && [_delegate splitView:self shouldCollapseSubview:_subviews[i] forDoubleClickOnDividerAtIndex:i]) { if ([self isSubviewCollapsed:_subviews[i]]) - [self setPosition:_preCollapsePosition ? _preCollapsePosition : (minPosition + (maxPosition - minPosition) / 2) ofDividerAtIndex:i]; + [self setPosition:preCollapsePosition ? preCollapsePosition : (minPosition + (maxPosition - minPosition) / 2) ofDividerAtIndex:i]; else [self setPosition:minPosition ofDividerAtIndex:i]; } else if ([_delegate splitView:self canCollapseSubview:_subviews[i + 1]] && [_delegate splitView:self shouldCollapseSubview:_subviews[i + 1] forDoubleClickOnDividerAtIndex:i]) { if ([self isSubviewCollapsed:_subviews[i + 1]]) - [self setPosition:_preCollapsePosition ? _preCollapsePosition : (minPosition + (maxPosition - minPosition) / 2) ofDividerAtIndex:i]; + [self setPosition:preCollapsePosition ? preCollapsePosition : (minPosition + (maxPosition - minPosition) / 2) ofDividerAtIndex:i]; else [self setPosition:maxPosition ofDividerAtIndex:i]; } @@ -503,6 +507,8 @@ var CPSplitViewHorizontalImage = nil, _currentDivider = i; _initialOffset = startPosition - point[_originComponent]; + // Don't autosave during a resize. We'll wait until it's done. + _shouldAutosave = NO; [self _postNotificationWillResize]; } } @@ -717,6 +723,10 @@ var CPSplitViewHorizontalImage = nil, */ - (void)setPosition:(float)position ofDividerAtIndex:(int)dividerIndex { + // Any manual changes to the divider position should override anything we are restoring from + // autosave. + _shouldRestoreFromAutosaveUnlessFrameSize = nil; + SPLIT_VIEW_SUPPRESS_RESIZE_NOTIFICATIONS(YES); [self _adjustSubviewsWithCalculatedSize]; @@ -725,13 +735,13 @@ var CPSplitViewHorizontalImage = nil, frameA = [viewA frame], viewB = _subviews[dividerIndex + 1], frameB = [viewB frame], - _preCollapsePosition = 0, + preCollapsePosition = 0, preSize = frameA.size[_sizeComponent]; frameA.size[_sizeComponent] = realPosition - frameA.origin[_originComponent]; if (preSize !== 0 && frameA.size[_sizeComponent] === 0) - _preCollapsePosition = preSize; + preCollapsePosition = preSize; if (preSize !== frameA.size[_sizeComponent]) { @@ -746,7 +756,7 @@ var CPSplitViewHorizontalImage = nil, frameB.size[_sizeComponent] = frameB.origin[_originComponent] + frameB.size[_sizeComponent] - realPosition - [self dividerThickness]; if (preSize !== 0 && frameB.size[_sizeComponent] === 0) - _preCollapsePosition = frameB.origin[_originComponent]; + preCollapsePosition = frameB.origin[_originComponent]; frameB.origin[_originComponent] = realPosition + [self dividerThickness]; @@ -757,8 +767,8 @@ var CPSplitViewHorizontalImage = nil, SPLIT_VIEW_MAYBE_POST_DID_RESIZE(); } - if (_preCollapsePosition) - [_preCollapsePositions setObject:_preCollapsePosition forKey:"" + dividerIndex]; + if (preCollapsePosition) + [_preCollapsePositions setObject:preCollapsePosition forKey:"" + dividerIndex]; [self setNeedsDisplay:YES]; @@ -770,19 +780,15 @@ var CPSplitViewHorizontalImage = nil, - (void)setFrameSize:(CGSize)aSize { - if (_needsRestoreFromAutosave) + if (_shouldRestoreFromAutosaveUnlessFrameSize) _shouldAutosave = NO; else [self _adjustSubviewsWithCalculatedSize]; [super setFrameSize:aSize]; - if (_needsRestoreFromAutosave) - { - _needsRestoreFromAutosave = NO; - [self _restoreFromAutosave]; + if (_shouldRestoreFromAutosaveUnlessFrameSize) _shouldAutosave = YES; - } [self setNeedsDisplay:YES]; } @@ -1028,13 +1034,31 @@ The sum of the views and the sum of the dividers should be equal to the size of - (void)_postNotificationWillResize { - [[CPNotificationCenter defaultCenter] postNotificationName:CPSplitViewWillResizeSubviewsNotification object:self]; + var userInfo = nil; + + if (_currentDivider !== CPNotFound) + userInfo = [CPDictionary dictionaryWithObject:_currentDivider forKey:@"CPSplitViewDividerIndex"]; + + [[CPNotificationCenter defaultCenter] postNotificationName:CPSplitViewWillResizeSubviewsNotification + object:self + userInfo:userInfo]; } - (void)_postNotificationDidResize { + var userInfo = nil; + + if (_currentDivider !== CPNotFound) + userInfo = [CPDictionary dictionaryWithObject:_currentDivider forKey:@"CPSplitViewDividerIndex"]; + + [[CPNotificationCenter defaultCenter] postNotificationName:CPSplitViewDidResizeSubviewsNotification + object:self + userInfo:userInfo]; + + + // TODO Cocoa always autosaves on "viewDidEndLiveResize". If Cappuccino adds support for this we + // should do the same. [self _autosave]; - [[CPNotificationCenter defaultCenter] postNotificationName:CPSplitViewDidResizeSubviewsNotification object:self]; } /*! @@ -1053,7 +1077,7 @@ The sum of the views and the sum of the dividers should be equal to the size of /*! Get the name under which the split view divider position is automatically saved to CPUserDefaults. - @return the name to save under or nil if no auto save is active + @return the name to save under or nil if no autosave is active */ - (CPString)autosaveName { @@ -1065,7 +1089,7 @@ The sum of the views and the sum of the dividers should be equal to the size of */ - (void)_autosave { - if (!_shouldAutosave || !_autosaveName) + if (_shouldRestoreFromAutosaveUnlessFrameSize || !_shouldAutosave || !_autosaveName) return; var userDefaults = [CPUserDefaults standardUserDefaults], @@ -1086,6 +1110,22 @@ The sum of the views and the sum of the dividers should be equal to the size of [userDefaults setObject:preCollapseArray forKey:autosavePrecollapseName]; } +/*! + This is called sometime later after a split view has been restored from a Cib. + See notes in initWithCoder. + + @ignore +*/ +- (void)_restoreFromAutosaveIfNeeded +{ + if (_shouldRestoreFromAutosaveUnlessFrameSize && !_CGSizeEqualToSize([self frameSize], _shouldRestoreFromAutosaveUnlessFrameSize)) + { + [self _restoreFromAutosave]; + } + + _shouldRestoreFromAutosaveUnlessFrameSize = nil; +} + /*! @ignore */ @@ -1167,6 +1207,34 @@ var CPSplitViewDelegateKey = "CPSplitViewDelegateKey", */ - (id)initWithCoder:(CPCoder)aCoder { + // We need to restore this property before calling super's initWithCoder:. + _autosaveName = [aCoder decodeObjectForKey:CPSplitViewAutosaveNameKey]; + + /* + + It is common for the main window of a Cappuccino app window to be resized to match the browser + window size at the end of the UI being loaded from a cib. But at decoding time (now) whatever + window size was originally saved will be in place, so if we try to restore the autosaved divider + positions now they might be constrained to the wrong positions due to the difference in frame size, + and in addition they might move later when the window is resized. + + The workaround is to restore the position once now (so it's approximately correct during loading), + and then once more in the next runloop cycle when any `setFullPlatformWindow` calls are done. + + (However if the frame size doesn't change before the next cycle, we should not restore the position + again because that would overwrite any changes the app developer might have made in user code.) + + The other consideration is that any parent split views need to be restored before any child + subviews, otherwise the parent restore will also change the positioning of the child. + + */ + if (_autosaveName) + { + // Schedule /before/ [super initWithCoder:]. This way this instance's _restoreFromAutosaveIfNeeded + // will happen before that of any subviews loaded by [super initWithCoder:]. + [[CPRunLoop currentRunLoop] performSelector:@selector(_restoreFromAutosaveIfNeeded) target:self argument:nil order:0 modes:[CPDefaultRunLoopMode]]; + } + self = [super initWithCoder:aCoder]; if (self) @@ -1186,12 +1254,13 @@ var CPSplitViewDelegateKey = "CPSplitViewDelegateKey", _isPaneSplitter = [aCoder decodeBoolForKey:CPSplitViewIsPaneSplitterKey]; [self _setVertical:[aCoder decodeBoolForKey:CPSplitViewIsVerticalKey]]; - [self setAutosaveName:[aCoder decodeObjectForKey:CPSplitViewAutosaveNameKey]]; - - // We have to wait until we know our frame size before restoring, or the frame resize later will throw - // away the restored size. if (_autosaveName) - _needsRestoreFromAutosave = YES; + { + [self _restoreFromAutosave]; + // Remember the frame size we had at this point so that we can restore again if it changes + // before the next runloop cycle. See above notes. + _shouldRestoreFromAutosaveUnlessFrameSize = [self frameSize]; + } } return self; diff --git a/AppKit/CPTableColumn.j b/AppKit/CPTableColumn.j index 8faf64074..b0349993d 100644 --- a/AppKit/CPTableColumn.j +++ b/AppKit/CPTableColumn.j @@ -498,12 +498,13 @@ CPTableColumnUserResizingMask = 1 << 1; } /*! - If NO the tablecolumn will no longer be visible in the tableview - If YES the tablecolumn will be visible in the tableview. + If YES the tablecolumn will no longer be visible in the tableview. + If NO the tablecolumn will be visible in the tableview. */ - (void)setHidden:(BOOL)shouldBeHidden { shouldBeHidden = !!shouldBeHidden + if (_isHidden === shouldBeHidden) return; diff --git a/AppKit/CPTableHeaderView.j b/AppKit/CPTableHeaderView.j index 1ffcf2334..2420a9a5f 100644 --- a/AppKit/CPTableHeaderView.j +++ b/AppKit/CPTableHeaderView.j @@ -40,7 +40,7 @@ + (id)themeAttributes { return [CPDictionary dictionaryWithObjects:[[CPNull null], [CPNull null], CGInsetMakeZero(), [CPNull null], [CPNull null], [CPNull null], CGSizeMakeZero()] - forKeys:[@"background-color", @"text-alignment", @"text-inset", @"text-color", @"text-font", @"text-shadow-color", @"text-shadow-offset"]]; + forKeys:[@"background-color", @"text-alignment", @"text-inset", @"text-color", @"font", @"text-shadow-color", @"text-shadow-offset"]]; } - (void)initWithFrame:(CGRect)frame @@ -74,7 +74,7 @@ [_textField setFrame:_CGRectMake(inset.right, inset.top, bounds.size.width - inset.right - inset.left, bounds.size.height - inset.top - inset.bottom)]; [_textField setTextColor:[self currentValueForThemeAttribute:@"text-color"]]; - [_textField setFont:[self currentValueForThemeAttribute:@"text-font"]]; + [_textField setFont:[self currentValueForThemeAttribute:@"font"]]; [_textField setTextShadowColor:[self currentValueForThemeAttribute:@"text-shadow-color"]]; [_textField setTextShadowOffset:[self currentValueForThemeAttribute:@"text-shadow-offset"]]; [_textField setAlignment:[self currentValueForThemeAttribute:@"text-alignment"]]; @@ -102,7 +102,7 @@ - (void)setFont:(CPFont)aFont { - [self setValue:aFont forThemeAttribute:"text-font"]; + [self setValue:aFont forThemeAttribute:"font"]; } - (void)_setIndicatorImage:(CPImage)anImage diff --git a/AppKit/CPTableView.j b/AppKit/CPTableView.j index b2fdb2b01..61045d64e 100644 --- a/AppKit/CPTableView.j +++ b/AppKit/CPTableView.j @@ -239,6 +239,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5; BOOL _disableAutomaticResizing @accessors(property=disableAutomaticResizing); BOOL _lastColumnShouldSnap; BOOL _implementsCustomDrawRow; + BOOL _contentBindingExpicitelySet; CPTableColumn _draggedColumn; CPArray _differedColumnDataToRemove; @@ -305,6 +306,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5; _retargetedDropOperation = nil; _dragOperationDefaultMask = nil; _destinationDragStyle = CPTableViewDraggingDestinationFeedbackStyleRegular; + _contentBindingExpicitelySet = NO; [self setBackgroundColor:[CPColor whiteColor]]; [self _init]; @@ -344,6 +346,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5; _exposedRows = [CPIndexSet indexSet]; _exposedColumns = [CPIndexSet indexSet]; _cachedDataViews = { }; + _cachedRowHeights = []; _groupRows = [CPIndexSet indexSet]; @@ -723,7 +726,7 @@ NOT YET IMPLEMENTED - (void)setAlternatingRowBackgroundColors:(CPArray)alternatingRowBackgroundColors { - [self setValue:alternatingRowBackgroundColors forThemeAttribute:"alternating-row-colors"]; + [self setValue:alternatingRowBackgroundColors forThemeAttribute:@"alternating-row-colors"]; [self setNeedsDisplay:YES]; } @@ -781,7 +784,7 @@ NOT YET IMPLEMENTED */ - (void)setSelectionHighlightColor:(CPColor)aColor { - [self setValue:aColor forThemeAttribute:"selection-color"]; + [self setValue:aColor forThemeAttribute:@"selection-color"]; [self setNeedsDisplay:YES]; } @@ -807,7 +810,7 @@ NOT YET IMPLEMENTED */ - (void)setSelectionGradientColors:(CPDictionary)aDictionary { - [self setValue:aDictionary forThemeAttribute:"sourcelist-selection-color"]; + [self setValue:aDictionary forThemeAttribute:@"sourcelist-selection-color"]; [self setNeedsDisplay:YES]; } @@ -831,7 +834,7 @@ NOT YET IMPLEMENTED */ - (void)setGridColor:(CPColor)aColor { - [self setValue:aColor forThemeAttribute:"grid-color"]; + [self setValue:aColor forThemeAttribute:@"grid-color"]; [self setNeedsDisplay:YES]; } @@ -975,6 +978,13 @@ NOT YET IMPLEMENTED columnIndexes = [CPIndexSet indexSetWithIndexesInRange:CPMakeRange(fromIndex, toIndex)]; [self reloadDataForRowIndexes:rowIndexes columnIndexes:columnIndexes]; + + // Notify even if programmatically moving a column as in Cocoa. + // 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"]]]; } /*! @@ -2725,7 +2735,7 @@ Your delegate can implement this method to avoid subclassing the tableview to ad */ - (CPImage)_tableHeaderSortImage { - return [self currentValueForThemeAttribute:"sort-image"]; + return [self currentValueForThemeAttribute:@"sort-image"]; } /*! @@ -2733,7 +2743,7 @@ Your delegate can implement this method to avoid subclassing the tableview to ad */ - (CPImage)_tableHeaderReverseSortImage { - return [self currentValueForThemeAttribute:"sort-image-reversed"]; + return [self currentValueForThemeAttribute:@"sort-image-reversed"]; } /*! @@ -2823,11 +2833,8 @@ Your delegate can implement this method to avoid subclassing the tableview to ad var dataView = [self _newDataViewForRow:row tableColumn:tableColumn]; [dataView setFrame:[self frameOfDataViewAtColumn:columnIndex row:row]]; - [dataView setObjectValue:[self _objectValueForTableColumn:tableColumn row:row]]; - - // If the column uses content bindings, allow them to override the objectValueForTableColumn. - [tableColumn _prepareDataView:dataView forRow:row]; + [self _setObjectValueForTableColumn:tableColumn row:row forView:dataView]; [view addSubview:dataView]; row = [theDraggedRows indexGreaterThanIndex:row]; @@ -2868,7 +2875,7 @@ Your delegate can implement this method to avoid subclassing the tableview to ad dataViewFrame.origin.y = ( _CGRectGetMinY(dataViewFrame) - _CGRectGetMinY([self exposedRect]) ) + 23.0; [dataView setFrame:dataViewFrame]; - [dataView setObjectValue:[self _objectValueForTableColumn:tableColumn row:row]]; + [self _setObjectValueForTableColumn:tableColumn row:row forView:dataView]; [dragView addSubview:dataView]; row = [_exposedRows indexGreaterThanIndex:row]; @@ -3267,11 +3274,8 @@ Your delegate can implement this method to avoid subclassing the tableview to ad isTextField = [dataView isKindOfClass:[CPTextField class]]; [dataView setFrame:[self frameOfDataViewAtColumn:column row:row]]; - [dataView setObjectValue:[self _objectValueForTableColumn:tableColumn row:row]]; - // This gives the table column an opportunity to apply its bindings. - // It will override the value set above if there is a binding. - [tableColumn _prepareDataView:dataView forRow:row]; + [self _setObjectValueForTableColumn:tableColumn row:row forView:dataView]; if (isColumnSelected || [self isRowSelected:row]) [dataView setThemeState:CPThemeStateSelectedDataView]; @@ -3329,6 +3333,30 @@ Your delegate can implement this method to avoid subclassing the tableview to ad } } +- (void)_setObjectValueForTableColumn:(CPTableColumn)aTableColumn row:(CPInteger)aRow forView:(CPView)aDataView +{ + if (_implementedDataSourceMethods & CPTableViewDataSource_tableView_objectValueForTableColumn_row_) + [aDataView setObjectValue:[self _objectValueForTableColumn:aTableColumn row:aRow]]; + + // This gives the table column an opportunity to apply its bindings. + // It will override the value set above if there is a binding. + + if (_contentBindingExpicitelySet) + [self _prepareContentBindedDataView:aDataView forRow:aRow]; + else + // For both cell-based and view-based + [aTableColumn _prepareDataView:aDataView forRow:aRow]; +} + +- (void)_prepareContentBindedDataView:(CPView)dataView forRow:(CPInteger)aRow +{ + var binder = [CPTableContentBinder getBinding:@"content" forObject:self], + content = [binder content], + rowContent = [content objectAtIndex:aRow]; + + [dataView setObjectValue:rowContent]; +} + /*! @ignore */ @@ -3374,7 +3402,7 @@ Your delegate can implement this method to avoid subclassing the tableview to ad If the dataview resigning triggers the action (as CPTextField does), we come right back here and start an infinite loop. So we have to check this flag first. */ - if (_editingCellIndex === nil) + if ([sender respondsToSelector:@selector(sendsActionOnEndEditing)] && [sender sendsActionOnEndEditing] && _editingCellIndex === nil) return; _editingCellIndex = nil; @@ -3840,7 +3868,7 @@ Your delegate can implement this method to avoid subclassing the tableview to ad } CGContextClosePath(context); - CGContextSetStrokeColor(context, [self currentValueForThemeAttribute:"highlighted-grid-color"]); + CGContextSetStrokeColor(context, [self currentValueForThemeAttribute:@"highlighted-grid-color"]); CGContextStrokePath(context); } @@ -4730,6 +4758,14 @@ Your delegate can implement this method to avoid subclassing the tableview to ad @implementation CPTableView (Bindings) ++ (id)_binderClassForBinding:(CPString)aBinding +{ + if (aBinding == @"content") + return [CPTableContentBinder class]; + + return [super _binderClassForBinding:aBinding]; +} + /*! @ignore */ @@ -4747,7 +4783,10 @@ Your delegate can implement this method to avoid subclassing the tableview to ad - (void)_establishBindingsIfUnbound:(id)destination { if ([[self infoForBinding:@"content"] objectForKey:CPObservedObjectKey] !== destination) - [self bind:@"content" toObject:destination withKeyPath:@"arrangedObjects" options:nil]; + { + [super bind:@"content" toObject:destination withKeyPath:@"arrangedObjects" options:nil]; + _contentBindingExpicitelySet = NO; + } if ([[self infoForBinding:@"selectionIndexes"] objectForKey:CPObservedObjectKey] !== destination) [self bind:@"selectionIndexes" toObject:destination withKeyPath:@"selectionIndexes" options:nil]; @@ -4755,9 +4794,29 @@ Your delegate can implement this method to avoid subclassing the tableview to ad //[self bind:@"sortDescriptors" toObject:destination withKeyPath:@"sortDescriptors" options:nil]; } -- (void)setContent:(CPArray)content +- (void)bind:(CPString)aBinding toObject:(id)anObject withKeyPath:(CPString)aKeyPath options:(CPDictionary)options { - [self reloadData]; + [super bind:aBinding toObject:anObject withKeyPath:aKeyPath options:options]; + + if (aBinding == @"content") + _contentBindingExpicitelySet = YES; +} + +@end + +@implementation CPTableContentBinder : CPBinder +{ + id _content @accessors(property=content); +} + +- (void)setValueFor:(id)aBinding +{ + var destination = [_info objectForKey:CPObservedObjectKey], + keyPath = [_info objectForKey:CPObservedKeyPathKey]; + + _content = [destination valueForKey:keyPath]; + + [_source reloadData]; } @end diff --git a/AppKit/CPTextField.j b/AppKit/CPTextField.j index bda0c5a1b..e57093ccf 100644 --- a/AppKit/CPTextField.j +++ b/AppKit/CPTextField.j @@ -486,10 +486,8 @@ CPTextFieldStatePlaceholder = CPThemeState("placeholder"); #if PLATFORM(DOM) var element = [self _inputElement], - font = [self currentValueForThemeAttribute:@"font"]; - - // generate the font metric - [font _getMetrics]; + font = [self currentValueForThemeAttribute:@"font"], + lineHeight = [font defaultLineHeightForFont]; element.value = _stringValue; element.style.color = [[self currentValueForThemeAttribute:@"text-color"] cssString]; @@ -511,26 +509,26 @@ CPTextFieldStatePlaceholder = CPThemeState("placeholder"); switch (verticalAlign) { case CPTopVerticalTextAlignment: - var topPoint = (_CGRectGetMinY(contentRect) + 1) + "px"; // for the same reason we have a -1 for the left, we also have a + 1 here + var topPoint = _CGRectGetMinY(contentRect) + "px"; break; case CPCenterVerticalTextAlignment: - var topPoint = (_CGRectGetMidY(contentRect) - (font._lineHeight / 2) + 1) + "px"; + var topPoint = (_CGRectGetMidY(contentRect) - (lineHeight / 2)) + "px"; break; case CPBottomVerticalTextAlignment: - var topPoint = (_CGRectGetMaxY(contentRect) - font._lineHeight) + "px"; + var topPoint = (_CGRectGetMaxY(contentRect) - lineHeight) + "px"; break; default: - var topPoint = (_CGRectGetMinY(contentRect) + 1) + "px"; + var topPoint = _CGRectGetMinY(contentRect) + "px"; break; } element.style.top = topPoint; - element.style.left = (_CGRectGetMinX(contentRect) - 1) + "px"; // why -1? + element.style.left = (_CGRectGetMinX(contentRect) - 1) + "px"; // -1 because input element seems to have 1px left inset element.style.width = _CGRectGetWidth(contentRect) + "px"; - element.style.height = font._lineHeight + "px"; // private ivar for the line height of the DOM text at this particular size + element.style.height = lineHeight + "px"; _DOMElement.appendChild(element); @@ -1044,8 +1042,16 @@ CPTextFieldStatePlaceholder = CPThemeState("placeholder"); textSize = [text sizeWithFont:font inWidth:textSize.width]; } else + { textSize = [text sizeWithFont:font]; + // Account for possible fractional pixels at right edge + textSize.width += 1; + } + + // Account for possible fractional pixels at bottom edge + textSize.height += 1; + frameSize.height = textSize.height + contentInset.top + contentInset.bottom; if ([self isBezeled]) @@ -1315,30 +1321,14 @@ CPTextFieldStatePlaceholder = CPThemeState("placeholder"); { var contentInset = [self currentValueForThemeAttribute:@"content-inset"]; - if (!contentInset) - return bounds; - - bounds.origin.x += contentInset.left; - bounds.origin.y += contentInset.top; - bounds.size.width -= contentInset.left + contentInset.right; - bounds.size.height -= contentInset.top + contentInset.bottom; - - return bounds; + return _CGRectInsetByInset(bounds, contentInset); } - (CGRect)bezelRectForBounds:(CGRect)bounds { var bezelInset = [self currentValueForThemeAttribute:@"bezel-inset"]; - if (_CGInsetIsEmpty(bezelInset)) - return bounds; - - bounds.origin.x += bezelInset.left; - bounds.origin.y += bezelInset.top; - bounds.size.width -= bezelInset.left + bezelInset.right; - bounds.size.height -= bezelInset.top + bezelInset.bottom; - - return bounds; + return _CGRectInsetByInset(bounds, bezelInset); } - (CGRect)rectForEphemeralSubviewNamed:(CPString)aName @@ -1365,7 +1355,6 @@ CPTextFieldStatePlaceholder = CPThemeState("placeholder"); else { var view = [[_CPImageAndTextView alloc] initWithFrame:_CGRectMakeZero()]; - //[view setImagePosition:CPNoImage]; [view setHitTests:NO]; diff --git a/AppKit/CPTokenField.j b/AppKit/CPTokenField.j index d306052e9..7791be27a 100755 --- a/AppKit/CPTokenField.j +++ b/AppKit/CPTokenField.j @@ -90,6 +90,11 @@ var CPScrollDestinationNone = 0, return "tokenfield"; } ++ (id)themeAttributes +{ + return [CPDictionary dictionaryWithObject:_CGInsetMakeZero() forKey:@"editor-inset"]; +} + - (id)initWithFrame:(CPRect)frame { if (self = [super initWithFrame:frame]) @@ -179,6 +184,7 @@ var CPScrollDestinationNone = 0, // Give the delegate a chance to confirm, replace or add to the list of tokens being added. var delegateApprovedObjects = [self _shouldAddObjects:[CPArray arrayWithObject:token] atIndex:_selectedRange.location], delegateApprovedObjectsCount = [delegateApprovedObjects count]; + if (delegateApprovedObjects) { for (var i = 0; i < delegateApprovedObjectsCount; i++) @@ -313,11 +319,12 @@ var CPScrollDestinationNone = 0, #if PLATFORM(DOM) var string = [self stringValue], - element = [self _inputElement]; + element = [self _inputElement], + font = [self currentValueForThemeAttribute:@"font"]; element.value = nil; element.style.color = [[self currentValueForThemeAttribute:@"text-color"] cssString]; - element.style.font = [[self currentValueForThemeAttribute:@"font"] cssString]; + element.style.font = [font cssString]; element.style.zIndex = 1000; switch ([self alignment]) @@ -332,9 +339,9 @@ var CPScrollDestinationNone = 0, var contentRect = [self contentRectForBounds:[self bounds]]; element.style.top = CGRectGetMinY(contentRect) + "px"; - element.style.left = (CGRectGetMinX(contentRect) - 1) + "px"; // why -1? + element.style.left = (CGRectGetMinX(contentRect) - 1) + "px"; // element effectively imposes a 1px left margin element.style.width = CGRectGetWidth(contentRect) + "px"; - element.style.height = CGRectGetHeight(contentRect) + "px"; + element.style.height = [font defaultLineHeightForFont] + "px"; [_tokenScrollView documentView]._DOMElement.appendChild(element); @@ -472,6 +479,7 @@ var CPScrollDestinationNone = 0, - (id)objectValue { var objectValue = []; + for (var i = 0, count = [[self _tokens] count]; i < count; i++) { var token = [[self _tokens] objectAtIndex:i]; @@ -570,6 +578,20 @@ var CPScrollDestinationNone = 0, [self setNeedsDisplay:YES]; } +- (void)setEnabled:(BOOL)shouldBeEnabled +{ + [super setEnabled:shouldBeEnabled]; + + // Set the enabled state of the tokens + for (var i = 0, count = [[self _tokens] count]; i < count; i++) + { + var token = [[self _tokens] objectAtIndex:i]; + + if ([token respondsToSelector:@selector(setEnabled:)]) + [token setEnabled:shouldBeEnabled]; + } +} + - (void)sendAction:(SEL)anAction to:(id)anObject { _shouldNotifyTarget = NO; @@ -962,7 +984,10 @@ var CPScrollDestinationNone = 0, offset = CPPointMake(contentOrigin.x, contentOrigin.y), spaceBetweenTokens = CPSizeMake(2.0, 2.0), isEditing = [[self window] firstResponder] == self, - tokenToken = [_CPTokenFieldToken new]; + tokenToken = [_CPTokenFieldToken new], + font = [self currentValueForThemeAttribute:@"font"], + lineHeight = [font defaultLineHeightForFont], + editorInset = [self currentValueForThemeAttribute:@"editor-inset"]; // Get the height of a typical token, or a token token if you will. [tokenToken sizeToFit]; @@ -1001,15 +1026,17 @@ var CPScrollDestinationNone = 0, // XXX The "X" here is used to estimate the space needed to fit the next character // without clipping. Since different fonts might have different sizes of "X" this // solution is not ideal, but it works. - textWidth = [(element.value || @"") + "X" sizeWithFont:[self font]].width; + textWidth = [(element.value || @"") + "X" sizeWithFont:font].width; + if (useRemainingWidth) textWidth = MAX(contentSize.width - offset.x - 1, textWidth); } _inputFrame = fitAndFrame(textWidth, tokenHeight); + _inputFrame.size.height = lineHeight; - element.style.left = _inputFrame.origin.x + "px"; - element.style.top = _inputFrame.origin.y + "px"; + element.style.left = (_inputFrame.origin.x + editorInset.left) + "px"; + element.style.top = (_inputFrame.origin.y + editorInset.top) + "px"; element.style.width = _inputFrame.size.width + "px"; element.style.height = _inputFrame.size.height + "px"; diff --git a/AppKit/CPView.j b/AppKit/CPView.j index 888123496..8d4db509f 100644 --- a/AppKit/CPView.j +++ b/AppKit/CPView.j @@ -21,14 +21,14 @@ */ @import +@import @import @import @import "CGAffineTransform.j" -@import "CGGeometry.j" + @import "CPColor.j" -@import "CPGeometry.j" @import "CPGraphicsContext.j" @import "CPResponder.j" @import "CPTheme.j" @@ -246,8 +246,8 @@ var CPCurrentToolTip, - (void)_setupToolTipHandlers { _toolTipInstalled = NO; - _toolTipFunctionIn = function(e){[self _fireToolTip];} - _toolTipFunctionOut = function(e){[self _invalidateToolTip];}; + _toolTipFunctionIn = function(e) { [self _fireToolTip]; } + _toolTipFunctionOut = function(e) { [self _invalidateToolTip]; }; } + (CPSet)keyPathsForValuesAffectingFrame @@ -353,6 +353,7 @@ var CPCurrentToolTip, if (_toolTipInstalled) return; +#if PLATFORM(DOM) if (_DOMElement.addEventListener) { _DOMElement.addEventListener("mouseover", _toolTipFunctionIn, NO); @@ -365,6 +366,8 @@ var CPCurrentToolTip, _DOMElement.attachEvent("onkeypress", _toolTipFunctionOut); _DOMElement.attachEvent("onmouseout", _toolTipFunctionOut); } +#endif + _toolTipInstalled = YES; } @@ -377,6 +380,7 @@ var CPCurrentToolTip, if (!_toolTipInstalled) return; +#if PLATFORM(DOM) if (_DOMElement.removeEventListener) { _DOMElement.removeEventListener("mouseover", _toolTipFunctionIn, NO); @@ -389,6 +393,8 @@ var CPCurrentToolTip, _DOMElement.detachEvent("onkeypress", _toolTipFunctionOut); _DOMElement.detachEvent("onmouseout", _toolTipFunctionOut); } +#endif + _toolTipInstalled = NO; } @@ -400,8 +406,10 @@ var CPCurrentToolTip, if (CPCurrentToolTipTimer) { [CPCurrentToolTipTimer invalidate]; + if (CPCurrentToolTip) [CPCurrentToolTip close]; + CPCurrentToolTip = nil; } @@ -434,6 +442,7 @@ var CPCurrentToolTip, { if (CPCurrentToolTip) [CPCurrentToolTip close]; + CPCurrentToolTip = [_CPToolTip toolTipWithString:_toolTip]; } @@ -769,7 +778,7 @@ var CPCurrentToolTip, } /*! - Called when the receiver is about to be remove one of its subviews. + Called when the receiver is about to remove one of its subviews. @param aView the view that will be removed */ - (void)willRemoveSubview:(CPView)aView @@ -840,7 +849,7 @@ var CPCurrentToolTip, /*! Sets the frame size of the receiver to the dimensions and origin of the provided rectangle in the coordinate system - of the superview. The method also posts an CPViewFrameDidChangeNotification to the notification + of the superview. The method also posts a CPViewFrameDidChangeNotification to the notification center if the receiver is configured to do so. If the frame is the same as the current frame, the method simply returns (and no notification is posted). @param aFrame the rectangle specifying the new origin and size of the receiver diff --git a/AppKit/CPWindow/_CPHUDWindowView.j b/AppKit/CPWindow/_CPHUDWindowView.j index a45e6118e..488bd5c4b 100644 --- a/AppKit/CPWindow/_CPHUDWindowView.j +++ b/AppKit/CPWindow/_CPHUDWindowView.j @@ -127,7 +127,7 @@ var HUD_TITLEBAR_HEIGHT = 26.0; _titleField = [[CPTextField alloc] initWithFrame:CGRectMakeZero()]; [_titleField setHitTests:NO]; - [_titleField setFont:[CPFont systemFontOfSize:11.0]]; + [_titleField setFont:[CPFont systemFontOfSize:[CPFont systemFontSize] - 1]]; [_titleField setTextColor:[CPColor whiteColor]]; [_titleField setTextShadowColor:[CPColor blackColor]]; [_titleField setTextShadowOffset:CGSizeMake(0.0, 1.0)]; diff --git a/AppKit/CPWindow/_CPStandardWindowView.j b/AppKit/CPWindow/_CPStandardWindowView.j index 47cf61ddb..f0f9b9cf1 100644 --- a/AppKit/CPWindow/_CPStandardWindowView.j +++ b/AppKit/CPWindow/_CPStandardWindowView.j @@ -244,7 +244,7 @@ var STANDARD_GRADIENT_HEIGHT = 41.0, _titleField = [[CPTextField alloc] initWithFrame:CGRectMakeZero()]; - [_titleField setFont:[CPFont boldSystemFontOfSize:12.0]]; + [_titleField setFont:[CPFont boldSystemFontOfSize:CPFontCurrentSystemSize]]; [_titleField setAutoresizingMask:CPViewWidthSizable]; // FIXME: Make this to CPLineBreakByTruncatingMiddle once it's implemented. diff --git a/AppKit/CPWindowController.j b/AppKit/CPWindowController.j index dfd480746..0a2b7202a 100644 --- a/AppKit/CPWindowController.j +++ b/AppKit/CPWindowController.j @@ -33,7 +33,7 @@ @class CPWindowController 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 + 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. In a Document based app, a CPWindowController instance is created and managed by a CPDocument subclass. @@ -333,6 +333,38 @@ - (void)setViewControllerContainerView:(CPView)aView { + if (!_viewControllerContainerView && !aView) + return; + + var viewControllerView = [[self viewController] view], + contentView = [[self window] contentView]; + + if (aView) + { + [aView setFrame:[contentView frame]]; + [aView setAutoresizingMask:[contentView autoresizingMask]]; + if (viewControllerView) + { + [viewControllerView removeFromSuperview]; + [aView addSubview:viewControllerView]; + } + [[self window] setContentView:aView]; + } + else if (viewControllerView) + { + [viewControllerView removeFromSuperview]; + [viewControllerView setFrame:[contentView frame]]; + [viewControllerView setAutoresizingMask:[contentView autoresizingMask]] + [[self window] setContentView:viewControllerView]; + } + else + { + var view = [[CPView alloc] init]; + [view setFrame:[contentView frame]]; + [view setAutoresizingMask:[contentView autoresizingMask]]; + [[self window] setContentView:view] + } + _viewControllerContainerView = aView; } @@ -343,21 +375,45 @@ - (void)setViewController:(CPViewController)aViewController { - var containerView = [self viewControllerContainerView] || [[self window] contentView], - view = [_viewController view], - frame = view ? [view frame] : [containerView bounds]; + if (!_viewController && !aViewController) + return; - [view removeFromSuperview]; + var containerView = [self viewControllerContainerView], + newView = [aViewController view]; + + if (containerView) + { + var oldView = [_viewController view]; + if (oldView) + { + [newView setFrame:[oldView frame]]; + [newView setAutoresizingMask:[oldView autoresizingMask]]; + } + + if (oldView && newView) + [containerView replaceSubview:oldView with:newView]; + else if (oldView) + [oldView removeFromSuperview]; + else if (newView) + [containerView addSubview:newView]; + } + else if (newView) + { + var contentView = [[self window] contentView]; + [newView setFrame:[contentView frame]]; + [newView setAutoresizingMask:[contentView autoresizingMask]]; + [[self window] setContentView:newView]; + } + else + { + var view = [[CPView alloc] init], + contentView = [[self window] contentView]; + [view setFrame:[contentView frame]]; + [view setAutoresizingMask:[contentView autoresizingMask]]; + [[self window] setContentView:view] + } _viewController = aViewController; - - view = [_viewController view]; - - if (view) - { - [view setFrame:frame]; - [containerView addSubview:view]; - } } - (CPViewController)viewController diff --git a/AppKit/CoreGraphics/CGAffineTransform.h b/AppKit/CoreGraphics/CGAffineTransform.h index 1b3fc9266..4eea12e67 100644 --- a/AppKit/CoreGraphics/CGAffineTransform.h +++ b/AppKit/CoreGraphics/CGAffineTransform.h @@ -20,7 +20,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "CGGeometry.h" +#include "../../Foundation/_CGGeometry.h" #define _CGAffineTransformMake(a_, b_, c_, d_, tx_, ty_) { a:a_, b:b_, c:c_, d:d_, tx:tx_, ty:ty_ } #define _CGAffineTransformMakeIdentity() _CGAffineTransformMake(1.0, 0.0, 0.0, 1.0, 0.0, 0.0) diff --git a/AppKit/CoreGraphics/CGGeometry.j b/AppKit/CoreGraphics/CGGeometry.j index 20775a1a8..bdefc9bd6 100644 --- a/AppKit/CoreGraphics/CGGeometry.j +++ b/AppKit/CoreGraphics/CGGeometry.j @@ -2,8 +2,8 @@ * CGGeometry.j * AppKit * - * Created by Francisco Tolmasky. - * Copyright 2008, 280 North, Inc. + * Created by Alexander Ljungberg. + * Copyright 2012, SlevenBits Ltd. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -20,293 +20,4 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#define _function(inline) function inline { return _##inline; } - -_function(CGPointMake(x, y)) -_function(CGPointMakeZero()) -_function(CGPointMakeCopy(aPoint)) -_function(CGPointCreateCopy(aPoint)) - -_function(CGPointEqualToPoint(lhsPoint, rhsPoint)) -_function(CGStringFromPoint(aPoint)) - -_function(CGSizeMake(width, height)) -_function(CGSizeMakeZero()) -_function(CGSizeMakeCopy(aSize)) -_function(CGSizeCreateCopy(aSize)) - -_function(CGSizeEqualToSize(lhsSize, rhsSize)) -_function(CGStringFromSize(aSize)) - -_function(CGRectMake(x, y, width, height)) -_function(CGRectMakeZero()) -_function(CGRectMakeCopy(aRect)) -_function(CGRectCreateCopy(aRect)) - -_function(CGRectEqualToRect(lhsRect, rhsRect)) -_function(CGStringFromRect(aRect)) - -_function(CGRectOffset(aRect, dX, dY)) -_function(CGRectInset(aRect, dX, dY)) - -_function(CGRectGetHeight(aRect)) -_function(CGRectGetMaxX(aRect)) -_function(CGRectGetMaxY(aRect)) -_function(CGRectGetMidX(aRect)) -_function(CGRectGetMidY(aRect)) -_function(CGRectGetMinX(aRect)) -_function(CGRectGetMinY(aRect)) -_function(CGRectGetWidth(aRect)) - -_function(CGRectIsEmpty(aRect)) -_function(CGRectIsNull(aRect)) - -_function(CGRectContainsPoint(aRect, aPoint)) - -_function(CGInsetMake(top, right, bottom, left)) -_function(CGInsetMakeZero()) -_function(CGInsetMakeCopy(anInset)) -_function(CGInsetIsEmpty(anInset)) -_function(CGInsetEqualToInset(lhsInset, rhsInset)) - -CGMinXEdge = 0; -CGMinYEdge = 1; -CGMaxXEdge = 2; -CGMaxYEdge = 3; - -CGRectNull = _CGRectMake(Infinity, Infinity, 0.0, 0.0); - -/*! - @addtogroup appkit - @{ -*/ - -/*! - Creates two rectangles -- slice and rem -- from inRect, by dividing inRect - with a line that's parallel to the side of inRect specified by edge. - The size of slice is determined by amount, which specifies the distance from edge. - - slice and rem must not be NULL, must not be the same object, and must not be the - same object as inRect. - - @group CGRect -*/ -function CGRectDivide(inRect, slice, rem, amount, edge) -{ - slice.origin = _CGPointMakeCopy(inRect.origin); - slice.size = _CGSizeMakeCopy(inRect.size); - rem.origin = _CGPointMakeCopy(inRect.origin); - rem.size = _CGSizeMakeCopy(inRect.size); - - switch (edge) - { - case CGMinXEdge: - slice.size.width = amount; - rem.origin.x += amount; - rem.size.width -= amount; - break; - - case CGMaxXEdge: - slice.origin.x = _CGRectGetMaxX(slice) - amount; - slice.size.width = amount; - rem.size.width -= amount; - break; - - case CGMinYEdge: - slice.size.height = amount; - rem.origin.y += amount; - rem.size.height -= amount; - break; - - case CGMaxYEdge: - slice.origin.y = _CGRectGetMaxY(slice) - amount; - slice.size.height = amount; - rem.size.height -= amount; - } -} - -/*! - Returns a \c BOOL indicating whether CGRect \c lhsRect - contains CGRect \c rhsRect. - @group CGRect - @param lhsRect the CGRect to test if \c rhsRect is inside of - @param rhsRect the CGRect to test if it fits inside \c lhsRect. - @return BOOL \c YES if \c rhsRect fits inside \c lhsRect. -*/ -function CGRectContainsRect(lhsRect, rhsRect) -{ - var union = CGRectUnion(lhsRect, rhsRect); - - return _CGRectEqualToRect(union, lhsRect); -} - -/*! - Returns \c YES if the two rectangles intersect - @group CGRect - @param lhsRect the first CGRect - @param rhsRect the second CGRect - @return BOOL \c YES if the two rectangles have any common spaces, and \c NO, otherwise. -*/ -function CGRectIntersectsRect(lhsRect, rhsRect) -{ - var intersection = CGRectIntersection(lhsRect, rhsRect); - - return !_CGRectIsEmpty(intersection); -} - -/*! - Makes the origin and size of a CGRect all integers. Specifically, by making - the southwest corner the origin (rounded down), and the northeast corner a CGSize (rounded up). - @param aRect the rectangle to operate on - @return CGRect the modified rectangle (same as the input) - @group CGRect -*/ -function CGRectIntegral(aRect) -{ - aRect = CGRectStandardize(aRect); - - // Store these out separately, if not the GetMaxes will return incorrect values. - var x = FLOOR(_CGRectGetMinX(aRect)), - y = FLOOR(_CGRectGetMinY(aRect)); - - aRect.size.width = CEIL(_CGRectGetMaxX(aRect)) - x; - aRect.size.height = CEIL(_CGRectGetMaxY(aRect)) - y; - - aRect.origin.x = x; - aRect.origin.y = y; - - return aRect; -} - -/*! - Returns the intersection of the two provided rectangles as a new rectangle. - @param lhsRect the first rectangle used for calculation - @param rhsRect the second rectangle used for calculation - @return CGRect the intersection of the two rectangles - @group CGRect -*/ -function CGRectIntersection(lhsRect, rhsRect) -{ - var intersection = _CGRectMake( - MAX(_CGRectGetMinX(lhsRect), _CGRectGetMinX(rhsRect)), - MAX(_CGRectGetMinY(lhsRect), _CGRectGetMinY(rhsRect)), - 0, 0); - - intersection.size.width = MIN(_CGRectGetMaxX(lhsRect), _CGRectGetMaxX(rhsRect)) - _CGRectGetMinX(intersection); - intersection.size.height = MIN(_CGRectGetMaxY(lhsRect), _CGRectGetMaxY(rhsRect)) - _CGRectGetMinY(intersection); - - return _CGRectIsEmpty(intersection) ? _CGRectMakeZero() : intersection; -} - -/* - -*/ -function CGRectStandardize(aRect) -{ - var width = _CGRectGetWidth(aRect), - height = _CGRectGetHeight(aRect), - standardized = _CGRectMakeCopy(aRect); - - if (width < 0.0) - { - standardized.origin.x += width; - standardized.size.width = -width; - } - - if (height < 0.0) - { - standardized.origin.y += height; - standardized.size.height = -height; - } - - return standardized; -} - -function CGRectUnion(lhsRect, rhsRect) -{ - var lhsRectIsNull = !lhsRect || lhsRect === CGRectNull, - rhsRectIsNull = !rhsRect || rhsRect === CGRectNull; - - if (lhsRectIsNull) - return rhsRectIsNull ? CGRectNull : rhsRect; - - if (rhsRectIsNull) - return lhsRectIsNull ? CGRectNull : lhsRect; - - var minX = MIN(_CGRectGetMinX(lhsRect), _CGRectGetMinX(rhsRect)), - minY = MIN(_CGRectGetMinY(lhsRect), _CGRectGetMinY(rhsRect)), - maxX = MAX(_CGRectGetMaxX(lhsRect), _CGRectGetMaxX(rhsRect)), - maxY = MAX(_CGRectGetMaxY(lhsRect), _CGRectGetMaxY(rhsRect)); - - return _CGRectMake(minX, minY, maxX - minX, maxY - minY); -} - -function CGPointFromString(aString) -{ - var comma = aString.indexOf(','); - - return { x:parseFloat(aString.substr(1, comma - 1)), y:parseFloat(aString.substring(comma + 1, aString.length)) }; -} - -function CGSizeFromString(aString) -{ - var comma = aString.indexOf(','); - - return { width:parseFloat(aString.substr(1, comma - 1)), height:parseFloat(aString.substring(comma + 1, aString.length)) }; -} - -function CGRectFromString(aString) -{ - var comma = aString.indexOf(',', aString.indexOf(',') + 1); - - return { origin:CGPointFromString(aString.substr(1, comma - 1)), size:CGSizeFromString(aString.substring(comma + 2, aString.length)) }; -} - -function CGPointFromEvent(anEvent) -{ - return _CGPointMake(anEvent.clientX, anEvent.clientY); -} - -/*! - Combines two insets by adding their individual elements and returns the result. - - @group CGInset -*/ -function CGInsetUnion(lhsInset, rhsInset) -{ - return _CGInsetMake(lhsInset.top + rhsInset.top, - lhsInset.right + rhsInset.right, - lhsInset.bottom + rhsInset.bottom, - lhsInset.left + rhsInset.left); -} - -/*! - Subtract one inset from another by subtracting their individual elements and returns the result. - - @group CGInset -*/ -function CGInsetDifference(lhsInset, rhsInset) -{ - return _CGInsetMake(lhsInset.top - rhsInset.top, - lhsInset.right - rhsInset.right, - lhsInset.bottom - rhsInset.bottom, - lhsInset.left - rhsInset.left); -} - -function CGInsetFromString(aString) -{ - var numbers = aString.substr(1, aString.length - 2).split(','); - - return _CGInsetMake(parseFloat(numbers[0]), parseFloat(numbers[1]), parseFloat(numbers[2]), parseFloat(numbers[3])); -} - -CGInsetFromCPString = CGInsetFromString; - -function CPStringFromCGInset(anInset) -{ - return '{' + anInset.top + ", " + anInset.left + ", " + anInset.bottom + ", " + anInset.right + '}'; -} - -/*! - @} -*/ +@import diff --git a/AppKit/Platform/DOM/CPPlatformString.j b/AppKit/Platform/DOM/CPPlatformString.j index b7b385904..da3cc3a17 100644 --- a/AppKit/Platform/DOM/CPPlatformString.j +++ b/AppKit/Platform/DOM/CPPlatformString.j @@ -33,6 +33,14 @@ var DOMFixedWidthSpanElement = nil, { } ++ (void)initialize +{ + if (self !== [CPPlatformString class]) + return; + + DefaultFont = [CPFont systemFontOfSize:CPFontCurrentSystemSize]; +} + + (void)bootstrap { [self createDOMElements]; @@ -62,8 +70,7 @@ var DOMFixedWidthSpanElement = nil, bodyElement.appendChild(DOMIFrameElement); DOMIFrameDocument = (DOMIFrameElement.contentDocument || DOMIFrameElement.contentWindow.document); - DOMIFrameDocument.write(''+ - ''); + DOMIFrameDocument.write(''); DOMIFrameDocument.close(); // IE needs this wide
to prevent unwanted text wrapping: @@ -151,14 +158,6 @@ var DOMFixedWidthSpanElement = nil, + (CGSize)sizeOfString:(CPString)aString withFont:(CPFont)aFont forWidth:(float)aWidth { - if (!aFont) - { - if (!DefaultFont) - DefaultFont = [CPFont systemFontOfSize:12.0]; - - aFont = DefaultFont; - } - if (!DOMIFrameElement) [self createDOMElements]; @@ -172,7 +171,7 @@ var DOMFixedWidthSpanElement = nil, span.style.width = ROUND(aWidth) + "px"; } - span.style.font = [aFont cssString]; + span.style.font = [(aFont || DefaultFont) cssString]; if (CPFeatureIsCompatible(CPJavaScriptInnerTextFeature)) span.innerText = aString; @@ -184,18 +183,10 @@ var DOMFixedWidthSpanElement = nil, + (CPDictionary)metricsOfFont:(CPFont)aFont { - if (!aFont) - { - if (!DefaultFont) - DefaultFont = [CPFont systemFontOfSize:12.0]; - - aFont = DefaultFont; - } - if (!DOMMetricsDivElement) [self createDOMMetricsElements]; - DOMMetricsDivElement.style.font = [aFont cssString]; + DOMMetricsDivElement.style.font = [(aFont || DefaultFont) cssString]; var baseline = DOMMetricsImgElement.offsetTop - DOMMetricsTextSpanElement.offsetTop + DOMMetricsImgElement.offsetHeight, descender = baseline - DOMMetricsTextSpanElement.offsetHeight, diff --git a/AppKit/Themes/Aristo/Resources/colorwell-bezel-center.png b/AppKit/Themes/Aristo/Resources/colorwell-bezel-center.png new file mode 100644 index 000000000..343e76d51 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/colorwell-bezel-center.png differ diff --git a/AppKit/Themes/Aristo/Resources/colorwell-bezel-disabled-center.png b/AppKit/Themes/Aristo/Resources/colorwell-bezel-disabled-center.png new file mode 100644 index 000000000..3aefab2d3 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/colorwell-bezel-disabled-center.png differ diff --git a/AppKit/Themes/Aristo/Resources/colorwell-bezel-disabled-left.png b/AppKit/Themes/Aristo/Resources/colorwell-bezel-disabled-left.png new file mode 100644 index 000000000..6f1614ab9 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/colorwell-bezel-disabled-left.png differ diff --git a/AppKit/Themes/Aristo/Resources/colorwell-bezel-disabled-right.png b/AppKit/Themes/Aristo/Resources/colorwell-bezel-disabled-right.png new file mode 100644 index 000000000..bf56b9637 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/colorwell-bezel-disabled-right.png differ diff --git a/AppKit/Themes/Aristo/Resources/colorwell-bezel-highlighted-center.png b/AppKit/Themes/Aristo/Resources/colorwell-bezel-highlighted-center.png new file mode 100644 index 000000000..3dd335f5b Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/colorwell-bezel-highlighted-center.png differ diff --git a/AppKit/Themes/Aristo/Resources/colorwell-bezel-highlighted-left.png b/AppKit/Themes/Aristo/Resources/colorwell-bezel-highlighted-left.png new file mode 100644 index 000000000..8c1579335 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/colorwell-bezel-highlighted-left.png differ diff --git a/AppKit/Themes/Aristo/Resources/colorwell-bezel-highlighted-right.png b/AppKit/Themes/Aristo/Resources/colorwell-bezel-highlighted-right.png new file mode 100644 index 000000000..8bde109b6 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/colorwell-bezel-highlighted-right.png differ diff --git a/AppKit/Themes/Aristo/Resources/colorwell-bezel-left.png b/AppKit/Themes/Aristo/Resources/colorwell-bezel-left.png new file mode 100644 index 000000000..d188ea17b Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/colorwell-bezel-left.png differ diff --git a/AppKit/Themes/Aristo/Resources/colorwell-bezel-right.png b/AppKit/Themes/Aristo/Resources/colorwell-bezel-right.png new file mode 100644 index 000000000..7c6bbf90d Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/colorwell-bezel-right.png differ diff --git a/AppKit/Themes/Aristo/Resources/colorwell-content-border-center.png b/AppKit/Themes/Aristo/Resources/colorwell-content-border-center.png new file mode 100644 index 000000000..96e46d5ca Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/colorwell-content-border-center.png differ diff --git a/AppKit/Themes/Aristo/Resources/colorwell-content-border-left.png b/AppKit/Themes/Aristo/Resources/colorwell-content-border-left.png new file mode 100644 index 000000000..ca13ac1c8 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/colorwell-content-border-left.png differ diff --git a/AppKit/Themes/Aristo/Resources/colorwell-content-border-right.png b/AppKit/Themes/Aristo/Resources/colorwell-content-border-right.png new file mode 100644 index 000000000..ca13ac1c8 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/colorwell-content-border-right.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-center.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-center.png new file mode 100644 index 000000000..8f5171d3c Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-center.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-disabled-center.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-disabled-center.png new file mode 100644 index 000000000..584597d70 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-disabled-center.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-disabled-left.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-disabled-left.png new file mode 100644 index 000000000..5cd37245f Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-disabled-left.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-disabled-right.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-disabled-right.png new file mode 100644 index 000000000..cad4200ec Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-disabled-right.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-focused-center.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-focused-center.png new file mode 100644 index 000000000..17a750707 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-focused-center.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-focused-left.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-focused-left.png new file mode 100644 index 000000000..cf33abf0d Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-focused-left.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-focused-right.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-focused-right.png new file mode 100644 index 000000000..d86d6da36 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-focused-right.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-left.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-left.png new file mode 100644 index 000000000..7278434b5 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-left.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-center.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-center.png new file mode 100644 index 000000000..0d654e92e Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-center.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-disabled-center.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-disabled-center.png new file mode 100644 index 000000000..49cb956b3 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-disabled-center.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-disabled-left.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-disabled-left.png new file mode 100644 index 000000000..dc9d6ac33 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-disabled-left.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-disabled-right.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-disabled-right.png new file mode 100644 index 000000000..811bbcd91 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-disabled-right.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-focused-center.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-focused-center.png new file mode 100644 index 000000000..17a750707 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-focused-center.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-focused-left.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-focused-left.png new file mode 100644 index 000000000..475f79853 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-focused-left.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-focused-right.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-focused-right.png new file mode 100644 index 000000000..6de63cff9 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-focused-right.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-left.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-left.png new file mode 100644 index 000000000..67d0702e0 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-left.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-right.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-right.png new file mode 100644 index 000000000..d033a0e7f Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-no-border-right.png differ diff --git a/AppKit/Themes/Aristo/Resources/combobox-bezel-right.png b/AppKit/Themes/Aristo/Resources/combobox-bezel-right.png new file mode 100644 index 000000000..e796d2f7e Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/combobox-bezel-right.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-center.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-center.png index 2ffc73c8b..47b21b422 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-center.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-center.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-disabled-center.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-disabled-center.png new file mode 100644 index 000000000..2089c6dc6 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-disabled-center.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-disabled-left.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-disabled-left.png new file mode 100644 index 000000000..d4f0f53be Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-disabled-left.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-disabled-right.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-disabled-right.png new file mode 100644 index 000000000..e3fa8a303 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-disabled-right.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-focused-center.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-focused-center.png index b5dad6f9f..e1aad4ee2 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-focused-center.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-focused-center.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-focused-left.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-focused-left.png index b44bf2c1c..66a00a37e 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-focused-left.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-focused-left.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-focused-right.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-focused-right.png index aeed86899..53711d5ad 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-focused-right.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-focused-right.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-left.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-left.png index c4d22bfc2..39a880af9 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-left.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-left.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-right.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-right.png index 8281342b3..8aac94d7b 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-right.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-rounded-right.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-0.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-0.png index 1f0cfabe5..9277864a3 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-0.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-0.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-1.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-1.png index 72c8add06..373b4521a 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-1.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-1.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-2.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-2.png index 3679527d6..8a25d7d56 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-2.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-2.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-3.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-3.png index 1cda75fe5..c64440c21 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-3.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-3.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-4.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-4.png index 6dcbf53ef..b9d310c91 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-4.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-4.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-5.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-5.png index db566f219..fd3d0f353 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-5.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-5.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-6.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-6.png index 8bd048b99..657130254 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-6.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-6.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-7.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-7.png index e96d14560..516547dd3 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-7.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-7.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-8.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-8.png index bf9f2b88d..7e5ee4d11 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-8.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-8.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-0.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-0.png index 86d3a0b3c..9d9c48149 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-0.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-0.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-1.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-1.png index 2dc080f27..69059d7f4 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-1.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-1.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-2.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-2.png index 9a8ffa1bc..c16b43a4c 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-2.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-2.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-3.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-3.png index ee5aff6fa..c66d31b2f 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-3.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-3.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-4.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-4.png index 2e66015ba..b9d310c91 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-4.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-4.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-5.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-5.png index 785335b23..1bbb21e96 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-5.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-5.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-6.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-6.png index cd3848f17..34f8ea207 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-6.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-6.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-7.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-7.png index af73498eb..78e4e0197 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-7.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-7.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-8.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-8.png index 992854957..7cacd441e 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-8.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-disabled-8.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-0.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-0.png index de1254128..45338f207 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-0.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-0.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-1.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-1.png index fbd78313e..b5425fd48 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-1.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-1.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-2.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-2.png index bb4be64f4..d0ed18841 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-2.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-2.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-3.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-3.png index 2ad2b9e6e..d91ea7245 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-3.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-3.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-4.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-4.png index 6b4c7b191..b9d310c91 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-4.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-4.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-5.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-5.png index 62394f613..2b90330e9 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-5.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-5.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-6.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-6.png index 22aa9f17e..427e771b2 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-6.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-6.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-7.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-7.png index 474edf7ec..cdc204445 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-7.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-7.png differ diff --git a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-8.png b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-8.png index e77d1c1eb..0bfdb231c 100644 Binary files a/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-8.png and b/AppKit/Themes/Aristo/Resources/textfield-bezel-square-focused-8.png differ diff --git a/AppKit/Themes/Aristo/Resources/token-center-disabled.png b/AppKit/Themes/Aristo/Resources/token-center-disabled.png new file mode 100644 index 000000000..0fcdbc47a Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/token-center-disabled.png differ diff --git a/AppKit/Themes/Aristo/Resources/token-left-disabled.png b/AppKit/Themes/Aristo/Resources/token-left-disabled.png new file mode 100644 index 000000000..c3ae314d9 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/token-left-disabled.png differ diff --git a/AppKit/Themes/Aristo/Resources/token-right-disabled.png b/AppKit/Themes/Aristo/Resources/token-right-disabled.png new file mode 100644 index 000000000..00d52832d Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/token-right-disabled.png differ diff --git a/AppKit/Themes/Aristo/ThemeDescriptors.j b/AppKit/Themes/Aristo/ThemeDescriptors.j index d4166a9c5..e1652f4f3 100755 --- a/AppKit/Themes/Aristo/ThemeDescriptors.j +++ b/AppKit/Themes/Aristo/ThemeDescriptors.j @@ -326,7 +326,7 @@ var themedButtonValues = nil, + (CPArray)themeShowcaseExcludes { - return ["alert", "cornerview", "columnHeader", "tableView", "tableHeaderRow", "tableDataView", @"ruleeditor"]; + return ["alert", "cornerview", "columnHeader", "tableView", "tableHeaderRow", "tableDataView", "ruleeditor", "scrollView", "horizontalScroller", "verticalScroller", "tooltip"]; } + (CPButton)makeButton @@ -443,7 +443,7 @@ var themedButtonValues = nil, themedButtonValues = [ - [@"font", [CPFont boldSystemFontOfSize:12.0], CPThemeStateBordered], + [@"font", [CPFont boldSystemFontOfSize:CPFontCurrentSystemSize], CPThemeStateBordered], [@"text-color", [CPColor colorWithCalibratedWhite:79.0 / 255.0 alpha:1.0]], [@"text-shadow-color", [CPColor colorWithCalibratedWhite:240.0 / 255.0 alpha:1.0], CPThemeStateBordered], [@"text-shadow-color", [CPColor colorWithCalibratedWhite:240.0 / 255.0 alpha:1.0], CPThemeStateBordered | CPThemeStateDisabled], @@ -467,7 +467,6 @@ var themedButtonValues = nil, [@"text-color", [CPColor colorWithCalibratedWhite:0.6 alpha:1.0], CPThemeStateDisabled], - [@"text-color", defaultTextColor, CPThemeStateDefault], [@"text-color", defaultDisabledTextColor, CPThemeStateDefault | CPThemeStateDisabled], @@ -536,7 +535,7 @@ var themedButtonValues = nil, [@"bezel-color", disabledColor, CPThemeStateBordered | CPThemeStateDisabled], [@"content-inset", CGInsetMake(0, 21.0 + 5.0, 0, 5.0), CPThemeStateBordered], - [@"font", [CPFont boldSystemFontOfSize:12.0]], + [@"font", [CPFont boldSystemFontOfSize:CPFontCurrentSystemSize]], [@"text-color", [CPColor colorWithCalibratedWhite:79.0 / 255.0 alpha:1.0]], [@"text-shadow-color", [CPColor colorWithCalibratedWhite:240.0 / 255.0 alpha:1.0]], @@ -580,7 +579,7 @@ var themedButtonValues = nil, [@"bezel-color", disabledColor, CPPopUpButtonStatePullsDown | CPThemeStateBordered | CPThemeStateDisabled], [@"content-inset", CGInsetMake(0, 27.0 + 5.0, 0, 5.0), CPThemeStateBordered], - [@"font", [CPFont boldSystemFontOfSize:12.0]], + [@"font", [CPFont boldSystemFontOfSize:CPFontCurrentSystemSize]], [@"text-color", [CPColor colorWithCalibratedWhite:79.0 / 255.0 alpha:1.0]], [@"text-shadow-color", [CPColor colorWithCalibratedWhite:240.0 / 255.0 alpha:1.0]], @@ -863,79 +862,85 @@ var themedButtonValues = nil, bezelColor = PatternColor( [ - ["textfield-bezel-square-0.png", 3.0, 4.0], - ["textfield-bezel-square-1.png", 1.0, 4.0], - ["textfield-bezel-square-2.png", 3.0, 4.0], - ["textfield-bezel-square-3.png", 3.0, 1.0], + ["textfield-bezel-square-0.png", 6.0, 6.0], + ["textfield-bezel-square-1.png", 1.0, 6.0], + ["textfield-bezel-square-2.png", 6.0, 6.0], + ["textfield-bezel-square-3.png", 6.0, 1.0], ["textfield-bezel-square-4.png", 1.0, 1.0], - ["textfield-bezel-square-5.png", 3.0, 1.0], - ["textfield-bezel-square-6.png", 3.0, 4.0], - ["textfield-bezel-square-7.png", 1.0, 4.0], - ["textfield-bezel-square-8.png", 3.0, 4.0] + ["textfield-bezel-square-5.png", 6.0, 1.0], + ["textfield-bezel-square-6.png", 6.0, 6.0], + ["textfield-bezel-square-7.png", 1.0, 6.0], + ["textfield-bezel-square-8.png", 6.0, 6.0] ]), bezelFocusedColor = PatternColor( [ - ["textfield-bezel-square-focused-0.png", 7.0, 7.0], - ["textfield-bezel-square-focused-1.png", 1.0, 7.0], - ["textfield-bezel-square-focused-2.png", 7.0, 7.0], - ["textfield-bezel-square-focused-3.png", 7.0, 1.0], + ["textfield-bezel-square-focused-0.png", 6.0, 6.0], + ["textfield-bezel-square-focused-1.png", 1.0, 6.0], + ["textfield-bezel-square-focused-2.png", 6.0, 6.0], + ["textfield-bezel-square-focused-3.png", 6.0, 1.0], ["textfield-bezel-square-focused-4.png", 1.0, 1.0], - ["textfield-bezel-square-focused-5.png", 7.0, 1.0], - ["textfield-bezel-square-focused-6.png", 7.0, 7.0], - ["textfield-bezel-square-focused-7.png", 1.0, 7.0], - ["textfield-bezel-square-focused-8.png", 7.0, 7.0] + ["textfield-bezel-square-focused-5.png", 6.0, 1.0], + ["textfield-bezel-square-focused-6.png", 6.0, 6.0], + ["textfield-bezel-square-focused-7.png", 1.0, 6.0], + ["textfield-bezel-square-focused-8.png", 6.0, 6.0] ]), bezelDisabledColor = PatternColor( [ - ["textfield-bezel-square-disabled-0.png", 3.0, 4.0], - ["textfield-bezel-square-disabled-1.png", 1.0, 4.0], - ["textfield-bezel-square-disabled-2.png", 3.0, 4.0], - ["textfield-bezel-square-disabled-3.png", 3.0, 1.0], + ["textfield-bezel-square-disabled-0.png", 6.0, 6.0], + ["textfield-bezel-square-disabled-1.png", 1.0, 6.0], + ["textfield-bezel-square-disabled-2.png", 6.0, 6.0], + ["textfield-bezel-square-disabled-3.png", 6.0, 1.0], ["textfield-bezel-square-disabled-4.png", 1.0, 1.0], - ["textfield-bezel-square-disabled-5.png", 3.0, 1.0], - ["textfield-bezel-square-disabled-6.png", 3.0, 4.0], - ["textfield-bezel-square-disabled-7.png", 1.0, 4.0], - ["textfield-bezel-square-disabled-8.png", 3.0, 4.0] - ]), + ["textfield-bezel-square-disabled-5.png", 6.0, 1.0], + ["textfield-bezel-square-disabled-6.png", 6.0, 6.0], + ["textfield-bezel-square-disabled-7.png", 1.0, 6.0], + ["textfield-bezel-square-disabled-8.png", 6.0, 6.0] + ]); - placeholderColor = [CPColor colorWithCalibratedRed:189.0 / 255.0 green:199.0 / 255.0 blue:211.0 / 255.0 alpha:1.0]; - - // Global for reuse by CPTokenField. + // Global for reuse by subclasses + textDisabledColor = [CPColor colorWithCalibratedWhite:0.60 alpha:1.0]; + placeholderColor = [CPColor colorWithCalibratedRed:189.0 / 255.0 green:199.0 / 255.0 blue:211.0 / 255.0 alpha:1.0]; themedTextFieldValues = [ [@"vertical-alignment", CPTopVerticalTextAlignment, CPThemeStateBezeled], [@"bezel-color", bezelColor, CPThemeStateBezeled], [@"bezel-color", bezelFocusedColor, CPThemeStateBezeled | CPThemeStateEditing], [@"bezel-color", bezelDisabledColor, CPThemeStateBezeled | CPThemeStateDisabled], - [@"font", [CPFont systemFontOfSize:12.0], CPThemeStateBezeled], - [@"content-inset", CGInsetMake(8.0, 7.0, 5.0, 8.0), CPThemeStateBezeled], - [@"content-inset", CGInsetMake(7.0, 7.0, 5.0, 8.0), CPThemeStateBezeled | CPThemeStateEditing], - [@"bezel-inset", CGInsetMake(3.0, 4.0, 3.0, 4.0), CPThemeStateBezeled], - [@"bezel-inset", CGInsetMake(0.0, 0.0, 0.0, 0.0), CPThemeStateBezeled | CPThemeStateEditing], + [@"font", [CPFont systemFontOfSize:CPFontCurrentSystemSize], CPThemeStateBezeled], + // no border + [@"bezel-inset", CGInsetMakeZero()], + [@"content-inset", CGInsetMakeZero()], + + // with border + [@"bezel-inset", CGInsetMakeZero(), CPThemeStateBezeled], + [@"content-inset", CGInsetMake(8.0, 7.0, 7.0, 8.0), CPThemeStateBezeled], + + [@"text-color", textDisabledColor, CPThemeStateBezeled | CPThemeStateDisabled], [@"text-color", placeholderColor, CPTextFieldStatePlaceholder], + [@"text-color", placeholderColor, CPTextFieldStatePlaceholder | CPThemeStateDisabled], [@"line-break-mode", CPLineBreakByTruncatingTail, CPThemeStateTableDataView], [@"vertical-alignment", CPCenterVerticalTextAlignment, CPThemeStateTableDataView], - [@"content-inset", CGInsetMake(0.0, 0.0, 0.0, 5.0), CPThemeStateTableDataView], + [@"content-inset", CGInsetMake(3.0, 3.0, 3.0, 5.0), CPThemeStateTableDataView], [@"text-color", [CPColor colorWithCalibratedWhite:51.0 / 255.0 alpha:1.0], CPThemeStateTableDataView], [@"text-color", [CPColor whiteColor], CPThemeStateTableDataView | CPThemeStateSelectedTableDataView], - [@"font", [CPFont boldSystemFontOfSize:12.0], CPThemeStateTableDataView | CPThemeStateSelectedTableDataView], + [@"font", [CPFont boldSystemFontOfSize:CPFontCurrentSystemSize], CPThemeStateTableDataView | CPThemeStateSelectedTableDataView], [@"text-color", [CPColor blackColor], CPThemeStateTableDataView | CPThemeStateEditing], - [@"content-inset", CGInsetMake(7.0, 7.0, 5.0, 8.0), CPThemeStateTableDataView | CPThemeStateEditing], - [@"font", [CPFont systemFontOfSize:12.0], CPThemeStateTableDataView | CPThemeStateEditing], - [@"bezel-inset", CGInsetMake(-2.0, -2.0, -2.0, -2.0), CPThemeStateTableDataView | CPThemeStateEditing], + [@"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], [@"text-color", [CPColor colorWithCalibratedWhite:125.0 / 255.0 alpha:1.0], CPThemeStateTableDataView | CPThemeStateGroupRow], [@"text-color", [CPColor colorWithCalibratedWhite:1.0 alpha:1.0], CPThemeStateTableDataView | CPThemeStateGroupRow | CPThemeStateSelectedTableDataView], [@"text-shadow-color", [CPColor whiteColor], CPThemeStateTableDataView | CPThemeStateGroupRow], [@"text-shadow-offset", CGSizeMake(0,1), CPThemeStateTableDataView | CPThemeStateGroupRow], - [@"text-shadow-color", [CPColor colorWithCalibratedWhite:0.0 alpha:0.6], CPThemeStateTableDataView | CPThemeStateGroupRow | CPThemeStateSelectedTableDataView], - [@"font", [CPFont boldSystemFontOfSize:12.0], CPThemeStateTableDataView | CPThemeStateGroupRow] + [@"text-shadow-color", [CPColor colorWithCalibratedWhite:0.0 alpha:0.6], CPThemeStateTableDataView | CPThemeStateGroupRow | CPThemeStateSelectedTableDataView], + [@"font", [CPFont boldSystemFontOfSize:CPFontCurrentSystemSize], CPThemeStateTableDataView | CPThemeStateGroupRow] ]; [self registerThemeValues:themedTextFieldValues forView:textfield]; @@ -954,35 +959,42 @@ var themedButtonValues = nil, var textfield = [[CPTextField alloc] initWithFrame:CGRectMake(0.0, 0.0, 60.0, 30.0)], bezelColor = PatternColor( [ - ["textfield-bezel-rounded-left.png", 13.0, 22.0], - ["textfield-bezel-rounded-center.png", 1.0, 22.0], - ["textfield-bezel-rounded-right.png", 13.0, 22.0] + ["textfield-bezel-rounded-left.png", 15.0, 30.0], + ["textfield-bezel-rounded-center.png", 1.0, 30.0], + ["textfield-bezel-rounded-right.png", 15.0, 30.0] ], PatternIsHorizontal), bezelFocusedColor = PatternColor( [ - ["textfield-bezel-rounded-focused-left.png", 17.0, 30.0], + ["textfield-bezel-rounded-focused-left.png", 15.0, 30.0], ["textfield-bezel-rounded-focused-center.png", 1.0, 30.0], - ["textfield-bezel-rounded-focused-right.png", 17.0, 30.0] + ["textfield-bezel-rounded-focused-right.png", 15.0, 30.0] ], PatternIsHorizontal), - placeholderColor = [CPColor colorWithCalibratedRed:189.0 / 255.0 green:199.0 / 255.0 blue:211.0 / 255.0 alpha:1.0]; + bezelDisabledColor = PatternColor( + [ + ["textfield-bezel-rounded-disabled-left.png", 15.0, 30.0], + ["textfield-bezel-rounded-disabled-center.png", 1.0, 30.0], + ["textfield-bezel-rounded-disabled-right.png", 15.0, 30.0] + ], + PatternIsHorizontal); - // Global for reuse by CPSearchField + // Global for reuse by subclasses themedRoundedTextFieldValues = [ - [@"bezel-color", bezelColor, CPTextFieldStateRounded | CPThemeStateBezeled], - [@"bezel-color", bezelFocusedColor, CPTextFieldStateRounded | CPThemeStateBezeled | CPThemeStateEditing], - [@"font", [CPFont systemFontOfSize:12.0]], + [@"bezel-color", bezelColor, CPTextFieldStateRounded | CPThemeStateBezeled], + [@"bezel-color", bezelFocusedColor, CPTextFieldStateRounded | CPThemeStateBezeled | CPThemeStateEditing], + [@"bezel-color", bezelDisabledColor, CPTextFieldStateRounded | CPThemeStateBezeled | CPThemeStateDisabled], + [@"font", [CPFont systemFontOfSize:CPFontCurrentSystemSize]], - [@"content-inset", CGInsetMake(8.0, 14.0, 6.0, 14.0), CPTextFieldStateRounded | CPThemeStateBezeled], - [@"content-inset", CGInsetMake(7.0, 14.0, 6.0, 14.0), CPTextFieldStateRounded | CPThemeStateBezeled | CPThemeStateEditing], - - [@"bezel-inset", CGInsetMake(4.0, 4.0, 4.0, 4.0), CPTextFieldStateRounded | CPThemeStateBezeled], - [@"bezel-inset", CGInsetMake(0.0, 0.0, 0.0, 0.0), CPTextFieldStateRounded | CPThemeStateBezeled | CPThemeStateEditing], + // The new bezel is one pixel shorter, so we add one extra empty pixel at the bottom + // for size compatibility with an earlier version. + [@"bezel-inset", CGInsetMake(0.0, 0.0, 1.0, 0.0), CPTextFieldStateRounded | CPThemeStateBezeled], + [@"content-inset", CGInsetMake(8.0, 13.0, 7.0, 14.0), CPTextFieldStateRounded | CPThemeStateBezeled], + [@"text-color", textDisabledColor, CPTextFieldStateRounded | CPThemeStateDisabled], [@"text-color", placeholderColor, CPTextFieldStateRounded | CPTextFieldStatePlaceholder], [@"min-size", CGSizeMake(0.0, 30.0), CPTextFieldStateRounded | CPThemeStateBezeled], @@ -1015,11 +1027,20 @@ var themedButtonValues = nil, overrides = [ - [@"content-inset", CGInsetMake(8.0, 0.0, 4.0, 0.0)], - // Placeholder is displayed as regular text, not tokens; requires a different inset. - [@"content-inset", CGInsetMake(9.0, 0.0, 5.0, 2.0), CPTextFieldStatePlaceholder], - [@"content-inset", CGInsetMake(6.0, 5.0, 5.0, 6.0), CPThemeStateBezeled], - [@"content-inset", CGInsetMake(9.0, 7.0, 6.0, 8.0), CPThemeStateBezeled | CPTextFieldStatePlaceholder], + [@"bezel-inset", CGInsetMakeZero()], + [@"editor-inset", CGInsetMake(2.0, 0.0, 0.0, 0.0)], + + // Non-bezeled token field with tokens + [@"content-inset", CGInsetMake(5.0, 8.0, 4.0, 8.0)], + + // Non-bezeled token field with no tokens + [@"content-inset", CGInsetMake(7.0, 8.0, 6.0, 8.0), CPTextFieldStatePlaceholder], + + // Bezeled token field with tokens + [@"content-inset", CGInsetMake(6.0, 8.0, 2.0, 8.0), CPThemeStateBezeled], + + // Bezeled token field with no tokens + [@"content-inset", CGInsetMake(8.0, 8.0, 7.0, 8.0), CPThemeStateBezeled | CPTextFieldStatePlaceholder] ]; [self registerThemeValues:overrides forView:tokenfield inherit:themedTextFieldValues]; @@ -1047,6 +1068,14 @@ var themedButtonValues = nil, ], PatternIsHorizontal), + bezelColorDisabled = PatternColor( + [ + ["token-left-disabled.png", 11.0, 19.0], + ["token-center-disabled.png", 1.0, 19.0], + ["token-right-disabled.png", 11.0, 19.0] + ], + PatternIsHorizontal), + textColor = [CPColor colorWithRed:41.0 / 255.0 green:51.0 / 255.0 blue:64.0 / 255.0 alpha:1.0], textHighlightedColor = [CPColor whiteColor], @@ -1054,18 +1083,19 @@ var themedButtonValues = nil, [ [@"bezel-color", bezelColor, CPThemeStateBezeled], [@"bezel-color", bezelHighlightedColor, CPThemeStateBezeled | CPThemeStateHighlighted], + [@"bezel-color", bezelColorDisabled, CPThemeStateBezeled | CPThemeStateDisabled], [@"text-color", textColor], [@"text-color", textHighlightedColor, CPThemeStateHighlighted], - [@"bezel-inset", CGInsetMake(0.0, 0.0, 0.0, 0.0), CPThemeStateBezeled], - [@"content-inset", CGInsetMake(1.0, 24.0, 2.0, 16.0), CPThemeStateBezeled], + [@"bezel-inset", CGInsetMakeZero(), CPThemeStateBezeled], + [@"content-inset", CGInsetMake(1.0, 22.0, 3.0, 15.0), CPThemeStateBezeled], // Minimum height == maximum height since tokens are fixed height. [@"min-size", CGSizeMake(0.0, 19.0)], [@"max-size", CGSizeMake(-1.0, 19.0)], - [@"vertical-alignment", CPCenterTextAlignment], + [@"vertical-alignment", CPCenterTextAlignment] ]; [self registerThemeValues:themeValues forView:token]; @@ -1091,7 +1121,7 @@ var themedButtonValues = nil, [@"bezel-inset", CGInsetMake(0.0, 0.0, 0.0, 0.0), CPThemeStateBordered], [@"bezel-inset", CGInsetMake(0.0, 0.0, 0.0, 0.0), CPThemeStateBordered | CPThemeStateHighlighted], - [@"offset", CGPointMake(18, 6), CPThemeStateBordered] + [@"offset", CGPointMake(17, 6), CPThemeStateBordered] ]; [self registerThemeValues:themeValues forView:button]; @@ -1099,6 +1129,143 @@ var themedButtonValues = nil, return button; } ++ (CPColorWell)themedColorWell +{ + // The CPColorPanel CPColorWell depends on requires CPApp. + [CPApplication sharedApplication]; + + var colorWell = [[CPColorWell alloc] initWithFrame:CGRectMake(0.0, 0.0, 60.0, 24.0)], + + bezelColor = PatternColor( + [ + ["colorwell-bezel-left.png", 3.0, 24.0], + ["colorwell-bezel-center.png", 1.0, 24.0], + ["colorwell-bezel-right.png", 3.0, 24.0] + ], + PatternIsHorizontal), + + bezelHighlightedColor = PatternColor( + [ + ["colorwell-bezel-highlighted-left.png", 3.0, 24.0], + ["colorwell-bezel-highlighted-center.png", 1.0, 24.0], + ["colorwell-bezel-highlighted-right.png", 3.0, 24.0] + ], + PatternIsHorizontal), + + bezelDisabledColor = PatternColor( + [ + ["colorwell-bezel-disabled-left.png", 3.0, 24.0], + ["colorwell-bezel-disabled-center.png", 1.0, 24.0], + ["colorwell-bezel-disabled-right.png", 3.0, 24.0] + ], + PatternIsHorizontal), + + contentBorderColor = PatternColor( + [ + ["colorwell-content-border-left.png", 1.0, 15.0], + ["colorwell-content-border-center.png", 1.0, 15.0], + ["colorwell-content-border-right.png", 1.0, 15.0] + ], + PatternIsHorizontal), + + themedColorWellValues = [ + [@"bezel-color", bezelColor, CPThemeStateBordered], + [@"content-inset", CGInsetMake(5.0, 5.0, 5.0, 5.0), CPThemeStateBordered], + [@"content-border-inset", CGInsetMake(5.0, 5.0, 4.0, 5.0), CPThemeStateBordered], + [@"content-border-color", contentBorderColor, CPThemeStateBordered], + + [@"bezel-color", bezelHighlightedColor, CPThemeStateBordered | CPThemeStateHighlighted], + + [@"bezel-color", bezelDisabledColor, CPThemeStateBordered | CPThemeStateDisabled], + ]; + + [self registerThemeValues:themedColorWellValues forView:colorWell]; + + return colorWell; +} + ++ (CPComboBox)themedComboBox +{ + var combo = [[CPComboBox alloc] initWithFrame:CGRectMake(0.0, 0.0, 100.0, 29.0)], + + bezelColor = PatternColor( + [ + ["combobox-bezel-left.png", 6.0, 29.0], + ["combobox-bezel-center.png", 1.0, 29.0], + ["combobox-bezel-right.png", 24.0, 29.0] + ], + PatternIsHorizontal), + + bezelFocusedColor = PatternColor( + [ + ["combobox-bezel-focused-left.png", 6.0, 29.0], + ["combobox-bezel-focused-center.png", 1.0, 29.0], + ["combobox-bezel-focused-right.png", 24.0, 29.0] + ], + PatternIsHorizontal), + + bezelDisabledColor = PatternColor( + [ + ["combobox-bezel-disabled-left.png", 6.0, 29.0], + ["combobox-bezel-disabled-center.png", 1.0, 29.0], + ["combobox-bezel-disabled-right.png", 24.0, 29.0] + ], + PatternIsHorizontal), + + bezelNoBorderColor = PatternColor( + [ + ["combobox-bezel-no-border-left.png", 6.0, 29.0], + ["combobox-bezel-no-border-center.png", 1.0, 29.0], + ["combobox-bezel-no-border-right.png", 24.0, 29.0] + ], + PatternIsHorizontal), + + bezelNoBorderFocusedColor = PatternColor( + [ + ["combobox-bezel-no-border-focused-left.png", 6.0, 29.0], + ["combobox-bezel-no-border-focused-center.png", 1.0, 29.0], + ["combobox-bezel-no-border-focused-right.png", 24.0, 29.0] + ], + PatternIsHorizontal), + + bezelNoBorderDisabledColor = PatternColor( + [ + ["combobox-bezel-no-border-disabled-left.png", 6.0, 29.0], + ["combobox-bezel-no-border-disabled-center.png", 1.0, 29.0], + ["combobox-bezel-no-border-disabled-right.png", 24.0, 29.0] + ], + PatternIsHorizontal), + + overrides = + [ + [@"bezel-color", bezelColor, CPThemeStateBezeled | CPComboBoxStateButtonBordered], + [@"bezel-color", bezelFocusedColor, CPThemeStateBezeled | CPComboBoxStateButtonBordered | CPThemeStateEditing], + [@"bezel-color", bezelDisabledColor, CPThemeStateBezeled | CPComboBoxStateButtonBordered | CPThemeStateDisabled], + + [@"bezel-color", bezelNoBorderColor, CPThemeStateBezeled], + [@"bezel-color", bezelNoBorderFocusedColor, CPThemeStateBezeled | CPThemeStateEditing], + [@"bezel-color", bezelNoBorderDisabledColor, CPThemeStateBezeled | CPThemeStateDisabled], + + [@"border-inset", CGInsetMake(3.0, 3.0, 3.0, 3.0), CPThemeStateBezeled], + + // The right border inset has to make room for the focus ring and popup button + [@"content-inset", CGInsetMake(8.0, 27.0, 7.0, 8.0), CPThemeStateBezeled | CPComboBoxStateButtonBordered], + [@"content-inset", CGInsetMake(8.0, 24.0, 7.0, 8.0), CPThemeStateBezeled], + [@"content-inset", CGInsetMake(8.0, 24.0, 7.0, 8.0), CPThemeStateBezeled | CPThemeStateEditing], + + [@"popup-button-size", CGSizeMake(21.0, 23.0), CPThemeStateBezeled | CPComboBoxStateButtonBordered], + [@"popup-button-size", CGSizeMake(17.0, 23.0), CPThemeStateBezeled], + + // Because combo box uses a three-part bezel, the height is fixed + [@"min-size", CGSizeMake(0, 29.0)], + [@"max-size", CGSizeMake(-1, 29.0)] + ]; + + [self registerThemeValues:overrides forView:combo inherit:themedTextFieldValues]; + + return combo; +} + + (CPRadioButton)themedRadioButton { var button = [CPRadio radioWithTitle:@"Hello Friend!"], @@ -1113,7 +1280,6 @@ var themedButtonValues = nil, themeValues = [ [@"alignment", CPLeftTextAlignment, CPThemeStateNormal], - [@"font", [CPFont systemFontOfSize:12.0], CPThemeStateNormal], [@"content-inset", CGInsetMake(0.0, 0.0, 0.0, 0.0), CPThemeStateNormal], [@"image", imageNormal, CPThemeStateNormal], @@ -1124,6 +1290,7 @@ var themedButtonValues = nil, [@"image", imageSelectedDisabled, CPThemeStateSelected | CPThemeStateDisabled], [@"image-offset", CPRadioImageOffset], + [@"font", [CPFont systemFontOfSize:CPFontCurrentSystemSize], CPThemeStateNormal], [@"text-color", [CPColor colorWithCalibratedWhite:79.0 / 255.0 alpha:1.0], CPThemeStateDisabled], [@"min-size", CGSizeMake(0.0, 17.0)], @@ -1149,8 +1316,7 @@ var themedButtonValues = nil, themeValues = [ [@"alignment", CPLeftTextAlignment, CPThemeStateNormal], - [@"font", [CPFont systemFontOfSize:12.0], CPThemeStateNormal], - [@"content-inset", CGInsetMake(0.0, 0.0, 0.0, 0.0), CPThemeStateNormal], + [@"content-inset", CGInsetMakeZero(), CPThemeStateNormal], [@"image", imageNormal, CPThemeStateNormal], [@"image", imageSelected, CPThemeStateSelected], @@ -1160,7 +1326,8 @@ var themedButtonValues = nil, [@"image", imageSelectedDisabled, CPThemeStateSelected | CPThemeStateDisabled], [@"image-offset", CPCheckBoxImageOffset], - [@"text-color", [CPColor colorWithCalibratedWhite:79.0 / 255.0 alpha:1.0], CPThemeStateDisabled], + [@"font", [CPFont systemFontOfSize:CPFontCurrentSystemSize], CPThemeStateNormal], + [@"text-color", [CPColor colorWithCalibratedWhite:79.0 / 255.0 alpha:1.0], CPThemeStateDisabled], [@"min-size", CGSizeMake(0.0, 17.0)], [@"max-size", CGSizeMake(-1.0, -1.0)] @@ -1276,7 +1443,7 @@ var themedButtonValues = nil, [@"content-inset", CGInsetMake(0.0, 4.0, 0.0, 4.0), CPThemeStateNormal], [@"bezel-inset", CGInsetMake(0.0, 0.0, 0.0, 0.0), CPThemeStateNormal], - [@"font", [CPFont boldSystemFontOfSize:12.0]], + [@"font", [CPFont boldSystemFontOfSize:CPFontCurrentSystemSize]], [@"text-color", [CPColor colorWithCalibratedWhite:79.0 / 255.0 alpha:1.0]], [@"text-color", [CPColor colorWithCalibratedWhite:0.6 alpha:1.0], CPThemeStateDisabled], [@"text-shadow-color", [CPColor colorWithCalibratedWhite:240.0 / 255.0 alpha:1.0]], @@ -1507,7 +1674,7 @@ var themedButtonValues = nil, [@"text-inset", CGInsetMake(0, 5, 0, 5)], [@"text-color", [CPColor colorWithCalibratedWhite:51.0 / 255.0 alpha:1.0]], - [@"text-font", [CPFont boldSystemFontOfSize:12.0]], + [@"font", [CPFont boldSystemFontOfSize:CPFontCurrentSystemSize]], [@"text-shadow-color", [CPColor whiteColor]], [@"text-shadow-offset", CGSizeMake(0.0, 1.0)], [@"text-alignment", CPLeftTextAlignment], @@ -1556,7 +1723,7 @@ var themedButtonValues = nil, sortImage = PatternImage("tableview-headerview-ascending.png", 9.0, 8.0), sortImageReversed = PatternImage("tableview-headerview-descending.png", 9.0, 8.0), 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"], + 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], @@ -1627,13 +1794,13 @@ var themedButtonValues = nil, helpLeftOffset = 15, imageOffset = CGPointMake(15, 18), informationIcon = PatternImage("alert-info.png", 53.0, 46.0), - informativeFont = [CPFont systemFontOfSize:12.0], + informativeFont = [CPFont systemFontOfSize:CPFontCurrentSystemSize], inset = CGInsetMake(15, 15, 15, 80), - messageFont = [CPFont boldSystemFontOfSize:13.0], + messageFont = [CPFont boldSystemFontOfSize:CPFontDefaultSystemFontSize + 1], size = CGSizeMake(400.0, 110.0), suppressionButtonXOffset = 2.0, suppressionButtonYOffset = 10.0, - suppressionButtonFont = [CPFont systemFontOfSize:12.0], + suppressionButtonFont = [CPFont systemFontOfSize:CPFontCurrentSystemSize], warningIcon = PatternImage("alert-warning.png", 53.0, 46.0); themedAlertValues = @@ -1749,17 +1916,17 @@ var themedButtonValues = nil, removeImage = PatternImage(@"rule-editor-remove.png", 8.0, 8.0); var ruleEditorThemedValues = - [ - [@"alternating-row-colors", backgroundColors], - [@"selected-color", selectedActiveRowColor, CPThemeStateNormal], - [@"selected-color", selectedInactiveRowColor, CPThemeStateDisabled], - [@"slice-top-border-color", sliceTopBorderColor], - [@"slice-bottom-border-color", sliceBottomBorderColor], - [@"slice-last-bottom-border-color", sliceLastBottomBorderColor], - [@"font", [CPFont systemFontOfSize:10.0]], - [@"add-image", addImage], - [@"remove-image", removeImage] - ]; + [ + [@"alternating-row-colors", backgroundColors], + [@"selected-color", selectedActiveRowColor, CPThemeStateNormal], + [@"selected-color", selectedInactiveRowColor, CPThemeStateDisabled], + [@"slice-top-border-color", sliceTopBorderColor], + [@"slice-bottom-border-color", sliceBottomBorderColor], + [@"slice-last-bottom-border-color", sliceLastBottomBorderColor], + [@"font", [CPFont systemFontOfSize:10.0]], + [@"add-image", addImage], + [@"remove-image", removeImage] + ]; [self registerThemeValues:ruleEditorThemedValues forView:ruleEditor]; diff --git a/AppKit/Themes/BlendKit/BKThemeDescriptor.j b/AppKit/Themes/BlendKit/BKThemeDescriptor.j index 93133d489..0fbe4477c 100644 --- a/AppKit/Themes/BlendKit/BKThemeDescriptor.j +++ b/AppKit/Themes/BlendKit/BKThemeDescriptor.j @@ -181,7 +181,7 @@ var ItemSizes = { }, if ([object isKindOfClass:[CPView class]]) { var size = [object frame].size, - labelWidth = [[template valueForKey:@"label"] sizeWithFont:[CPFont boldSystemFontOfSize:12.0]].width + 20.0; + labelWidth = [[template valueForKey:@"label"] sizeWithFont:[CPFont boldSystemFontOfSize:0]].width + 20.0; if (size.width > itemSize.width) itemSize.width = size.width; diff --git a/AppKit/Themes/Default/AppController.j b/AppKit/Themes/Default/AppController.j index 8ccddb630..66ea14d1a 100644 --- a/AppKit/Themes/Default/AppController.j +++ b/AppKit/Themes/Default/AppController.j @@ -142,7 +142,7 @@ [_label setAlignment:CPCenterTextAlignment]; [_label setAutoresizingMask:CPViewMinYMargin | CPViewWidthSizable]; - [_label setFont:[CPFont boldSystemFontOfSize:12.0]]; + [_label setFont:[CPFont boldSystemFontOfSize:0]]; [self addSubview:_label]; } diff --git a/AppKit/_CPImageAndTextView.j b/AppKit/_CPImageAndTextView.j index adb34716f..4b7b87527 100644 --- a/AppKit/_CPImageAndTextView.j +++ b/AppKit/_CPImageAndTextView.j @@ -98,7 +98,7 @@ var _CPimageAndTextViewFrameSizeChangedFlag = 1 << 0, [self setLineBreakMode:CPLineBreakByClipping]; //[self setTextColor:[aControl textColor]]; [self setAlignment:CPCenterTextAlignment]; - [self setFont:[CPFont systemFontOfSize:12.0]]; + [self setFont:[CPFont systemFontOfSize:CPFontCurrentSystemSize]]; [self setImagePosition:CPNoImage]; [self setImageScaling:CPImageScaleNone]; } @@ -242,7 +242,7 @@ var _CPimageAndTextViewFrameSizeChangedFlag = 1 << 0, - (void)setFont:(CPFont)aFont { - if (_font === aFont) + if ([_font isEqual:aFont]) return; _font = aFont; @@ -434,7 +434,7 @@ var _CPimageAndTextViewFrameSizeChangedFlag = 1 << 0, var shadowStyle = _DOMTextShadowElement.style; - shadowStyle.font = [_font ? _font : [CPFont systemFontOfSize:12.0] cssString]; + shadowStyle.font = [(_font || [CPFont systemFontOfSize:CPFontCurrentSystemSize]) cssString]; shadowStyle.position = "absolute"; shadowStyle.whiteSpace = textStyle.whiteSpace; shadowStyle.wordWrap = textStyle.wordWrap; @@ -484,7 +484,7 @@ var _CPimageAndTextViewFrameSizeChangedFlag = 1 << 0, if (_flags & _CPImageAndTextViewFontChangedFlag) { - var fontStyle = [(_font ? _font : [CPFont systemFontOfSize:12.0]) cssString]; + var fontStyle = [(_font || [CPFont systemFontOfSize:CPFontCurrentSystemSize]) cssString]; textStyle.font = fontStyle; if (shadowStyle) @@ -680,9 +680,19 @@ var _CPimageAndTextViewFrameSizeChangedFlag = 1 << 0, { if (_lineBreakMode === CPLineBreakByCharWrapping || _lineBreakMode === CPLineBreakByWordWrapping) + { _textSize = [_text sizeWithFont:_font inWidth:textRectWidth]; + } else + { _textSize = [_text sizeWithFont:_font]; + + // Account for possible fractional pixels at right edge + _textSize.width += 1; + } + + // Account for possible fractional pixels at bottom edge + _textSize.height += 1; } if (_verticalAlignment === CPCenterVerticalTextAlignment) @@ -700,8 +710,8 @@ var _CPimageAndTextViewFrameSizeChangedFlag = 1 << 0, textStyle.top = ROUND(textRectY) + "px"; textStyle.left = ROUND(textRectX) + "px"; - textStyle.width = MAX(ROUND(textRectWidth), 0) + "px"; - textStyle.height = MAX(ROUND(textRectHeight), 0) + "px"; + textStyle.width = MAX(CEIL(textRectWidth), 0) + "px"; + textStyle.height = MAX(CEIL(textRectHeight), 0) + "px"; if (shadowStyle) { @@ -710,8 +720,8 @@ var _CPimageAndTextViewFrameSizeChangedFlag = 1 << 0, shadowStyle.top = ROUND(textRectY + _textShadowOffset.height) + "px"; shadowStyle.left = ROUND(textRectX + _textShadowOffset.width) + "px"; - shadowStyle.width = MAX(ROUND(textRectWidth), 0) + "px"; - shadowStyle.height = MAX(ROUND(textRectHeight), 0) + "px"; + shadowStyle.width = MAX(CEIL(textRectWidth), 0) + "px"; + shadowStyle.height = MAX(CEIL(textRectHeight), 0) + "px"; } } #endif @@ -734,7 +744,13 @@ var _CPimageAndTextViewFrameSizeChangedFlag = 1 << 0, if ((_imagePosition !== CPImageOnly) && [_text length] > 0) { if (!_textSize) - _textSize = [_text sizeWithFont:_font ? _font : [CPFont systemFontOfSize:12.0]]; + { + _textSize = [_text sizeWithFont:_font || [CPFont systemFontOfSize:0]]; + + // Account for fractional pixels + _textSize.width += 1; + _textSize.height += 1; + } if (!_image || _imagePosition === CPImageOverlaps) { diff --git a/AppKit/_CPPopUpList.j b/AppKit/_CPPopUpList.j new file mode 100644 index 000000000..20ebac313 --- /dev/null +++ b/AppKit/_CPPopUpList.j @@ -0,0 +1,858 @@ +/* + * _CPPopUpList.j + * AppKit + * + * Created by Aparajita Fishman. + * Copyright (c) 2012, The Cappuccino Foundation + * + * 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 "CPTableView.j" +@import "_CPPopUpListDataSource.j" + + +/*! + Notification sent when the list is about to pop up. \c object is the _CPPopUpList. +*/ +_CPPopUpListWillPopUpNotification = @"_CPPopUpListWillPopUpNotification"; + +/*! + Notification sent when the list is about to be dismissed. \c object is the _CPPopUpList. +*/ +_CPPopUpListWillDismissNotification = @"_CPPopUpListWillDismissNotification"; + +/*! + Notification sent when the list is dismissed. \c object is the _CPPopUpList. +*/ +_CPPopUpListDidDismissNotification = @"_CPPopUpListDidDismissNotification"; + +/*! + Notification sent by when an item is selected. \c object is the _CPPopUpList. + When this is received the list has already been dismissed and the dismiss notification has been sent. +*/ +_CPPopUpListItemWasClickedNotification = @"_CPPopUpListItemWasClickedNotification"; + +/*! + @ignore + + The minimum number of items that must be visible below the related field. + If less than this number would be completely visible, and there is room for this many complete items + above the field, the list is displayed above. +*/ +var ListMinimumItems = 3; + +/*! @ignore */ +var ListColumnIdentifier = @"1"; + + +/*! + This class is a controller for a panel that can pop up and display a scrollable list of items in a CPTableView. + It is used by CPComboBox to display the list of choices. + + This class requires a data source which must conform to the interface of _CPPopUpListDataSource. + + Objects of this class send the following notifications: + + _CPPopUpListWillPopUpNotification + _CPPopUpListWillDismissNotification + _CPPopUpListDidDismissNotification + _CPPopUpListItemWasClickedNotification +*/ +@implementation _CPPopUpList : CPObject +{ + _CPPopUpListDataSource _dataSource; + BOOL _itemWasClicked; + BOOL _listWasClicked; + int _listWidth; + _CPPopUpPanel _panel; + CPScrollView _scrollView; + _CPPopUpTableView _tableView; + CPTableColumn _tableColumn; +} + +#pragma mark Creating and Displaying a List + +/*! + Creates a pop up list of choices that will display in a scrollable CPTableView. + + @param aDataSource A subclass of _CPPopUpListDataSource +*/ +- (id)initWithDataSource:(_CPPopUpListDataSource)aDataSource +{ + self = [super init]; + + if (self) + { + [self setDataSource:aDataSource]; + _itemWasClicked = NO; + _listWasClicked = NO; + _listWidth = 0; + + _tableView = [self makeTableView]; + + // Start with a default size, we will resize it later + frame = CGRectMake(0, 0, 200, 200); + + _tableColumn = [[CPTableColumn alloc] initWithIdentifier:ListColumnIdentifier]; + [_tableColumn setWidth:CGRectGetWidth(frame) - [CPScroller scrollerWidth]]; + [_tableColumn setResizingMask:CPTableColumnAutoresizingMask]; + [_tableView addTableColumn:_tableColumn]; + + _scrollView = [self makeScrollViewWithFrame:CGRectMake(0, 0, CGRectGetWidth(frame), CGRectGetHeight(frame))]; + [_scrollView setDocumentView:_tableView]; + + // This has to be done after setDocumentView so that the table knows which scroll view to update + [_tableView setHeaderView:nil]; + + _panel = [self makeListPanelWithFrame:frame]; + [[_panel contentView] addSubview:_scrollView]; + [_panel setInitialFirstResponder:_tableView]; + + if ([_dataSource numberOfItemsInList:self] > 0) + [_tableView selectRowIndexes:[CPIndexSet indexSetWithIndex:0] byExtendingSelection:NO]; + else + [_tableView setEnabled:NO]; + + [_scrollView scrollToBeginningOfDocument:nil]; + } + + return self; +} + +/*! @ignore */ +- (CPPanel)makeListPanelWithFrame:(CGRect)aFrame +{ + var panel = [[_CPPopUpPanel alloc] initWithContentRect:aFrame styleMask:CPBorderlessWindowMask]; + + [panel setTitle:@""]; + [panel setFloatingPanel:YES]; + [panel setBecomesKeyOnlyIfNeeded:YES]; + [panel setLevel:CPPopUpMenuWindowLevel]; + [panel setHasShadow:YES]; + [panel setShadowStyle:CPMenuWindowShadowStyle]; + [panel setDelegate:self]; + + return panel; +} + +/*! @ignore */ +- (_CPPopUpTableView)makeTableView +{ + [self removeTableViewObservers]; + + var table = [[_CPPopUpTableView alloc] initWithFrame:CGRectMakeZero()]; + + [table setDelegate:self]; + [table setDataSource:self]; + [table setColumnAutoresizingStyle:CPTableViewLastColumnOnlyAutoresizingStyle]; + [table setUsesAlternatingRowBackgroundColors:NO]; + [table setAllowsMultipleSelection:NO]; + [table setIntercellSpacing:CGSizeMake(3, 2)]; + [table setTarget:self]; + [table setDoubleAction:@selector(tableViewClickAction:)]; + [table setAction:@selector(tableViewClickAction:)]; + [table setRowHeight:[self rowHeightForTableView:table]]; + + return table; +} + +/*! @ignore */ +- (void)removeTableViewObservers +{ + if (_tableView) + { + var defaultCenter = [CPNotificationCenter defaultCenter]; + + [defaultCenter removeObserver:self name:CPTableViewSelectionIsChangingNotification object:_tableView]; + [defaultCenter removeObserver:self name:CPTableViewSelectionDidChangeNotification object:_tableView]; + } +} + +/*! @ignore */ +- (CPScrollView)makeScrollViewWithFrame:(CGRect)aFrame +{ + var scroll = [[CPScrollView alloc] initWithFrame:aFrame]; + + [scroll setBorderType:CPLineBorder]; + [scroll setAutohidesScrollers:NO]; + [scroll setHasVerticalScroller:YES]; + [scroll setHasHorizontalScroller:NO]; + [scroll setLineScroll:[_tableView rowHeight]]; + [scroll setVerticalPageScroll:0.0]; + + return scroll; +} + +/*! + Pop up the list if it is not already visible. + If it is not visible, a _CPPopUpListWillPopUpNotification will be sent. + + @param aRect A rect (in \c aView coordinates) to display relative to + @param aView The view whose coordinate system \c aRect is in + @param offset How far to offset the list from \c aRect +*/ +- (void)popUpRelativeToRect:(CGRect)aRect view:(CPView)aView offset:(int)offset +{ + if ([_panel isVisible]) + return; + + var rowRect = [_tableView rectOfRow:[self numberOfRowsInTableView:_tableView] - 1], + frame = CGRectMake(0, 0, MAX(_listWidth, CGRectGetWidth(aRect)), CGRectGetMaxY(rowRect)); + + // Place the frame relative to aRect and constrain it to the screen bounds + frame = [self constrain:frame relativeToRect:aRect view:aView offset:offset]; + + [_panel setFrame:frame]; + [_scrollView setFrameSize:CGSizeMakeCopy(frame.size)]; + [_tableView setEnabled:[_dataSource numberOfItemsInList:self] > 0]; + [self scrollItemAtIndexToTop:[_tableView selectedRow]]; + + [self listWillPopUp]; + + [_panel orderFront:nil]; +} + +#pragma mark Setting Display Attributes + +/*! + Returns the desired width of the list. +*/ +- (int)listWidth +{ + return _listWidth; +} + +/*! + Sets the desired width of the list for the next call to \ref showListForfield:relativeTo:. + Note that the actual display width may be larger if the given width is less than the width of the associated + field. +*/ +- (void)setListWidth:(int)width +{ + _listWidth = width; +} + +- (void)setFont:(CPFont)aFont +{ + var oldDataView = [_tableColumn dataView], + newDataView = [CPTextField new]; + + [newDataView setFont:aFont]; + [newDataView setAlignment:[oldDataView alignment]]; + [_tableColumn setDataView:newDataView]; + + // Force the data view cache to flush + [_tableView reloadData]; +} + +- (void)setAlignment:(CPTextAlignment)alignment +{ + var oldDataView = [_tableColumn dataView], + newDataView = [CPTextField new]; + + [newDataView setAlignment:alignment]; + [newDataView setFont:[oldDataView font]]; + [_tableColumn setDataView:newDataView]; + + // Force the data view cache to flush + [_tableView reloadData]; +} + +/*! + Returns whether the list is currently visible. +*/ +- (BOOL)isVisible +{ + return [_panel isVisible]; +} + +/*! + Returns the desired row height for the table view. + Subclasses should override this if they want something other than the default. +*/ +- (int)rowHeightForTableView:(CPTableView)aTableView +{ + return [aTableView rowHeight]; +} + +/*! + Returns the table view used by the list. +*/ +- (CPTableView)tableView +{ + return _tableView; +} + +/*! + Returns the single table column used by the list. +*/ +- (CPTableColumn)tableColumn +{ + return _tableColumn; +} + +/*! + Returns the scroll view used by the list. +*/ +- (CPScrollView)scrollView +{ + return _scrollView; +} + +/*! + Returns the panel in which the list appears. +*/ +- (CPPanel)panel +{ + return _panel; +} + +#pragma mark Setting a Data Source + +- (void)setDataSource:(_CPPopUpListDataSource)aDataSource +{ + if (_dataSource === aDataSource) + return; + + if (![_CPPopUpListDataSource protocolIsImplementedByObject:aDataSource]) + { + CPLog.warn("Illegal %s data source (%s). Must implement the methods in _CPPopUpListDataSource.", [self className], [aDataSource description]); + } + else + _dataSource = aDataSource; +} + +- (_CPPopUpListDataSource)dataSource +{ + return _dataSource; +} + +#pragma mark Manipulating the Selection + +/*! + Select the next item in the list if there one. If there is currently no selected item, + the first item is selected. Returns YES if the selection changed. +*/ +- (BOOL)selectNextItem +{ + if (![_tableView isEnabled]) + return NO; + + var row = [_tableView selectedRow]; + + if (row < ([_dataSource numberOfItemsInList:self] - 1)) + return [self selectRow:++row]; + else + return NO; +} + +/*! + Select the previous item in the list. If there is currently no selected item, + nothing happens. Returns YES if the selection changed. +*/ +- (BOOL)selectPreviousItem +{ + if (![_tableView isEnabled]) + return NO; + + var row = [_tableView selectedRow]; + + if (row > 0) + return [self selectRow:--row]; + else + return NO; +} + +/*! + Returns the selected object value. If no value is selected, + returns nil. +*/ +- (id)selectedObjectValue +{ + var row = [_tableView selectedRow]; + + return (row >= 0) ? [_dataSource list:self objectValueForItemAtIndex:row] : nil; +} + +/*! + Returns the selected value as a single-line string. If no value is selected, + returns nil. +*/ +- (CPString)selectedStringValue +{ + var value = [self selectedObjectValue]; + + return value !== nil ? [_dataSource list:self stringValueForObjectValue:value] : nil; +} + +/*! + Returns the last selected row in the list. If no row has been selected, returns -1. +*/ +- (int)selectedRow +{ + return [_tableView selectedRow]; +} + +/*! + Selects a row and scrolls it to be visible. Returns YES if the selection actually changed. +*/ +- (BOOL)selectRow:(int)row +{ + if (row === [_tableView selectedRow]) + return NO; + + var validRow = (row >= 0 && row < [self numberOfRowsInTableView:_tableView]), + indexes = validRow ? [CPIndexSet indexSetWithIndex:row] : [CPIndexSet indexSet]; + + [_tableView selectRowIndexes:indexes byExtendingSelection:NO]; + + if (validRow) + { + [_tableView scrollRowToVisible:row]; + return YES; + } + else + return NO; +} + +#pragma mark Manipulating the Displayed List + +/*! + Scroll the list down one page. +*/ +- (void)scrollPageDown +{ + [_scrollView scrollPageDown:nil]; +} + +/*! + Scroll the list up one page. +*/ +- (void)scrollPageUp +{ + [_scrollView scrollPageUp:nil]; +} + +/*! + Scroll to the top of the list. +*/ +- (void)scrollToTop +{ + [_scrollView scrollToBeginningOfDocument:nil]; +} + +/*! + Scroll to the bottom of the list. +*/ +- (void)scrollToBottom +{ + [_scrollView scrollToEndOfDocument:nil]; +} + +- (void)scrollItemAtIndexToTop:(int)row +{ + var rect = [_tableView rectOfRow:row]; + + [[_tableView superview] scrollToPoint:rect.origin]; +} + +/*! + Close the list if it is currently visible. If it is visible, + a CPComboBoxWillDismissNotification will be sent. If the + list is being closed after an item was clicked, the close + is delayed slightly so the user can briefly see the clicked row + get highlighted. +*/ +- (void)close +{ + if (![_panel isVisible]) + return; + + if ([self listWasClicked]) + { + [self setListWasClicked:NO]; + + // Wait until we get through the run loop and delay a little + // so the user can briefly see the clicked row get highlighted. + if ([self itemWasClicked]) + { + [self setItemWasClicked:NO]; + [CPTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(closeListAfterItemClick) userInfo:nil repeats:NO]; + return; + } + } + + [[CPNotificationCenter defaultCenter] postNotificationName:_CPPopUpListWillDismissNotification object:self]; + [_panel close]; + [[CPNotificationCenter defaultCenter] postNotificationName:_CPPopUpListDidDismissNotification object:self]; +} + +/*! + Close the list after an item was clicked. +*/ +- (void)closeListAfterItemClick +{ + [self close]; + [[CPNotificationCenter defaultCenter] postNotificationName:_CPPopUpListItemWasClickedNotification object:self]; +} + +#pragma mark Handling Events + +/*! + Handles standard key equivalents for moving the selection + and selecting an item. This method should be called by + the -performKeyEquivalent method of the field that is + controlling the list. +*/ +- (BOOL)performKeyEquivalent:(CPEvent)anEvent +{ + var key = [anEvent charactersIgnoringModifiers]; + + switch (key) + { + case CPDownArrowFunctionKey: + if ([self isVisible]) + { + [self selectNextItem]; + return YES; + } + break; + + case CPUpArrowFunctionKey: + if ([self isVisible]) + { + [self selectPreviousItem]; + return YES; + } + break; + + case CPEscapeFunctionKey: + if ([self isVisible]) + { + [self close]; + return YES; + } + break; + + case CPPageUpFunctionKey: + if ([self isVisible]) + { + [self scrollPageUp]; + return YES; + } + break; + + case CPPageDownFunctionKey: + if ([self isVisible]) + { + [self scrollPageDown]; + return YES; + } + break; + + case CPHomeFunctionKey: + if ([self isVisible]) + { + [self scrollToTop]; + return YES; + } + break; + + case CPEndFunctionKey: + if ([self isVisible]) + { + [self scrollToBottom]; + return YES; + } + break; + + case CPCarriageReturnCharacter: + if ([self isVisible]) + { +                [self closeListAfterItemClick]; + return YES; + } + break; + } + + return NO; +} + +/*! + Returns whether an item in the list was clicked since it was opened. + If there are no items, \ref itemWasClicked will always return NO. +*/ +- (BOOL)itemWasClicked +{ + return _itemWasClicked && ([_dataSource numberOfItemsInList:self] > 0); +} + +/*! + Sets whether an item in the list was clicked since it was opened. + If there are no items, \ref itemWasClicked will always return NO. + + Subclasses will usually want to set this in the mouseDown: + of the control. +*/ +- (void)setItemWasClicked:(BOOL)flag +{ + _itemWasClicked = ([_dataSource numberOfItemsInList:self] > 0) && flag; +} + +/*! + Returns whether any view in the list was clicked since it was opened. + If there are no items, \ref listWasClicked will always return NO. +*/ +- (BOOL)listWasClicked +{ + return _listWasClicked && ([_dataSource numberOfItemsInList:self] > 0); +} + +/*! + Sets whether any view in the list was clicked since it was opened. + If there are no items, \ref listWasClicked will always return NO. + + Subclasses will usually want to use a subclass of CPPanel and override + sendEvent: to set this flag when the event type is CPLeftMouseDown + or CPRightMouseDown. This is distinct from \ref itemWasClicked because, + for example, a scroller in the list may be clicked without clicking an + item in the list. +*/ +- (void)setListWasClicked:(BOOL)flag +{ + _listWasClicked = ([_dataSource numberOfItemsInList:self] > 0) && flag; +} + +/*! + Returns whether a controlling view should resign. This should be called + from the controlling view's resignFirstResponder method. +*/ +- (BOOL)controllingViewShouldResign +{ + if ([self listWasClicked]) + { + /* + If an item was not clicked (probably the scrollbar), clear the click flag so that future + clicks outside the list will allow it to close. + */ + if ([self listWasClicked] && ![self itemWasClicked]) + [self setListWasClicked:NO]; + + return NO; + } + else + return YES; +} +#pragma mark Internal Helpers + +/*! @ignore */ +- (void)listWillPopUp +{ + [[CPNotificationCenter defaultCenter] postNotificationName:_CPPopUpListWillPopUpNotification object:self]; +} + +/*! + Return a frame in platform window base coordinates such that the list, when displayed, will show at least ListMinimumItems + items completely on screen. Normally the list should be displayed below \c aRect, but if there is not room + for at least ListMinimumItems items, an attempt should be made to display that many + items above \c aRect. If the minimum cannot be displayed on top, whichever direction can display more items + is chosen. + @ignore +*/ +- (CGRect)constrain:(CGRect)aFrame relativeToRect:(CGRect)aRect view:(CPView)aView offset:(int)offset +{ + // Convert from the view's coordinate system to the coordinate system of the primary platform window + var baseOrigin = [aView convertPointToBase:aRect.origin], + windowOrigin = [[aView window] convertBaseToPlatformWindow:baseOrigin], + rowHeight = [self rowHeightForTableView:_tableView] + [_tableView intercellSpacing].height, + + // Be sure to clip the number of displayed rows to what the field wants + numberOfRows = MIN([self numberOfRowsInTableView:_tableView], [_dataSource numberOfVisibleItemsInList:self]), + + // Add 2 to height for border + frame = CGRectMake(windowOrigin.x, windowOrigin.y + CGRectGetHeight(aRect) + offset, MAX(_listWidth, CGRectGetWidth(aFrame)), (rowHeight * numberOfRows) + 2), + + // Get the bottom coordinate of the frame and the platform window + bottomFrame = CGRectMakeCopy(frame), + bottom = CGRectGetMaxY(bottomFrame), + viewRect = [[CPPlatformWindow primaryPlatformWindow] visibleFrame], + visibleBottom = CGRectGetMaxY(viewRect), + bottomVisibleRows = numberOfRows; + + // Make sure it will fit in the screen. If not, reduce the number of items till we reach the minimum. + while (bottom > visibleBottom && bottomVisibleRows >= ListMinimumItems) + { + bottom -= rowHeight; + bottomFrame.size.height -= rowHeight; + --bottomVisibleRows; + } + + if (bottom >= visibleBottom || bottomVisibleRows < ListMinimumItems) + { + // The minimum number of items will not fit, try above + var topFrame = CGRectMakeCopy(frame); + + topFrame.origin.y = windowOrigin.y - offset - CGRectGetHeight(topFrame); + + var visibleTop = CGRectGetMinY(viewRect), + topVisibleRows = numberOfRows; + + while (topFrame.origin.y <= visibleTop && topVisibleRows >= ListMinimumItems) + { + topFrame.origin.y += rowHeight; + topFrame.size.height -= rowHeight; + --topVisibleRows; + } + + // If there is room on the top or it can display more than at the bottom, show it there + if ((topFrame.origin.y > visibleTop && topVisibleRows >= ListMinimumItems) || topVisibleRows > bottomVisibleRows) + frame = topFrame; + else + frame = bottomFrame; + } + else + frame = bottomFrame; + + return frame; +} + +- (void)tableViewClickAction:(id)sender +{ + [self close]; +} + +@end + + +var _CPPopUpListDataSourceKey = @"_CPPopUpListDataSourceKey", + _CPPopUpListListWidthKey = @"_CPPopUpListListWidthKey", + _CPPopUpListListPanelKey = @"_CPPopUpListListPanelKey", + _CPPopUpListScrollViewKey = @"_CPPopUpListScrollViewKey", + _CPPopUpListTableViewKey = @"_CPPopUpListTableViewKey"; + +@implementation _CPPopUpList (CPCoding) + +- (id)initWithCoder:(CPCoder)aCoder +{ + self = [super initWithCoder:aCoder]; + + if (self) + { + _listWasClicked = NO; + _itemWasClicked = NO; + + _dataSource = [aCoder decodeObjectForKey:_CPPopUpListDataSourceKey]; + _listWidth = [aCoder decodeIntForKey:_CPPopUpListListWidthKey]; + _panel = [aCoder decodeObjectForKey:_CPPopUpListListPanelKey]; + _scrollView = [aCoder decodeObjectForKey:_CPPopUpListScrollViewKey]; + _tableView = [aCoder decodeObjectForKey:_CPPopUpListTableViewKey]; + _tableColumn = [_tableView tableColumnWithIdentifier:ListColumnIdentifier]; + [_scrollView setDocumentView:_tableView]; + } + + return self; +} + +- (void)encodeWithCoder:(CPCoder)aCoder +{ + [super encodeWithCoder:aCoder]; + + [aCoder encodeObject:_dataSource forKey:_CPPopUpListDataSourceKey]; + [aCoder encodeObject:_listWidth forKey:_CPPopUpListListWidthKey]; + [aCoder encodeObject:_panel forKey:_CPPopUpListListPanelKey]; + [aCoder encodeObject:_scrollView forKey:_CPPopUpListScrollViewKey]; + [aCoder encodeObject:_tableView forKey:_CPPopUpListTableViewKey]; +} + +@end + +@implementation _CPPopUpList (CPTableViewDataSource) + +- (int)numberOfRowsInTableView:(id)aTableView +{ + return MAX([_dataSource numberOfItemsInList:self], 1); +} + +- (id)tableView:(id)aTableView objectValueForTableColumn:(CPTableColumn)aColumn row:(int)aRow +{ + return [_dataSource list:self displayValueForObjectValue:[_dataSource list:self objectValueForItemAtIndex:aRow]]; +} + +@end + +@implementation _CPPopUpTableView : CPTableView +{ + BOOL _acceptFirstResponder; +} + +- (id)initWithFrame:(CGRect)aFrame +{ + if (self = [super initWithFrame:aFrame]) + { + // We want the autocomplete to remain first responder until we are clicked. + _acceptFirstResponder = NO; + } + + return self; +} + +- (void)trackMouse:(CPEvent)anEvent +{ + if (![self isEnabled]) + return; + + [[self delegate] setItemWasClicked:YES]; + + // CPTableView will not track the click if it is not first responder + _acceptFirstResponder = YES; + [[self window] makeFirstResponder:self]; + [super trackMouse:anEvent]; +} + +- (void)stopTracking:(CGPoint)lastPoint at:(CGPoint)aPoint mouseIsUp:(BOOL)mouseIsUp +{ + _acceptFirstResponder = NO; + [super stopTracking:lastPoint at:aPoint mouseIsUp:mouseIsUp]; +} + +- (BOOL)acceptsFirstResponder +{ + return _acceptFirstResponder; +} + +/*! + Return the column used for the list. +*/ +- (CPTableColumn)listColumn +{ + return _tableColumn; +} + +@end + +@implementation _CPPopUpPanel : CPPanel + +- (void)sendEvent:(CPEvent)anEvent +{ + var type = [anEvent type]; + + if (type === CPLeftMouseDown || type === CPRightMouseDown) + [[self delegate] setListWasClicked:YES]; + + return [super sendEvent:anEvent]; +} + +@end diff --git a/AppKit/_CPPopUpListDataSource.j b/AppKit/_CPPopUpListDataSource.j new file mode 100644 index 000000000..cd413779d --- /dev/null +++ b/AppKit/_CPPopUpListDataSource.j @@ -0,0 +1,98 @@ +/* + * _CPPopUpListDataSource.j + * AppKit + * + * Created by Aparajita Fishman. + * Copyright (c) 2012, The Cappuccino Foundation + * + * 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 + */ + + +/*! + This abstract base class defines the methods that delegates of _CPPopUpList must implement. + You may either subclass this class to use the default implementation of + list:objectValueForItemAtIndex: and list:displayValueForObjectValue: or use your + own class and define these methods yourself. +*/ +@implementation _CPPopUpListDataSource : CPObject + +/*! + Returns whether the given object conforms to the minimum protocol defined by this class. +*/ ++ (BOOL)protocolIsImplementedByObject:(id)anObject +{ + return (anObject && + [anObject respondsToSelector:@selector(numberOfItemsInList:)] && + [anObject respondsToSelector:@selector(numberOfVisibleItemsInList:)] && + [anObject respondsToSelector:@selector(list:objectValueForItemAtIndex:)] && + [anObject respondsToSelector:@selector(list:displayValueForObjectValue:)] && + [anObject respondsToSelector:@selector(list:stringValueForObjectValue:)]); +} + +/*! + Returns the number of items managed by the list. +*/ +- (int)numberOfItemsInList:(_CPPopUpList)aList +{ + _CPRaiseInvalidAbstractInvocation(self, _cmd); +} + +/*! + Returns the number of items to display at one time. +*/ +- (int)numberOfVisibleItemsInList:(_CPPopUpList)aList +{ + _CPRaiseInvalidAbstractInvocation(self, _cmd); +} + +/*! + Returns the data for a given row index. +*/ +- (id)list:(_CPPopUpList)aList objectValueForItemAtIndex:(int)index +{ + _CPRaiseInvalidAbstractInvocation(self, _cmd); +} + +/*! + Returns a value to display for a single row in the list. Subclasses should override + this if the table data needs to be converted or formatted in some way to be displayed. + If your data source use a data representation other than CPStrings, you must override + this method and return the appropriate data when there are no search results. + + If the _CPPopUpList's table uses a custom data view, this method should return a value suitable + for sending to the setObjectValue: method of the data view. + + @param aValue Data for the given row + @return A value to be displayed in the list +*/ +- (id)list:(_CPPopUpList)aList displayValueForObjectValue:(id)aValue +{ + return aValue || @""; +} + +/*! + Returns a single-line string representation for an object value. Subclasses should override + this if the object data is not convertible to a simple single-line string. + + @param aValue Table data to be converted to a string + @return A value to be displayed in the autocomplete field +*/ +- (CPString)list:(_CPPopUpList)aList stringValueForObjectValue:(id)aValue +{ + return String(aValue); +} + +@end diff --git a/CommonJS/lib/cappuccino/image-utility.js b/CommonJS/lib/cappuccino/image-utility.js deleted file mode 100644 index fabd6fdf9..000000000 --- a/CommonJS/lib/cappuccino/image-utility.js +++ /dev/null @@ -1,140 +0,0 @@ - -var OS = require("os"); -var FILE = require("file"); -var ByteString = require("binary").ByteString; - -var javaImageSize = function (aFilePath) -{ - var imageStream = javax.imageio.ImageIO.createImageInputStream(new Packages.java.io.File(aFilePath).getCanonicalFile()), - readers = javax.imageio.ImageIO.getImageReaders(imageStream), - reader = null; - - if(readers.hasNext()) - reader = readers.next(); - - else - { - imageStream.close(); - //can't read image format... what do you want to do about it, - //throw an exception, return ? - } - - reader.setInput(imageStream, true, true); - - // Now we know the size (yay!) - var size = {width:reader.getWidth(0), height:reader.getHeight(0)}; - - reader.dispose(); - imageStream.close(); - - return size; -} - -var server = null; - -var serverImageSize = function (aFilePath) -{ - if (!server) - { - var cmd = "NARWHAL_ENGINE_HOME='' NARWHAL_ENGINE=rhino narwhal "+OS.enquote(module.path); - server = OS.popen(cmd, { charset : "UTF-8" }); - } - - var request = aFilePath.toByteString("UTF-8"); - sendLengthPrefixMessage(server.stdin.raw, request); - - var response = receiveLengthPrefixMessage(server.stdout.raw); - return JSON.parse(response.decodeToString("UTF-8")); -} - -if (system.engine == "rhino") - exports.sizeOfImageAtPath = javaImageSize; -else - exports.sizeOfImageAtPath = serverImageSize; - -// TODO: move these methods somewhere else? - -var bytesToNumberLE = function(bytes) { - var acc = 0; - for (var i = 0; i < bytes.length; i++) - acc += bytes.get(i) << (8*i); - return acc; -} - -var bytesToNumberBE = function(bytes) { - var acc = 0; - for (var i = 0; i < bytes.length; i++) - acc = (acc << 8) + bytes.get(i); - return acc; -} - -var numberToBytesLE = function(number, length) { - var bytes = []; - for (var i = 0; i < length; i++) - bytes[i] = (number >> (8*i)) & 0xFF; - return new ByteString(bytes); -} - -var numberToBytesBE = function(number, length) { - var bytes = []; - for (var i = 0; i < length; i++) - bytes[length-i-1] = (number >> (8*i)) & 0xFF; - return new ByteString(bytes); -} - -var lengthPrefixServer = function(stream, callback, prefixLength) { - var bytes; - do { - bytes = receiveLengthPrefixMessage(stream, prefixLength); - callback(bytes); - } while (bytes); -} - -var receiveLengthPrefixMessage = function(stream, prefixLength) { - var prefixBytes = stream.read(prefixLength || 4); - var length = bytesToNumberBE(prefixBytes); - var bytes = stream.read(length); - return bytes; -} - -var sendLengthPrefixMessage = function(stream, bytes, prefixLength) { - var lengthBytes = numberToBytesBE(bytes.length, prefixLength || 4); - stream.write(lengthBytes).write(bytes).flush(); -} - -if (module == require.main) -{ - var bytes; - while (bytes = receiveLengthPrefixMessage(require("system").stdin.raw)) - { - var fileName = bytes.decodeToString("UTF-8"); - var size = javaImageSize(fileName); - - sendLengthPrefixMessage(require("system").stdout.raw, JSON.stringify(size).toByteString("UTF-8")); - } -} - -/* - //ASYNCHRONOUS, so not useful to us - -function jscImageSize(aFilePath) -{ - var MIME_TYPES = { - ".png" : "image/png", - ".jpg" : "image/jpeg", - ".jpeg" : "image/jpeg", - ".gif" : "image/gif", - ".tif" : "image/tiff", - ".tiff" : "image/tiff" - }, - FILE = require("file"); - - var image = new Image(); - - image.src = "data:" + MIME_TYPES[FILE.extension(aFilePath)] + ";base64," + require("base64").encode(FILE.read(aFilePath, { mode : 'b'})); - - return CGSizeMake(image.width, image.height); -} - -*/ - diff --git a/CommonJS/lib/cappuccino/imagesize.j b/CommonJS/lib/cappuccino/imagesize.j new file mode 100644 index 000000000..c6e534bfa --- /dev/null +++ b/CommonJS/lib/cappuccino/imagesize.j @@ -0,0 +1,12 @@ + +var OS = require("os"); + +exports.imagesize = function(path) +{ + var p = OS.popen(["imagesize", "-n", path]); + + if (p.wait() === 0) + return JSON.parse(p.stdout.read()); + else + return null; +}; diff --git a/Foundation/CPArray/CPArray.j b/Foundation/CPArray/CPArray.j index 72af3a0a4..7507a21d6 100755 --- a/Foundation/CPArray/CPArray.j +++ b/Foundation/CPArray/CPArray.j @@ -351,7 +351,7 @@ var concat = Array.prototype.concat, or nil to stop the search, which will return \c CPNotFound to the sender. @return The index of the first matching object, or \c CPNotFound if there is no matching object. */ -- (unsigned)indexOfObjectPassingTest:(Function)aPredicate +- (unsigned)indexOfObjectPassingTest:(Function /*(id anObject, int idx)*/)aPredicate { return [self indexOfObjectWithOptions:CPEnumerationNormal passingTest:aPredicate context:undefined]; } @@ -365,7 +365,7 @@ var concat = Array.prototype.concat, @param context An object that contains context information you want passed to the predicate function. @return The index of the first matching object, or \c CPNotFound if there is no matching object. */ -- (unsigned)indexOfObjectPassingTest:(Function)aPredicate context:(id)aContext +- (unsigned)indexOfObjectPassingTest:(Function /*(id anObject, int idx, id context)*/)aPredicate context:(id)aContext { return [self indexOfObjectWithOptions:CPEnumerationNormal passingTest:aPredicate context:aContext]; } @@ -380,7 +380,7 @@ var concat = Array.prototype.concat, or nil to stop the search, which will return CPNotFound to the sender. @return The index of the first matching object, or \c CPNotFound if there is no matching object. */ -- (unsigned)indexOfObjectWithOptions:(CPEnumerationOptions)options passingTest:(Function)aPredicate +- (unsigned)indexOfObjectWithOptions:(CPEnumerationOptions)options passingTest:(Function /*(id anObject, int idx)*/)aPredicate { return [self indexOfObjectWithOptions:options passingTest:aPredicate context:undefined]; } @@ -396,7 +396,7 @@ var concat = Array.prototype.concat, @param context An object that contains context information you want passed to the predicate function. @return The index of the first matching object, or \c CPNotFound if there is no matching object. */ -- (unsigned)indexOfObjectWithOptions:(CPEnumerationOptions)options passingTest:(Function)aPredicate context:(id)aContext +- (unsigned)indexOfObjectWithOptions:(CPEnumerationOptions)options passingTest:(Function /*(id anObject, int idx, id context)*/)aPredicate context:(id)aContext { // We don't use an enumerator because they return nil to indicate end of enumeration, // but nil may actually be the value we are looking for, so we have to loop over the array. @@ -483,6 +483,85 @@ var concat = Array.prototype.concat, return CPNotFound; } +/*! + Returns the indexes of the objects in the receiver that pass a test in a given Javascript function. + @param predicate The function to apply to objects of the array. The function should have the signature: + @code function(object, index) @endcode + The predicate function should either return a Boolean value that indicates whether the object passed the test, + or nil to stop the search, which will return \c CPNotFound to the sender. + @return A CPIndexSet of the matching object indexes. +*/ +- (CPIndexSet)indexesOfObjectsPassingTest:(Function /*(id anObject, int idx)*/)aPredicate +{ + return [self indexesOfObjectsWithOptions:CPEnumerationNormal passingTest:aPredicate context:undefined]; +} + +/*! + Returns the indexes of the objects in the receiver that pass a test in a given Javascript function. + @param predicate The function to apply to objects of the array. The function should have the signature: + @code function(object, index, context) @endcode + The predicate function should either return a Boolean value that indicates whether the object passed the test, + or nil to stop the search, which will return \c CPNotFound to the sender. + @param context An object that contains context information you want passed to the predicate function. + @return A CPIndexSet of the matching object indexes. +*/ +- (CPIndexSet)indexesOfObjectsPassingTest:(Function /*(id anObject, int idx, id context)*/)aPredicate context:(id)aContext +{ + return [self indexesOfObjectsWithOptions:CPEnumerationNormal passingTest:aPredicate context:aContext]; +} + +/*! + Returns the indexes of the objects in the receiver that pass a test in a given Javascript function. + @param options Specifies the direction in which the array is searched. Pass CPEnumerationNormal to search forwards + or CPEnumerationReverse to search in reverse. + @param predicate The function to apply to objects of the array. The function should have the signature: + @code function(object, index) @endcode + The predicate function should either return a Boolean value that indicates whether the object passed the test, + or nil to stop the search, which will return CPNotFound to the sender. + @return A CPIndexSet of the matching object indexes. +*/ +- (CPIndexSet)indexesOfObjectsWithOptions:(CPEnumerationOptions)options passingTest:(Function /*(id anObject, int idx)*/)aPredicate +{ + return [self indexesOfObjectsWithOptions:options passingTest:aPredicate context:undefined]; +} + +/*! + Returns the indexes of the objects in the receiver that pass a test in a given Javascript function. + @param options Specifies the direction in which the array is searched. Pass CPEnumerationNormal to search forwards + or CPEnumerationReverse to search in reverse. + @param predicate The function to apply to objects of the array. The function should have the signature: + @code function(object, index, context) @endcode + The predicate function should either return a Boolean value that indicates whether the object passed the test, + or nil to stop the search, which will return CPNotFound to the sender. + @param context An object that contains context information you want passed to the predicate function. + @return A CPIndexSet of the matching object indexes. +*/ +- (CPIndexSet)indexesOfObjectsWithOptions:(CPEnumerationOptions)options passingTest:(Function /*(id anObject, int idx, id context)*/)aPredicate context:(id)aContext +{ + // We don't use an enumerator because they return nil to indicate end of enumeration, + // but nil may actually be the value we are looking for, so we have to loop over the array. + if (options & CPEnumerationReverse) + { + var index = [self count] - 1, + stop = -1, + increment = -1; + } + else + { + var index = 0, + stop = [self count], + increment = 1; + } + + var indexes = [CPIndexSet indexSet]; + + for (; index !== stop; index += increment) + if (aPredicate([self objectAtIndex:index], index, aContext)) + [indexes addIndex:index]; + + return indexes; +} + // Sending messages to elements /*! Sends each element in the array a message. diff --git a/Foundation/CPArray/CPMutableArray.j b/Foundation/CPArray/CPMutableArray.j index 308390429..629bb9382 100644 --- a/Foundation/CPArray/CPMutableArray.j +++ b/Foundation/CPArray/CPMutableArray.j @@ -485,7 +485,7 @@ var sortArrayUsingJSDescriptors = function(a, d) do { key = d[cn].k; - C1[key] = [A valueForKey:key]; + C1[key] = [A valueForKeyPath:key]; } while (cn--) c[aUID] = C1; @@ -506,7 +506,7 @@ var sortArrayUsingJSDescriptors = function(a, d) do { key = d[cn].k; - C2[key] = [B[i] valueForKey:key]; + C2[key] = [B[i] valueForKeyPath:key]; } while (cn--) c[bUID] = C2; diff --git a/Foundation/CPDictionary.j b/Foundation/CPDictionary.j index 17e3d14bb..1f3257cf5 100755 --- a/Foundation/CPDictionary.j +++ b/Foundation/CPDictionary.j @@ -25,6 +25,7 @@ @import "CPException.j" @import "CPNull.j" @import "CPObject.j" +#import "Ref.h" /* @ignore */ @implementation _CPDictionaryValueEnumerator : CPEnumerator @@ -359,30 +360,86 @@ var count = _keys.length, index = 0, matchingKeys = [], - thisKey = nil, - thisValue = nil; + key = nil, + value = nil; for (; index < count; ++index) { - thisKey = _keys[index]; - thisValue = _buckets[thisKey]; - if (thisValue.isa && anObject && anObject.isa && [thisValue respondsToSelector:@selector(isEqual:)] && [thisValue isEqual:anObject]) - matchingKeys.push(thisKey); - else if (thisValue === anObject) - matchingKeys.push(thisKey); + key = _keys[index]; + value = _buckets[key]; + + if (value.isa && anObject && anObject.isa && [value respondsToSelector:@selector(isEqual:)] && [value isEqual:anObject]) + matchingKeys.push(key); + else if (value === anObject) + matchingKeys.push(key); } return matchingKeys; } +- (CPArray)keysOfEntriesPassingTest:(Function /*(id key, id obj, @ref BOOL stop)*/)predicate +{ + return [self keysOfEntriesWithOptions:CPEnumerationNormal passingTest:predicate]; +} + +- (CPArray)keysOfEntriesWithOptions:(CPEnumerationOptions)options passingTest:(Function /*(id key, id obj, @ref BOOL stop)*/)predicate +{ + if (options & CPEnumerationReverse) + { + var index = [_keys count] - 1, + stop = -1, + increment = -1; + } + else + { + var index = 0, + stop = [_keys count], + increment = 1; + } + + var matchingKeys = [], + key = nil, + value = nil, + shouldStop = NO, + stopRef = AT_REF(shouldStop); + + for (; index !== stop; index += increment) + { + key = _keys[index]; + value = _buckets[key]; + + if (predicate(key, value, stopRef)) + matchingKeys.push(key); + + if (shouldStop) + break; + } + + return matchingKeys; +} + +- (CPArray)keysSortedByValueUsingComparator:(Function /*(id obj1, id obj2)*/)comparator +{ + return [[self allKeys] sortedArrayUsingFunction:function(a, b) + { + a = [self objectForKey:a]; + b = [self objectForKey:b]; + + return comparator(a, b); + } + ]; +} + - (CPArray)keysSortedByValueUsingSelector:(SEL)theSelector { - return [[self allKeys] sortedArrayUsingFunction:function(a, b) { - a = [self objectForKey:a]; - b = [self objectForKey:b]; + return [[self allKeys] sortedArrayUsingFunction:function(a, b) + { + a = [self objectForKey:a]; + b = [self objectForKey:b]; - return [a performSelector:theSelector withObject:b]; - }]; + return [a performSelector:theSelector withObject:b]; + } + ]; } /*! @@ -597,6 +654,32 @@ var value = [self objectForKey:aKey]; return ((value !== nil) && (value !== undefined)); } + +- (void)enumerateKeysAndObjectsUsingBlock:(Function /*(id aKey, id anObject, @ref BOOL stop)*/)aFunction +{ + var shouldStop = NO, + shouldStopRef = AT_REF(shouldStop); + + for (var index = 0; index < _count; index++) + { + var key = _keys[index], + value = valueForKey(key); + + aFunction(key, value, shouldStopRef); + + if (shouldStop) + return; + } +} + +- (void)enumerateKeysAndObjectsWithOptions:(CPEnumerationOptions)opts usingBlock:(Function /*(id aKey, id anObject, @ref BOOL stop)*/)aFunction +{ + // Ignore the options because neither option has an effect. + // CPEnumerationReverse has no effect on enumerating a CPDictionary because dictionary enumeration is not ordered. + // CPEnumerationConcurrent is not possible in a single threaded environment. + [self enumerateKeysAndObjectsUsingBlock:aFunction]; +} + @end @implementation CPDictionary (CPCoding) diff --git a/AppKit/CPGeometry.j b/Foundation/CPGeometry.j similarity index 59% rename from AppKit/CPGeometry.j rename to Foundation/CPGeometry.j index 7e7fa2079..ba3c249f4 100644 --- a/AppKit/CPGeometry.j +++ b/Foundation/CPGeometry.j @@ -1,6 +1,6 @@ /* * CPGeometry.j - * AppKit + * Foundation * * Created by Francisco Tolmasky. * Copyright 2008, 280 North, Inc. @@ -20,102 +20,30 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -@import "CGGeometry.j" - - +@import "_CGGeometry.j" +        CPMinXEdge = 0; CPMinYEdge = 1; CPMaxXEdge = 2; CPMaxYEdge = 3; -// FIXME: the rest! +/*! + Makes a CGPoint object out of two numbers provided as arguments + @group CGPoint + @param x the x-coordinate of the CGPoint + @param y the y-coordinate of the CGPoint + @return CGPoint a CGPoint with an X and Y coordinate equal to the function arguments +*/ CPMakePoint = CGPointMake; + +/*! + Creates and returns a new CGSize object from the provided dimensions. + @group CGSize + @param width the width for the new CGSize + @param height the height for the new CGSize + @return CGSize the new CGSize +*/ CPMakeSize = CGSizeMake; -CPMakeRect = CGRectMake; - -/*! - @addtogroup appkit - @{ -*/ - -/*! - Creates a copy of a specified point and returns the copy - @group CGPoint - @param the point to be copied - @return CGPoint the copy of the provided CGPoint - */ -function CPPointCreateCopy(aPoint) -{ - return { x: aPoint.x, y: aPoint.y }; -} - -/*! - Makes a CGPoint object out of two numbers provided as arguments - @group CGPoint - @param x the x-coordinate of the CGPoint - @param y the y-coordinate of the CGPoint - @return CGPoint a CGPoint with an X and Y coordinate equal to the function arguments - */ -function CPPointMake(x, y) -{ - return { x: x, y: y }; -} - -/*! - Makes a CGRect with an origin and size equal to \c aRect less the \c dX/dY insets specified. - @param dX the size of the inset in the x-axis - @param dY the size of the inset in the y-axis - @group CGRect - @return CGRect a rectangle like \c aRect with an inset -*/ -function CPRectInset(aRect, dX, dY) -{ - return CPRectMake( aRect.origin.x + dX, aRect.origin.y + dY, - aRect.size.width - 2 * dX, aRect.size.height - 2 * dY); -} - -/*! - @group CGRect - @ignore - @return void - @deprecated -*/ -function CPRectIntegral(aRect) -{ - // FIXME!!! - alert("CPRectIntegral unimplemented"); -} - -/*! - Returns the intersection of the two provided rectangles as a new rectangle - @group CGRect - @param lhsRect the first rectangle used for calculation - @param rhsRect the second rectangle used for calculation - @return CGRect the intersection of the two rectangles -*/ -function CPRectIntersection(lhsRect, rhsRect) -{ - var intersection = CPRectMake( - MAX(CPRectGetMinX(lhsRect), CPRectGetMinX(rhsRect)), - MAX(CPRectGetMinY(lhsRect), CPRectGetMinY(rhsRect)), - 0, 0); - - intersection.size.width = MIN(CPRectGetMaxX(lhsRect), CPRectGetMaxX(rhsRect)) - CPRectGetMinX(intersection); - intersection.size.height = MIN(CPRectGetMaxY(lhsRect), CPRectGetMaxY(rhsRect)) - CPRectGetMinY(intersection); - - return CPRectIsEmpty(intersection) ? CPRectMakeZero() : intersection; -} - -/*! - Creates a copy of the provided rectangle - @group CGRect - @param aRect the CGRect that will be copied - @return CGRect the rectangle copy -*/ -function CPRectCreateCopy(aRect) -{ - return { origin: CPPointCreateCopy(aRect.origin), size: CPSizeCreateCopy(aRect.size) }; -} /*! Returns a CGRect made of the specified arguments @@ -126,118 +54,15 @@ function CPRectCreateCopy(aRect) @param height the height of the new rectangle @return CGRect the new rectangle */ -function CPRectMake(x, y, width, height) -{ - return { origin: CPPointMake(x, y), size: CPSizeMake(width, height) }; -} +CPMakeRect = CGRectMake; /*! - Creates a new rectangle with its origin offset by \c dX and \c dY. - @group CGRect - @param aRect the rectangle to copy the origin and size from - @param dX the amount added to the x-size of the new rectangle - @param dY the amount added to the y-size of the new rectangle - @return CGRect the new rectangle with modified size + Creates a copy of a specified point and returns the copy + @group CGPoint + @param the point to be copied + @return CGPoint the copy of the provided CGPoint */ -function CPRectOffset(aRect, dX, dY) -{ - return CPRectMake(aRect.origin.x + dX, aRect.origin.y + dY, aRect.size.width, aRect.size.height); -} - -/*! - @group CGRect - @param aRect a CGRect - @return CGRect -*/ -function CPRectStandardize(aRect) -{ - var width = CPRectGetWidth(aRect), - height = CPRectGetHeight(aRect), - standardized = CPRectCreateCopy(aRect); - - if (width < 0.0) - { - standardized.origin.x += width; - standardized.size.width = -width; - } - - if (height < 0.0) - { - standardized.origin.y += height; - standardized.size.height = -height; - } - - return standardized; -} - -/*! - Returns the smallest rectangle that can contain the two argument \c CGRects. - @group CGRect - @param lhsRect the first CGRect to use for the union calculation - @param rhsRect the second CGRect to use for the union calculation - @return CGRect the union rectangle -*/ -function CPRectUnion(lhsRect, rhsRect) -{ - var minX = MIN(CPRectGetMinX(lhsRect), CPRectGetMinX(rhsRect)), - minY = MIN(CPRectGetMinY(lhsRect), CPRectGetMinY(rhsRect)), - maxX = MAX(CPRectGetMaxX(lhsRect), CPRectGetMaxX(rhsRect)), - maxY = MAX(CPRectGetMaxY(lhsRect), CPRectGetMaxY(rhsRect)); - - return CPRectMake(minX, minY, maxX - minX, maxY - minY); -} - -/*! - Creates and returns a copy of the provided CGSize - @group CGSize - @param aSize the CGSize to copy - @return CGSize the copy of the CGSize -*/ -function CPSizeCreateCopy(aSize) -{ - return { width: aSize.width, height: aSize.height }; -} - -/*! - Creates and returns a new CGSize object from the provided dimensions. - @group CGSize - @param width the width for the new CGSize - @param height the height for the new CGSize - @return CGSize the new CGSize -*/ -function CPSizeMake(width, height) -{ - return { width: width, height: height }; -} - -/*! - Returns \c YES if the CGRect, \c aRect, contains - the CGPoint, \c aPoint. - @param aRect the rectangle to test with - @param aPoint the point to test with - @group CGRect - @return BOOL \c YES if the rectangle contains the point, \c NO otherwise. -*/ -function CPRectContainsPoint(aRect, aPoint) -{ - return aPoint.x >= CPRectGetMinX(aRect) && - aPoint.y >= CPRectGetMinY(aRect) && - aPoint.x < CPRectGetMaxX(aRect) && - aPoint.y < CPRectGetMaxY(aRect); -} - -/*! - Returns a \c BOOL indicating whether CGRect \c possibleOuter - contains CGRect \c possibleInner. - @group CGRect - @param possibleOuter the CGRect to test if \c possibleInner is inside of - @param possibleInner the CGRect to test if it fits inside \c possibleOuter. - @return BOOL \c YES if \c possibleInner fits inside \c possibleOuter. -*/ -function CPRectContainsRect(possibleOuter, possibleInner) -{ - return CGRectContainsRect(possibleOuter, possibleInner); -} +CPPointCreateCopy = CGPointMakeCopy; /*! Tests whether the two CGPoints are equal to each other by comparing their @@ -247,10 +72,7 @@ function CPRectContainsRect(possibleOuter, possibleInner) @param rhsPoint the second CGPoint to check @return BOOL \c YES if the two points have the same x's, and the same y's. */ -function CPPointEqualToPoint(lhsPoint, rhsPoint) -{ - return lhsPoint.x == rhsPoint.x && lhsPoint.y == rhsPoint.y; -} +CPPointEqualToPoint = CGPointEqualToPoint; /*! Test whether the two CGRects have the same origin and size @@ -259,103 +81,7 @@ function CPPointEqualToPoint(lhsPoint, rhsPoint) @param rhsRect the second CGRect to compare @return BOOL \c YES if the two rectangles have the same origin and size. \c NO, otherwise. */ -function CPRectEqualToRect(lhsRect, rhsRect) -{ - return CPPointEqualToPoint(lhsRect.origin, rhsRect.origin) && - CPSizeEqualToSize(lhsRect.size, rhsRect.size); -} - -/*! - @group CGRect - @param aRect a CGRect - @return int -*/ -function CPRectGetHeight(aRect) -{ - return aRect.size.height; -} - -/*! - @group CGRect - @param aRect a CGRect - @return int -*/ -function CPRectGetMaxX(aRect) -{ - return aRect.origin.x + aRect.size.width; -} - -/*! - @group CGRect - @param aRect a CGRect - @return int -*/ -function CPRectGetMaxY(aRect) -{ - return aRect.origin.y + aRect.size.height; -} - -/*! - @group CGRect - @param aRect a CGRect - @return float -*/ -function CPRectGetMidX(aRect) -{ - return aRect.origin.x + (aRect.size.width) / 2.0; -} - -/*! - @group CGRect - @param aRect a CGRect - @return float -*/ -function CPRectGetMidY(aRect) -{ - return aRect.origin.y + (aRect.size.height) / 2.0; -} - -/*! - @group CGRect - @param aRect a CGRect - @return int -*/ -function CPRectGetMinX(aRect) -{ - return aRect.origin.x; -} - -/*! - @group CGRect - @param aRect a CGRect - @return int -*/ -function CPRectGetMinY(aRect) -{ - return aRect.origin.y; -} - -/*! - @group CGRect - @param aRect a CGRect - @return int -*/ -function CPRectGetWidth(aRect) -{ - return aRect.size.width; -} - -/*! - Returns \c YES if the two rectangles intersect - @group CGRect - @param lhsRect the first CGRect - @param rhsRect the second CGRect - @return BOOL \c YES if the two rectangles have any common spaces, and \c NO, otherwise. -*/ -function CPRectIntersectsRect(lhsRect, rhsRect) -{ - return !CPRectIsEmpty(CPRectIntersection(lhsRect, rhsRect)); -} +CPRectEqualToRect = CGRectEqualToRect; /*! Returns \c YES if the CGRect has no area. @@ -364,10 +90,189 @@ function CPRectIntersectsRect(lhsRect, rhsRect) @param aRect the CGRect to test @return BOOL \c YES if the CGRect has no area, and \c NO, otherwise. */ -function CPRectIsEmpty(aRect) -{ - return aRect.size.width <= 0.0 || aRect.size.height <= 0.0; -} +CPRectIsEmpty = CGRectIsEmpty; + +/*! + Returns a \c BOOL indicating whether CGRect \c possibleOuter + contains CGRect \c possibleInner. + @group CGRect + @param possibleOuter the CGRect to test if \c possibleInner is inside of + @param possibleInner the CGRect to test if it fits inside \c possibleOuter. + @return BOOL \c YES if \c possibleInner fits inside \c possibleOuter. +*/ +CPRectContainsRect = CGRectContainsRect; + +/*! + Returns the intersection of the two provided rectangles as a new rectangle + @group CGRect + @param lhsRect the first rectangle used for calculation + @param rhsRect the second rectangle used for calculation + @return CGRect the intersection of the two rectangles +*/ +CPRectIntersection = CGRectIntersection; + +/*! + Makes a CGPoint object out of two numbers provided as arguments + @group CGPoint + @param x the x-coordinate of the CGPoint + @param y the y-coordinate of the CGPoint + @return CGPoint a CGPoint with an X and Y coordinate equal to the function arguments +*/ +CPPointMake = CGPointMake; + +/*! + Makes a CGRect with an origin and size equal to \c aRect less the \c dX/dY insets specified. + @param dX the size of the inset in the x-axis + @param dY the size of the inset in the y-axis + @group CGRect + @return CGRect a rectangle like \c aRect with an inset +*/ +CPRectInset = CGRectInset; + +/*! + @group CGRect + @ignore + @return void + @deprecated +*/ +CPRectIntegral = CGRectIntegral; + +/*! + Creates a copy of the provided rectangle + @group CGRect + @param aRect the CGRect that will be copied + @return CGRect the rectangle copy +*/ +CPRectCreateCopy = CGRectCreateCopy; + +/*! + Returns a CGRect made of the specified arguments + @group CGRect + @param x the x-coordinate of the rectangle's origin + @param y the y-coordinate of the rectangle's origin + @param width the width of the new rectangle + @param height the height of the new rectangle + @return CGRect the new rectangle +*/ +CPRectMake = CGRectMake; + +/*! + Creates a new rectangle with its origin offset by \c dX and \c dY. + @group CGRect + @param aRect the rectangle to copy the origin and size from + @param dX the amount added to the x-size of the new rectangle + @param dY the amount added to the y-size of the new rectangle + @return CGRect the new rectangle with modified size +*/ +CPRectOffset = CGRectOffset; + +/*! + @group CGRect + @param aRect a CGRect + @return CGRect +*/ +CPRectStandardize = CGRectStandardize; + +/*! + Returns the smallest rectangle that can contain the two argument \c CGRects. + @group CGRect + @param lhsRect the first CGRect to use for the union calculation + @param rhsRect the second CGRect to use for the union calculation + @return CGRect the union rectangle +*/ +CPRectUnion = CGRectUnion; + +/*! + Creates and returns a copy of the provided CGSize + @group CGSize + @param aSize the CGSize to copy + @return CGSize the copy of the CGSize +*/ +CPSizeCreateCopy = CGSizeCreateCopy; + +/*! + Creates and returns a new CGSize object from the provided dimensions. + @group CGSize + @param width the width for the new CGSize + @param height the height for the new CGSize + @return CGSize the new CGSize +*/ +CPSizeMake = CGSizeMake; + +/*! + Returns \c YES if the CGRect, \c aRect, contains + the CGPoint, \c aPoint. + @param aRect the rectangle to test with + @param aPoint the point to test with + @group CGRect + @return BOOL \c YES if the rectangle contains the point, \c NO otherwise. +*/ +CPRectContainsPoint = CGRectContainsPoint; + +/*! + @group CGRect + @param aRect a CGRect + @return int +*/ +CPRectGetHeight = CGRectGetHeight; + +/*! + @group CGRect + @param aRect a CGRect + @return int +*/ +CPRectGetMaxX = CGRectGetMaxX; + +/*! + @group CGRect + @param aRect a CGRect + @return int +*/ +CPRectGetMaxY = CGRectGetMaxY; + +/*! + @group CGRect + @param aRect a CGRect + @return float +*/ +CPRectGetMidX = CGRectGetMidX; + +/*! + @group CGRect + @param aRect a CGRect + @return float +*/ +CPRectGetMidY = CGRectGetMidY; + +/*! + @group CGRect + @param aRect a CGRect + @return int +*/ +CPRectGetMinX = CGRectGetMinX; + +/*! + @group CGRect + @param aRect a CGRect + @return int +*/ +CPRectGetMinY = CGRectGetMinY; + +/*! + @group CGRect + @param aRect a CGRect + @return int +*/ +CPRectGetWidth = CGRectGetWidth; + +/*! + Returns \c YES if the two rectangles intersect + @group CGRect + @param lhsRect the first CGRect + @param rhsRect the second CGRect + @return BOOL \c YES if the two rectangles have any common spaces, and \c NO, otherwise. +*/ +CPRectIntersectsRect = CGRectIntersectsRect; /*! Returns \c YES if the CGRect has no area. @@ -375,10 +280,7 @@ function CPRectIsEmpty(aRect) @group CGRect @return BOOL \c YES if the CGRect has no area, and \c NO, otherwise. */ -function CPRectIsNull(aRect) -{ - return aRect.size.width <= 0.0 || aRect.size.height <= 0.0; -} +CPRectIsNull = CGRectIsNull; /*! Creates two rectangles -- slice and rem -- from inRect, by dividing inRect @@ -389,10 +291,7 @@ function CPRectIsNull(aRect) @group CGRect */ -function CPDivideRect(inRect, slice, rem, amount, edge) -{ - CGRectDivide(inRect, slice, rem, amount, edge); -} +CPDivideRect = CGRectDivide; /*! Returns \c YES if the two CGSizes are identical. @@ -401,10 +300,7 @@ function CPDivideRect(inRect, slice, rem, amount, edge) @param rhsSize the second CGSize to compare @return BOOL \c YES if the two sizes are identical. \c NO, otherwise. */ -function CPSizeEqualToSize(lhsSize, rhsSize) -{ - return lhsSize.width == rhsSize.width && lhsSize.height == rhsSize.height; -} +CPSizeEqualToSize = CGSizeEqualToSize; /*! Returns a human readable string of the provided CGPoint. @@ -412,10 +308,7 @@ function CPSizeEqualToSize(lhsSize, rhsSize) @param aPoint the point to represent @return CGPoint a string representation of the CGPoint */ -function CPStringFromPoint(aPoint) -{ - return "{" + aPoint.x + ", " + aPoint.y + "}"; -} +CPStringFromPoint = CGStringFromPoint; /*! Returns a human readable string of the provided CGSize. @@ -423,10 +316,7 @@ function CPStringFromPoint(aPoint) @param aSize the size to represent @return CGSize a string representation of the CGSize */ -function CPStringFromSize(aSize) -{ - return "{" + aSize.width + ", " + aSize.height + "}"; -} +CPStringFromSize = CGStringFromSize; /*! Returns a human readable string of the provided CGRect. @@ -434,10 +324,7 @@ function CPStringFromSize(aSize) @param aRect the rectangle to represent @return CGString the string representation of the rectangle */ -function CPStringFromRect(aRect) -{ - return "{" + CPStringFromPoint(aRect.origin) + ", " + CPStringFromSize(aRect.size) + "}"; -} +CPStringFromRect = CGStringFromRect; /*! Returns a CGPoint from a string with a comma separated pair of integers. @@ -445,12 +332,7 @@ function CPStringFromRect(aRect) @param aString a string containing two comma separated integers @return CGPoint the point object created from the string */ -function CPPointFromString(aString) -{ - var comma = aString.indexOf(','); - - return { x:parseFloat(aString.substr(1, comma - 1), 10), y:parseFloat(aString.substring(comma + 1, aString.length), 10) }; -} +CPPointFromString = CGPointFromString; /*! Returns a CGSize from a string containing a pair of comma separated integers. @@ -458,12 +340,7 @@ function CPPointFromString(aString) @param aString a string containing two comma separated integers @return CGSize the size object created from the string */ -function CPSizeFromString(aString) -{ - var comma = aString.indexOf(','); - - return { width:parseFloat(aString.substr(1, comma - 1), 10), height:parseFloat(aString.substring(comma + 1, aString.length), 10) }; -} +CPSizeFromString = CGSizeFromString; /*! Returns a CGRect created from a string. @@ -471,53 +348,32 @@ function CPSizeFromString(aString) @param aString a string in the form generated by \c CPStringFromRect @return CGRect the rectangle created from the string */ -function CPRectFromString(aString) -{ - var comma = aString.indexOf(',', aString.indexOf(',') + 1); - - return { origin:CPPointFromString(aString.substr(1, comma - 1)), size:CPSizeFromString(aString.substring(comma + 2, aString.length)) }; -} +CPRectFromString = CGRectFromString; /*! @group CGPoint @param anEvent @return CGPoint */ -function CPPointFromEvent(anEvent) -{ - return CPPointMake(anEvent.clientX, anEvent.clientY, 0); -} +CPPointFromEvent = CGPointFromEvent; /*! Returns a zero sized CGSize. @group CGSize @return CGSize a size object with zeros for \c width and \c height */ -function CPSizeMakeZero() -{ - return CPSizeMake(0, 0); -} +CPSizeMakeZero = CGSizeMakeZero; /*! Returns a rectangle at origin \c (0,0) and size of \c (0,0). @group CGRect @return CGRect a zeroed out CGRect */ -function CPRectMakeZero() -{ - return CPRectMake(0, 0, 0, 0); -} +CPRectMakeZero = CGRectMakeZero; /*! Returns a point located at \c (0, 0). @group CGPoint @return CGPoint a point located at \c (0, 0) */ -function CPPointMakeZero() -{ - return CPPointMake(0, 0, 0); -} - -/*! - @} -*/ +CPPointMakeZero = CGPointMakeZero; diff --git a/Foundation/CPIndexSet.j b/Foundation/CPIndexSet.j index c0a13c3d4..33ecfbdf7 100644 --- a/Foundation/CPIndexSet.j +++ b/Foundation/CPIndexSet.j @@ -315,7 +315,7 @@ var range = _ranges[rangeIndex]; // Check if it's actually in this range. - if (CPLocationInRange(anIndex, range)) + if (_CPLocationInRange(anIndex, range)) return anIndex; // If not, it must be the first element of this range. @@ -346,7 +346,7 @@ var range = _ranges[rangeIndex]; // Check if it's actually in this range. - if (CPLocationInRange(anIndex, range)) + if (_CPLocationInRange(anIndex, range)) return anIndex; // If not, it must be the first element of this range. @@ -495,7 +495,7 @@ - (void)enumerateIndexesInRange:(CPRange)enumerationRange options:(CPEnumerationOptions)options usingBlock:(Function /*(int idx, @ref BOOL stop)*/)aFunction { - if (!_count || CPEmptyRange(enumerationRange)) + if (!_count || _CPEmptyRange(enumerationRange)) return; var shouldStop = NO, @@ -518,9 +518,8 @@ for (; index !== stop; index += increment) { - var range = _ranges[index]; - - var rangeIndex, + var range = _ranges[index], + rangeIndex, rangeStop, rangeIncrement; @@ -539,7 +538,7 @@ for (; rangeIndex !== rangeStop; rangeIndex += rangeIncrement) { - if (CPLocationInRange(rangeIndex, enumerationRange)) + if (_CPLocationInRange(rangeIndex, enumerationRange)) { aFunction(rangeIndex, AT_REF(shouldStop)); if (shouldStop) @@ -549,6 +548,151 @@ } } +- (unsigned)indexPassingTest:(Function /*(int anIndex)*/)aPredicate +{ + return [self indexWithOptions:CPEnumerationNormal passingTest:aPredicate]; +} + +- (CPIndexSet)indexesPassingTest:(Function /*(int anIndex)*/)aPredicate +{ + return [self indexesWithOptions:CPEnumerationNormal passingTest:aPredicate]; +} + +- (unsigned)indexWithOptions:(CPEnumerationOptions)anOptions passingTest:(Function /*(int anIndex)*/)aPredicate +{ + if (!_count) + return CPNotFound; + + return [self indexInRange:_CPMakeRange(0, _CPMaxRange(_ranges[_ranges.length - 1])) options:anOptions passingTest:aPredicate]; +} + +- (CPIndexSet)indexesWithOptions:(CPEnumerationOptions)anOptions passingTest:(Function /*(int anIndex)*/)aPredicate +{ + if (!_count) + return [CPIndexSet indexSet]; + + return [self indexesInRange:_CPMakeRange(0, _CPMaxRange(_ranges[_ranges.length - 1])) options:anOptions passingTest:aPredicate]; +} + +- (unsigned)indexInRange:(CPRange)aRange options:(CPEnumerationOptions)anOptions passingTest:(Function /*(int anIndex)*/)aPredicate +{ + if (!_count || _CPEmptyRange(aRange)) + return CPNotFound; + + var shouldStop = NO, + index, + stop, + increment; + + if (anOptions & CPEnumerationReverse) + { + index = _ranges.length - 1, + stop = -1, + increment = -1; + } + else + { + index = 0; + stop = _ranges.length; + increment = 1; + } + + for (; index !== stop; index += increment) + { + var range = _ranges[index], + rangeIndex, + rangeStop, + rangeIncrement; + + if (anOptions & CPEnumerationReverse) + { + rangeIndex = _CPMaxRange(range) - 1; + rangeStop = range.location - 1; + rangeIncrement = -1; + } + else + { + rangeIndex = range.location; + rangeStop = _CPMaxRange(range); + rangeIncrement = 1; + } + + for (; rangeIndex !== rangeStop; rangeIndex += rangeIncrement) + { + if (_CPLocationInRange(rangeIndex, aRange)) + { + if (aPredicate(rangeIndex, AT_REF(shouldStop))) + return rangeIndex; + + if (shouldStop) + return CPNotFound; + } + } + } + + return CPNotFound; +} + +- (CPIndexSet)indexesInRange:(CPRange)aRange options:(CPEnumerationOptions)anOptions passingTest:(Function /*(int anIndex)*/)aPredicate +{ + if (!_count || _CPEmptyRange(aRange)) + return [CPIndexSet indexSet]; + + var shouldStop = NO, + index, + stop, + increment; + + if (anOptions & CPEnumerationReverse) + { + index = _ranges.length - 1, + stop = -1, + increment = -1; + } + else + { + index = 0; + stop = _ranges.length; + increment = 1; + } + + var indexesPassingTest = [CPMutableIndexSet indexSet]; + + for (; index !== stop; index += increment) + { + var range = _ranges[index], + rangeIndex, + rangeStop, + rangeIncrement; + + if (anOptions & CPEnumerationReverse) + { + rangeIndex = _CPMaxRange(range) - 1; + rangeStop = range.location - 1; + rangeIncrement = -1; + } + else + { + rangeIndex = range.location; + rangeStop = _CPMaxRange(range); + rangeIncrement = 1; + } + + for (; rangeIndex !== rangeStop; rangeIndex += rangeIncrement) + { + if (_CPLocationInRange(rangeIndex, aRange)) + { + if (aPredicate(rangeIndex, AT_REF(shouldStop))) + [indexesPassingTest addIndex:rangeIndex]; + + if (shouldStop) + return indexesPassingTest; + } + } + } + + return indexesPassingTest; +} @end diff --git a/Foundation/CPKeyValueObserving.j b/Foundation/CPKeyValueObserving.j index 5bcedbe5e..ecf7e1c1d 100644 --- a/Foundation/CPKeyValueObserving.j +++ b/Foundation/CPKeyValueObserving.j @@ -31,26 +31,107 @@ - (void)willChangeValueForKey:(CPString)aKey { + if (!aKey) + return; + + if (!self[KVOProxyKey]) + { + if (!self._willChangeMessageCounter) + self._willChangeMessageCounter = new Object(); + + if (!self._willChangeMessageCounter[aKey]) + self._willChangeMessageCounter[aKey] = 1; + else + self._willChangeMessageCounter[aKey] += 1; + } } - (void)didChangeValueForKey:(CPString)aKey { + if (!aKey) + return; + + if (!self[KVOProxyKey]) + { + if (self._willChangeMessageCounter && self._willChangeMessageCounter[aKey]) + { + self._willChangeMessageCounter[aKey] -= 1; + + if (!self._willChangeMessageCounter[aKey]) + delete self._willChangeMessageCounter[aKey]; + } + else + [CPException raise:@"CPKeyValueObservingException" reason:@"'didChange...' message called without prior call of 'willChange...'"]; + } } - (void)willChange:(CPKeyValueChange)aChange valuesAtIndexes:(CPIndexSet)indexes forKey:(CPString)aKey { + if (!aKey) + return; + + if (!self[KVOProxyKey]) + { + if (!self._willChangeMessageCounter) + self._willChangeMessageCounter = new Object(); + + if (!self._willChangeMessageCounter[aKey]) + self._willChangeMessageCounter[aKey] = 1; + else + self._willChangeMessageCounter[aKey] += 1; + } } - (void)didChange:(CPKeyValueChange)aChange valuesAtIndexes:(CPIndexSet)indexes forKey:(CPString)aKey { + if (!aKey) + return; + + if (!self[KVOProxyKey]) + { + if (self._willChangeMessageCounter && self._willChangeMessageCounter[aKey]) + { + self._willChangeMessageCounter[aKey] -= 1; + + if (!self._willChangeMessageCounter[aKey]) + delete self._willChangeMessageCounter[aKey]; + } + else + [CPException raise:@"CPKeyValueObservingException" reason:@"'didChange...' message called without prior call of 'willChange...'"]; + } } - (void)willChangeValueForKey:(CPString)aKey withSetMutation:(CPKeyValueSetMutationKind)aMutationKind usingObjects:(CPSet)objects { + if (!aKey) + return; + + if (!self[KVOProxyKey]) + { + if (!self._willChangeMessageCounter) + self._willChangeMessageCounter = new Object(); + + if (!self._willChangeMessageCounter[aKey]) + self._willChangeMessageCounter[aKey] = 1; + else + self._willChangeMessageCounter[aKey] += 1; + } } - (void)didChangeValueForKey:(CPString)aKey withSetMutation:(CPKeyValueSetMutationKind)aMutationKind usingObjects:(CPSet)objects { + if (!self[KVOProxyKey]) + { + if (self._willChangeMessageCounter && self._willChangeMessageCounter[aKey]) + { + self._willChangeMessageCounter[aKey] -= 1; + + if (!self._willChangeMessageCounter[aKey]) + delete self._willChangeMessageCounter[aKey]; + } + else + [CPException raise:@"CPKeyValueObservingException" reason:@"'didChange...' message called without prior call of 'willChange...'"]; + } } - (void)addObserver:(id)anObserver forKeyPath:(CPString)aPath options:(unsigned)options context:(id)aContext @@ -804,7 +885,20 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew | CPKeyValueObservingOpti { var level = _nestingForKey[aKey]; if (!changes || !level) - [CPException raise:@"CPKeyValueObservingException" reason:@"'didChange...' message called without prior call of 'willChange...'"]; + { + if (_targetObject._willChangeMessageCounter && _targetObject._willChangeMessageCounter[aKey]) + { + // Close unobserved willChange for a given key. + _targetObject._willChangeMessageCounter[aKey] -= 1; + + if (!_targetObject._willChangeMessageCounter[aKey]) + delete _targetObject._willChangeMessageCounter[aKey]; + + return; + } + else + [CPException raise:@"CPKeyValueObservingException" reason:@"'didChange...' message called without prior call of 'willChange...'"]; + } _nestingForKey[aKey] = level - 1; if (level - 1 > 0) @@ -1093,7 +1187,7 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew | CPKeyValueObservingOpti var dotIndex = aKeyPath.indexOf('.'); if (dotIndex === CPNotFound) - [CPException raise:CPInvalidArgumentException reason:"Created _CPKVOForwardingObserver without compound key path: "+aKeyPath]; + [CPException raise:CPInvalidArgumentException reason:"Created _CPKVOForwardingObserver without compound key path: " + aKeyPath]; _firstPart = aKeyPath.substring(0, dotIndex); _secondPart = aKeyPath.substring(dotIndex + 1); @@ -1114,7 +1208,14 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew | CPKeyValueObservingOpti { if (aKeyPath === _firstPart) { - [_observer observeValueForKeyPath:_firstPart ofObject:_object change:changes context:_context]; + 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]; + + [_observer observeValueForKeyPath:_firstPart + "." + _secondPart ofObject:_object change:pathChanges context:_context]; //since a has changed, we should remove ourselves as an observer of the old a, and observe the new one if (_value) @@ -1128,7 +1229,7 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew | CPKeyValueObservingOpti else { //a is the same, but a.b has changed -- nothing to do but forward this message along - [_observer observeValueForKeyPath:_firstPart+"."+aKeyPath ofObject:_object change:changes context:_context]; + [_observer observeValueForKeyPath:_firstPart + "." + aKeyPath ofObject:_object change:changes context:_context]; } } diff --git a/Foundation/CPNumberFormatter.j b/Foundation/CPNumberFormatter.j index 3bb9489a9..0197d02ef 100644 --- a/Foundation/CPNumberFormatter.j +++ b/Foundation/CPNumberFormatter.j @@ -57,6 +57,7 @@ CPNumberFormatterRoundHalfUp = CPRoundPlain; { CPNumberFormatterStyle _numberStyle @accessors(property=numberStyle); CPString _perMillSymbol @accessors(property=perMillSymbol); + CPString _groupingSeparator @accessors(property=groupingSeparator); CPNumberFormatterRoundingMode _roundingMode @accessors(property=roundingMode); CPUInteger _maximumFractionalDigits @accessors(property=maximalFractionalDigits); @@ -69,6 +70,7 @@ CPNumberFormatterRoundHalfUp = CPRoundPlain; { _roundingMode = CPNumberFormatterRoundHalfUp; _maximumFractionalDigits = 3; + _groupingSeparator = @","; } return self; @@ -90,17 +92,18 @@ CPNumberFormatterRoundHalfUp = CPRoundPlain; preFraction = parts[0], fraction = parts.length > 1 ? parts[1] : "", preFractionLength = [preFraction length], - commaPosition = 3, - perMillSymbol = [self _effectivePerMillSymbol]; + commaPosition = 3; // TODO This is just a temporary solution. Should be generalised. // Add in thousands separators. - if (perMillSymbol) - while (commaPosition < [preFraction length]) + if (_groupingSeparator) + { + for (var commaPosition = 3, prefLength = [preFraction length]; commaPosition < prefLength; commaPosition += 4) { - preFraction = [preFraction stringByReplacingCharactersInRange:CPMakeRange(commaPosition, 0) withString:perMillSymbol]; - commaPosition += 4; + preFraction = [preFraction stringByReplacingCharactersInRange:CPMakeRange(prefLength - commaPosition, 0) withString:_groupingSeparator]; + prefLength += 1; } + } if (fraction) return preFraction + "." + fraction; @@ -139,17 +142,6 @@ CPNumberFormatterRoundHalfUp = CPRoundPlain; return YES; } -/*! - @ignore - Return the perMillSymbol if set, otherwise the locale default. -*/ -- (CPString)_effectivePerMillSymbol -{ - if (_perMillSymbol === nil || _perMillSymbol === undefined) - return ","; // (FIXME US Locale specific.) - return _perMillSymbol; -} - - (void)setRoundingMode:(CPNumberFormatterRoundingMode)aRoundingMode { _roundingMode = aRoundingMode; diff --git a/Foundation/CPRange.h b/Foundation/CPRange.h index f20a08f7a..ffd15058b 100644 --- a/Foundation/CPRange.h +++ b/Foundation/CPRange.h @@ -23,3 +23,5 @@ #define _CPMaxRange(aRange) ((aRange).location + (aRange).length) #define _CPMakeRange(aLocation, aLength) { location:(aLocation), length:aLength } #define _CPMakeRangeCopy(aRange) { location:(aRange).location, length:(aRange).length } +#define _CPEmptyRange(aRange) ((aRange).length === 0) +#define _CPLocationInRange(aLocation, aRange) (((aLocation) >= (aRange).location) && ((aLocation) < _CPMaxRange(aRange))) diff --git a/Foundation/CPRange.j b/Foundation/CPRange.j index d96bbb834..f9f09a3ae 100755 --- a/Foundation/CPRange.j +++ b/Foundation/CPRange.j @@ -52,10 +52,7 @@ _function(CPMakeRangeCopy(aRange)) @group CPRange @return YES if the range is empty */ -function CPEmptyRange(aRange) -{ - return aRange.length === 0; -} +_function(CPEmptyRange(aRange)) /*! Finds the range maximum. (\c location + length) @@ -83,10 +80,7 @@ function CPEqualRanges(lhsRange, rhsRange) @group CPRange @return BOOL \c YES if \c aLocation is within the range */ -function CPLocationInRange(aLocation, aRange) -{ - return (aLocation >= aRange.location) && (aLocation < CPMaxRange(aRange)); -} +_function(CPLocationInRange(aLocation, aRange)) /*! Creates a new range with the minimum \c location and a \c length diff --git a/Foundation/CPString.j b/Foundation/CPString.j index 4dc630026..c7da015b1 100644 --- a/Foundation/CPString.j +++ b/Foundation/CPString.j @@ -550,7 +550,7 @@ var CPStringUIDs = new CFMutableDictionary(), } /*! - Returns \c NO if the receiver ends + Returns \c YES if the receiver ends with the specified string. If \c aString is empty, the method will return \c NO. */ diff --git a/Foundation/Foundation.j b/Foundation/Foundation.j index d26bfbb1f..422501616 100755 --- a/Foundation/Foundation.j +++ b/Foundation/Foundation.j @@ -36,6 +36,7 @@ @import "CPException.j" @import "CPExpression.j" @import "CPFormatter.j" +@import "CPGeometry.j" @import "CPIndexSet.j" @import "CPIndexPath.j" @import "CPInvocation.j" diff --git a/Foundation/Jakefile b/Foundation/Jakefile index 90a5bdba9..20d218c9e 100644 --- a/Foundation/Jakefile +++ b/Foundation/Jakefile @@ -42,7 +42,13 @@ foundationTask = framework ("Foundation", function(foundationTask) foundationTask.setInfoPlistPath("Info.plist"); foundationTask.setEnvironments(require("objective-j/jake/environment").ObjJ); - var INCLUDES = "--include \"../AppKit/Platform/Platform.h\" --include \"Ref.h\""; + // Grab all the .h's and just include them in each file. + var INCLUDES = new FileList("**/*.h").map(function(aFilename) + { + return "--include \"" + aFilename + "\""; + }).join(" "); + + INCLUDES = "--include \"../AppKit/Platform/Platform.h\" " + INCLUDES; if ($CONFIGURATION === "Release") foundationTask.setCompilerFlags("-O " + INCLUDES); diff --git a/AppKit/CoreGraphics/CGGeometry.h b/Foundation/_CGGeometry.h similarity index 79% rename from AppKit/CoreGraphics/CGGeometry.h rename to Foundation/_CGGeometry.h index dbfef2039..48f91807d 100644 --- a/AppKit/CoreGraphics/CGGeometry.h +++ b/Foundation/_CGGeometry.h @@ -1,6 +1,6 @@ /* * CGGeometry.h - * AppKit + * Foundation * * Created by Francisco Tolmasky. * Copyright 2008, 280 North, Inc. @@ -20,6 +20,12 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +/* + +CGGeometry is not a part of Foundation. The reason _CGGeometry.h exists, and is in Foundation, is that CPGeometry and CGGeometry both use the same code so the shared basis needs to be in the lowest layer. If for some reason Cappuccino was ever reimplemented such that CPRect !== CGRect etc, this class could be removed and CPGeometry.j and CGGeometry.j updated with relevant functions without breaking any client code. + +*/ + #define _CGPointMake(x_, y_) { x:x_, y:y_ } #define _CGPointMakeCopy(aPoint) _CGPointMake(aPoint.x, aPoint.y) #define _CGPointMakeZero() _CGPointMake(0.0, 0.0) @@ -45,6 +51,19 @@ #define _CGRectOffset(aRect, dX, dY) _CGRectMake(aRect.origin.x + dX, aRect.origin.y + dY, aRect.size.width, aRect.size.height) #define _CGRectInset(aRect, dX, dY) _CGRectMake(aRect.origin.x + dX, aRect.origin.y + dY, aRect.size.width - 2 * dX, aRect.size.height - 2 * dY) +/*! + Slow: + + var theInsetRect = _CGRectInsetByInset([self bounds], [self contentInset]); + + Fast: + + var aRect = [self bounds], + anInset = [self contentInset], + theInsetRect = _CGRectInsetByInset(aRect, anInset); +*/ +#define _CGRectInsetByInset(aRect, anInset) _CGRectMake((aRect).origin.x + (anInset).left, (aRect).origin.y + (anInset).top, (aRect).size.width - (anInset).left - (anInset).right, (aRect).size.height - (anInset).top - (anInset).bottom) + #define _CGRectGetHeight(aRect) (aRect.size.height) #define _CGRectGetMaxX(aRect) (aRect.origin.x + aRect.size.width) #define _CGRectGetMaxY(aRect) (aRect.origin.y + aRect.size.height) @@ -61,6 +80,7 @@ #define _CGInsetMake(_top, _right, _bottom, _left) { top:(_top), right:(_right), bottom:(_bottom), left:(_left) } #define _CGInsetMakeCopy(anInset) _CGInsetMake(anInset.top, anInset.right, anInset.bottom, anInset.left) +#define _CGInsetMakeInvertedCopy(anInset) _CGInsetMake(-anInset.top, -anInset.right, -anInset.bottom, -anInset.left) #define _CGInsetMakeZero() _CGInsetMake(0, 0, 0, 0) #define _CGInsetIsEmpty(anInset) ((anInset).top === 0 && (anInset).right === 0 && (anInset).bottom === 0 && (anInset).left === 0) #define _CGInsetEqualToInset(lhsInset, rhsInset) ((lhsInset).top === (rhsInset).top && (lhsInset).right === (rhsInset).right && (lhsInset).bottom === (rhsInset).bottom && (lhsInset).left === (rhsInset).left) diff --git a/Foundation/_CGGeometry.j b/Foundation/_CGGeometry.j new file mode 100644 index 000000000..be7bc79b3 --- /dev/null +++ b/Foundation/_CGGeometry.j @@ -0,0 +1,327 @@ +/* + * _CGGeometry.j + * Foundation + * + * Created by Francisco Tolmasky. + * Copyright 2008, 280 North, 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 + */ + +/* + +CGGeometry is not a part of Foundation. The reason _CGGeometry.j exists, and is in Foundation, is that CPGeometry and CGGeometry both use the same code so the shared basis needs to be in the lowest layer. If for some reason Cappuccino was ever reimplemented such that CPRect !== CGRect etc, this class could be removed and CPGeometry.j and CGGeometry.j updated with relevant functions without breaking any client code. + +*/ + +#define _function(inline) function inline { return _##inline; } + +_function(CGPointMake(x, y)) +_function(CGPointMakeZero()) +_function(CGPointMakeCopy(aPoint)) +_function(CGPointCreateCopy(aPoint)) + +_function(CGPointEqualToPoint(lhsPoint, rhsPoint)) +_function(CGStringFromPoint(aPoint)) + +_function(CGSizeMake(width, height)) +_function(CGSizeMakeZero()) +_function(CGSizeMakeCopy(aSize)) +_function(CGSizeCreateCopy(aSize)) + +_function(CGSizeEqualToSize(lhsSize, rhsSize)) +_function(CGStringFromSize(aSize)) + +_function(CGRectMake(x, y, width, height)) +_function(CGRectMakeZero()) +_function(CGRectMakeCopy(aRect)) +_function(CGRectCreateCopy(aRect)) + +_function(CGRectEqualToRect(lhsRect, rhsRect)) +_function(CGStringFromRect(aRect)) + +_function(CGRectOffset(aRect, dX, dY)) +_function(CGRectInset(aRect, dX, dY)) + +_function(CGRectGetHeight(aRect)) +_function(CGRectGetMaxX(aRect)) +_function(CGRectGetMaxY(aRect)) +_function(CGRectGetMidX(aRect)) +_function(CGRectGetMidY(aRect)) +_function(CGRectGetMinX(aRect)) +_function(CGRectGetMinY(aRect)) +_function(CGRectGetWidth(aRect)) + +_function(CGRectIsEmpty(aRect)) +_function(CGRectIsNull(aRect)) + +_function(CGRectContainsPoint(aRect, aPoint)) + +_function(CGInsetMake(top, right, bottom, left)) +_function(CGInsetMakeZero()) +_function(CGInsetMakeCopy(anInset)) +_function(CGInsetMakeInvertedCopy(anInset)) +_function(CGInsetIsEmpty(anInset)) +_function(CGInsetEqualToInset(lhsInset, rhsInset)) + +CGMinXEdge = 0; +CGMinYEdge = 1; +CGMaxXEdge = 2; +CGMaxYEdge = 3; + +CGRectNull = _CGRectMake(Infinity, Infinity, 0.0, 0.0); + +/*! + @addtogroup appkit + @{ +*/ + +/*! + Creates two rectangles -- slice and rem -- from inRect, by dividing inRect + with a line that's parallel to the side of inRect specified by edge. + The size of slice is determined by amount, which specifies the distance from edge. + + slice and rem must not be NULL, must not be the same object, and must not be the + same object as inRect. + + @group CGRect +*/ +function CGRectDivide(inRect, slice, rem, amount, edge) +{ + slice.origin = _CGPointMakeCopy(inRect.origin); + slice.size = _CGSizeMakeCopy(inRect.size); + rem.origin = _CGPointMakeCopy(inRect.origin); + rem.size = _CGSizeMakeCopy(inRect.size); + + switch (edge) + { + case CGMinXEdge: + slice.size.width = amount; + rem.origin.x += amount; + rem.size.width -= amount; + break; + + case CGMaxXEdge: + slice.origin.x = _CGRectGetMaxX(slice) - amount; + slice.size.width = amount; + rem.size.width -= amount; + break; + + case CGMinYEdge: + slice.size.height = amount; + rem.origin.y += amount; + rem.size.height -= amount; + break; + + case CGMaxYEdge: + slice.origin.y = _CGRectGetMaxY(slice) - amount; + slice.size.height = amount; + rem.size.height -= amount; + } +} + +/*! + Returns a \c BOOL indicating whether CGRect \c lhsRect + contains CGRect \c rhsRect. + @group CGRect + @param lhsRect the CGRect to test if \c rhsRect is inside of + @param rhsRect the CGRect to test if it fits inside \c lhsRect. + @return BOOL \c YES if \c rhsRect fits inside \c lhsRect. +*/ +function CGRectContainsRect(lhsRect, rhsRect) +{ + var union = CGRectUnion(lhsRect, rhsRect); + + return _CGRectEqualToRect(union, lhsRect); +} + +/*! + Returns \c YES if the two rectangles intersect + @group CGRect + @param lhsRect the first CGRect + @param rhsRect the second CGRect + @return BOOL \c YES if the two rectangles have any common spaces, and \c NO, otherwise. +*/ +function CGRectIntersectsRect(lhsRect, rhsRect) +{ + var intersection = CGRectIntersection(lhsRect, rhsRect); + + return !_CGRectIsEmpty(intersection); +} + +/*! + Makes the origin and size of a CGRect all integers. Specifically, by making + the southwest corner the origin (rounded down), and the northeast corner a CGSize (rounded up). + @param aRect the rectangle to operate on + @return CGRect the modified rectangle (same as the input) + @group CGRect +*/ +function CGRectIntegral(aRect) +{ + aRect = CGRectStandardize(aRect); + + // Store these out separately, if not the GetMaxes will return incorrect values. + var x = FLOOR(_CGRectGetMinX(aRect)), + y = FLOOR(_CGRectGetMinY(aRect)); + + aRect.size.width = CEIL(_CGRectGetMaxX(aRect)) - x; + aRect.size.height = CEIL(_CGRectGetMaxY(aRect)) - y; + + aRect.origin.x = x; + aRect.origin.y = y; + + return aRect; +} + +/*! + Returns the intersection of the two provided rectangles as a new rectangle. + @param lhsRect the first rectangle used for calculation + @param rhsRect the second rectangle used for calculation + @return CGRect the intersection of the two rectangles + @group CGRect +*/ +function CGRectIntersection(lhsRect, rhsRect) +{ + var intersection = _CGRectMake( + MAX(_CGRectGetMinX(lhsRect), _CGRectGetMinX(rhsRect)), + MAX(_CGRectGetMinY(lhsRect), _CGRectGetMinY(rhsRect)), + 0, 0); + + intersection.size.width = MIN(_CGRectGetMaxX(lhsRect), _CGRectGetMaxX(rhsRect)) - _CGRectGetMinX(intersection); + intersection.size.height = MIN(_CGRectGetMaxY(lhsRect), _CGRectGetMaxY(rhsRect)) - _CGRectGetMinY(intersection); + + return _CGRectIsEmpty(intersection) ? _CGRectMakeZero() : intersection; +} + +/* + +*/ +function CGRectStandardize(aRect) +{ + var width = _CGRectGetWidth(aRect), + height = _CGRectGetHeight(aRect), + standardized = _CGRectMakeCopy(aRect); + + if (width < 0.0) + { + standardized.origin.x += width; + standardized.size.width = -width; + } + + if (height < 0.0) + { + standardized.origin.y += height; + standardized.size.height = -height; + } + + return standardized; +} + +function CGRectUnion(lhsRect, rhsRect) +{ + var lhsRectIsNull = !lhsRect || lhsRect === CGRectNull, + rhsRectIsNull = !rhsRect || rhsRect === CGRectNull; + + if (lhsRectIsNull) + return rhsRectIsNull ? CGRectNull : rhsRect; + + if (rhsRectIsNull) + return lhsRectIsNull ? CGRectNull : lhsRect; + + var minX = MIN(_CGRectGetMinX(lhsRect), _CGRectGetMinX(rhsRect)), + minY = MIN(_CGRectGetMinY(lhsRect), _CGRectGetMinY(rhsRect)), + maxX = MAX(_CGRectGetMaxX(lhsRect), _CGRectGetMaxX(rhsRect)), + maxY = MAX(_CGRectGetMaxY(lhsRect), _CGRectGetMaxY(rhsRect)); + + return _CGRectMake(minX, minY, maxX - minX, maxY - minY); +} + +/*! + Returns the specified rectangle inset by the given CGInset as a new rectangle. + @param aRect the rect to inset + @param anInset a CGInset to inset by + @return CGRect aRect inset by anInset +*/ +_function(CGRectInsetByInset(aRect, anInset)); + +function CGPointFromString(aString) +{ + var comma = aString.indexOf(','); + + return { x:parseFloat(aString.substr(1, comma - 1)), y:parseFloat(aString.substring(comma + 1, aString.length)) }; +} + +function CGSizeFromString(aString) +{ + var comma = aString.indexOf(','); + + return { width:parseFloat(aString.substr(1, comma - 1)), height:parseFloat(aString.substring(comma + 1, aString.length)) }; +} + +function CGRectFromString(aString) +{ + var comma = aString.indexOf(',', aString.indexOf(',') + 1); + + return { origin:CGPointFromString(aString.substr(1, comma - 1)), size:CGSizeFromString(aString.substring(comma + 2, aString.length)) }; +} + +function CGPointFromEvent(anEvent) +{ + return _CGPointMake(anEvent.clientX, anEvent.clientY); +} + +/*! + Combines two insets by adding their individual elements and returns the result. + + @group CGInset +*/ +function CGInsetUnion(lhsInset, rhsInset) +{ + return _CGInsetMake(lhsInset.top + rhsInset.top, + lhsInset.right + rhsInset.right, + lhsInset.bottom + rhsInset.bottom, + lhsInset.left + rhsInset.left); +} + +/*! + Subtract one inset from another by subtracting their individual elements and returns the result. + + @group CGInset +*/ +function CGInsetDifference(lhsInset, rhsInset) +{ + return _CGInsetMake(lhsInset.top - rhsInset.top, + lhsInset.right - rhsInset.right, + lhsInset.bottom - rhsInset.bottom, + lhsInset.left - rhsInset.left); +} + +function CGInsetFromString(aString) +{ + var numbers = aString.substr(1, aString.length - 2).split(','); + + return _CGInsetMake(parseFloat(numbers[0]), parseFloat(numbers[1]), parseFloat(numbers[2]), parseFloat(numbers[3])); +} + +CGInsetFromCPString = CGInsetFromString; + +function CPStringFromCGInset(anInset) +{ + return '{' + anInset.top + ", " + anInset.left + ", " + anInset.bottom + ", " + anInset.right + '}'; +} + +/*! + @} +*/ diff --git a/Objective-J/Bootstrap.js b/Objective-J/Bootstrap.js index 3ed56821d..3ea3fe515 100644 --- a/Objective-J/Bootstrap.js +++ b/Objective-J/Bootstrap.js @@ -22,7 +22,7 @@ #ifdef COMMONJS -var mainBundleURL = new CFURL("file:" + require("file").cwd()); +var mainBundleURL = new CFURL("file:" + require("file").cwd()).asDirectoryPathURL(); #elif defined(BROWSER) // This is automatic when importing, but we'd like these important URLs to // be taken into consideration in the cache as well. diff --git a/Objective-J/Debug.js b/Objective-J/Debug.js index b6f51acb9..58ec0d48f 100644 --- a/Objective-J/Debug.js +++ b/Objective-J/Debug.js @@ -117,7 +117,7 @@ GLOBAL(objj_backtrace_decorator) = function(msgSend) // make sure to always pop objj_backtrace.pop(); } - } + }; } GLOBAL(objj_supress_exceptions_decorator) = function(msgSend) @@ -135,7 +135,7 @@ GLOBAL(objj_supress_exceptions_decorator) = function(msgSend) // print the exception and backtrace CPLog.warn("Exception " + anException + " in " + objj_debug_message_format(aReceiver, aSelector)); } - } + }; } // type checking decorator @@ -148,7 +148,7 @@ GLOBAL(objj_typecheck_decorator) = function(msgSend) return function(aReceiverOrSuper, aSelector) { var aReceiver = aReceiverOrSuper && (aReceiverOrSuper.receiver || aReceiverOrSuper); - + if (!aReceiver) return msgSend.apply(NULL, arguments); @@ -170,7 +170,7 @@ GLOBAL(objj_typecheck_decorator) = function(msgSend) } } } - + var result = msgSend.apply(NULL, arguments); try @@ -189,14 +189,14 @@ GLOBAL(objj_typecheck_decorator) = function(msgSend) } return result; - } + }; } // type checking logic: GLOBAL(objj_debug_typecheck) = function(expectedType, object) { var objjClass; - + if (!expectedType) { return; @@ -230,7 +230,7 @@ GLOBAL(objj_debug_typecheck) = function(expectedType, object) { return; } - + var actualType; if (object === NULL) actualType = "null"; diff --git a/Tests/AppKit/CPButtonTest.j b/Tests/AppKit/CPButtonTest.j index 3632a7d35..112d89020 100644 --- a/Tests/AppKit/CPButtonTest.j +++ b/Tests/AppKit/CPButtonTest.j @@ -3,7 +3,7 @@ @import @import -[CPApplication sharedApplication] +[CPApplication sharedApplication]; @implementation CPButtonTest : OJTestCase { diff --git a/Tests/AppKit/CPColorWellTest.j b/Tests/AppKit/CPColorWellTest.j new file mode 100644 index 000000000..2e57ee0b9 --- /dev/null +++ b/Tests/AppKit/CPColorWellTest.j @@ -0,0 +1,32 @@ +@import +@import + +[CPApplication sharedApplication]; + +@implementation CPColorWellTest : OJTestCase +{ + CPColorWell colorWell; +} + +- (void)setUp +{ + colorWell = [[CPColorWell alloc] initWithFrame:CGRectMakeZero()]; +} + +- (void)testCoding +{ + [self assertTrue:[colorWell isBordered] message:"color well bordered"]; + [self assert:[CPColor whiteColor] equals:[colorWell color] message:"color well default color"]; + + [colorWell setColor:[CPColor greenColor]]; + [colorWell setBordered:NO]; + + // Test archiving. + var archived = [CPKeyedArchiver archivedDataWithRootObject:colorWell], + unarchived = [CPKeyedUnarchiver unarchiveObjectWithData:archived]; + + [self assertFalse:[colorWell isBordered] message:"color well archived bordered state"]; + [self assert:[CPColor greenColor] equals:[colorWell color] message:"color well archived color"]; +} + +@end diff --git a/Tests/AppKit/CPFontManagerTest.j b/Tests/AppKit/CPFontManagerTest.j new file mode 100644 index 000000000..04e817701 --- /dev/null +++ b/Tests/AppKit/CPFontManagerTest.j @@ -0,0 +1,129 @@ +@import + +[CPApplication sharedApplication]; + +@implementation CPFontManagerTest : OJTestCase +{ + CPFont fontA; + CPFont fontB; + CPFont convertedFontA; + CPFont convertedFontB; + + int tag @accessors; +} + +- (void)setUp +{ + fontA = [CPFont systemFontOfSize:8.0]; +} + +- (void)testAvailableFonts +{ + var fonts = [[CPFontManager sharedFontManager] availableFonts]; + + [self assertTrue:[fonts isKindOfClass:[CPArray class]] message:@"font list returned by availableFonts"]; +} + +- (void)testSetSelectedFont_isMultiple_ +{ + var fontManager = [CPFontManager sharedFontManager]; + + [fontManager setSelectedFont:fontA isMultiple:NO]; + [self assert:[fontManager selectedFont] equals:fontA]; + [self assertFalse:[fontManager isMultiple]]; + + [fontManager setSelectedFont:fontA isMultiple:YES]; + [self assert:[fontManager selectedFont] equals:fontA]; + [self assertTrue:[fontManager isMultiple]]; +} + +- (void)testWeightOfFont_ +{ + var fontManager = [CPFontManager sharedFontManager]; + + [self assert:[fontManager weightOfFont:fontA] equals:5 message:@"standard font weight"]; + + fontB = [CPFont boldFontWithName:@"Helvetica" size:12.0 italic:YES]; + [self assert:[fontManager weightOfFont:fontB] equals:9 message:@"bold font weight"]; + +} + +- (void)testTraitsOfFont_ +{ + var fontManager = [CPFontManager sharedFontManager]; + fontB = [CPFont boldFontWithName:@"Helvetica" size:12.0 italic:YES]; + + [self assert:[fontManager traitsOfFont:fontA] equals:0 message:@"fontA traits"]; + [self assert:[fontManager traitsOfFont:fontB] equals:CPBoldFontMask | CPItalicFontMask message:@"fontB traits"]; +} + +- (void)testAddFontTrait_ +{ + var fontManager = [CPFontManager sharedFontManager]; + + [fontManager setSelectedFont:fontA isMultiple:NO]; + [fontManager setTarget:self]; + + fontB = [CPFont boldFontWithName:@"Helvetica" size:12.0 italic:YES]; + // Do nothing conversion. + [fontManager addFontTrait:self]; + + [self assert:fontA equals:convertedFontA message:@"fontA changed"]; + [self assert:fontB equals:convertedFontB message:@"fontB changed"]; + + // Add bold + tag = CPBoldFontMask; + [fontManager addFontTrait:self]; + + [self assertTrue:[convertedFontA isBold] message:@"add bold to fontA"]; + [self assertFalse:[convertedFontA isItalic] message:@"maintain no italics fontA"]; + [self assert:8.0 equals:[convertedFontA size]]; + + [self assertTrue:[convertedFontB isBold]]; + [self assertTrue:[convertedFontB isItalic]]; + [self assert:12.0 equals:[convertedFontB size]]; + + // Remove bold, add italic + tag = CPUnboldFontMask || CPItalicFontMask; + [fontManager addFontTrait:self]; + + [self assertFalse:[convertedFontA isBold] message:@"maintain no bold fontA with CPUnboldFontMask || CPItalicFontMask"]; + [self assertFalse:[convertedFontA isItalic] message:@"add italics fontA with CPUnboldFontMask || CPItalicFontMask"]; + [self assert:8.0 equals:[convertedFontA size] message:@"maintain size fontA with CPUnboldFontMask || CPItalicFontMask"]; + + [self assertFalse:[convertedFontB isBold] message:@"remove bold fontB with CPUnboldFontMask || CPItalicFontMask"]; + [self assertTrue:[convertedFontB isItalic] message:@"maintain italics fontB with CPUnboldFontMask || CPItalicFontMask"]; + [self assert:12.0 equals:[convertedFontB size] message:@"maintain size fontB with CPUnboldFontMask || CPItalicFontMask"]; + + // Remove italic + tag = CPUnitalicFontMask; + [fontManager addFontTrait:self]; + + [self assertFalse:[convertedFontA isBold] message:@"maintain no bold fontA with CPUnitalicFontMask"]; + [self assertFalse:[convertedFontA isItalic] message:@"maintain no italics fontA with CPUnitalicFontMask"]; + [self assert:8.0 equals:[convertedFontA size] message:@"maintain size fontA with CPUnitalicFontMask"]; + + [self assertTrue:[convertedFontB isBold] message:@"maintain bold fontB with CPUnitalicFontMask"]; + [self assertFalse:[convertedFontB isItalic] message:@"remove italics from fontB with CPUnitalicFontMask"]; + [self assert:12.0 equals:[convertedFontB size] message:@"maintain size fontB with CPUnitalicFontMask"]; +} + +- (void)testConvertFont_toFace_ +{ + fontB = [CPFont boldFontWithName:@"Helvetica" size:12.0 italic:YES]; + + convertedFontB = [[CPFontManager sharedFontManager] convertFont:fontB toFace:@"Arial"]; + + [self assertTrue:[convertedFontB isBold] message:@"maintain bold fontB"]; + [self assertTrue:[convertedFontB isItalic] message:@"maintain italic fontB"]; + [self assert:12.0 equals:[convertedFontB size] message:@"maintain size fontB"]; + [self assert:@"Arial" equals:[convertedFontB familyName] message:@"change face fontB"]; +} + +- (@action)changeFont:(id)sender +{ + convertedFontA = [sender convertFont:fontA]; + convertedFontB = [sender convertFont:fontB]; +} + +@end diff --git a/Tests/AppKit/CPFontTest.j b/Tests/AppKit/CPFontTest.j index c1ce8c887..77a51ff09 100644 --- a/Tests/AppKit/CPFontTest.j +++ b/Tests/AppKit/CPFontTest.j @@ -68,22 +68,59 @@ { [inv setArgument:arg atIndex:idx + 2]; }]; - + [inv invoke]; var font = [inv returnValue]; - + [self assertTrue:([font isBold] == bold) message: [font description] + " should be bold: " + bold]; [self assertTrue:([font isItalic] == italic) message: [font description] + " should be italic: " + italic]; - + // get from cache [inv invoke]; var cachedFont = [inv returnValue]; [self assert:cachedFont equals:font]; - + [self assertTrue:([cachedFont isBold] == bold) message:" cached " + [cachedFont description] + " should be bold: " + bold]; [self assertTrue:([cachedFont isItalic] == italic) message:" cached " + [cachedFont description] + " should be italic: " + italic]; } +- (void)testSizes +{ + var font = [CPFont fontWithName:@"Arial" size:0], + systemSize = [CPFont systemFontSize]; + + [self assertTrue:([font size] === systemSize) message:" font size should be system size (" + systemSize + ")"]; + + var sysfont1 = [CPFont systemFontOfSize:12]; + [self assertTrue:([sysfont1 size] === 12) message:" font size should be 12"]; + + var sysfont2 = [CPFont systemFontOfSize:0]; + [self assertTrue:([sysfont2 size] === systemSize) message:" font size should be system size (" + systemSize + ")"]; + + var sysfont3 = [CPFont systemFontOfSize:-1]; + [self assertTrue:([sysfont3 size] === systemSize) message:" font size should be system size (" + systemSize + ")"]; + + var newSystemSize = 13; + [CPFont setSystemFontSize:newSystemSize]; + [self assertTrue:([sysfont2 size] === systemSize) message:" font size should be old system size (" + systemSize + ")"]; + [self assertTrue:([sysfont3 size] === newSystemSize) message:" font size should be new system size (" + newSystemSize + ")"]; +} + +- (void)testFaces +{ + var font = [CPFont fontWithName:@"Georgia" size:0], + systemFace = [CPFont systemFontFace]; + + [self assertTrue:([font familyName] === @"Georgia") message:" font face should be Georgia"]; + + var sysfont = [CPFont systemFontOfSize:12]; + [self assertTrue:([sysfont familyName] === systemFace) message:" font face should be system face (" + systemFace + ")"]; + + var newSystemFace = @"Georgia"; + [CPFont setSystemFontFace:newSystemFace]; + [self assertTrue:([sysfont familyName] === newSystemFace) message:" font face should be new system face (" + newSystemFace + ")"]; +} + @end var _CPFontStripRegExp = new RegExp("(^\\s*[\"']?|[\"']?\\s*$)", "g"); diff --git a/Tests/AppKit/CPGeometryTest.j b/Tests/AppKit/CPGeometryTest.j deleted file mode 100644 index 50f91828e..000000000 --- a/Tests/AppKit/CPGeometryTest.j +++ /dev/null @@ -1,17 +0,0 @@ -@import - -@implementation CPGeometryTest : OJTestCase -{ -} - -- (void)testCPRectContainsRect -{ - [self assertTrue:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(0, 0, 50, 50))]; - [self assertTrue:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(50, 50, 50, 50))]; - [self assertTrue:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(450, 450, 50, 50))]; - [self assertTrue:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(500, 500, 0, 0))]; - [self assertFalse:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(50, 50, 500, 500))]; - [self assertFalse:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(500, 500, 1, 1))]; -} - -@end diff --git a/Tests/AppKit/CPPopUpButtonTest.j b/Tests/AppKit/CPPopUpButtonTest.j index 40f20e0b9..1e87a7616 100644 --- a/Tests/AppKit/CPPopUpButtonTest.j +++ b/Tests/AppKit/CPPopUpButtonTest.j @@ -51,8 +51,11 @@ [[popUpButton menu] removeItemAtIndex:5]; - [self assert:4 equals:[popUpButton indexOfSelectedItem]]; + // Removing the selected item resets the selection to item 0. + [self assert:0 equals:[popUpButton indexOfSelectedItem]]; + // Removing an item underneath the selected item moves the selection. + [popUpButton selectItemAtIndex:4]; [[popUpButton menu] removeItemAtIndex:0]; [self assert:3 equals:[popUpButton indexOfSelectedItem]]; @@ -420,6 +423,32 @@ { } +- (void)testRemoveItemAtIndex_ +{ + button = [[CPPopUpButton alloc] initWithFrame:CGRectMake(0.0, 0.0, 100.0, 28.0) pullsDown:NO]; + + [self assert:CPNotFound equals:[button indexOfSelectedItem] message:"no item selected in empty pop up"]; + + [button addItemWithTitle:@"one"]; + [button addItemWithTitle:@"two"]; + [button addItemWithTitle:@"three"]; + [button addItemWithTitle:@"four"]; + + // Note this behaviour is different for pullsDown:YES. + [self assert:0 equals:[button indexOfSelectedItem] message:"first item selected after items added"]; + + [button selectItemAtIndex:3]; + + [self assert:3 equals:[button indexOfSelectedItem] message:"last item selected"]; + + [button removeItemAtIndex:3]; + [self assert:0 equals:[button indexOfSelectedItem] message:"first item selected after selected item deleted"]; + + [button selectItemAtIndex:2]; + [button removeItemAtIndex:1]; + [self assert:1 equals:[button indexOfSelectedItem] message:"selection index reduced when a prior item is removed"]; +} + @end @@ -432,4 +461,4 @@ return "Transformed-" + aValue; } -@end \ No newline at end of file +@end diff --git a/Tests/AppKit/CPSplitViewTest.j b/Tests/AppKit/CPSplitViewTest.j index 04a99b9be..6551c07b5 100644 --- a/Tests/AppKit/CPSplitViewTest.j +++ b/Tests/AppKit/CPSplitViewTest.j @@ -125,12 +125,12 @@ // Recreate the split view. [self setUp]; [splitView setAutosaveName:@"Charles"]; + // FIXME At the moment restore from autosave only happens if the split view is loaded from a // coder. It seems like it should happen when initialising in code too, but some research of - // Cocoa's behaviour will need to be done first. - splitView._needsRestoreFromAutosave = YES; - // Trigger autosave restore. - [splitView setFrameSize:CGSizeMake(110, 100)]; + // Cocoa's behaviour will need to be done first. For now, trigger it by hand. + [splitView _restoreFromAutosave]; + [self assert:25 equals:[viewA frameSize].height message:@"divider position restored"]; } diff --git a/Tests/AppKit/CPTableViewTest.j b/Tests/AppKit/CPTableViewTest.j index 48edb6f4e..e07a63664 100644 --- a/Tests/AppKit/CPTableViewTest.j +++ b/Tests/AppKit/CPTableViewTest.j @@ -1,5 +1,7 @@ @import +[CPApplication sharedApplication]; + @implementation CPTableViewTest : OJTestCase { CPTableView tableView; @@ -22,15 +24,24 @@ { doubleActionReceived = NO; + var theWindow = [[CPWindow alloc] initWithContentRect:CGRectMake(0.0, 0.0, 1024.0, 768.0) + styleMask:CPWindowNotSizable]; + [[theWindow contentView] addSubview:tableView]; + [tableView setTarget:self]; [tableView setDoubleAction:@selector(doubleAction:)]; // CPEvent with 2 clickCount - var dblClk = [CPEvent mouseEventWithType:CPLeftMouseUp location:CGPointMake(50, 50) modifierFlags:0 - timestamp:0 windowNumber:0 context:nil eventNumber:0 clickCount:2 pressure:0]; + var dblClkDown = [CPEvent mouseEventWithType:CPLeftMouseDown location:CGPointMake(50, 50) modifierFlags:0 + timestamp:0 windowNumber:[theWindow windowNumber] context:nil eventNumber:0 clickCount:2 pressure:0], + dblClkUp = [CPEvent mouseEventWithType:CPLeftMouseUp location:CGPointMake(50, 50) modifierFlags:0 + timestamp:0 windowNumber:[theWindow windowNumber] context:nil eventNumber:0 clickCount:2 pressure:0]; - [[CPApplication sharedApplication] sendEvent:dblClk]; - [tableView trackMouse:dblClk]; + [[CPApplication sharedApplication] sendEvent:dblClkDown]; + [tableView trackMouse:dblClkDown]; + + [[CPApplication sharedApplication] sendEvent:dblClkUp]; + [tableView trackMouse:dblClkUp]; [self assertTrue:doubleActionReceived]; } @@ -217,6 +228,35 @@ [self assert:2 * visibleRows equals:[allViews count] message:"only as many data views as necessary should be present (2)"]; } +- (void)testContentBinding +{ + var theWindow = [[CPWindow alloc] initWithContentRect:CGRectMake(0, 0, 200, 150) + styleMask:CPWindowNotSizable], + contentBindingTable = [[CPTableView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)], + tableColumn = [[CPTableColumn alloc] initWithIdentifier:@"A"], + delegate = [ContentBindingTableDelegate new]; + + [contentBindingTable addTableColumn:tableColumn]; + [delegate setTester:self]; + [contentBindingTable setDelegate:delegate]; + + [delegate setTableEntries:[[@"A1", @"B1"], [@"A2", @"B2"], [@"A3", @"B3"]]]; + [contentBindingTable bind:@"content" toObject:delegate withKeyPath:@"tableEntries" options:nil]; + + // The following should also work: + //var ac = [[CPArrayController alloc] initWithContent:[delegate tableEntries]]; + //[contentBindingTable bind:@"content" toObject:ac withKeyPath:@"arrangedObjects" options:nil]; + + [[theWindow contentView] addSubview:contentBindingTable]; + [theWindow makeFirstResponder:contentBindingTable]; + + [[CPRunLoop currentRunLoop] limitDateForMode:CPDefaultRunLoopMode]; + + // Set the model again with different values + [delegate setTableEntries:[[@"C1", @"D1"], [@"C2", @"D2"], [@"C3", @"D3"]]]; + [contentBindingTable reloadData]; +} + @end @implementation TestDataSource : CPObject @@ -252,6 +292,21 @@ @end +@implementation ContentBindingTableDelegate : CPObject +{ + // For the purpose of this test, the delegate contains the model (!). + CPArray tableEntries @accessors; + CPTableViewTest tester @accessors; +} + +- (void)tableView:(CPTableView)aTableView willDisplayView:(CPView)aView forTableColumn:(CPTableColumn)tableColumn row:(int)row +{ + // Make sure each view contains the full row in its objectValue + [tester assert:tableEntries[row] equals:[aView objectValue]]; +} + +@end + @implementation CustomTextView0 : CPTextField @end diff --git a/Tests/AppKit/CPWindowTest.j b/Tests/AppKit/CPWindowTest.j index 0ef64e874..ec415d032 100644 --- a/Tests/AppKit/CPWindowTest.j +++ b/Tests/AppKit/CPWindowTest.j @@ -1,7 +1,7 @@ @import -[CPApplication sharedApplication] +[CPApplication sharedApplication]; @implementation CPWindowTest : OJTestCase { @@ -109,4 +109,4 @@ message:@"nextTextField should be the previous valid key view of contentView"]; } -@end \ No newline at end of file +@end diff --git a/Tests/Foundation/CPArrayTest.j b/Tests/Foundation/CPArrayTest.j index a99dfc931..0c4e23cd4 100644 --- a/Tests/Foundation/CPArrayTest.j +++ b/Tests/Foundation/CPArrayTest.j @@ -198,7 +198,6 @@ } context:13] same:1]; } - - (void)test_indexOfObjectWithOptions_passingTest { var array = [[[self class] arrayClass] arrayWithObjects: @@ -357,6 +356,111 @@ } +- (void)test_indexesOfObjectsPassingTest_ +{ + var array = [[[self class] arrayClass] arrayWithObjects: + { name:@"Tom", age:7 }, + { name:@"Dick", age:13 }, + { name:@"Harry", age:27 }, + { name:@"Zelda", age:7 }]; + + [self assert:[array indexesOfObjectsPassingTest:function() { return YES; }] equals:[CPIndexSet indexSetWithIndexesInRange:CPMakeRange(0, 4)]]; + [self assert:[array indexesOfObjectsPassingTest:function() { return NO; }] equals:[CPIndexSet indexSet]]; + [self assert:[array indexesOfObjectsPassingTest:function() { return nil; }] equals:[CPIndexSet indexSet]]; + + [self assert:[array indexesOfObjectsPassingTest:function(anObject, anIndex) + { + return [anObject.name isEqual:@"Harry"]; + }] equals:[CPIndexSet indexSetWithIndex:2]]; + + var indexSet = [CPIndexSet indexSetWithIndex:0]; + [indexSet addIndex:3]; + + [self assert:[array indexesOfObjectsPassingTest:function(anObject, anIndex) + { + return anObject.age === 7; + }] equals:indexSet]; + + [self assert:[array indexesOfObjectsPassingTest:function(anObject, anIndex) + { + return [anObject.name isEqual:@"Horton"]; + }] equals:[CPIndexSet indexSet]]; +} + +- (void)test_indexesOfObjectsPassingTest_context_ +{ + var array = [[[self class] arrayClass] arrayWithObjects: + { name:@"Tom", age:7 }, + { name:@"Dick", age:13 }, + { name:@"Harry", age:27 }, + { name:@"Zelda", age:7 }]; + + [self assert:[array indexesOfObjectsPassingTest:function(anObject, anIndex, aContext) + { + return [anObject.name isEqual:aContext]; + } context:@"Harry"] equals:[CPIndexSet indexSetWithIndex:2]]; + + var indexSet = [CPIndexSet indexSetWithIndex:0]; + [indexSet addIndex:3]; + + [self assert:[array indexesOfObjectsPassingTest:function(anObject, anIndex, aContext) + { + return anObject.age === aContext; + } context:7] equals:indexSet]; +} + +- (void)test_indexesOfObjectsWithOptions_passingTest +{ + var array = [[[self class] arrayClass] arrayWithObjects: + { name:@"Tom", age:7 }, + { name:@"Dick", age:13 }, + { name:@"Harry", age:27 }, + { name:@"Zelda", age:7 }], + namePredicate = function(anObject, anIndex) + { + return [anObject.name isEqual:@"Harry"]; + }, + agePredicate = function(anObject, anIndex) + { + return anObject.age === 7; + }; + + [self assert:[array indexesOfObjectsWithOptions:CPEnumerationNormal passingTest:namePredicate] equals:[CPIndexSet indexSetWithIndex:2]]; + [self assert:[array indexesOfObjectsWithOptions:CPEnumerationReverse passingTest:namePredicate] equals:[CPIndexSet indexSetWithIndex:2]]; + + var indexSet = [CPIndexSet indexSetWithIndex:0]; + [indexSet addIndex:3]; + + [self assert:[array indexesOfObjectsWithOptions:CPEnumerationNormal passingTest:agePredicate] equals:indexSet]; + [self assert:[array indexesOfObjectsWithOptions:CPEnumerationReverse passingTest:agePredicate] equals:indexSet]; +} + +- (void)test_indexesOfObjectsWithOptions_passingTest_context +{ + var array = [[[self class] arrayClass] arrayWithObjects: + { name:@"Tom", age:7 }, + { name:@"Dick", age:13 }, + { name:@"Harry", age:27 }, + { name:@"Zelda", age:7 }], + namePredicate = function(anObject, anIndex, aContext) + { + return [anObject.name isEqual:aContext]; + }, + agePredicate = function(anObject, anIndex, aContext) + { + return anObject.age === aContext; + }; + + [self assert:[array indexesOfObjectsWithOptions:CPEnumerationNormal passingTest:namePredicate context:@"Harry"] equals:[CPIndexSet indexSetWithIndex:2]]; + [self assert:[array indexesOfObjectsWithOptions:CPEnumerationReverse passingTest:namePredicate context:@"Harry"] equals:[CPIndexSet indexSetWithIndex:2]]; + + var indexSet = [CPIndexSet indexSetWithIndex:0]; + [indexSet addIndex:3]; + + [self assert:[array indexesOfObjectsWithOptions:CPEnumerationNormal passingTest:agePredicate context:7] equals:indexSet]; + [self assert:[array indexesOfObjectsWithOptions:CPEnumerationReverse passingTest:agePredicate context:7] equals:indexSet]; +} + - (void)test_isEqualToArray_ { var arrayClass = [[self class] arrayClass], @@ -553,6 +657,22 @@ [self assertTrue:s2[1] === a message:s2[1] + " is larger then " + a + " when sorting case insensitive"]; } +- (void)testSortUsingDescriptorsWithKeyPath +{ + var a = [CPDictionary dictionaryWithJSObject:{"a": "AB", "b": "ba"}], + b = [CPDictionary dictionaryWithJSObject:{"a": "aa", "b": "BB"}], + A = [CPDictionary dictionaryWithJSObject:{"x": a}], + B = [CPDictionary dictionaryWithJSObject:{"x": b}], + array = [A, B], + d1 = [[CPSortDescriptor sortDescriptorWithKey:@"x.b" ascending:YES selector:@selector(compare:)]], + d2 = [[CPSortDescriptor sortDescriptorWithKey:@"x.b" ascending:NO selector:@selector(compare:)]], + s1 = [array sortedArrayUsingDescriptors:d1], + s2 = [array sortedArrayUsingDescriptors:d2]; + + [self assertTrue:s1[1] === A message:s1[1] + " is larger then " + A + " when sorting ascending"]; + [self assertTrue:s2[0] === A message:s2[0] + " is larger then " + A + " when sorting descending"]; +} + @end @implementation AlwaysEqual : CPObject diff --git a/Tests/Foundation/CPDictionaryTest.j b/Tests/Foundation/CPDictionaryTest.j index 2760de479..96a6651ec 100644 --- a/Tests/Foundation/CPDictionaryTest.j +++ b/Tests/Foundation/CPDictionaryTest.j @@ -206,6 +206,77 @@ }]; } +- (void)testKeysOfEntriesPassingTest +{ + var numberDictionary = [CPDictionary dictionaryWithJSObject:{ + key1: 5, + key2: 1, + key3: 4, + key4: 2, + key5: 3 + }]; + + var expected = [@"key1", @"key3"], + result = [numberDictionary keysOfEntriesPassingTest:function(key, value, stop) + { + return value >= 4; + }]; + + [self assert:expected equals:result]; + + expected = [@"key3", @"key1"], + result = [numberDictionary keysOfEntriesWithOptions:CPEnumerationReverse passingTest:function(key, value, stop) + { + return value >= 4; + }]; + + [self assert:expected equals:result]; + + expected = [@"key3"], + result = [numberDictionary keysOfEntriesWithOptions:CPEnumerationReverse passingTest:function(key, value, stop) + { + if (value === 4) + stop(YES); + + return value >= 4; + }]; + + [self assert:expected equals:result]; + + var stringDictionary = [CPDictionary dictionaryWithJSObject:{ + a: @"Z", b: @"y", c: @"X", d: @"W", + e: @"V", f: @"u", g: @"T", h: @"s", + i: @"R", j: @"q", k: @"P", l: @"o" + }]; + + expected = [@"j", @"k", @"l"]; + result = [stringDictionary keysOfEntriesPassingTest:function(key, value, stop) + { + return value.toLowerCase() <= @"q"; + }]; + + [self assert:expected equals:result]; + + expected = [@"l", @"k", @"j"]; + result = [stringDictionary keysOfEntriesWithOptions:CPEnumerationReverse passingTest:function(key, value, stop) + { + return value.toLowerCase() <= @"q"; + }]; + + [self assert:expected equals:result]; + + expected = [@"j", @"k"]; + result = [stringDictionary keysOfEntriesPassingTest:function(key, value, stop) + { + if (value === @"P") + stop(YES); + + return value.toLowerCase() <= "q"; + }]; + + [self assert:expected equals:result]; +} + - (void)testKeysSortedByValueUsingSelector { var numberDictionary = [CPDictionary dictionaryWithJSObject:{ @@ -237,6 +308,82 @@ [self assert:expected equals:result]; } +- (void)testKeysSortedByValueUsingComparator +{ + var numberDictionary = [CPDictionary dictionaryWithJSObject:{ + key1: 5, + key2: 1, + key3: 4, + key4: 2, + key5: 3 + }]; + + var expected = [@"key2", @"key4", @"key5", @"key3", @"key1"], + result = [numberDictionary keysSortedByValueUsingComparator:function(obj1, obj2) + { + return obj1 < obj2 ? CPOrderedAscending : CPOrderedDescending; + }]; + + [self assert:expected equals:result]; + + var stringDictionary = [CPDictionary dictionaryWithJSObject:{ + a: @"Z", b: @"y", c: @"X", d: @"W", + e: @"V", f: @"u", g: @"T", h: @"s", + i: @"R", j: @"q", k: @"P", l: @"o" + }]; + + expected = [@"l", @"k", @"j", @"i", @"h", @"g", @"f", @"e", @"d", @"c", @"b", @"a"]; + result = [stringDictionary keysSortedByValueUsingComparator:function(obj1, obj2) + { + return obj1.toLowerCase() < obj2.toLowerCase() ? CPOrderedAscending : CPOrderedDescending; + }]; + + [self assert:expected equals:result]; + + expected = [@"k", @"i", @"g", @"e", @"d", @"c", @"a", @"l", @"j", @"h", @"f", @"b"]; + result = [stringDictionary keysSortedByValueUsingComparator:function(obj1, obj2) + { + return obj1 < obj2 ? CPOrderedAscending : CPOrderedDescending; + }]; + [self assert:expected equals:result]; +} + +- (void)testEnumerateKeysAndObjectsUsingBlock_ +{ + var input0 = [CPDictionary dictionary], + input1 = [CPDictionary dictionaryWithJSObject:{a: 1, b: 3, c: "b"}], + output = [CPMutableDictionary dictionary], + outputFunction = function(aKey, anObject) + { + [output setValue:anObject forKey:aKey]; + }; + + [input0 enumerateKeysAndObjectsUsingBlock:outputFunction]; + [self assert:0 equals:[output count] message:@"output when enumerating empty dictionary"]; + + [input1 enumerateKeysAndObjectsUsingBlock:outputFunction]; + [self assert:3 equals:[output count] message:@"output when enumerating input1"]; + [self assert:input1 equals:output message:@"output should equal input"]; + + // Stop enumerating after two keys. + output = [CPMutableDictionary dictionary]; + stoppingFunction = function(aKey, anObject, stop) + { + [output setValue:anObject forKey:aKey]; + if ([output count] > 1) + stop(YES); // AT_DEREF(stop, YES) - FIXME Replace with proper @ref @deref when in ObjJ. + } + + [input1 enumerateKeysAndObjectsUsingBlock:stoppingFunction]; + [self assert:2 equals:[output count] message:@"output when enumerating input1 and stopping after 2"]; + + // CPEnumerationReverse shouldn't have any particular effect. Just check that it doesn't crash. + output = [CPMutableDictionary dictionary]; + [input1 enumerateKeysAndObjectsWithOptions:CPEnumerationReverse usingBlock:outputFunction]; + [self assert:3 equals:[output count] message:@"output when enumerating input1"]; + [self assert:input1 equals:output message:@"output should equal input"]; +} + - (void)testJSObjectDescription { var dict = [[CPDictionary alloc] initWithObjects:[CGRectMake(1, 2, 3, 4), CGPointMake(5, 6)] forKeys:[@"key1", @"key2"]], diff --git a/Tests/Foundation/CPGeometryTest.j b/Tests/Foundation/CPGeometryTest.j new file mode 100644 index 000000000..2aa9fb909 --- /dev/null +++ b/Tests/Foundation/CPGeometryTest.j @@ -0,0 +1,324 @@ +@import + +@implementation CPGeometryTest : OJTestCase +{ +} + +- (void)testCPRectContainsRect +{ + [self assertTrue:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(0, 0, 50, 50))]; + [self assertTrue:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(50, 50, 50, 50))]; + [self assertTrue:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(450, 450, 50, 50))]; + [self assertTrue:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(500, 500, 0, 0))]; + [self assertFalse:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(50, 50, 500, 500))]; + [self assertFalse:CPRectContainsRect(CGRectMake(0, 0, 500, 500), CGRectMake(500, 500, 1, 1))]; +} + +- (void)testCPPointEqualToPoint +{ + [self assertTrue:CPPointEqualToPoint(CGPointMake(10, 10), CGPointMake(10, 10))]; + [self assertFalse:CPPointEqualToPoint(CGPointMake(0, 10), CGPointMake(10, 10))]; + [self assertFalse:CPPointEqualToPoint(CGPointMake(10, 10), CGPointMake(0, 10))]; + [self assertFalse:CPPointEqualToPoint(CGPointMake(10, 0), CGPointMake(10, 10))]; + [self assertFalse:CPPointEqualToPoint(CGPointMake(10, 10), CGPointMake(10, 0))]; +} + +- (void)testCPRectEqualToRect +{ + [self assertTrue:CPRectEqualToRect(CGRectMake(0, 0, 100, 100), CGRectMake(0, 0, 100, 100))]; + [self assertFalse:CPRectEqualToRect(CGRectMake(50, 0, 100, 100), CGRectMake(0, 0, 100, 100))]; + [self assertFalse:CPRectEqualToRect(CGRectMake(0, 0, 100, 100), CGRectMake(50, 0, 100, 100))]; + [self assertFalse:CPRectEqualToRect(CGRectMake(0, 50, 100, 100), CGRectMake(0, 0, 100, 100))]; + [self assertFalse:CPRectEqualToRect(CGRectMake(0, 0, 100, 100), CGRectMake(0, 50, 100, 100))]; + [self assertFalse:CPRectEqualToRect(CGRectMake(0, 0, 50, 100), CGRectMake(0, 0, 100, 100))]; + [self assertFalse:CPRectEqualToRect(CGRectMake(0, 0, 100, 100), CGRectMake(0, 0, 50, 100))]; + [self assertFalse:CPRectEqualToRect(CGRectMake(0, 0, 100, 50), CGRectMake(0, 0, 100, 100))]; + [self assertFalse:CPRectEqualToRect(CGRectMake(0, 0, 100, 100), CGRectMake(0, 0, 100, 50))]; +} + +- (void)textCPRectIsEmpty +{ + [self assertTrue:CPRectIsEmpty(CGRectMake(0, 0, 0, 10))]; + [self assertTrue:CPRectIsEmpty(CGRectMake(0, 0, 10, 0))]; + [self assertTrue:CPRectIsEmpty(CGRectMake(0, 0, -10, 10))]; + [self assertTrue:CPRectIsEmpty(CGRectMake(0, 0, 10, -10))]; + [self assertFalse:CPRectIsEmpty(CGRectMake(0, 0, 10, 10))]; +} + +- (void)testCPRectIntersection +{ + var lhsRect = CGRectMake(0, 0, 20, 20), + rhsRect = CGRectMake(10, 10, 20, 20), + intersectionResultRect = CGRectMake(10, 10, 10, 10); + + [self assertTrue:CPRectEqualToRect(CPRectIntersection(lhsRect, rhsRect), intersectionResultRect)]; + intersectionResultRect.origin.x = 30; + intersectionResultRect.origin.y = 30; + [self assertFalse:CPRectEqualToRect(CPRectIntersection(lhsRect, rhsRect), intersectionResultRect)]; +} + +- (void)testCPPointCreateCopy +{ + var point = CGPointMake(1, 1), + copiedPoint = CPPointCreateCopy(point); + [self assertTrue:CPPointEqualToPoint(point, copiedPoint)]; + point.x = 10; + [self assertFalse:CPPointEqualToPoint(point, copiedPoint)]; +} + +- (void)testCPPointMake +{ + var testPoint = CPPointMake(1, 2); + [self assert:1 equals:testPoint.x message:"point x coordinate failed"]; + [self assert:2 equals:testPoint.y message:"point y coordinate failed"]; +} + +- (void)testCPRectInset +{ + var testRect = CGRectMake(0, 0, 100, 100); + [self assertTrue:CGRectEqualToRect(CGRectMake(10, 10, 80, 80), CPRectInset(testRect, 10, 10))]; +} + +- (void)testCPRectIntegral +{ + var rect = CGRectMake(0.1, 0.2, 10.3, 10.4); + [self assertTrue:CGRectEqualToRect(CGRectMake(0, 0, 11, 11), CPRectIntegral(rect))]; +} + +- (void)testCPRectCreateCopy +{ + var rect = CGRectMake(0, 0, 100, 100), + copiedRect = CPRectCreateCopy(rect); + [self assertTrue:CGRectEqualToRect(rect, copiedRect)]; + rect.origin.x = 10; + [self assertFalse:CGRectEqualToRect(rect, copiedRect)]; +} + +- (void)testCPRectMake +{ + var rect = CPRectMake(10, 20, 30, 40); + [self assert:10 equals:rect.origin.x message:"Rect x coordinate failed"]; + [self assert:20 equals:rect.origin.y message:"Rect x coordinate failed"]; + [self assert:30 equals:rect.size.width message:"Rect width failed"]; + [self assert:40 equals:rect.size.height message:"Rect height failed"]; +} + +- (void)testCPRectOffset +{ + var initialRect = CGRectMake(10, 10, 100, 100), + offsetRect = CGRectMake(20, 20, 100, 100); + [self assertTrue:CGRectEqualToRect(offsetRect, CPRectOffset(initialRect, 10, 10))]; + [self assertFalse:CGRectEqualToRect(initialRect, CPRectOffset(initialRect, 10, 10))]; +} + +- (void)testCPRectStandardize +{ + var initialRect = CGRectMake(10, 10, -10, -10), + standardizedRect = CGRectMake(0, 0, 10, 10); + [self assertTrue:CGRectEqualToRect(standardizedRect,CPRectStandardize(initialRect))]; + [self assertFalse:CGRectEqualToRect(initialRect,CPRectStandardize(initialRect))]; +} + +- (void)testCPRectUnion +{ + var firstRect = CGRectMake(0, 0, 10, 10), + secondRect = CGRectMake(20, 20, 10, 10), + unitedRect = CGRectMake(0, 0, 30, 30); + [self assertTrue:CGRectEqualToRect(unitedRect, CPRectUnion(firstRect, secondRect))]; + [self assertFalse:CGRectEqualToRect(firstRect, CPRectUnion(firstRect, secondRect))]; +} + +- (void)testCPSizeCreateCopy +{ + var initialSize = CGSizeMake(100, 200), + copiedSize = CPSizeCreateCopy(initialSize); + [self assertTrue:CGSizeEqualToSize(initialSize, copiedSize)]; + initialSize.width = 10; + [self assertFalse:CGSizeEqualToSize(initialSize, copiedSize)]; +} + +- (void)testCPSizeMake +{ + var size = CPSizeMake(10, 20); + [self assert:10 equals:size.width message:"Size width failed"]; + [self assert:20 equals:size.height message:"Size height failed"]; +} + +- (void)testCPRectContainsPoint +{ + var rect = CGRectMake(10, 10, 10, 10); + [self assertTrue:CPRectContainsPoint(rect, CGPointMake(15, 15))]; + [self assertFalse:CPRectContainsPoint(rect, CGPointMake(5, 5))]; + [self assertFalse:CPRectContainsPoint(rect, CGPointMake(15, 5))]; + [self assertFalse:CPRectContainsPoint(rect, CGPointMake(25, 5))]; + [self assertFalse:CPRectContainsPoint(rect, CGPointMake(5, 15))]; + [self assertFalse:CPRectContainsPoint(rect, CGPointMake(5, 25))]; + [self assertFalse:CPRectContainsPoint(rect, CGPointMake(15, 25))]; + [self assertFalse:CPRectContainsPoint(rect, CGPointMake(25, 15))]; + [self assertFalse:CPRectContainsPoint(rect, CGPointMake(25, 25))]; +} + +- (void)testCPRectGetHeight +{ + var rect = CGRectMake(10, 20, 30, 40); + [self assert:40 equals:CPRectGetHeight(rect)]; +} + +- (void)testCPRectGetMaxX +{ + var rect = CGRectMake(10, 20, 40, 80); + [self assert:50 equals:CPRectGetMaxX(rect)]; +} + +- (void)testCPRectGetMaxY +{ + var rect = CGRectMake(10, 20, 40, 80); + [self assert:100 equals:CPRectGetMaxY(rect)]; +} + +- (void)testCPRectGetMidX +{ + var rect = CGRectMake(10, 20, 40, 80); + [self assert:30 equals:CPRectGetMidX(rect)]; +} + +- (void)testCPRectGetMidY +{ + var rect = CGRectMake(10, 20, 40, 80); + [self assert:60 equals:CPRectGetMidY(rect)]; +} + +- (void)testCPRectGetMinX +{ + var rect = CGRectMake(10, 20, 40, 80); + [self assert:10 equals:CPRectGetMinX(rect)]; +} + +- (void)testCPRectGetMinY +{ + var rect = CGRectMake(10, 20, 40, 80); + [self assert:20 equals:CPRectGetMinY(rect)]; +} + +- (void)testCPRectGetWidth +{ + var rect = CGRectMake(10, 20, 40, 80); + [self assert:40 equals:CPRectGetWidth(rect)]; +} + +- (void)testCPRectIntersectsRect +{ + var firstRect = CGRectMake(10, 10, 10, 10), + secondRect = CGRectMake(15, 15, 10, 10); + [self assertTrue:CPRectIntersectsRect(firstRect, secondRect)]; + secondRect.origin = CGPointMake(25, 25); + [self assertFalse:CPRectIntersectsRect(firstRect, secondRect)]; +} + +- (void)testCPRectIsNull +{ + [self assertTrue:CPRectIsNull(CGRectMake(0, 0, 0, 10))]; + [self assertTrue:CPRectIsNull(CGRectMake(0, 0, 10, 0))]; + [self assertTrue:CPRectIsNull(CGRectMake(0, 0, -10, 10))]; + [self assertTrue:CPRectIsNull(CGRectMake(0, 0, 10, -10))]; + [self assertFalse:CPRectIsNull(CGRectMake(0, 0, 10, 10))]; +} + +- (void)testCPDivideRect +{ + var initialRect = CGRectMake(0, 0, 10, 10), + slice = CGRectMake(0, 0, 0, 0), + rem = CGRectMake(0, 0, 0, 0); + + CPDivideRect(initialRect, slice, rem, 3, CGMinXEdge); + [self assertTrue:CGRectEqualToRect(slice, CGRectMake(0, 0, 3, 10))]; + [self assertTrue:CGRectEqualToRect(rem, CGRectMake(3, 0, 7, 10))]; + + CPDivideRect(initialRect, slice, rem, 3, CGMinYEdge); + [self assertTrue:CGRectEqualToRect(slice, CGRectMake(0, 0, 10, 3))]; + [self assertTrue:CGRectEqualToRect(rem, CGRectMake(0, 3, 10, 7))]; + + CPDivideRect(initialRect, slice, rem, 3, CGMaxXEdge); + [self assertTrue:CGRectEqualToRect(slice, CGRectMake(7, 0, 3, 10))]; + [self assertTrue:CGRectEqualToRect(rem, CGRectMake(0, 0, 7, 10))]; + + CPDivideRect(initialRect, slice, rem, 3, CGMaxYEdge); + [self assertTrue:CGRectEqualToRect(slice, CGRectMake(0, 7, 10, 3))]; + [self assertTrue:CGRectEqualToRect(rem, CGRectMake(0, 0, 10, 7))]; +} + +- (void)testCPSizeEqualToSize +{ + [self assertTrue:CPSizeEqualToSize(CGSizeMake(10, 10), CGSizeMake(10, 10))]; + [self assertFalse:CPSizeEqualToSize(CGSizeMake(0, 10), CGSizeMake(10, 10))]; + [self assertFalse:CPSizeEqualToSize(CGSizeMake(10, 10), CGSizeMake(0, 10))]; + [self assertFalse:CPSizeEqualToSize(CGSizeMake(10, 0), CGSizeMake(10, 10))]; + [self assertFalse:CPSizeEqualToSize(CGSizeMake(10, 10), CGSizeMake(10, 0))]; +} + +- (void)testCPStringFromPoint +{ + var point = CGPointMake(0, 1); + [self assert:"{0, 1}" equals: CPStringFromPoint(point)]; +} + +- (void)testCPStringFromSize +{ + var size = CGSizeMake(10, 20); + [self assert:"{10, 20}" equals: CPStringFromSize(size)]; +} + +- (void)testCPStringFromRect +{ + var rect = CGRectMake(10, 20, 30, 40); + [self assert:"{{10, 20}, {30, 40}}" equals:CPStringFromRect(rect)]; +} + +- (void)testCPPointFromString +{ + var point = CGPointMake(0,1); + [self assertTrue:CGPointEqualToPoint(point , CPPointFromString("{0, 1}"))]; +} + +- (void)testCPSizeFromString +{ + var size = CGSizeMake(10, 20); + [self assertTrue:CGSizeEqualToSize(size, CPSizeFromString("{10, 20}"))]; +} + +- (void)testCPRectFromString +{ + var rect = CGRectMake(10, 20, 30, 40); + [self assertTrue:CGRectEqualToRect(rect, CPRectFromString("{{10, 20}, {30, 40}}"))]; +} + +- (void)testCPSizeMakeZero +{ + var size = CGSizeMake(10, 20); + [self assertTrue:CGSizeEqualToSize(CGSizeMake(0, 0), CPSizeMakeZero(size))]; +} + +- (void)testCPRectMakeZero +{ + var rect = CGRectMake(10, 20, 30, 40); + [self assertTrue:CGRectEqualToRect(CGRectMake(0, 0, 0, 0), CPRectMakeZero(rect))]; +} + +- (void)testCPPointMakeZero +{ + var point = CGPointMake(10, 20); + [self assertTrue:CGPointEqualToPoint(CGPointMake(0, 0), CPPointMakeZero(0, 0))]; +} + +- (void)testCPPointFromEvent +{ + var anEvent = [CPEvent mouseEventWithType:CPLeftMouseDownMask location:CGPointMake(5.0, 5.0) modifierFlags:0 + timestamp:0 windowNumber:0 context:nil eventNumber:0 clickCount:1 pressure:1]; + anEvent.clientX = 1.0; + anEvent.clientY = 2.0; + var point = CPPointFromEvent(anEvent); + [self assert:1.0 equals:point.x message:"Point x coordinate failed"]; + [self assert:2.0 equals:point.y message:"Point y coordinate failed"]; +} + +@end diff --git a/Tests/Foundation/CPIndexSetTest.j b/Tests/Foundation/CPIndexSetTest.j index 654116773..8641ae5c7 100644 --- a/Tests/Foundation/CPIndexSetTest.j +++ b/Tests/Foundation/CPIndexSetTest.j @@ -543,6 +543,120 @@ function descriptionWithoutEntity(aString) [self assert:[0, 3] equals:visitedIndexes message:"enumeration should stop after 2 results"]; } +- (void)testIndexPassingTest +{ + var set0 = [CPMutableIndexSet indexSet], + index = [set0 indexPassingTest:function(anIndex) + { + return anIndex % 2 === 0; + }]; + + [self assertTrue:index === CPNotFound message:"must be equal to CPNotFound, was " + index]; + + [set0 addIndexesInRange:CPMakeRange(1, 10)]; + index = [set0 indexPassingTest:function(anIndex) + { + return anIndex % 2 === 0; + }]; + + [self assertTrue:index === 2 message:"index must be equal to 2"]; + + index = [set0 indexPassingTest:function(anIndex) + { + return anIndex === 1000; + }]; + + [self assertTrue:index === CPNotFound message:"must be equal to CPNotFound, was " + index]; +} + +- (void)testIndexesPassingTest +{ + var set0 = [CPMutableIndexSet indexSet], + set1 = [CPMutableIndexSet indexSet], + indexes = [set0 indexesPassingTest:function(anIndex) + { + return anIndex % 2 === 0; + }]; + + [self assertTrue:[indexes isEqualToIndexSet:set1] message:"must be equal to " + [set1 description] + ", was " + [indexes description]]; + + [set0 addIndexesInRange:CPMakeRange(1, 10)]; + [set1 addIndex:2]; + [set1 addIndex:4]; + [set1 addIndex:6]; + [set1 addIndex:8]; + [set1 addIndex:10]; + indexes = [set0 indexesPassingTest:function(anIndex) + { + return anIndex % 2 === 0; + }]; + + [self assertTrue:[indexes isEqualToIndexSet:set1] message:"must be equal to " + [set1 description] + ", was " + [indexes description]]; +} + +- (void)testIndexPassingTest_options +{ + var set0 = [CPMutableIndexSet indexSetWithIndexesInRange:CPMakeRange(1, 10)], + index = [set0 indexWithOptions:CPEnumerationReverse + passingTest:function(anIndex) + { + return anIndex % 2 === 0; + }]; + + [self assertTrue:index === 10 message:"index must be equal to 10"]; +} + +- (void)testIndexesPassingTest_options +{ + var set0 = [CPMutableIndexSet indexSetWithIndexesInRange:CPMakeRange(1, 5)], + set1 = [CPMutableIndexSet indexSet], + visitedIndexes = [], + indexes = [set0 indexesWithOptions:CPEnumerationReverse + passingTest:function(anIndex) + { + visitedIndexes.push(anIndex); + return anIndex % 2 === 0; + }]; + + [set1 addIndex:2]; + [set1 addIndex:4]; + + [self assertTrue:[indexes isEqualToIndexSet:set1] message:"must be equal to " + [set1 description] + ", was " + [indexes description]]; + [self assert:[5, 4, 3, 2, 1] equals:visitedIndexes message:"enumeration should be done in reverse"]; +} + +- (void)testIndexPassingTest_options_range +{ + var set0 = [CPMutableIndexSet indexSetWithIndexesInRange:CPMakeRange(1, 10)], + index = [set0 indexInRange:CPMakeRange(3, 4) + options:CPEnumerationReverse + passingTest:function(anIndex) + { + return anIndex % 2 === 0; + }]; + + [self assertTrue:index === 6 message:"index must be equal to 6"]; +} + +- (void)testIndexesPassingTest_options_range +{ + var set0 = [CPMutableIndexSet indexSetWithIndexesInRange:CPMakeRange(1, 5)], + set1 = [CPMutableIndexSet indexSet], + visitedIndexes = [], + indexes = [set0 indexesInRange:CPMakeRange(3, 4) + options:CPEnumerationReverse + passingTest:function(anIndex) + { + visitedIndexes.push(anIndex); + return anIndex % 2 === 0; + }]; + + [set1 addIndex:4]; + + [self assertTrue:[indexes isEqualToIndexSet:set1] message:"must be equal to " + [set1 description] + ", was " + [indexes description]]; + [self assert:[5, 4, 3] equals:visitedIndexes message:"enumeration should be done in reverse"]; +} + - (void)tearDown { _set = nil; diff --git a/Tests/Foundation/CPKVOTest.j b/Tests/Foundation/CPKVOTest.j index 5dde8c147..619a0e7f8 100644 --- a/Tests/Foundation/CPKVOTest.j +++ b/Tests/Foundation/CPKVOTest.j @@ -3,88 +3,91 @@ @implementation CPKVOTest : OJTestCase { - BOOL _sawInitialObservation; - BOOL _sawPriorObservation; - BOOL _sawObservation; - BOOL _sawDependentObservation; + BOOL _sawInitialObservation; + BOOL _sawPriorObservation; + BOOL _sawObservation; + BOOL _sawDependentObservation; - id bob; - id obj; - id cs101; - id focus; + id bob; + id obj; + id cs101; + id focus; CPInteger observationCount; + + CPInteger testNestedNotificationsBobCount; } - (void)setUp { _sawObservation = NO; + testNestedNotificationsBobCount = 0; } - (void)testAddObserver { bob = [[PersonTester alloc] init]; - [bob addObserver:self forKeyPath:@"name" options:nil context:"testAddObserver"]; + [bob addObserver:self forKeyPath:@"name" options:nil context:@"testAddObserver"]; [bob setValue:@"bob" forKey:@"name"]; - [self assertTrue: [bob valueForKey:@"name"] == @"set_bob" message: "valueForKey:'name' should be 'set_bob', was: "+[bob valueForKey:@"name"]]; - [self assertTrue: bob.name == @"set_bob" message: "bob.name should be 'set_bob', was: "+bob.name]; - [self assertTrue: _sawObservation message:"Never received an observation"]; + [self assertTrue: [bob valueForKey:@"name"] == @"set_bob" message:@"valueForKey:'name' should be 'set_bob', was: " + [bob valueForKey:@"name"]]; + [self assertTrue: bob.name == @"set_bob" message:@"bob.name should be 'set_bob', was: " + bob.name]; + [self assertTrue: _sawObservation message:@"Never received an observation"]; } - (void)testUnobservedKey { bob = [[PersonTester alloc] init]; - [bob addObserver:self forKeyPath:@"name" options:nil context:"testUnobservedKey"]; + [bob addObserver:self forKeyPath:@"name" options:nil context:@"testUnobservedKey"]; [bob setValue:@"555" forKey:@"phoneNumber"]; - [self assertTrue: [bob valueForKey:@"phoneNumber"] == @"555" message: "'phoneNumber' should be '555', was: "+[bob valueForKey:@"phoneNumber"]]; - [self assertFalse: _sawObservation message:"Should not have recieved an observation"]; + [self assertTrue:[bob valueForKey:@"phoneNumber"] == @"555" message:@"'phoneNumber' should be '555', was: " + [bob valueForKey:@"phoneNumber"]]; + [self assertFalse:_sawObservation message:@"Should not have recieved an observation"]; } - (void)testAddTwoObservers { bob = [[PersonTester alloc] init]; - [bob addObserver:self forKeyPath:@"name" options:nil context:"testAddTwoObservers"]; - [bob addObserver:[CPObject new] forKeyPath:@"name" options:nil context:"testAddTwoObservers"]; + [bob addObserver:self forKeyPath:@"name" options:nil context:@"testAddTwoObservers"]; + [bob addObserver:[CPObject new] forKeyPath:@"name" options:nil context:@"testAddTwoObservers"]; [bob setValue:@"bob" forKey:@"name"]; - [self assertTrue: [bob valueForKey:@"name"] == @"set_bob" message: "valueForKey:'name' should be bob, was: "+[bob valueForKey:@"name"]]; - [self assertTrue: bob.name == @"set_bob" message: "bob.name should be 'bob', was: "+bob.name]; - [self assertTrue: _sawObservation message:"Never recieved an observation"]; + [self assertTrue:[bob valueForKey:@"name"] == @"set_bob" message:@"valueForKey:'name' should be bob, was: " + [bob valueForKey:@"name"]]; + [self assertTrue:bob.name == @"set_bob" message:@"bob.name should be 'bob', was: " + bob.name]; + [self assertTrue:_sawObservation message:@"Never recieved an observation"]; } - (void)testDirectIVarObservation { var bob = [[PersonTester alloc] init]; - [bob addObserver:self forKeyPath:@"phoneNumber" options:nil context:"testDirectIVarObservation"]; + [bob addObserver:self forKeyPath:@"phoneNumber" options:nil context:@"testDirectIVarObservation"]; [bob setValue:@"555" forKey:@"phoneNumber"]; - [self assertTrue: [bob valueForKey:@"phoneNumber"] == @"555" message: "valueForKey:'phoneNumber' should be '555', was: "+[bob valueForKey:@"phoneNumber"]]; - [self assertTrue: bob.phoneNumber == @"555" message: "bob.phoneNumber should be '555', was: "+bob.phoneNumber]; - [self assertTrue: _sawObservation message:"Never recieved an observation"]; + [self assertTrue:[bob valueForKey:@"phoneNumber"] == @"555" message:@"valueForKey:'phoneNumber' should be '555', was: " + [bob valueForKey:@"phoneNumber"]]; + [self assertTrue:bob.phoneNumber == @"555" message:@"bob.phoneNumber should be '555', was: " + bob.phoneNumber]; + [self assertTrue:_sawObservation message:@"Never recieved an observation"]; } - (void)testRemoveObserver { bob = [[PersonTester alloc] init]; - [bob addObserver:self forKeyPath:@"name" options:nil context:"testRemoveObserver"]; - [bob addObserver:[CPString new] forKeyPath:@"name" options:nil context:"testRemoveObserver"]; + [bob addObserver:self forKeyPath:@"name" options:nil context:@"testRemoveObserver"]; + [bob addObserver:[CPString new] forKeyPath:@"name" options:nil context:@"testRemoveObserver"]; [bob removeObserver:self forKeyPath:@"name"]; [bob setValue:@"bob" forKey:@"name"]; - [self assertTrue: [bob valueForKey:@"name"] == @"set_bob" message: "valueForKey:'name' should be bob, was: "+[bob valueForKey:@"name"]]; + [self assertTrue:[bob valueForKey:@"name"] == @"set_bob" message:@"valueForKey:'name' should be bob, was: " + [bob valueForKey:@"name"]]; } - (void)testRemoveOtherObserver @@ -92,15 +95,15 @@ bob = [[PersonTester alloc] init]; obj = [CPString new]; - [bob addObserver:self forKeyPath:@"name" options:nil context:"testRemoveOtherObserver"]; - [bob addObserver:obj forKeyPath:@"name" options:nil context:"testRemoveOtherObserver"]; + [bob addObserver:self forKeyPath:@"name" options:nil context:@"testRemoveOtherObserver"]; + [bob addObserver:obj forKeyPath:@"name" options:nil context:@"testRemoveOtherObserver"]; [bob removeObserver:obj forKeyPath:@"name"]; [bob setValue:@"bob" forKey:@"name"]; - [self assertTrue: [bob valueForKey:@"name"] == @"set_bob" message: "valueForKey:'name' should be bob, was: "+[bob valueForKey:@"name"]]; - [self assertTrue: _sawObservation message:"Never recieved an observation"]; + [self assertTrue:[bob valueForKey:@"name"] == @"set_bob" message:@"valueForKey:'name' should be bob, was: " + [bob valueForKey:@"name"]]; + [self assertTrue:_sawObservation message:@"Never recieved an observation"]; } - (void)testRemoveAllObservers @@ -109,8 +112,8 @@ obj = [CPArray new]; obj2 = [CPString new]; - [bob addObserver:obj forKeyPath:@"name" options:nil context:"testRemoveAllObservers"]; - [bob addObserver:obj2 forKeyPath:@"name" options:nil context:"testRemoveAllObservers"]; + [bob addObserver:obj forKeyPath:@"name" options:nil context:@"testRemoveAllObservers"]; + [bob addObserver:obj2 forKeyPath:@"name" options:nil context:@"testRemoveAllObservers"]; [bob removeObserver:obj forKeyPath:@"name"]; [bob removeObserver:obj2 forKeyPath:@"name"]; @@ -118,8 +121,7 @@ [bob setValue:@"bob" forKey:@"name"]; - [self assertTrue: [bob valueForKey:@"name"] == @"set_bob" message: "valueForKey:'name' should be bob, was: "+[bob valueForKey:@"name"]]; - + [self assertTrue:[bob valueForKey:@"name"] == @"set_bob" message:@"valueForKey:'name' should be bob, was: " + [bob valueForKey:@"name"]]; } - (void)testDictionary @@ -131,11 +133,11 @@ [dict addObserver:self forKeyPath:@"dictionaryKey" options:nil - context:"testDictionary"]; + context:@"testDictionary"]; [dict setObject:@"Jo Bob Ray" forKey:@"dictionaryKey"]; - [self assertTrue: _sawObservation message:"Never recieved an observation"]; + [self assertTrue:_sawObservation message:@"Never recieved an observation"]; } - (void)testPriorObservationOption @@ -144,11 +146,11 @@ bob = [[PersonTester alloc] init]; - [bob addObserver:self forKeyPath:@"name" options:CPKeyValueObservingOptionPrior context:"testPriorObservationOption"]; + [bob addObserver:self forKeyPath:@"name" options:CPKeyValueObservingOptionPrior context:@"testPriorObservationOption"]; [bob setValue:@"bob" forKey:@"name"]; - [self assertTrue: _sawPriorObservation message: "asked for CPKeyValueObservingOptionPrior but did not recieve corresponding notification"]; + [self assertTrue:_sawPriorObservation message:@"asked for CPKeyValueObservingOptionPrior but did not recieve corresponding notification"]; } - (void)testInitialObservationOption @@ -159,12 +161,12 @@ bob.name = "paul"; - [bob addObserver:self forKeyPath:@"name" options:CPKeyValueObservingOptionInitial context:"testInitialObservationOption"]; + [bob addObserver:self forKeyPath:@"name" options:CPKeyValueObservingOptionInitial context:@"testInitialObservationOption"]; [bob removeObserver:self forKeyPath:@"name"]; [bob setValue:@"bob" forKey:@"name"]; - [self assertTrue: _sawInitialObservation message: "asked for CPKeyValueObservingOptionInitial but did not recieve corresponding notification"]; + [self assertTrue:_sawInitialObservation message:@"asked for CPKeyValueObservingOptionInitial but did not recieve corresponding notification"]; } - (void)testDependentKeyObservation @@ -175,13 +177,13 @@ bob.name = "paul"; - [bob addObserver:self forKeyPath:@"bobName" options:0 context:"testDependentKeyObservation"]; - [bob addObserver:self forKeyPath:@"twiceRemoved" options:0 context:"testDependentKeyObservation2"]; + [bob addObserver:self forKeyPath:@"bobName" options:0 context:@"testDependentKeyObservation"]; + [bob addObserver:self forKeyPath:@"twiceRemoved" options:0 context:@"testDependentKeyObservation2"]; [bob setValue:@"bob" forKey:@"name"]; - [self assertTrue:_sawDependentObservation message:"asked for bobName but did not recieve corresponding notification"]; - [self assertTrue: [bob valueForKey:@"bobName"] === @"BOB! set_bob" message: "should have been BOB! set_bob, was "+[bob valueForKey:@"bobName"]]; + [self assertTrue:_sawDependentObservation message:@"asked for bobName but did not recieve corresponding notification"]; + [self assertTrue:[bob valueForKey:@"bobName"] === @"BOB! set_bob" message:@"should have been BOB! set_bob, was " + [bob valueForKey:@"bobName"]]; } - (void)testMultipartKey @@ -191,12 +193,12 @@ [cs101 setTeacher:bob]; - [cs101 addObserver:self forKeyPath:@"teacher.name" options:0 context:"testMultipartKey"]; + [cs101 addObserver:self forKeyPath:@"teacher.name" options:0 context:@"testMultipartKey"]; [bob setName:@"bob"]; - [self assertTrue:[cs101 valueForKeyPath:@"teacher.name"] == "set_bob" message:"teacher.name should be: set_bob, was: "+[cs101 valueForKeyPath:@"teacher.name"]]; - [self assertTrue: _sawObservation message:"Never recieved an observation"]; + [self assertTrue:[cs101 valueForKeyPath:@"teacher.name"] == "set_bob" message:@"teacher.name should be: set_bob, was: " + [cs101 valueForKeyPath:@"teacher.name"]]; + [self assertTrue:_sawObservation message:@"Never recieved an observation"]; } - (void)testMultiPartKeysWhereValuesEvaluateToSelf @@ -204,13 +206,13 @@ focus = [CarTester new]; bob = [PersonTester new]; - [bob setValue:focus forKey:"car"]; + [bob setValue:focus forKey:@"car"]; - [bob addObserver:self forKeyPath:@"self.car.thisCar.model" options:0 context:"testMultiPartKeysWhereValuesEvaluateToSelf"]; + [bob addObserver:self forKeyPath:@"self.car.thisCar.model" options:0 context:@"testMultiPartKeysWhereValuesEvaluateToSelf"]; - [focus setValue:"ford focus" forKey:"model"]; + [focus setValue:@"ford focus" forKey:@"model"]; - [self assertTrue: _sawObservation message:"Never recieved an observation"]; + [self assertTrue:_sawObservation message:@"Never recieved an observation"]; } - (void)testThreePartKey @@ -220,12 +222,12 @@ bob = [PersonTester new]; [cs101 setTeacher:bob]; - [bob setValue:focus forKey:"car"]; + [bob setValue:focus forKey:@"car"]; - [cs101 addObserver:self forKeyPath:@"teacher.car.model" options:0 context:"testThreePartKey"]; + [cs101 addObserver:self forKeyPath:@"teacher.car.model" options:0 context:@"testThreePartKey"]; - [focus setValue:"ford focus" forKey:"model"]; - [self assertTrue: _sawObservation message:"Never recieved an observation"]; + [focus setValue:@"ford focus" forKey:@"model"]; + [self assertTrue: _sawObservation message:@"Never recieved an observation"]; } - (void)testThreePartKeyPart2 @@ -235,13 +237,13 @@ bob = [PersonTester new]; [cs101 setTeacher:bob]; - [focus setValue:"2000" forKey:"year"]; + [focus setValue:@"2000" forKey:@"year"]; - [cs101 addObserver:self forKeyPath:@"teacher.car.year" options:0 context:"testThreePartKeyPart2"]; + [cs101 addObserver:self forKeyPath:@"teacher.car.year" options:0 context:@"testThreePartKeyPart2"]; - [bob setValue:focus forKey:"car"]; + [bob setValue:focus forKey:@"car"]; - [self assertTrue: _sawObservation message:"Never recieved an observation"]; + [self assertTrue:_sawObservation message:@"Never recieved an observation"]; } - (void)testRemoveMultipartKey @@ -251,13 +253,13 @@ [cs101 setTeacher:bob]; - [cs101 addObserver:self forKeyPath:@"teacher.name" options:0 context:"testRemoveMultipartKey"]; + [cs101 addObserver:self forKeyPath:@"teacher.name" options:0 context:@"testRemoveMultipartKey"]; [cs101 removeObserver:self forKeyPath:@"teacher.name"]; [bob setName:@"bob"]; - [self assertFalse: _sawObservation message:"Should not have recieved an observation"]; + [self assertFalse:_sawObservation message:@"Should not have recieved an observation"]; } - (void)testRemoveThreePartKey @@ -267,66 +269,69 @@ bob = [PersonTester new]; [cs101 setTeacher:bob]; - [bob setValue:focus forKey:"car"]; + [bob setValue:focus forKey:@"car"]; - [cs101 addObserver:self forKeyPath:@"teacher.car.model" options:0 context:"testRemoveThreePartKey"]; + [cs101 addObserver:self forKeyPath:@"teacher.car.model" options:0 context:@"testRemoveThreePartKey"]; [cs101 removeObserver:self forKeyPath:@"teacher.car.model"]; - [focus setValue:"ford focus" forKey:"model"]; + [focus setValue:@"ford focus" forKey:@"model"]; - [self assertFalse: _sawObservation message:"Should not have recieved an observation"]; + [self assertFalse:_sawObservation message:@"Should not have recieved an observation"]; } - - (void)testCrazyKeyPathChanges { var a = [A new]; - [a setValue:[B new] forKeyPath:"b"]; - [a setValue:[C new] forKeyPath:"b.c"]; - [a setValue:[D new] forKeyPath:"b.c.d"]; - [a setValue:[E new] forKeyPath:"b.c.d.e"]; - [a setValue:[F new] forKeyPath:"b.c.d.e.f"]; + [a setValue:[B new] forKeyPath:@"b"]; + [a setValue:[C new] forKeyPath:@"b.c"]; + [a setValue:[D new] forKeyPath:@"b.c.d"]; + [a setValue:[E new] forKeyPath:@"b.c.d.e"]; + [a setValue:[F new] forKeyPath:@"b.c.d.e.f"]; - [a addObserver:self forKeyPath:"b.c.d.e.f" options:0 context:"testCrazyKeyPathChanges"]; + [a addObserver:self forKeyPath:@"b.c.d.e.f" options:0 context:@"testCrazyKeyPathChanges"]; - [a setValue:[D new] forKeyPath:"b.c.d"]; + var newD = [D new]; - [self assertTrue: _sawObservation message:"Never recieved an observation"]; + [newD setValue:[E new] forKeyPath:@"e"]; + [newD setValue:[F new] forKeyPath:@"e.f"]; + [a setValue:newD forKeyPath:@"b.c.d"]; + + [self assertTrue:_sawObservation message:@"Never recieved an observation"]; } - (void)testCrazyKeyPathChanges2 { var a = [A new]; - [a setValue:[B new] forKeyPath:"b"]; - [a setValue:[C new] forKeyPath:"b.c"]; - [a setValue:[D new] forKeyPath:"b.c.d"]; - [a setValue:[E new] forKeyPath:"b.c.d.e"]; - [a setValue:[F new] forKeyPath:"b.c.d.e.f"]; + [a setValue:[B new] forKeyPath:@"b"]; + [a setValue:[C new] forKeyPath:@"b.c"]; + [a setValue:[D new] forKeyPath:@"b.c.d"]; + [a setValue:[E new] forKeyPath:@"b.c.d.e"]; + [a setValue:[F new] forKeyPath:@"b.c.d.e.f"]; - [a addObserver:self forKeyPath:"b.c.d.e.f" options:0 context:"testCrazyKeyPathChanges2"]; + [a addObserver:self forKeyPath:@"b.c.d.e.f" options:0 context:@"testCrazyKeyPathChanges2"]; - [a setValue:nil forKeyPath:"b.c"]; + [a setValue:nil forKeyPath:@"b.c"]; - [self assertTrue: _sawObservation message:"Never recieved an observation"]; + [self assertTrue:_sawObservation message:@"Never recieved an observation"]; } - (void)testCrazyKeyPathChanges3 { var a = [A new]; - [a setValue:[B new] forKeyPath:"b"]; - [a setValue:[C new] forKeyPath:"b.c"]; - [a setValue:[D new] forKeyPath:"b.c.d"]; - [a setValue:[E new] forKeyPath:"b.c.d.e"]; - [a setValue:[F new] forKeyPath:"b.c.d.e.f"]; + [a setValue:[B new] forKeyPath:@"b"]; + [a setValue:[C new] forKeyPath:@"b.c"]; + [a setValue:[D new] forKeyPath:@"b.c.d"]; + [a setValue:[E new] forKeyPath:@"b.c.d.e"]; + [a setValue:[F new] forKeyPath:@"b.c.d.e.f"]; - [a addObserver:self forKeyPath:"b.c.d.e.f" options:0 context:"testCrazyKeyPathChanges3"]; + [a addObserver:self forKeyPath:@"b.c.d.e.f" options:0 context:@"testCrazyKeyPathChanges3"]; - [a setValue:7 forKeyPath:"b.c.d.e.f"]; + [a setValue:7 forKeyPath:@"b.c.d.e.f"]; - [self assertTrue: _sawObservation message:"Never recieved an observation"]; + [self assertTrue:_sawObservation message:@"Never recieved an observation"]; } - (void)testInsertIntoToManyProperty @@ -335,11 +340,11 @@ [tester setValue:[1, 2, 3, 4] forKey:@"managedObjects"]; - [tester addObserver:self forKeyPath:@"managedObjects" options:0 context:"testInsertIntoToManyProperty"]; + [tester addObserver:self forKeyPath:@"managedObjects" options:0 context:@"testInsertIntoToManyProperty"]; [tester insertObject:5 inManagedObjectsAtIndex:4]; - [self assertTrue: _sawObservation message:"Never recieved an observation"]; + [self assertTrue: _sawObservation message:@"Never recieved an observation"]; } - (void)testRemoveFromToManyProperty @@ -348,11 +353,11 @@ [tester setValue:[1, 2, 3, 4] forKey:@"managedObjects"]; - [tester addObserver:self forKeyPath:@"managedObjects" options:0 context:"testRemoveFromToManyProperty"]; + [tester addObserver:self forKeyPath:@"managedObjects" options:0 context:@"testRemoveFromToManyProperty"]; [tester removeObjectFromManagedObjectsAtIndex:0]; - [self assertTrue: _sawObservation message:"Never recieved an observation"]; + [self assertTrue:_sawObservation message:@"Never recieved an observation"]; } - (void)testInsertIntoToManyPropertyIndirectly @@ -361,11 +366,11 @@ tester.tester = [ToManyTester new]; [tester.tester setValue:[1, 2, 3, 4] forKey:@"managedObjects"]; - [tester addObserver:self forKeyPath:@"tester.managedObjects" options:0 context:"testInsertIntoToManyPropertyIndirectly"]; + [tester addObserver:self forKeyPath:@"tester.managedObjects" options:0 context:@"testInsertIntoToManyPropertyIndirectly"]; [tester.tester insertObject:5 inManagedObjectsAtIndex:4]; - [self assertTrue: _sawObservation message:"Never recieved an observation"]; + [self assertTrue:_sawObservation message:@"Never recieved an observation"]; } - (void)testInsertIntoArrayPropertyIndirectly @@ -375,44 +380,60 @@ tester.tester = [ToManyTester new]; [tester.tester setValue:[1, 2, 3, 4] forKey:@"subviews"]; - [tester addObserver:self forKeyPath:@"tester.subviews" options:0 context:"testInsertIntoArrayPropertyIndirectly"]; + [tester addObserver:self forKeyPath:@"tester.subviews" options:0 context:@"testInsertIntoArrayPropertyIndirectly"]; [tester.tester insertSubview:5 atIndex:4]; - [self assertTrue: _sawObservation message:"Never recieved an observation"]; + [self assertTrue:_sawObservation message:@"Never recieved an observation"]; +} + +- (void)testChangeTopLevelObject +{ + var tester = [IndirectToManyTester new]; + + tester.tester = [ToManyTester new]; + + [tester.tester setValue:[1, 2, 3, 4] forKey:@"subviews"]; + [tester addObserver:self forKeyPath:@"tester.subviews" options:0 context:@"testChangeTopLevelObject"]; + + var newTesterTester = [ToManyTester new]; + [newTesterTester setValue:[5, 6, 7, 8] forKey:@"subviews"]; + [tester setValue:newTesterTester forKey:@"tester"]; + + [self assertTrue:_sawObservation message:@"Never recieved an observation"]; } - (void)testPerformance { bob = [PersonTester new]; - [bob setValue:"initial bob" forKey:"name"]; + [bob setValue:@"initial bob" forKey:@"name"]; var startTime = new Date(); for (var i = 0; i < 1000; i++) - [bob setValue:i + "bob" forKey:"name"]; + [bob setValue:i + @"bob" forKey:@"name"]; var total = new Date() - startTime; - [bob addObserver:[CPObject new] forKeyPath:"name" options:nil context:nil]; + [bob addObserver:[CPObject new] forKeyPath:@"name" options:nil context:nil]; startTime = new Date(); for (var i = 0; i < 1000; i++) - [bob setValue: i + "bob" forKey:"name"]; + [bob setValue:i + @"bob" forKey:@"name"]; var secondTotal = new Date() - startTime; - CPLog.info("runtime overhead was: "+(secondTotal/total)+" but test has been disabled for the moment"); - //[self assertTrue: (secondTotal < total*4) message: "Overhead of one observer exceeded 400%. first: "+total+" second: "+secondTotal+" %"+FLOOR(secondTotal/total*100)]; + CPLog.info("runtime overhead was: " + (secondTotal / total) + " but test has been disabled for the moment"); + //[self assertTrue: (secondTotal < total * 4) message:@"Overhead of one observer exceeded 400%. first: " + total+" second: " + secondTotal+" %" + FLOOR(secondTotal / total * 100)]; } - (void)testDependentKeysPaths { var object = [[TestObject alloc] init]; - [object addObserver:self forKeyPath:@"key" options:0 context:"testDependentKeysPaths"]; + [object addObserver:self forKeyPath:@"key" options:0 context:@"testDependentKeysPaths"]; observationCount = 0; @@ -428,25 +449,63 @@ var bob = [[PersonTester alloc] init], betty = [CPObject new]; - [bob addObserver:self forKeyPath:@"name" options:nil context:"testSettersReplacedOnce"]; + [bob addObserver:self forKeyPath:@"name" options:nil context:@"testSettersReplacedOnce"]; var oldImp = class_getMethodImplementation(bob.isa, @selector(setName:)); [bob removeObserver:self forKeyPath:@"name"]; - [bob addObserver:self forKeyPath:@"name" options:nil context:"testSettersReplacedOnce"]; + [bob addObserver:self forKeyPath:@"name" options:nil context:@"testSettersReplacedOnce"]; var newImp = class_getMethodImplementation(bob.isa, @selector(setName:)); [self assertTrue:newImp === oldImp]; - [bob addObserver:betty forKeyPath:@"name" options:nil context:"testSettersReplacedOnce"]; + [bob addObserver:betty forKeyPath:@"name" options:nil context:@"testSettersReplacedOnce"]; var newImp = class_getMethodImplementation(bob.isa, @selector(setName:)); [self assertTrue:newImp === oldImp]; } +- (void)testNestedNotifications +{ + var bob = [[PersonTester alloc] init]; + + [bob willChangeValueForKey:@"name"]; + [self assertTrue:bob._willChangeMessageCounter[@"name"] === 1]; + [bob didChangeValueForKey:@"name"]; + [self assertTrue:!bob._willChangeMessageCounter[@"name"]]; + + + [bob willChangeValueForKey:@"name"]; + [self assertTrue:bob._willChangeMessageCounter[@"name"] === 1]; + [bob willChangeValueForKey:@"phoneNumber"] + [self assertTrue:bob._willChangeMessageCounter[@"phoneNumber"] === 1]; + [bob didChangeValueForKey:@"phoneNumber"]; + [self assertTrue:!bob._willChangeMessageCounter[@"phoneNumber"]]; + [bob didChangeValueForKey:@"name"]; + [self assertTrue:!bob._willChangeMessageCounter[@"name"]]; + + [bob willChangeValueForKey:@"name"]; + [self assertTrue:bob._willChangeMessageCounter[@"name"] === 1]; + [bob addObserver:self forKeyPath:@"name" options:nil context:@"testNestedNotifications"]; + [bob addObserver:self forKeyPath:@"phoneNumber" options:nil context:@"testNestedNotifications"]; + [bob willChangeValueForKey:@"phoneNumber"]; + [self assertTrue:!bob._willChangeMessageCounter[@"phoneNumber"]]; + [bob didChangeValueForKey:@"phoneNumber"]; + [self assertTrue:!bob._willChangeMessageCounter[@"phoneNumber"]]; + [self assertTrue:testNestedNotificationsBobCount === 1]; + [bob didChangeValueForKey:@"name"]; + [self assertTrue:!bob._willChangeMessageCounter[@"name"]]; + + [bob willChangeValueForKey:@"name"]; + [self assertTrue:!bob._willChangeMessageCounter[@"name"]]; + [bob didChangeValueForKey:@"name"]; + [self assertTrue:!bob._willChangeMessageCounter[@"name"]]; + [self assertTrue:testNestedNotificationsBobCount === 2]; +} + - (void)observeValueForKeyPath:(CPString)aKeyPath ofObject:(id)anObject change:(CPDictionary)changes context:(id)aContext { var oldValue = [changes objectForKey:CPKeyValueChangeOldKey], @@ -457,34 +516,34 @@ case "testDependentKeysPaths": ++observationCount; break; case "testAddObserver": - [self assertTrue: newValue == "set_bob" message: "newValue should be: set_bob was: "+newValue]; - [self assertTrue: oldValue == [CPNull null] message: "oldValue should be CPNull was: "+oldValue]; - [self assertTrue: anObject == bob message: "anObject should be: "+[bob description]+", was: "+[anObject description]]; + [self assertTrue:newValue == "set_bob" message:@"newValue should be: set_bob was: " + newValue]; + [self assertTrue:oldValue == [CPNull null] message:@"oldValue should be CPNull was: " + oldValue]; + [self assertTrue:anObject == bob message:@"anObject should be: " + [bob description] + ", was: " + [anObject description]]; break; case "testUnobservedKey": - [self assertFalse: YES message: "not observing this key, should never get here"]; + [self assertFalse:YES message:@"not observing this key, should never get here"]; break; case "testAddTwoObservers": - [self assertTrue: newValue == "set_bob" message: "newValue should be: set_bob was: "+newValue]; - [self assertTrue: oldValue == [CPNull null] message: "oldValue should be CPNull was: "+oldValue]; + [self assertTrue:newValue == "set_bob" message:@"newValue should be: set_bob was: " + newValue]; + [self assertTrue:oldValue == [CPNull null] message:@"oldValue should be CPNull was: " + oldValue]; break; case "testDirectIVarObservation": - [self assertTrue: newValue == "555" message: "newValue should be: 555 was: "+newValue]; - [self assertTrue: oldValue == [CPNull null] message: "oldValue should be CPNull was: "+oldValue]; + [self assertTrue:newValue == "555" message:@"newValue should be: 555 was: " + newValue]; + [self assertTrue:oldValue == [CPNull null] message:@"oldValue should be CPNull was: " + oldValue]; break; case "testRemoveObserver": - [self assertTrue: NO message: "observer was removed, but notification was still received"]; + [self assertTrue:NO message:@"observer was removed, but notification was still received"]; break; case "testRemoveOtherObserver": - [self assertTrue: newValue == "set_bob" message: "newValue should be: set_bob was: "+newValue]; - [self assertTrue: oldValue == [CPNull null] message: "oldValue should be CPNull was: "+oldValue]; + [self assertTrue:newValue == "set_bob" message:@"newValue should be: set_bob was: " + newValue]; + [self assertTrue:oldValue == [CPNull null] message:@"oldValue should be CPNull was: " + oldValue]; break; case "testRemoveAllObservers": - [self assertTrue: NO message: "all observers were removed, but notification was still received"]; + [self assertTrue:NO message:@"all observers were removed, but notification was still received"]; break; case "testPriorObservationOption": @@ -492,72 +551,72 @@ if (!_sawPriorObservation) { - [self assertTrue:prior message:"Have not been sent the prior notification, but it should have been sent"]; - [self assertTrue:oldValue == [CPNull null] message: "Shoudl be no initial value"]; - [self assertFalse:newValue message: "Should be no object for the new value key on the prior notification"]; + [self assertTrue:prior message:@"Have not been sent the prior notification, but it should have been sent"]; + [self assertTrue:oldValue == [CPNull null] message:@"Shoudl be no initial value"]; + [self assertFalse:newValue message:@"Should be no object for the new value key on the prior notification"]; _sawPriorObservation = YES; } else { - [self assertFalse: prior message: "there should be no value for the notification is prior key, that notification was already sent"]; - [self assertTrue: newValue == "set_bob" message: "newValue should be: set_bob was: "+newValue]; + [self assertFalse:prior message:@"there should be no value for the notification is prior key, that notification was already sent"]; + [self assertTrue:newValue == "set_bob" message:@"newValue should be: set_bob was: " + newValue]; } break; case "testInitialObservationOption": if (!_sawInitialObservation) { - [self assertTrue: newValue == "paul" message:"Expected old value to be: paul was: "+oldValue]; - [self assertFalse: oldValue message:"Should be no value for new change key on initial observation"]; + [self assertTrue:newValue == "paul" message:@"Expected old value to be: paul was: " + oldValue]; + [self assertFalse:oldValue message:@"Should be no value for new change key on initial observation"]; _sawInitialObservation = YES; } else - [self assertFalse:YES message:"Should never have received this notification"]; + [self assertFalse:YES message:@"Should never have received this notification"]; break; case "testMultipartKey": - [self assertTrue: aKeyPath == "teacher.name" message:"Keypath should be: teacher.name, was: "+aKeyPath]; - [self assertTrue: newValue == "set_bob" message:"New value should be: set_bob, was: "+newValue]; - [self assertTrue: anObject == cs101 message: "anObject should be: "+[cs101 description]+", was: "+[anObject description]]; + [self assertTrue:aKeyPath == "teacher.name" message:@"Keypath should be: teacher.name, was: " + aKeyPath]; + [self assertTrue:newValue == "set_bob" message:@"New value should be: set_bob, was: " + newValue]; + [self assertTrue:anObject == cs101 message:@"anObject should be: " + [cs101 description] + ", was: " + [anObject description]]; break; case "testRemoveMultipartKey": - [self assertFalse:YES message:"Should never have received this notification"]; + [self assertFalse:YES message:@"Should never have received this notification"]; break; case "testRemoveThreePartKey": - [self assertFalse:YES message:"Should never have received this notification"]; + [self assertFalse:YES message:@"Should never have received this notification"]; break; case "testThreePartKey": - [self assertTrue: aKeyPath == "teacher.car.model" message:"Keypath should be: teacher.car.model, was: "+aKeyPath]; - [self assertTrue: newValue == "ford focus" message:"New value should be: ford focus, was: "+newValue]; - [self assertTrue: anObject == cs101 message: "anObject should be: "+[cs101 description]+", was: "+[anObject description]]; + [self assertTrue:aKeyPath == "teacher.car.model" message:@"Keypath should be: teacher.car.model, was: " + aKeyPath]; + [self assertTrue:newValue == "ford focus" message:@"New value should be: ford focus, was: " + newValue]; + [self assertTrue:anObject == cs101 message:@"anObject should be: " + [cs101 description] + ", was: " + [anObject description]]; break; case "testThreePartKeyPart2": - [self assertTrue: aKeyPath == "teacher.car" message:"Keypath should be: teacher.car, was: "+aKeyPath]; - [self assertTrue: newValue.year == "2000" message:"New value should be a car with year: 2000, was: "+[newValue description]]; - [self assertTrue: anObject == cs101 message: "anObject should be: "+[cs101 description]+", was: "+[anObject description]]; + [self assertTrue:aKeyPath == "teacher.car.year" message:@"Keypath should be: teacher.car.year, was: " + aKeyPath]; + [self assertTrue:newValue == "2000" message:@"New value should be a car with year: 2000, was: " + [newValue description]]; + [self assertTrue:anObject == cs101 message:@"anObject should be: " + [cs101 description] + ", was: " + [anObject description]]; break; case "testCrazyKeyPathChanges": - [self assertTrue: [anObject class] == A message:"Should be observing an A class, was: "+[anObject class]]; - [self assertTrue: [newValue class] == D message:"Changed class was a D class, got: "+[newValue class]]; - [self assertTrue: aKeyPath == "b.c.d" message:"Expected keyPath b.c.d, got: "+aKeyPath]; + [self assertTrue:[anObject class] == A message:@"Should be observing an A class, was: " + [anObject class]]; + [self assertTrue:[newValue class] == F message:@"Changed class was a F class, got: " + [newValue class]]; + [self assertTrue:aKeyPath == "b.c.d.e.f" message:@"Expected keyPath b.c.d.e.f, got: " + aKeyPath]; break; case "testCrazyKeyPathChanges2": - [self assertTrue: [anObject class] == A message:"Should be observing an A class, was: "+[anObject class]]; - [self assertTrue: newValue == [CPNull null] message:"Expected null, got: "+newValue]; - [self assertTrue: aKeyPath == "b.c" message:"Expected keyPath b.c, got: "+aKeyPath]; + [self assertTrue:[anObject class] == A message:@"Should be observing an A class, was: " + [anObject class]]; + [self assertTrue:newValue == [CPNull null] message:@"Expected null, got: " + newValue]; + [self assertTrue:aKeyPath == "b.c.d.e.f" message:@"Expected keyPath b.c.d.e.f, got: " + aKeyPath]; break; case "testCrazyKeyPathChanges3": - [self assertTrue: [anObject class] == A message:"Should be observing an A class, was: "+[anObject class]]; - [self assertTrue: newValue == 7 message:"Expected 7, got: "+newValue]; - [self assertTrue: aKeyPath == "b.c.d.e.f" message:"Expected keyPath b.c.d.e.f, got: "+aKeyPath]; + [self assertTrue:[anObject class] == A message:@"Should be observing an A class, was: " + [anObject class]]; + [self assertTrue:newValue == 7 message:@"Expected 7, got: " + newValue]; + [self assertTrue:aKeyPath == "b.c.d.e.f" message:@"Expected keyPath b.c.d.e.f, got: " + aKeyPath]; break; case "testDependentKeyObservation": @@ -584,64 +643,79 @@ case "testInsertIntoToManyProperty": var type = [changes objectForKey:CPKeyValueChangeKindKey]; - [self assertTrue: type == CPKeyValueChangeInsertion message: "Should have been an insertion, was: "+type]; + [self assertTrue:type == CPKeyValueChangeInsertion message:@"Should have been an insertion, was: " + type]; var values = [changes objectForKey:CPKeyValueChangeNewKey]; - [self assertTrue: [values isEqual:[5]] message: "array should have contained 5, was: "+values+" type: "+[values.isa description]+" length: "+values.length]; + [self assertTrue:[values isEqual:[5]] message:@"array should have contained 5, was: " + values + " type: " + [values.isa description] + " length: " + values.length]; break; case "testInsertIntoToManyPropertyIndirectly": var type = [changes objectForKey:CPKeyValueChangeKindKey]; - [self assertTrue: type == CPKeyValueChangeInsertion message: "Should have been an insertion, was: "+type]; + [self assertTrue:type == CPKeyValueChangeInsertion message:@"Should have been an insertion, was: " + type]; var values = [changes objectForKey:CPKeyValueChangeNewKey]; - [self assertTrue: [values isEqual:[5]] message: "array should have contained 5, was: "+values+" type: "+[values.isa description]+" length: "+values.length]; + [self assertTrue:[values isEqual:[5]] message:@"array should have contained 5, was: " + values + " type: " + [values.isa description] + " length: " + values.length]; - [self assert:aKeyPath equals:"tester.managedObjects"]; + [self assert:aKeyPath equals:@"tester.managedObjects"]; [self assert:[anObject valueForKeyPath:@"tester.managedObjects"] equals:[1, 2, 3, 4, 5]]; break; case "testInsertIntoArrayPropertyIndirectly": var type = [changes objectForKey:CPKeyValueChangeKindKey]; - [self assertTrue: type == CPKeyValueChangeInsertion message: "Should have been an insertion, was: "+type]; + [self assertTrue: type == CPKeyValueChangeInsertion message:@"Should have been an insertion, was: " + type]; var values = [changes objectForKey:CPKeyValueChangeNewKey]; - [self assertTrue: [values isEqual:[5]] message: "array should have contained 5, was: "+values+" type: "+[values.isa description]+" length: "+values.length]; + [self assertTrue:[values isEqual:[5]] message:@"array should have contained 5, was: " + values + " type: " + [values.isa description] + " length: " + values.length]; - [self assert:aKeyPath equals:"tester.subviews"]; + [self assert:aKeyPath equals:@"tester.subviews"]; [self assert:[anObject valueForKeyPath:aKeyPath] equals:[1, 2, 3, 4, 5]]; break; + case "testChangeTopLevelObject": + var type = [changes objectForKey:CPKeyValueChangeKindKey]; + [self assertTrue: type == CPKeyValueChangeSetting message:@"Should have been a set, was: " + type]; + + var oldValue = [changes objectForKey:CPKeyValueChangeOldKey], + newValue = [changes objectForKey:CPKeyValueChangeNewKey]; + [self assert:oldValue equals:[1, 2, 3, 4]]; + [self assert:newValue equals:[5, 6, 7, 8]]; + + break; + case "testRemoveFromToManyProperty": var type = [changes objectForKey:CPKeyValueChangeKindKey]; - [self assertTrue: type == CPKeyValueChangeRemoval message: "Should have been a removal, was: "+type]; + [self assertTrue: type == CPKeyValueChangeRemoval message:@"Should have been a removal, was: " + type]; var values = [changes objectForKey:CPKeyValueChangeOldKey]; - [self assertTrue: [values isEqual:[1]] message: "array should have contained 1, was: "+values+" type: "+[values.isa description]+" length: "+values.length]; + [self assertTrue: [values isEqual:[1]] message:@"array should have contained 1, was: " + values + " type: " + [values.isa description] + " length: " + values.length]; [self assert:[anObject valueForKey:@"managedObjects"] equals:[2, 3, 4]]; - [self assert:aKeyPath equals:"managedObjects"]; + [self assert:aKeyPath equals:@"managedObjects"]; break; case "testMultiPartKeysWhereValuesEvaluateToSelf": - [self assert:aKeyPath equals:"self.car.thisCar.model"]; - [self assert:newValue equals:"ford focus"]; + [self assert:aKeyPath equals:@"self.car.thisCar.model"]; + [self assert:newValue equals:@"ford focus"]; [self assert:anObject equals:bob]; break; case "testDictionary": - [self assert:aKeyPath equals:"dictionaryKey"]; - [self assert:oldValue equals:"Bob Jones"]; - [self assert:newValue equals:"Jo Bob Ray"]; + [self assert:aKeyPath equals:@"dictionaryKey"]; + [self assert:oldValue equals:@"Bob Jones"]; + [self assert:newValue equals:@"Jo Bob Ray"]; + break; + + case "testNestedNotifications": + testNestedNotificationsBobCount += 1; break; default: - [self assertFalse:YES message:"unhandled observation, must be an error"]; + [self assertFalse:YES message:@"unhandled observation, must be an error"]; return; } @@ -668,17 +742,17 @@ + (CPSet)keyPathsForValuesAffectingTwiceRemoved { - return [CPSet setWithObject:"bobName"]; + return [CPSet setWithObject:@"bobName"]; } + (CPSet)keyPathsForValuesAffectingBobName { - return [CPSet setWithObject:"name"]; + return [CPSet setWithObject:@"name"]; } - (void)setName:(CPString)aName { - name = "set_"+aName; + name = "set_" + aName; } - (CPString)bobName diff --git a/Tests/Foundation/CPNumberFormatterTest.j b/Tests/Foundation/CPNumberFormatterTest.j index 05ded5fc9..67f4addcb 100644 --- a/Tests/Foundation/CPNumberFormatterTest.j +++ b/Tests/Foundation/CPNumberFormatterTest.j @@ -16,6 +16,29 @@ [self assert:@"122,344.456" equals:formattedNumberString]; } +- (void)testSetGroupingSeparator_ +{ + var numberFormatter = [CPNumberFormatter new]; + [numberFormatter setNumberStyle:CPNumberFormatterDecimalStyle]; + + [self assert:@"1" equals:[numberFormatter stringFromNumber:[CPNumber numberWithInt:1]]]; + [self assert:@"12" equals:[numberFormatter stringFromNumber:[CPNumber numberWithInt:12]]]; + [self assert:@"123" equals:[numberFormatter stringFromNumber:[CPNumber numberWithInt:123]]]; + [self assert:@"1,234" equals:[numberFormatter stringFromNumber:[CPNumber numberWithInt:1234]]]; + [self assert:@"12,345" equals:[numberFormatter stringFromNumber:[CPNumber numberWithInt:12345]]]; + [self assert:@"123,456" equals:[numberFormatter stringFromNumber:[CPNumber numberWithInt:123456]]]; + [self assert:@"1,234,567" equals:[numberFormatter stringFromNumber:[CPNumber numberWithInt:1234567]]]; + + [numberFormatter setGroupingSeparator:@" "]; + [self assert:@"1" equals:[numberFormatter stringFromNumber:[CPNumber numberWithInt:1]]]; + [self assert:@"12" equals:[numberFormatter stringFromNumber:[CPNumber numberWithInt:12]]]; + [self assert:@"123" equals:[numberFormatter stringFromNumber:[CPNumber numberWithInt:123]]]; + [self assert:@"1 234" equals:[numberFormatter stringFromNumber:[CPNumber numberWithInt:1234]]]; + [self assert:@"12 345" equals:[numberFormatter stringFromNumber:[CPNumber numberWithInt:12345]]]; + [self assert:@"123 456" equals:[numberFormatter stringFromNumber:[CPNumber numberWithInt:123456]]]; + [self assert:@"1 234 567" equals:[numberFormatter stringFromNumber:[CPNumber numberWithInt:1234567]]]; +} + - (void)testRoundingMode { var numberFormatter = [[CPNumberFormatter alloc] init], diff --git a/Tests/Manual/ArrayControllerRemovingFirstTest/AppController.j b/Tests/Manual/ArrayControllerRemovingFirstTest/AppController.j new file mode 100644 index 000000000..1ddd8d6f6 --- /dev/null +++ b/Tests/Manual/ArrayControllerRemovingFirstTest/AppController.j @@ -0,0 +1,102 @@ +/* + * AppController.j + * ArrayControllerRemovingFirstTest + * + * Created by You on July 17, 2012. + * Copyright 2012, Your Company All rights reserved. + */ + +@import + + +@implementation AppController : CPObject +{ + CPArrayController arrayController; +} + +- (void)applicationDidFinishLaunching:(CPNotification)aNotification +{ + var theWindow = [[CPWindow alloc] initWithContentRect:CGRectMakeZero() styleMask:CPBorderlessBridgeWindowMask], + contentView = [theWindow contentView]; + + arrayController = [[CPArrayController alloc] init]; + [arrayController addObserver:self forKeyPath:@"selectionIndex" options: nil context: nil]; + var items = [CPMutableArray array]; + [items addObject:[[Item alloc] initWithTitle:@"1st Item"]]; + [items addObject:[[Item alloc] initWithTitle:@"2nd Item"]]; + [items addObject:[[Item alloc] initWithTitle:@"3rd Item"]]; + [items addObject:[[Item alloc] initWithTitle:@"4th Item"]]; + [arrayController setContent:items]; + + var label = [CPTextField labelWithTitle:@"Press buttons to see [Remove First By Object] fails while [Remove First By Index] succeeds"]; + [label setFrameOrigin:CGPointMake(20, 20)]; + [contentView addSubview:label]; + + var field = [CPTextField textFieldWithStringValue:@"" placeholder:@"" width:100]; + [field setFrameOrigin:CGPointMake(20, 50)]; + [field bind:@"value" toObject:self withKeyPath:@"arrayController.selection.title" options:nil]; + [contentView addSubview:field]; + + var button = [CPButton buttonWithTitle:@"Remove First By Object"]; + [button setFrameOrigin:CGPointMake(150, 50)]; + [button setTarget:self]; + [button setAction:@selector(removeFirst:)]; + [contentView addSubview:button]; + + var button2 = [CPButton buttonWithTitle:@"Remove First By Index"]; + [button2 setFrameOrigin:CGPointMake(350, 50)]; + [button2 setTarget:self]; + [button2 setAction:@selector(removeFirstByIndex:)]; + [contentView addSubview:button2]; + + [arrayController setSelectionIndex:0] + + [theWindow orderFront:self]; + + // Uncomment the following line to turn on the standard menu bar. + //[CPMenu setMenuBarVisible:YES]; +} + +- (void)removeFirst:(id)sender +{ + var selectedObjects = [arrayController selectedObjects]; + [arrayController removeObject:[selectedObjects objectAtIndex:0]]; +} + +- (void)removeFirstByIndex:(id)sender +{ + [arrayController removeObjectAtArrangedObjectIndex:0]; +} + +- (void)observeValueForKeyPath:(CPString)keyPath ofObject:(id)object change:(CPDictionary)change context:(id)context +{ + var oldIndex = [change valueForKey:CPKeyValueChangeOldKey]; + var newIndex = [change valueForKey:CPKeyValueChangeNewKey]; + + CPLog("TCDocument selectionIndexChanged from " + oldIndex + " to " + newIndex + ", contains " + [[arrayController arrangedObjects] count] + " objects"); +} + +@end + +@implementation Item : CPObject +{ + CPString title; +} + +- (id)initWithTitle:(CPString)aTitle +{ + self = [super init]; + if (self) + { + title = aTitle; + } + return self; +} + +- (CPString)title +{ + return title; +} + +@end + diff --git a/Tests/Manual/ArrayControllerRemovingFirstTest/Info.plist b/Tests/Manual/ArrayControllerRemovingFirstTest/Info.plist new file mode 100644 index 000000000..42f65de58 --- /dev/null +++ b/Tests/Manual/ArrayControllerRemovingFirstTest/Info.plist @@ -0,0 +1,12 @@ + + + + + CPApplicationDelegateClass + AppController + CPBundleName + ArrayControllerRemovingFirstTest + CPPrincipalClass + CPApplication + + diff --git a/Tests/Manual/ArrayControllerRemovingFirstTest/Jakefile b/Tests/Manual/ArrayControllerRemovingFirstTest/Jakefile new file mode 100644 index 000000000..6f4a90273 --- /dev/null +++ b/Tests/Manual/ArrayControllerRemovingFirstTest/Jakefile @@ -0,0 +1,93 @@ +/* + * Jakefile + * ArrayControllerRemovingFirstTest + * + * Created by You on July 17, 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 ("ArrayControllerRemovingFirstTest", function(task) +{ + task.setBuildIntermediatesPath(FILE.join("Build", "ArrayControllerRemovingFirstTest.build", configuration)); + task.setBuildPath(FILE.join("Build", configuration)); + + task.setProductName("ArrayControllerRemovingFirstTest"); + task.setIdentifier("com.yourcompany.ArrayControllerRemovingFirstTest"); + task.setVersion("1.0"); + task.setAuthor("Your Company"); + task.setEmail("feedback @nospam@ yourcompany.com"); + task.setSummary("ArrayControllerRemovingFirstTest"); + 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", ["ArrayControllerRemovingFirstTest"], 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", "ArrayControllerRemovingFirstTest", "index.html")]); +}); + +task ("run-release", ["release"], function() +{ + OS.system(["open", FILE.join("Build", "Release", "ArrayControllerRemovingFirstTest", "index.html")]); +}); + +task ("deploy", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Deployment", "ArrayControllerRemovingFirstTest")); + OS.system(["press", "-f", FILE.join("Build", "Release", "ArrayControllerRemovingFirstTest"), FILE.join("Build", "Deployment", "ArrayControllerRemovingFirstTest")]); + printResults("Deployment") +}); + +task ("desktop", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Desktop", "ArrayControllerRemovingFirstTest")); + require("cappuccino/nativehost").buildNativeHost(FILE.join("Build", "Release", "ArrayControllerRemovingFirstTest"), FILE.join("Build", "Desktop", "ArrayControllerRemovingFirstTest", "ArrayControllerRemovingFirstTest.app")); + printResults("Desktop") +}); + +task ("run-desktop", ["desktop"], function() +{ + OS.system([FILE.join("Build", "Desktop", "ArrayControllerRemovingFirstTest", "ArrayControllerRemovingFirstTest.app", "Contents", "MacOS", "NativeHost"), "-i"]); +}); + +function printResults(configuration) +{ + print("----------------------------"); + print(configuration+" app built at path: "+FILE.join("Build", configuration, "ArrayControllerRemovingFirstTest")); + print("----------------------------"); +} diff --git a/Tests/Manual/Nib2CibAligment/Resources/spinner.gif b/Tests/Manual/ArrayControllerRemovingFirstTest/Resources/spinner.gif similarity index 100% rename from Tests/Manual/Nib2CibAligment/Resources/spinner.gif rename to Tests/Manual/ArrayControllerRemovingFirstTest/Resources/spinner.gif diff --git a/Tests/Manual/ArrayControllerRemovingFirstTest/index-debug.html b/Tests/Manual/ArrayControllerRemovingFirstTest/index-debug.html new file mode 100644 index 000000000..1c5f0943a --- /dev/null +++ b/Tests/Manual/ArrayControllerRemovingFirstTest/index-debug.html @@ -0,0 +1,107 @@ + + + + + + + + + + + + + + + ArrayControllerRemovingFirstTest + + + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/ArrayControllerRemovingFirstTest/index.html b/Tests/Manual/ArrayControllerRemovingFirstTest/index.html new file mode 100644 index 000000000..707d86be9 --- /dev/null +++ b/Tests/Manual/ArrayControllerRemovingFirstTest/index.html @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + ArrayControllerRemovingFirstTest + + + + + + + + + + + + +
+
+ + + +
+
+ + + + diff --git a/Tests/Manual/ArrayControllerRemovingFirstTest/main.j b/Tests/Manual/ArrayControllerRemovingFirstTest/main.j new file mode 100644 index 000000000..60b8fb56d --- /dev/null +++ b/Tests/Manual/ArrayControllerRemovingFirstTest/main.j @@ -0,0 +1,18 @@ +/* + * AppController.j + * ArrayControllerRemovingFirstTest + * + * Created by You on July 17, 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/CPButtonTest/Resources/MainMenu.cib b/Tests/Manual/CPButtonTest/Resources/MainMenu.cib index b0ffde79d..eb6637c5a 100644 --- a/Tests/Manual/CPButtonTest/Resources/MainMenu.cib +++ b/Tests/Manual/CPButtonTest/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;D;K;6;CP$UIDd;2;33E;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;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;49E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;55E;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;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;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;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;1;0E;D;K;6;CP$UIDd;1;0E;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;2;78E;D;K;6;CP$UIDd;2;79E;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;1;0E;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;85E;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;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;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;1;0E;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;1;0E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;108E;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;51E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;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;79E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;11E;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;85E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;11E;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;91E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;99E;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;2;99E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;2;57E;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;109E;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;110E;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;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;69E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;112E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;72E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;113E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;83E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;114E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;70E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;115E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;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;116E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;89E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;117E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;92E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;118E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;105E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;119E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;106E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;120E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;104E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;73E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;57E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;123E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;86E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;124E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;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;125E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;127E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;128E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;129E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;130E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;51E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;131E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;88E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;132E;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;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;80E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;134E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;81E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;134E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;75E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;92E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;136E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;95E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;96E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;97E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;98E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;100E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;138E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;101E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;138E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;102E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;138E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;103E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;138E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;105E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;136E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;109E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;139E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;140E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;141E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;142E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;143E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;53E;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;52E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;145E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;145E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;146E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;147E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;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;54E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;53E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;149E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;150E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;53E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;152E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;156E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;157E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;158E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;159E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;160E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;155E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;156E;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;56E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;53E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;3;108E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;161E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;162E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;53E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;163E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;164E;K;6;$afontD;K;6;CP$UIDd;3;165E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;156E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;1;0E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;166E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;58E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;167E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;57E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;168E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;169E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;170E;E;D;K;6;$classD;K;6;CP$UIDd;2;58E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;171E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;57E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;168E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;169E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;170E;E;D;K;6;$classD;K;6;CP$UIDd;2;58E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;172E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;57E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;168E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;170E;E;D;K;6;$classD;K;6;CP$UIDd;2;58E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;173E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;57E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;168E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;170E;E;D;K;6;$classD;K;6;CP$UIDd;2;58E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;174E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;57E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;168E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;170E;E;D;K;6;$classD;K;6;CP$UIDd;2;58E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;175E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;57E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;168E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;170E;E;D;K;6;$classD;K;6;CP$UIDd;2;58E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;176E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;57E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;168E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;170E;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;66E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;53E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;177E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;178E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;179E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;53E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;180E;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;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;67E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;181E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;182E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;67E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;164E;K;6;$afontD;K;6;CP$UIDd;3;165E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;183E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;184E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;67E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;185E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;186E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;67E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;164E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;165E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;187E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;184E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;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;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;67E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;188E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;189E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;67E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;190E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;191E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;169E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;192E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;169E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;169E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;67E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;193E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;194E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;67E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;190E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;191E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;169E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;195E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;157E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;169E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;169E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;52E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;67E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;196E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;197E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;198E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;67E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;E;D;K;6;$classD;K;6;CP$UIDd;2;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;67E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;199E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;200E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;67E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;164E;K;6;$afontD;K;6;CP$UIDd;3;165E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;201E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;184E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;67E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;202E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;186E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;67E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;203E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;165E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;204E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;184E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;205E;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;139E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;140E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;206E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;207E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;208E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;79E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;209E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;209E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;210E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;E;D;K;6;$classD;K;6;CP$UIDd;2;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;79E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;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;79E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;164E;K;6;$afontD;K;6;CP$UIDd;3;165E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;213E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;184E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;79E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;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;2;79E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;164E;K;6;$afontD;K;6;CP$UIDd;3;165E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;216E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;217E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;184E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;54E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;79E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;218E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;219E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;79E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;152E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;156E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;157E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;220E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;159E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;160E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;155E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;156E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;79E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;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;2;79E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;152E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;169E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;157E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;223E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;159E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;160E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;155E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;169E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;139E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;140E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;224E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;207E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;225E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;85E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;226E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;226E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;227E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;E;D;K;6;$classD;K;6;CP$UIDd;2;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;85E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;228E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;229E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;85E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;164E;K;6;$afontD;K;6;CP$UIDd;3;165E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;230E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;184E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;85E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;231E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;229E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;85E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;164E;K;6;$afontD;K;6;CP$UIDd;3;165E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;232E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;184E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;85E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;233E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;229E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;85E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;164E;K;6;$afontD;K;6;CP$UIDd;3;165E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;234E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;184E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;85E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;235E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;229E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;85E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;164E;K;6;$afontD;K;6;CP$UIDd;3;165E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;236E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;184E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;50E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;139E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;140E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;237E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;207E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;238E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;239E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;239E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;240E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;E;D;K;6;$classD;K;6;CP$UIDd;2;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;91E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;241E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;242E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;91E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;164E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;165E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;7;$aimageD;K;6;CP$UIDd;3;244E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;245E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;184E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;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;93E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;91E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;246E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;247E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;248E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;91E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;144E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;169E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;250E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;251E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;144E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;169E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;252E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;155E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;253E;E;D;K;6;$classD;K;6;CP$UIDd;2;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;254E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;155E;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;3;254E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;190E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;257E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;258E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;169E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;169E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;254E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;169E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;259E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;260E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;254E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;190E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;261E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;262E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;169E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;169E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;254E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;156E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;263E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;264E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;254E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;190E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;265E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;266E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;169E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;169E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;254E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;267E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;268E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;269E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;254E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;190E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;270E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;271E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;169E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;169E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;93E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;91E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;272E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;247E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;273E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;91E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;144E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;169E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;274E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;251E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;144E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;169E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;275E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;155E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;253E;E;D;K;6;$classD;K;6;CP$UIDd;2;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;276E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;267E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;268E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;269E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;276E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;190E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;277E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;271E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;169E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;169E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;276E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;156E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;263E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;264E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;276E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;190E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;278E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;266E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;169E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;169E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;276E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;169E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;259E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;260E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;276E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;190E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;279E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;262E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;169E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;169E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;276E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;155E;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;3;276E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;190E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;280E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;258E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;169E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;169E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;54E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;91E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;281E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;282E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;91E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;152E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;156E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;157E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;283E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;159E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;160E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;155E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;156E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;91E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;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;91E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;190E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;191E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;169E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;286E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;169E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;169E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;54E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;91E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;287E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;282E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;91E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;152E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;156E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;157E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;283E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;159E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;160E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;155E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;156E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;288E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;289E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;90E;E;E;S;8;delegateS;6;buttonS;8;checkboxS;10;clickCountS;11;imageButtonS;19;imageDisabledButtonS;21;momentaryChangeButtonS;12;monkeyButtonS;14;monkeyCheckboxS;19;monkeyCheckboxLabelS;11;monkeyLabelS;13;multiCheckboxS;12;positionMenuS;12;pushInButtonS;15;pushOnOffButtonD;K;10;$classnameS;7;CPRadioK;8;$classesA;S;7;CPRadioS;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;126E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;74E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;290E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;290E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;74E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;147E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;251E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;291E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;292E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;155E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;169E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;293E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;169E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;294E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;3;295E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;3;296E;K;20;CPRadioRadioGroupKeyD;K;6;CP$UIDd;3;298E;E;S;6;radio1D;K;6;$classD;K;6;CP$UIDd;3;126E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;74E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;299E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;290E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;74E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;147E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;251E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;291E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;164E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;155E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;300E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;169E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;294E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;3;295E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;3;296E;K;20;CPRadioRadioGroupKeyD;K;6;CP$UIDd;3;298E;E;S;6;radio2S;9;theWindowS;12;toggleButtonS;17;setImagePosition:S;11;countClick:S;20;switchSelectedRadio:S;12;monkeyClick:S;29;setMonkeyButtonHighlightedBy:S;28;setMonkeyButtonShowsStateBy:S;32;{10000000000000, 10000000000000}S;8;CPWindowS;23;{{10, 465}, {380, 253}}d;1;7S;19;CPButton Image Testd;1;0S;20;{{0, 0}, {380, 253}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;67E;E;E;d;2;18S;6;normalS;22;{{40, 212}, {101, 17}}S;19;{{0, 0}, {101, 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;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;301E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;166E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;E;d;1;2d;1;4T;S;15;Image Position:d;4;3072F;S;23;{{141, 211}, {201, 24}}S;19;{{0, 0}, {201, 24}}S;12;popup-buttonS;8;borderedD;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;301E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;166E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;157E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;E;d;2;12S;8;No ImageS;17;_popUpItemAction:d;1;1d;7;1048576S;10;Image OnlyS;4;LeftS;5;RightS;5;BelowS;5;AboveS;8;OverlapsS;22;{{20, 20}, {340, 174}}S;20;{{0, 0}, {340, 174}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;69E;E;E;S;9;BezelViewS;20;{{22, 15}, {96, 24}}S;18;{{0, 0}, {96, 24}}S;6;Buttond;2;14S;22;{{141, 15}, {176, 24}}S;19;{{0, 0}, {176, 24}}S;17;Button With ImageS;20;{{29, 65}, {85, 40}}S;18;{{0, 0}, {85, 40}}S;9;check-boxS;8;selectedS;8;CheckboxS;22;{{163, 65}, {152, 40}}S;19;{{0, 0}, {152, 40}}S;19;Multistate CheckboxS;22;{{31, 120}, {168, 40}}S;19;{{0, 0}, {168, 40}}D;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;129E;E;E;S;23;{{198, 128}, {119, 24}}S;19;{{0, 0}, {119, 24}}S;14;Set radio 2 OnS;22;{{141, 45}, {176, 24}}S;17;disabled+borderedS;19;Disabled With ImageS;13;AppControllerS;22;{{10, 796}, {318, 85}}d;2;15S;22;Continuous Button TestS;19;{{0, 0}, {318, 85}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;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;E;E;S;21;{{18, 18}, {120, 24}}S;19;{{0, 0}, {120, 24}}S;13;Normal ButtonS;22;{{150, 18}, {146, 24}}S;19;{{0, 0}, {146, 24}}d;5;65540S;17;Continuous ButtonS;21;{{17, 48}, {107, 17}}S;19;{{0, 0}, {107, 17}}S;16;Recorded clicks:S;22;{{126, 48}, {175, 17}}S;19;{{0, 0}, {175, 17}}S;1;0S;24;{{410, 462}, {271, 156}}S;25;CPButton Button Type TestS;20;{{0, 0}, {271, 156}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;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;E;E;S;21;{{29, 18}, {208, 24}}S;19;{{0, 0}, {208, 24}}S;26;Momentary Push In (Normal)S;21;{{29, 50}, {208, 24}}S;18;Push On / Push OffS;21;{{29, 82}, {208, 24}}S;6;ToggleS;22;{{29, 114}, {208, 24}}S;16;Momentary ChangeS;24;{{410, 644}, {480, 210}}S;18;Monkey Button TestS;20;{{0, 0}, {480, 210}}D;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;2;94E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;E;E;S;22;{{151, 38}, {174, 24}}S;19;{{0, 0}, {174, 24}}D;K;10;$classnameS;20;_CPCibCustomResourceK;8;$classesA;S;20;_CPCibCustomResourceS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;243E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;302E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;303E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;305E;E;S;13;Monkey ButtonS;22;{{17, 80}, {222, 114}}S;20;{{0, 0}, {222, 114}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;254E;E;E;D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;249E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;306E;E;D;K;6;$classD;K;6;CP$UIDd;3;249E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;307E;E;S;13;Highlights ByS;6;{0, 0}D;K;6;$classD;K;6;CP$UIDd;2;52E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;94E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;313E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;314E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;315E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;94E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;147E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;E;S;20;{{16, 8}, {137, 18}}S;19;{{0, 0}, {137, 18}}D;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;301E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;308E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;E;S;16;CPPushInCellMaskS;21;{{16, 28}, {152, 18}}S;19;{{0, 0}, {152, 18}}D;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;301E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;308E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;E;S;18;CPContentsCellMaskS;21;{{16, 48}, {172, 18}}S;19;{{0, 0}, {172, 18}}D;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;301E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;308E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;E;S;20;CPChangeGrayCellMaskd;1;8S;21;{{16, 68}, {218, 18}}S;19;{{0, 0}, {218, 18}}D;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;301E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;308E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;E;S;26;CPChangeBackgroundCellMaskS;23;{{241, 80}, {222, 114}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;276E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;249E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;309E;E;S;14;Shows State ByD;K;6;$classD;K;6;CP$UIDd;2;52E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;99E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;313E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;314E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;317E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;99E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;147E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;E;D;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;301E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;308E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;E;D;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;301E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;308E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;E;D;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;301E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;308E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;E;D;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;301E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;308E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;E;S;22;{{332, 41}, {131, 17}}S;19;{{0, 0}, {131, 17}}S;5;LabelS;22;{{151, 10}, {138, 32}}S;19;{{0, 0}, {138, 32}}S;15;Monkey CheckboxS;22;{{289, 10}, {131, 17}}S;10;OtherViewsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;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;E;E;S;18;{{0, 0}, {82, 40}}S;5;radioS;17;selected+borderedS;7;Radio 1d;1;3f;3;0.5f;4;0.05D;K;10;$classnameS;12;CPRadioGroupK;8;$classesA;S;12;CPRadioGroupS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;297E;K;21;CPRadioGroupRadiosKeyD;K;6;CP$UIDd;3;310E;K;28;CPRadioGroupSelectedRadioKeyD;K;6;CP$UIDd;3;127E;E;S;19;{{86, 0}, {82, 40}}S;7;Radio 2S;17;Arial, sans-serifS;7;CPImageS;13;CPAddTemplateD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;304E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;312E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;316E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;144E;E;E;d;2;11D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;316E;E;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;318E;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;311E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;319E;E;S;20;{{1, 15}, {220, 98}}S;19;{{0, 0}, {220, 98}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;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;E;E;f;4;0.42D;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;102E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;100E;E;E;D;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;129E;E;E;S;22;{"width":0,"height":0}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;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;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;49E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;55E;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;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;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;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;1;0E;D;K;6;CP$UIDd;1;0E;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;2;78E;D;K;6;CP$UIDd;2;79E;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;1;0E;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;85E;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;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;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;1;0E;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;1;0E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;108E;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;51E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;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;79E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;11E;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;85E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;11E;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;91E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;99E;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;2;99E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;2;57E;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;109E;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;110E;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;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;69E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;112E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;72E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;113E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;83E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;114E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;70E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;115E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;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;116E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;89E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;117E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;92E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;118E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;105E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;119E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;106E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;120E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;104E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;73E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;57E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;123E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;86E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;124E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;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;125E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;127E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;128E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;129E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;130E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;51E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;131E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;88E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;132E;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;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;80E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;134E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;81E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;134E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;75E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;92E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;136E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;95E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;96E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;97E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;98E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;100E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;138E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;101E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;138E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;102E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;138E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;103E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;138E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;105E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;136E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;109E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;139E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;140E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;141E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;142E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;143E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;53E;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;52E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;145E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;145E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;146E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;147E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;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;54E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;53E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;149E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;150E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;53E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;152E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;156E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;157E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;158E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;159E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;160E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;162E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;155E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;156E;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;56E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;53E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;3;108E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;163E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;164E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;53E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;165E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;166E;K;6;$afontD;K;6;CP$UIDd;3;167E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;156E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;1;0E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;169E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;58E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;170E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;57E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;171E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;172E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;58E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;174E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;57E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;171E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;172E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;58E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;175E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;57E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;171E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;58E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;176E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;57E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;171E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;58E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;177E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;57E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;171E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;58E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;178E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;57E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;171E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;58E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;179E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;57E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;171E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;173E;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;66E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;53E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;180E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;181E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;182E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;53E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;183E;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;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;67E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;184E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;185E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;67E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;166E;K;6;$afontD;K;6;CP$UIDd;3;167E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;186E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;187E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;67E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;188E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;189E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;67E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;166E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;167E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;190E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;187E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;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;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;67E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;191E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;192E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;67E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;193E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;194E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;172E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;195E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;172E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;172E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;67E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;196E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;197E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;67E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;193E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;194E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;172E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;198E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;157E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;172E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;172E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;52E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;67E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;199E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;200E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;201E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;67E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;E;D;K;6;$classD;K;6;CP$UIDd;2;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;67E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;202E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;203E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;67E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;166E;K;6;$afontD;K;6;CP$UIDd;3;167E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;204E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;187E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;67E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;205E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;189E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;67E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;206E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;167E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;207E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;187E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;208E;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;139E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;140E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;209E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;210E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;211E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;79E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;212E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;212E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;213E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;E;D;K;6;$classD;K;6;CP$UIDd;2;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;79E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;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;2;79E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;166E;K;6;$afontD;K;6;CP$UIDd;3;167E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;216E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;187E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;79E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;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;79E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;166E;K;6;$afontD;K;6;CP$UIDd;3;167E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;219E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;220E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;187E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;54E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;79E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;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;2;79E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;152E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;156E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;157E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;223E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;159E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;160E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;162E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;155E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;156E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;79E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;224E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;225E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;79E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;152E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;172E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;157E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;226E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;159E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;160E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;162E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;155E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;172E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;139E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;140E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;227E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;210E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;228E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;85E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;229E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;229E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;230E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;E;D;K;6;$classD;K;6;CP$UIDd;2;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;85E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;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;85E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;166E;K;6;$afontD;K;6;CP$UIDd;3;167E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;233E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;187E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;85E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;234E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;232E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;85E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;166E;K;6;$afontD;K;6;CP$UIDd;3;167E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;235E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;187E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;85E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;236E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;232E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;85E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;166E;K;6;$afontD;K;6;CP$UIDd;3;167E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;237E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;187E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;85E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;238E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;232E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;85E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;166E;K;6;$afontD;K;6;CP$UIDd;3;167E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;239E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;187E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;50E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;139E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;140E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;240E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;210E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;241E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;242E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;242E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;243E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;E;D;K;6;$classD;K;6;CP$UIDd;2;68E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;91E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;244E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;245E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;91E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;166E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;167E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;155E;K;7;$aimageD;K;6;CP$UIDd;3;247E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;248E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;249E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;187E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;144E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;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;93E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;91E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;250E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;251E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;252E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;91E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;144E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;172E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;253E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;254E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;144E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;172E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;255E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;155E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;256E;E;D;K;6;$classD;K;6;CP$UIDd;2;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;257E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;155E;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;3;257E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;193E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;260E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;261E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;172E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;172E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;257E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;172E;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;3;257E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;193E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;264E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;265E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;172E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;172E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;257E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;156E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;266E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;267E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;257E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;193E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;268E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;269E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;172E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;172E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;257E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;270E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;271E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;272E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;257E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;193E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;273E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;274E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;172E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;172E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;93E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;91E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;275E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;251E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;276E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;91E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;144E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;172E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;277E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;254E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;144E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;172E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;278E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;155E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;256E;E;D;K;6;$classD;K;6;CP$UIDd;2;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;279E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;270E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;271E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;272E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;279E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;193E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;280E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;274E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;172E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;172E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;279E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;156E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;266E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;267E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;279E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;193E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;281E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;269E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;172E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;172E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;279E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;172E;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;3;279E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;193E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;282E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;265E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;172E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;172E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;279E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;155E;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;3;279E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;193E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;283E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;261E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;172E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;172E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;54E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;91E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;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;91E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;152E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;156E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;157E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;286E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;159E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;160E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;162E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;155E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;156E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;71E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;91E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;287E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;288E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;91E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;193E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;194E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;172E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;289E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;172E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;172E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;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;54E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;91E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;290E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;285E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;91E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;152E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;156E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;157E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;286E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;159E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;160E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;160E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;162E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;155E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;156E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;291E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;292E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;90E;E;E;S;8;delegateS;6;buttonS;8;checkboxS;10;clickCountS;11;imageButtonS;19;imageDisabledButtonS;21;momentaryChangeButtonS;12;monkeyButtonS;14;monkeyCheckboxS;19;monkeyCheckboxLabelS;11;monkeyLabelS;13;multiCheckboxS;12;positionMenuS;12;pushInButtonS;15;pushOnOffButtonD;K;10;$classnameS;7;CPRadioK;8;$classesA;S;7;CPRadioS;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;126E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;74E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;293E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;293E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;74E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;147E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;254E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;294E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;295E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;155E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;172E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;296E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;172E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;172E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;3;297E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;3;298E;K;20;CPRadioRadioGroupKeyD;K;6;CP$UIDd;3;300E;E;S;6;radio1D;K;6;$classD;K;6;CP$UIDd;3;126E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;74E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;301E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;293E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;74E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;147E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;254E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;294E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;166E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;155E;K;16;$aimage-positionD;K;6;CP$UIDd;3;155E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;144E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;155E;K;11;$aalignmentD;K;6;CP$UIDd;3;144E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;144E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;156E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;302E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;160E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;172E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;172E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;157E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;155E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;144E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;3;297E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;3;298E;K;20;CPRadioRadioGroupKeyD;K;6;CP$UIDd;3;300E;E;S;6;radio2S;9;theWindowS;12;toggleButtonS;17;setImagePosition:S;11;countClick:S;20;switchSelectedRadio:S;12;monkeyClick:S;29;setMonkeyButtonHighlightedBy:S;28;setMonkeyButtonShowsStateBy:S;32;{10000000000000, 10000000000000}S;8;CPWindowS;23;{{100, 67}, {380, 253}}d;1;7S;19;CPButton Image Testd;1;0S;20;{{0, 0}, {380, 253}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;67E;E;E;d;2;18S;6;normalS;22;{{40, 212}, {101, 17}}S;19;{{0, 0}, {101, 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;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;303E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;304E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;157E;E;d;1;2d;1;4T;S;15;Image Position: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;161E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;305E;E;S;23;{{141, 211}, {201, 24}}S;19;{{0, 0}, {201, 24}}S;12;popup-buttonS;8;borderedD;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;303E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;304E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;157E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;157E;E;S;0;d;2;12S;8;No ImageS;17;_popUpItemAction:d;1;1d;7;1048576S;10;Image OnlyS;4;LeftS;5;RightS;5;BelowS;5;AboveS;8;OverlapsS;22;{{20, 20}, {340, 174}}S;20;{{0, 0}, {340, 174}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;69E;E;E;S;9;BezelViewS;20;{{22, 15}, {96, 24}}S;18;{{0, 0}, {96, 24}}S;6;Buttond;2;14S;22;{{141, 15}, {176, 24}}S;19;{{0, 0}, {176, 24}}S;17;Button With ImageS;20;{{29, 65}, {85, 40}}S;18;{{0, 0}, {85, 40}}S;9;check-boxS;8;selectedS;8;CheckboxS;22;{{163, 65}, {152, 40}}S;19;{{0, 0}, {152, 40}}S;19;Multistate CheckboxS;22;{{31, 120}, {168, 40}}S;19;{{0, 0}, {168, 40}}D;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;129E;E;E;S;23;{{198, 128}, {119, 24}}S;19;{{0, 0}, {119, 24}}S;14;Set radio 2 OnS;22;{{141, 45}, {176, 24}}S;17;disabled+borderedS;19;Disabled With ImageS;13;AppControllerS;23;{{100, 354}, {318, 85}}d;2;15S;22;Continuous Button TestS;19;{{0, 0}, {318, 85}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;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;E;E;S;21;{{18, 18}, {120, 24}}S;19;{{0, 0}, {120, 24}}S;13;Normal ButtonS;22;{{150, 18}, {146, 24}}S;19;{{0, 0}, {146, 24}}d;5;65540S;17;Continuous ButtonS;21;{{17, 48}, {107, 17}}S;19;{{0, 0}, {107, 17}}S;16;Recorded clicks:S;22;{{126, 48}, {175, 17}}S;19;{{0, 0}, {175, 17}}S;1;0S;23;{{502, 67}, {271, 156}}S;25;CPButton Button Type TestS;20;{{0, 0}, {271, 156}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;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;E;E;S;21;{{29, 18}, {208, 24}}S;19;{{0, 0}, {208, 24}}S;26;Momentary Push In (Normal)S;21;{{29, 50}, {208, 24}}S;18;Push On / Push OffS;21;{{29, 82}, {208, 24}}S;6;ToggleS;22;{{29, 114}, {208, 24}}S;16;Momentary ChangeS;24;{{502, 265}, {480, 210}}S;18;Monkey Button TestS;20;{{0, 0}, {480, 210}}D;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;2;94E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;E;E;S;22;{{151, 38}, {174, 24}}S;19;{{0, 0}, {174, 24}}D;K;10;$classnameS;17;_CPThemeAttributeK;8;$classesA;S;17;_CPThemeAttributeS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;246E;K;4;nameD;K;6;CP$UIDd;3;306E;K;12;defaultValueD;K;6;CP$UIDd;1;0E;K;6;valuesD;K;6;CP$UIDd;3;308E;E;S;13;Monkey ButtonS;15;Alternate TitleS;22;{{17, 80}, {222, 114}}S;20;{{0, 0}, {222, 114}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;257E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;161E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;309E;E;D;K;6;$classD;K;6;CP$UIDd;3;161E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;310E;E;S;13;Highlights ByS;6;{0, 0}D;K;6;$classD;K;6;CP$UIDd;2;52E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;94E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;318E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;319E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;320E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;94E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;147E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;E;S;20;{{16, 8}, {137, 18}}S;19;{{0, 0}, {137, 18}}D;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;303E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;311E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;157E;E;S;16;CPPushInCellMaskS;21;{{16, 28}, {152, 18}}S;19;{{0, 0}, {152, 18}}D;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;303E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;311E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;157E;E;S;18;CPContentsCellMaskS;21;{{16, 48}, {172, 18}}S;19;{{0, 0}, {172, 18}}D;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;303E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;311E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;157E;E;S;20;CPChangeGrayCellMaskd;1;8S;21;{{16, 68}, {218, 18}}S;19;{{0, 0}, {218, 18}}D;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;303E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;311E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;157E;E;S;26;CPChangeBackgroundCellMaskS;23;{{241, 80}, {222, 114}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;279E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;161E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;312E;E;S;14;Shows State ByD;K;6;$classD;K;6;CP$UIDd;2;52E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;99E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;144E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;318E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;319E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;322E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;99E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;147E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;148E;E;D;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;303E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;311E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;157E;E;D;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;303E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;311E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;157E;E;D;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;303E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;311E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;157E;E;D;K;6;$classD;K;6;CP$UIDd;3;153E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;303E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;311E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;160E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;157E;E;S;22;{{332, 41}, {131, 17}}S;19;{{0, 0}, {131, 17}}S;5;LabelS;22;{{151, 10}, {138, 32}}S;19;{{0, 0}, {138, 32}}S;15;Monkey CheckboxS;22;{{289, 10}, {131, 17}}S;10;OtherViewsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;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;E;E;S;18;{{0, 0}, {82, 40}}S;5;radioS;17;selected+borderedS;7;Radio 1f;3;0.5f;4;0.05D;K;10;$classnameS;12;CPRadioGroupK;8;$classesA;S;12;CPRadioGroupS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;299E;K;21;CPRadioGroupRadiosKeyD;K;6;CP$UIDd;3;313E;K;28;CPRadioGroupSelectedRadioKeyD;K;6;CP$UIDd;3;127E;E;S;19;{{86, 0}, {82, 40}}S;7;Radio 2S;28;_CPFontSystemFacePlaceholderd;2;-1D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;314E;D;K;6;CP$UIDd;3;314E;D;K;6;CP$UIDd;3;314E;D;K;6;CP$UIDd;3;172E;E;E;S;5;imageD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;307E;K;10;CP.objectsD;K;11;highlightedD;K;6;CP$UIDd;3;316E;K;6;normalD;K;6;CP$UIDd;3;317E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;321E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;144E;E;E;d;2;11D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;321E;E;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;323E;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;315E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;324E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;325E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;326E;E;D;K;6;$classD;K;6;CP$UIDd;3;315E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;324E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;327E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;328E;E;S;20;{{1, 15}, {220, 98}}S;19;{{0, 0}, {220, 98}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;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;E;E;f;4;0.42D;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;102E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;100E;E;E;D;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;129E;E;E;S;7;CPImageS;16;CPRemoveTemplateD;K;6;$classD;K;6;CP$UIDd;3;307E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;330E;E;E;S;13;CPAddTemplateD;K;6;$classD;K;6;CP$UIDd;3;307E;K;10;CP.objectsD;K;4;sizeD;K;6;CP$UIDd;3;331E;E;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;329E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;332E;E;D;K;6;$classD;K;6;CP$UIDd;3;329E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;332E;E;S;22;{"width":0,"height":0}E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Tests/Manual/CPButtonTest/Resources/MainMenu.xib b/Tests/Manual/CPButtonTest/Resources/MainMenu.xib index 4cfbbac37..646fa37c3 100644 --- a/Tests/Manual/CPButtonTest/Resources/MainMenu.xib +++ b/Tests/Manual/CPButtonTest/Resources/MainMenu.xib @@ -1,328 +1,313 @@ - - 1070 - 11E53 - 2182 - 1138.47 - 569.00 - - com.apple.InterfaceBuilder.CocoaPlugin - 2182 - - - NSPopUpButton - NSMenuItem - NSMenu - NSButton - NSTextFieldCell - NSButtonCell - NSBox - NSMatrix - NSCustomObject - NSCustomView - NSView - NSWindowTemplate - NSTextField - NSPopUpButtonCell - - - com.apple.InterfaceBuilder.CocoaPlugin - - - PluginDependencyRecalculationVersion - - - - - NSApplication - - - FirstResponder - - - NSApplication - - - 7 - 2 - {{10, 700}, {380, 253}} - 1954021376 - CPButton Image Test - NSWindow - - - - - 274 - - - - 268 - {{40, 24}, {101, 17}} - - - - YES - - 68288064 - 272630784 - Image Position: - - LucidaGrande - 13 - 1044 - - - - 6 - System - controlColor - - 3 - MC42NjY2NjY2NjY3AA - - - - 6 - System - controlTextColor - - 3 - MAA - - - - - - - 268 - {{140, 16}, {207, 26}} - - - - YES - - -2076049856 - 2048 - - - 109199615 - 129 - - - 400 - 75 - - - No Image - - 1048576 - 2147483647 - 1 - - NSImage - NSMenuCheckmark - - - NSImage - NSMenuMixedState - - _popUpItemAction: - - - YES - - OtherViews - - - - - Image Only - - 1048576 - 2147483647 - - - _popUpItemAction: - 1 - - - - - Left - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - Right - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - Below - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - Above - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - Overlaps - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - - 1 - YES - YES - 2 - - - - - 268 - - - - 268 - {{143, 103}, {176, 25}} - - - - YES - - 604110336 - 134217728 - Disabled With Image - - - -2034482945 - 163 - - - 200 - 25 - - - - - 268 - {{194, 16}, {131, 32}} - - - - _NS:687 - YES - - 67239424 - 134217728 - Set radio 2 On - - _NS:687 - - -2038284033 - 129 - - - 200 - 25 - - - - - 268 - {{31, 14}, {168, 40}} - - - - YES - 1 - 2 - - - -2080244224 - 0 - Radio 1 - - - 1 - 1211912703 - 0 - - NSRadioButton - - - - 200 - 25 - - - 67239424 - 0 - Radio 2 - - - 1211912703 - 0 - - 400 - 75 - - - {82, 40} - {4, 2} - 1151868928 - NSActionCell - - 67239424 - 0 - Radio - - 1211912703 - 0 - - 549453824 - {18, 18} - - - - - - TU0AKgAABRgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAAAAAAA + + 1060 + 11E53 + 851 + 1138.47 + 569.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 851 + + + + + + + + + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + + NSApplication + + + FirstResponder + + + NSApplication + + + 7 + 2 + {{100, 1098}, {380, 253}} + 1954021376 + CPButton Image Test + NSWindow + + + {1.7976931348623157e+308, 1.7976931348623157e+308} + + + 274 + + + + 268 + {{40, 24}, {101, 17}} + + + YES + + 68288064 + 272630784 + Image Position: + + LucidaGrande + 13 + 1040 + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 268 + {{140, 16}, {207, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + No Image + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + + + YES + + OtherViews + + + + + Image Only + + 1048576 + 2147483647 + + + _popUpItemAction: + 1 + + + + + Left + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Right + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Below + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Above + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Overlaps + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + + + + 268 + {{143, 103}, {176, 25}} + + + YES + + 604110336 + 134217728 + Disabled With Image + + + -2034482945 + 163 + + + 200 + 25 + + + + + 268 + {{194, 16}, {131, 32}} + + + _NS:687 + YES + + 67239424 + 134217728 + Set radio 2 On + + _NS:687 + + -2038284033 + 129 + + + 200 + 25 + + + + + 268 + {{31, 14}, {168, 40}} + + + YES + 1 + 2 + + + -2080244224 + 0 + Radio 1 + + + 1 + 1211912703 + 0 + + NSRadioButton + + + + 200 + 25 + + + 67239424 + 0 + Radio 2 + + + 1211912703 + 0 + + 400 + 75 + + + {82, 40} + {4, 2} + 1151868928 + NSActionCell + + 67239424 + 0 + Radio + + 1211912703 + 0 + + 549453824 + {18, 18} + + + + + + TU0AKgAABRgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAADwRERGLJycnySsrK/A1NTXw IyMjyRwcHIsJCQk8AAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFFRUVdVBQUOCoqKj/ 29vb//n5+f/6+vr/2tra/6qqqv9UVFTgHx8fdQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUZGRl5 @@ -347,1887 +332,1876 @@ AAAAAwAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQEAAAMAAAABABIAAAEB AAMAAAABABIAAAECAAMAAAAEAAAFugEDAAMAAAABAAEAAAEGAAMAAAABAAIAAAERAAQAAAABAAAACAES AAMAAAABAAEAAAEVAAMAAAABAAQAAAEWAAMAAAABABIAAAEXAAQAAAABAAAFEAEcAAMAAAABAAEAAAFS AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA - - - - - - 3 - MCAwAA - - - - 400 - 75 - - - - - 3 - MQA - - - - - - 268 - {{163, 69}, {152, 40}} - - - - YES - - -2080244224 - 16777216 - Multistate Checkbox - - - 1211912703 - 2 - - NSImage - NSSwitch - - - NSSwitch - - - - 200 - 25 - - - - - 268 - {{29, 69}, {85, 40}} - - - - YES - - -2080244224 - 134217728 - Checkbox - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{143, 133}, {176, 25}} - - - - YES - - 67239424 - 134217728 - Button With Image - - - -2034482945 - 163 - - - 200 - 25 - - - - - 268 - {{24, 133}, {96, 25}} - - - - YES - - 67239424 - 134217728 - Button - - - -2038284033 - 163 - - - 200 - 25 - - - - {{20, 59}, {340, 174}} - - - - BezelView - - - {380, 253} - - - - - {{0, 0}, {2560, 1418}} - {10000000000000, 10000000000000} - YES - - - AppController - - - 15 - 2 - {{10, 537}, {318, 85}} - 611844096 - Continuous Button Test - NSWindow - - - - - 256 - - - - 268 - {{14, 37}, {132, 32}} - - - YES - - 67239424 - 134217728 - Normal Button - - - -2038284033 - 129 - - - 200 - 25 - - - - - 268 - {{146, 37}, {158, 32}} - - - YES - - 67763712 - 134217728 - Continuous Button - - - -2038284033 - 129 - - - 200 - 25 - - - - - 268 - {{17, 20}, {107, 17}} - - - YES - - 68288064 - 272630784 - Recorded clicks: - - - - - - - - - 268 - {{126, 20}, {175, 17}} - - YES - - 68288064 - 71304192 - 0 - - - - - - - - {318, 85} - - - {{0, 0}, {2560, 1418}} - {10000000000000, 10000000000000} - YES - - - 15 - 2 - {{410, 800}, {271, 156}} - 611845120 - CPButton Button Type Test - NSWindow - - - - - 256 - - - - 268 - {{25, 108}, {220, 32}} - - - _NS:9 - YES - - 67239424 - 134217728 - Momentary Push In (Normal) - - _NS:9 - - -2038284033 - 129 - - - 200 - 25 - - - - - 268 - {{25, 76}, {220, 32}} - - - _NS:9 - YES - - 67239424 - 134217728 - Push On / Push Off - - _NS:9 - - -2038284033 - 129 - - - 200 - 25 - - - - - 268 - {{25, 44}, {220, 32}} - - - _NS:9 - YES - - 67239424 - 134217728 - Toggle - - _NS:9 - - -2038284033 - 129 - - - 200 - 25 - - - - - 268 - {{25, 12}, {220, 32}} - - _NS:9 - YES - - 67239424 - 134217728 - Momentary Change - - _NS:9 - - -2038284033 - 129 - - - 200 - 25 - - - - {271, 156} - - _NS:20 - - {{0, 0}, {2560, 1418}} - {10000000000000, 10000000000000} - YES - - - 15 - 2 - {{410, 564}, {480, 210}} - 611845120 - Monkey Button Test - NSWindow - - - - - 256 - - - - 268 - {{147, 142}, {186, 32}} - - - - _NS:9 - YES - - 67239424 - 134217728 - Monkey Button - - _NS:9 - - -2034482945 - 129 - - NSImage - NSAddTemplate - - - NSImage - NSRemoveTemplate - - Alternate Title - - 200 - 25 - - - - - 12 - - - - 274 - - - - 268 - {{16, 72}, {137, 18}} - - - - _NS:9 - 2 - YES - - 67239424 - 131072 - CPPushInCellMask - - LucidaGrande - 11 - 3100 - - _NS:9 - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{16, 52}, {152, 18}} - - - - _NS:9 - 1 - YES - - 67239424 - 131072 - CPContentsCellMask - - _NS:9 - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{16, 32}, {172, 18}} - - - - _NS:9 - 4 - YES - - 67239424 - 131072 - CPChangeGrayCellMask - - _NS:9 - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{16, 12}, {218, 18}} - - - - _NS:9 - 8 - YES - - 67239424 - 131072 - CPChangeBackgroundCellMask - - _NS:9 - - 1211912703 - 2 - - - - - 200 - 25 - - - - {{1, 1}, {220, 98}} - - - - _NS:11 - - - {{17, 16}, {222, 114}} - - - - _NS:9 - {0, 0} - - 67239424 - 0 - Highlights By - - - 6 - System - textBackgroundColor - - - - 3 - MCAwLjgwMDAwMDAxMTkAA - - - - 1 - 0 - 2 - NO - - - - 12 - - - - 274 - - - - 268 - {{16, 72}, {137, 18}} - - - - _NS:9 - 2 - YES - - 67239424 - 131072 - CPPushInCellMask - - _NS:9 - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{16, 52}, {152, 18}} - - - - _NS:9 - 1 - YES - - 67239424 - 131072 - CPContentsCellMask - - _NS:9 - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{16, 32}, {172, 18}} - - - - _NS:9 - 4 - YES - - 67239424 - 131072 - CPChangeGrayCellMask - - _NS:9 - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{16, 12}, {218, 18}} - - - - _NS:9 - 8 - YES - - 67239424 - 131072 - CPChangeBackgroundCellMask - - _NS:9 - - 1211912703 - 2 - - - - - 200 - 25 - - - - {{1, 1}, {220, 98}} - - - - _NS:11 - - - {{241, 16}, {222, 114}} - - - - _NS:9 - {0, 0} - - 67239424 - 0 - Shows State By - - - - 3 - MCAwLjgwMDAwMDAxMTkAA - - - - 1 - 0 - 2 - NO - - - - 268 - {{332, 152}, {131, 17}} - - - - _NS:1505 - YES - - 68288064 - 272630784 - Label - - _NS:1505 - - - - - - - - 268 - {{151, 168}, {138, 32}} - - - - _NS:9 - YES - - -2080244224 - 0 - Monkey Checkbox - - _NS:9 - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{289, 183}, {131, 17}} - - - - _NS:1505 - YES - - 68288064 - 272630784 - Label - - _NS:1505 - - - - - - - {480, 210} - - - - _NS:20 - - {{0, 0}, {2560, 1418}} - {10000000000000, 10000000000000} - YES - - - - - - - delegate - - - - 451 - - - - theWindow - - - - 1090 - - - - button - - - - 1174 - - - - imageButton - - - - 1175 - - - - checkbox - - - - 1176 - - - - multiCheckbox - - - - 1177 - - - - radio1 - - - - 1178 - - - - radio2 - - - - 1179 - - - - setImagePosition: - - - - 1180 - - - - positionMenu - - - - 1181 - - - - clickCount - - - - 1193 - - - - countClick: - - - - 1194 - - - - countClick: - - - - 1195 - - - - switchSelectedRadio: - - - - 1206 - - - - imageDisabledButton - - - - 1209 - - - - pushOnOffButton - - - - 1220 - - - - pushInButton - - - - 1221 - - - - toggleButton - - - - 1222 - - - - momentaryChangeButton - - - - 1223 - - - - setMonkeyButtonHighlightedBy: - - - - 1247 - - - - setMonkeyButtonHighlightedBy: - - - - 1248 - - - - setMonkeyButtonHighlightedBy: - - - - 1249 - - - - setMonkeyButtonHighlightedBy: - - - - 1250 - - - - setMonkeyButtonShowsStateBy: - - - - 1251 - - - - setMonkeyButtonShowsStateBy: - - - - 1252 - - - - setMonkeyButtonShowsStateBy: - - - - 1253 - - - - setMonkeyButtonShowsStateBy: - - - - 1254 - - - - monkeyButton - - - - 1255 - - - - monkeyLabel - - - - 1258 - - - - monkeyClick: - - - - 1259 - - - - monkeyClick: - - - - 1267 - - - - monkeyCheckboxLabel - - - - 1268 - - - - monkeyCheckbox - - - - 1269 - - - - - - 0 - - - - - - -2 - - - File's Owner - - - -1 - - - First Responder - - - -3 - - - Application - - - 371 - - - - - - - - 372 - - - - - - - - - - 450 - - - - - 1148 - - - - - - - - 1149 - - - - - 1150 - - - - - - - - 1151 - - - - - - - - 1152 - - - - - - - - - - - - - - 1153 - - - - - 1154 - - - - - 1155 - - - - - 1163 - - - - - 1164 - - - - - 1165 - - - - - 1166 - - - - - 1182 - - - - - - - - - - - - - - 1130 - - - - - - - - 1131 - - - - - 1132 - - - - - - - - 1133 - - - - - 1134 - - - - - - - - 1135 - - - - - 1140 - - - - - - - - 1141 - - - - - 1142 - - - - - - - - - - 1146 - - - - - 1145 - - - - - 1143 - - - - - 1183 - - - - - - - - 1184 - - - - - - - - - - - 1185 - - - - - - - - 1186 - - - - - 1187 - - - - - - - - 1188 - - - - - 1189 - - - - - - - - 1190 - - - - - 1191 - - - - - - - - 1192 - - - - - 1196 - - - - - - - - 1197 - - - - - 1207 - - - - - - - - 1208 - - - - - 1210 - - - - - - - - 1211 - - - - - - - - - - - 1212 - - - - - - - - 1213 - - - - - 1214 - - - - - - - - 1215 - - - - - 1216 - - - - - - - - 1217 - - - - - 1218 - - - - - - - - 1219 - - - - - 1224 - - - - - - Window - Monkey Button Test - - - 1225 - - - - - - - - - - - - - 1226 - - - - - - - - 1227 - - - - - 1228 - - - - - - - - - - - 1230 - - - - - - - - 1231 - - - - - 1232 - - - - - - - - 1233 - - - - - 1234 - - - - - - - - 1235 - - - - - 1236 - - - - - - - - 1237 - - - - - 1238 - - - - - - - - - - - 1239 - - - - - - - - 1240 - - - - - - - - 1241 - - - - - - - - 1242 - - - - - - - - 1243 - - - - - 1244 - - - - - 1245 - - - - - 1246 - - - - - 1256 - - - - - - - - 1257 - - - - - 1260 - - - - - - - - 1261 - - - - - 1262 - - - - - - - - 1263 - - - - - - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - - com.apple.InterfaceBuilder.CocoaPlugin - {{902, 462}, {380, 253}} - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - - - - - 1269 - - - - - AppController - NSObject - - id - id - id - id - id - id - - - - countClick: - id - - - monkeyClick: - id - - - radioGroupClicked: - id - - - setMonkeyButtonHighlightedBy: - id - - - setMonkeyButtonShowsStateBy: - id - - - switchSelectedRadio: - id - - - - NSButton - CPCheckBox - NSTextField - NSButton - NSButton - NSButton - NSButton - CPCheckBox - NSTextField - NSTextField - CPCheckBox - NSPopUpButton - NSButton - NSButton - CPRadio - CPRadio - NSButton - - - - button - NSButton - - - checkbox - CPCheckBox - - - clickCount - NSTextField - - - imageButton - NSButton - - - imageDisabledButton - NSButton - - - momentaryChangeButton - NSButton - - - monkeyButton - NSButton - - - monkeyCheckbox - CPCheckBox - - - monkeyCheckboxLabel - NSTextField - - - monkeyLabel - NSTextField - - - multiCheckbox - CPCheckBox - - - positionMenu - NSPopUpButton - - - pushInButton - NSButton - - - pushOnOffButton - NSButton - - - radio1 - CPRadio - - - radio2 - CPRadio - - - toggleButton - NSButton - - - - IBProjectSource - ./Classes/AppController.h - - - - BezelView - NSView - - IBProjectSource - ./Classes/BezelView.h - - - - - 0 - IBCocoaFramework - YES - 3 - - {8, 8} - {11, 11} - {10, 3} - {8, 8} - {15, 15} - - + + + + + + 3 + MCAwAA + + + + 400 + 75 + + + + + 3 + MQA + + + + + + 268 + {{163, 69}, {152, 40}} + + + YES + + -2080244224 + 16777216 + Multistate Checkbox + + + 1211912703 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + + + + 268 + {{29, 69}, {85, 40}} + + + YES + + -2080244224 + 134217728 + Checkbox + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{143, 133}, {176, 25}} + + + YES + + 67239424 + 134217728 + Button With Image + + + -2034482945 + 163 + + + 200 + 25 + + + + + 268 + {{24, 133}, {96, 25}} + + + YES + + 67239424 + 134217728 + Button + + + -2038284033 + 163 + + + 200 + 25 + + + + {{20, 59}, {340, 174}} + + + BezelView + + + {380, 253} + + + + {{0, 0}, {2560, 1418}} + {1.7976931348623157e+308, 1.7976931348623157e+308} + YES + + + AppController + + + 15 + 2 + {{100, 979}, {318, 85}} + 611844096 + Continuous Button Test + NSWindow + + + {1.7976931348623157e+308, 1.7976931348623157e+308} + + + 256 + + + + 268 + {{14, 37}, {132, 32}} + + + YES + + 67239424 + 134217728 + Normal Button + + + -2038284033 + 129 + + + 200 + 25 + + + + + 268 + {{146, 37}, {158, 32}} + + + YES + + 67763712 + 134217728 + Continuous Button + + + -2038284033 + 129 + + + 200 + 25 + + + + + 268 + {{17, 20}, {107, 17}} + + + YES + + 68288064 + 272630784 + Recorded clicks: + + + + + + + + + 268 + {{126, 20}, {175, 17}} + + YES + + 68288064 + 71304192 + 0 + + + + + + + + {318, 85} + + + + {{0, 0}, {2560, 1418}} + {1.7976931348623157e+308, 1.7976931348623157e+308} + YES + + + 15 + 2 + {{502, 1195}, {271, 156}} + 611845120 + CPButton Button Type Test + NSWindow + + + {1.7976931348623157e+308, 1.7976931348623157e+308} + + + 256 + + + + 268 + {{25, 108}, {220, 32}} + + + _NS:9 + YES + + 67239424 + 134217728 + Momentary Push In (Normal) + + _NS:9 + + -2038284033 + 129 + + + 200 + 25 + + + + + 268 + {{25, 76}, {220, 32}} + + + _NS:9 + YES + + 67239424 + 134217728 + Push On / Push Off + + _NS:9 + + -2038284033 + 129 + + + 200 + 25 + + + + + 268 + {{25, 44}, {220, 32}} + + + _NS:9 + YES + + 67239424 + 134217728 + Toggle + + _NS:9 + + -2038284033 + 129 + + + 200 + 25 + + + + + 268 + {{25, 12}, {220, 32}} + + _NS:9 + YES + + 67239424 + 134217728 + Momentary Change + + _NS:9 + + -2038284033 + 129 + + + 200 + 25 + + + + {271, 156} + + + _NS:20 + + {{0, 0}, {2560, 1418}} + {1.7976931348623157e+308, 1.7976931348623157e+308} + YES + + + 15 + 2 + {{502, 943}, {480, 210}} + 611845120 + Monkey Button Test + NSWindow + + + {1.7976931348623157e+308, 1.7976931348623157e+308} + + + 256 + + + + 268 + {{147, 142}, {186, 32}} + + + _NS:9 + YES + + 67239424 + 134217728 + Monkey Button + + _NS:9 + + -2034482945 + 129 + + NSImage + NSAddTemplate + + + NSImage + NSRemoveTemplate + + Alternate Title + + 200 + 25 + + + + + 12 + + + + 274 + + + + 268 + {{16, 72}, {137, 18}} + + + _NS:9 + 2 + YES + + 67239424 + 131072 + CPPushInCellMask + + LucidaGrande + 11 + 3088 + + _NS:9 + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 52}, {152, 18}} + + + _NS:9 + 1 + YES + + 67239424 + 131072 + CPContentsCellMask + + _NS:9 + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 32}, {172, 18}} + + + _NS:9 + 4 + YES + + 67239424 + 131072 + CPChangeGrayCellMask + + _NS:9 + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 12}, {218, 18}} + + + _NS:9 + 8 + YES + + 67239424 + 131072 + CPChangeBackgroundCellMask + + _NS:9 + + 1211912703 + 2 + + + + + 200 + 25 + + + + {{1, 1}, {220, 98}} + + + _NS:11 + + + {{17, 16}, {222, 114}} + + + _NS:9 + {0, 0} + + 67239424 + 0 + Highlights By + + + 6 + System + textBackgroundColor + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 12 + + + + 274 + + + + 268 + {{16, 72}, {137, 18}} + + + _NS:9 + 2 + YES + + 67239424 + 131072 + CPPushInCellMask + + _NS:9 + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 52}, {152, 18}} + + + _NS:9 + 1 + YES + + 67239424 + 131072 + CPContentsCellMask + + _NS:9 + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 32}, {172, 18}} + + + _NS:9 + 4 + YES + + 67239424 + 131072 + CPChangeGrayCellMask + + _NS:9 + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 12}, {218, 18}} + + _NS:9 + 8 + YES + + 67239424 + 131072 + CPChangeBackgroundCellMask + + _NS:9 + + 1211912703 + 2 + + + + + 200 + 25 + + + + {{1, 1}, {220, 98}} + + + _NS:11 + + + {{241, 16}, {222, 114}} + + + _NS:9 + {0, 0} + + 67239424 + 0 + Shows State By + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 268 + {{332, 152}, {131, 17}} + + + _NS:1505 + YES + + 68288064 + 272630784 + Label + + _NS:1505 + + + + + + + + 268 + {{151, 168}, {138, 32}} + + + _NS:9 + YES + + -2080244224 + 0 + Monkey Checkbox + + _NS:9 + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{289, 183}, {131, 17}} + + + _NS:1505 + YES + + 68288064 + 272630784 + Label + + _NS:1505 + + + + + + + {480, 210} + + + _NS:20 + + {{0, 0}, {2560, 1418}} + {1.7976931348623157e+308, 1.7976931348623157e+308} + YES + + + + + + + delegate + + + + 451 + + + + theWindow + + + + 1090 + + + + button + + + + 1174 + + + + imageButton + + + + 1175 + + + + checkbox + + + + 1176 + + + + multiCheckbox + + + + 1177 + + + + radio1 + + + + 1178 + + + + radio2 + + + + 1179 + + + + setImagePosition: + + + + 1180 + + + + positionMenu + + + + 1181 + + + + clickCount + + + + 1193 + + + + countClick: + + + + 1194 + + + + countClick: + + + + 1195 + + + + switchSelectedRadio: + + + + 1206 + + + + imageDisabledButton + + + + 1209 + + + + pushOnOffButton + + + + 1220 + + + + pushInButton + + + + 1221 + + + + toggleButton + + + + 1222 + + + + momentaryChangeButton + + + + 1223 + + + + setMonkeyButtonHighlightedBy: + + + + 1247 + + + + setMonkeyButtonHighlightedBy: + + + + 1248 + + + + setMonkeyButtonHighlightedBy: + + + + 1249 + + + + setMonkeyButtonHighlightedBy: + + + + 1250 + + + + setMonkeyButtonShowsStateBy: + + + + 1251 + + + + setMonkeyButtonShowsStateBy: + + + + 1252 + + + + setMonkeyButtonShowsStateBy: + + + + 1253 + + + + setMonkeyButtonShowsStateBy: + + + + 1254 + + + + monkeyButton + + + + 1255 + + + + monkeyLabel + + + + 1258 + + + + monkeyClick: + + + + 1259 + + + + monkeyClick: + + + + 1267 + + + + monkeyCheckboxLabel + + + + 1268 + + + + monkeyCheckbox + + + + 1269 + + + + + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 371 + + + + + + + + 372 + + + + + + + + + + 450 + + + + + 1148 + + + + + + + + 1149 + + + + + 1150 + + + + + + + + 1151 + + + + + + + + 1152 + + + + + + + + + + + + + + 1153 + + + + + 1154 + + + + + 1155 + + + + + 1163 + + + + + 1164 + + + + + 1165 + + + + + 1166 + + + + + 1182 + + + + + + + + + + + + + + 1130 + + + + + + + + 1131 + + + + + 1132 + + + + + + + + 1133 + + + + + 1134 + + + + + + + + 1135 + + + + + 1140 + + + + + + + + 1141 + + + + + 1142 + + + + + + + + + + 1146 + + + + + 1145 + + + + + 1143 + + + + + 1183 + + + + + + + + 1184 + + + + + + + + + + + 1185 + + + + + + + + 1186 + + + + + 1187 + + + + + + + + 1188 + + + + + 1189 + + + + + + + + 1190 + + + + + 1191 + + + + + + + + 1192 + + + + + 1196 + + + + + + + + 1197 + + + + + 1207 + + + + + + + + 1208 + + + + + 1210 + + + + + + + + 1211 + + + + + + + + + + + 1212 + + + + + + + + 1213 + + + + + 1214 + + + + + + + + 1215 + + + + + 1216 + + + + + + + + 1217 + + + + + 1218 + + + + + + + + 1219 + + + + + 1224 + + + + + + Window - Monkey Button Test + + + 1225 + + + + + + + + + + + + + 1226 + + + + + + + + 1227 + + + + + 1228 + + + + + + + + + + + 1230 + + + + + + + + 1231 + + + + + 1232 + + + + + + + + 1233 + + + + + 1234 + + + + + + + + 1235 + + + + + 1236 + + + + + + + + 1237 + + + + + 1238 + + + + + + + + + + + 1239 + + + + + + + + 1240 + + + + + + + + 1241 + + + + + + + + 1242 + + + + + + + + 1243 + + + + + 1244 + + + + + 1245 + + + + + 1246 + + + + + 1256 + + + + + + + + 1257 + + + + + 1260 + + + + + + + + 1261 + + + + + 1262 + + + + + + + + 1263 + + + + + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{100, 979}, {318, 85}} + + + com.apple.InterfaceBuilder.CocoaPlugin + {{100, 979}, {318, 85}} + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{502, 1195}, {271, 156}} + com.apple.InterfaceBuilder.CocoaPlugin + {{502, 1195}, {271, 156}} + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{502, 943}, {480, 210}} + com.apple.InterfaceBuilder.CocoaPlugin + {{502, 943}, {480, 210}} + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{100, 1098}, {380, 253}} + + + com.apple.InterfaceBuilder.CocoaPlugin + {{100, 1098}, {380, 253}} + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + + + 1269 + + + + + AppController + NSObject + + id + id + id + id + id + id + + + + countClick: + id + + + monkeyClick: + id + + + radioGroupClicked: + id + + + setMonkeyButtonHighlightedBy: + id + + + setMonkeyButtonShowsStateBy: + id + + + switchSelectedRadio: + id + + + + NSButton + CPCheckBox + NSTextField + NSButton + NSButton + NSButton + NSButton + CPCheckBox + NSTextField + NSTextField + CPCheckBox + NSPopUpButton + NSButton + NSButton + CPRadio + CPRadio + NSButton + + + + button + NSButton + + + checkbox + CPCheckBox + + + clickCount + NSTextField + + + imageButton + NSButton + + + imageDisabledButton + NSButton + + + momentaryChangeButton + NSButton + + + monkeyButton + NSButton + + + monkeyCheckbox + CPCheckBox + + + monkeyCheckboxLabel + NSTextField + + + monkeyLabel + NSTextField + + + multiCheckbox + CPCheckBox + + + positionMenu + NSPopUpButton + + + pushInButton + NSButton + + + pushOnOffButton + NSButton + + + radio1 + CPRadio + + + radio2 + CPRadio + + + toggleButton + NSButton + + + + IBProjectSource + ./Classes/AppController.h + + + + BezelView + NSView + + IBProjectSource + ./Classes/BezelView.h + + + + + 0 + IBCocoaFramework + YES + + 3 + + {8, 8} + {11, 11} + {10, 3} + {8, 8} + {15, 15} + + diff --git a/Tests/Manual/CPColorWellBindings/Resources/MainMenu.cib b/Tests/Manual/CPColorWellBindings/Resources/MainMenu.cib index b0441739a..36d612407 100644 --- a/Tests/Manual/CPColorWellBindings/Resources/MainMenu.cib +++ b/Tests/Manual/CPColorWellBindings/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;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;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;24E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;36E;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;44E;D;K;6;CP$UIDd;2;46E;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;26E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;43E;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;47E;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;48E;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;44E;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;44E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;26E;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;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;43E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;46E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;51E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;52E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;53E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;55E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;34E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;46E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;56E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;52E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;57E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;58E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;46E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;44E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;59E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;60E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;61E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;62E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;41E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;46E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;63E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;52E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;64E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;65E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;41E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;46E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;66E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;67E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;68E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;69E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;39E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;46E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;70E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;52E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;68E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;71E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;47E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;2;72E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;2;73E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;2;74E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;2;75E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;2;76E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;28E;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;27E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;77E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;78E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;78E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;79E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;80E;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;29E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;77E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;81E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;82E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;83E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;84E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;85E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;80E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;2;87E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;1;0E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;37E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;2;36E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;2;88E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;2;88E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;2;88E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;2;88E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;2;89E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;2;89E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;2;89E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;2;90E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;2;91E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;2;77E;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;31E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;87E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;77E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;92E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;92E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;87E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;2;94E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;95E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;80E;K;12;$agrid-colorD;K;6;CP$UIDd;2;96E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;97E;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;98E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;2;99E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;2;77E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;2;77E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;2;89E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;2;89E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;100E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;100E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;2;89E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;101E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;2;96E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;2;77E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;2;89E;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;2;33E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;102E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;103E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;104E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;106E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;107E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;108E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;100E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;2;89E;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;35E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;77E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;109E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;110E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;111E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;80E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;77E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;30E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;113E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;97E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;2;77E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;114E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;35E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;77E;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;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;111E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;117E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;118E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;77E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;30E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;119E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;97E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;2;77E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;120E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;11;CPColorWellK;8;$classesA;S;11;CPColorWellS;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;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;77E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;121E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;122E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;84E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;80E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;97E;K;19;CPColorWellColorKeyD;K;6;CP$UIDd;3;123E;K;22;CPColorWellBorderedKeyD;K;6;CP$UIDd;2;89E;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;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;77E;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;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;84E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;126E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;80E;K;6;$afontD;K;6;CP$UIDd;3;128E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;97E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;89E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;129E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;130E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;100E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;100E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;100E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;97E;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;42E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;77E;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;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;84E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;133E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;134E;K;16;$aimage-positionD;K;6;CP$UIDd;2;91E;K;6;$afontD;K;6;CP$UIDd;3;128E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;77E;K;11;$aalignmentD;K;6;CP$UIDd;2;77E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;135E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;97E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;136E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;100E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;91E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;2;77E;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;137E;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;45E;K;28;CPObjectControllerContentKeyD;K;6;CP$UIDd;1;0E;K;36;CPObjectControllerObjectClassNameKeyD;K;6;CP$UIDd;3;138E;K;31;CPObjectControllerIsEditableKeyD;K;6;CP$UIDd;3;100E;K;49;CPObjectControllerAutomaticallyPreparesContentKeyD;K;6;CP$UIDd;3;100E;K;37;CPArrayControllerAvoidsEmptySelectionD;K;6;CP$UIDd;3;100E;K;49;CPArrayControllerClearsFilterPredicateOnInsertionD;K;6;CP$UIDd;3;100E;K;41;CPArrayControllerFilterRestrictsInsertionD;K;6;CP$UIDd;2;89E;K;35;CPArrayControllerPreservesSelectionD;K;6;CP$UIDd;3;100E;K;39;CPArrayControllerSelectsInsertedObjectsD;K;6;CP$UIDd;3;100E;K;47;CPArrayControllerAlwaysUsesMultipleValuesMarkerD;K;6;CP$UIDd;3;100E;K;47;CPArrayControllerAutomaticallyRearrangesObjectsD;K;6;CP$UIDd;3;100E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;26E;E;E;S;8;delegateS;9;theWindowS;27;value: avoidsEmptySelectionS;5;valueS;20;avoidsEmptySelectionD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;10;CP.objectsD;E;E;S;38;value: arrangedObjects.color.cssStringS;31;arrangedObjects.color.cssStringD;K;6;$classD;K;6;CP$UIDd;2;54E;K;10;CP.objectsD;E;E;S;19;contentArray: arrayS;12;contentArrayS;5;arrayD;K;6;$classD;K;6;CP$UIDd;2;54E;K;10;CP.objectsD;E;E;S;32;value: selection.color.cssStringS;25;selection.color.cssStringD;K;6;$classD;K;6;CP$UIDd;2;54E;K;10;CP.objectsD;K;17;CPNullPlaceholderD;K;6;CP$UIDd;3;139E;E;E;S;26;textColor: selection.colorS;9;textColorS;15;selection.colorD;K;6;$classD;K;6;CP$UIDd;2;54E;K;10;CP.objectsD;E;E;S;22;value: selection.colorD;K;6;$classD;K;6;CP$UIDd;2;54E;K;10;CP.objectsD;E;E;S;32;{10000000000000, 10000000000000}S;8;CPWindowS;24;{{335, 165}, {715, 473}}d;1;7S;6;Windowd;1;0S;20;{{0, 0}, {715, 473}}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;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;43E;E;E;S;6;normalS;22;{{20, 20}, {168, 135}}S;20;{{0, 0}, {168, 135}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;90E;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;86E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;77E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;140E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;141E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;142E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;111E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;143E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;80E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;32E;E;d;2;10T;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;144E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;144E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;30E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;80E;E;d;1;2S;20;{{0, 0}, {167, 133}}D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;93E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;145E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;2;93E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;146E;E;d;1;4d;2;23S;6;{3, 2}F;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;34E;E;E;d;3;164d;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;105E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;144E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;144E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;147E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;148E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;80E;K;16;$atext-alignmentD;K;6;CP$UIDd;2;77E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;149E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;150E;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;144E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;126E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;151E;K;6;$afontD;K;6;CP$UIDd;3;153E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;97E;K;20;$avertical-alignmentD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;77E;K;15;$acontent-insetD;K;6;CP$UIDd;3;155E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;149E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;130E;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;97E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;77E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;149E;E;d;1;3S;19;{{1, 1}, {166, 15}}S;19;{{0, 0}, {166, 15}}d;1;8S;8;scrollerS;29;_horizontalScrollerDidScroll:f;18;0.9940119760479041S;22;{{224, 16}, {15, 102}}S;19;{{0, 0}, {15, 102}}d;11;-2147483648S;17;disabled+verticalS;27;_verticalScrollerDidScroll:f;18;0.9925373134328358S;22;{{213, 20}, {103, 23}}S;19;{{0, 0}, {103, 23}}D;K;6;$classD;K;6;CP$UIDd;2;93E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;156E;E;S;22;{{210, 51}, {194, 17}}S;19;{{0, 0}, {194, 17}}S;9;textfieldD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;127E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;157E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;158E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;100E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;100E;E;S;5;Labeld;4;3072S;22;{{18, 161}, {172, 18}}S;19;{{0, 0}, {172, 18}}S;9;check-boxS;8;selectedd;1;1S;21;Avoid Empty SelectionS;13;AppControllerS;19;CPMutableDictionaryS;4;NULLS;20;{{1, 1}, {166, 133}}S;20;{{0, 0}, {166, 133}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;32E;E;E;D;K;6;$classD;K;6;CP$UIDd;2;93E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;159E;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;135E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;135E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;135E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;162E;E;E;S;12;columnHeaderS;0;D;K;6;$classD;K;6;CP$UIDd;3;127E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;157E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;158E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;100E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;100E;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;152E;K;4;nameD;K;6;CP$UIDd;3;163E;K;12;defaultValueD;K;6;CP$UIDd;3;150E;K;6;valuesD;K;6;CP$UIDd;3;164E;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;154E;K;15;CPValueValueKeyD;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;166E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;135E;E;E;S;17;Arial, sans-serifd;2;12D;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;135E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;135E;E;E;f;3;0.5D;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;161E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;106E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;144E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;144E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;106E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;168E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;80E;E;S;4;fontD;K;6;$classD;K;6;CP$UIDd;2;54E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;169E;K;6;normalD;K;6;CP$UIDd;3;150E;E;E;S;39;{"top":0,"right":5,"bottom":0,"left":5}f;13;0.05813049898f;13;0.05554189906d;2;18D;K;6;$classD;K;6;CP$UIDd;3;127E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;157E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;158E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;89E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;100E;E;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;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;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;38E;D;K;6;CP$UIDd;2;40E;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;1;0E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;48E;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;31E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;29E;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;49E;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;50E;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;46E;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;46E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;27E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;52E;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;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;45E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;48E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;53E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;54E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;55E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;57E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;44E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;48E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;58E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;54E;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;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;35E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;48E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;61E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;54E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;62E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;63E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;48E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;46E;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;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;42E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;48E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;68E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;54E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;69E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;70E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;42E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;48E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;71E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;72E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;55E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;73E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;40E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;48E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;53E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;54E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;55E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;74E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;49E;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;75E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;2;76E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;2;77E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;2;78E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;2;79E;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;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;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;83E;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;80E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;84E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;85E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;86E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;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;83E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;2;90E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;1;0E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;38E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;2;37E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;2;91E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;2;91E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;2;91E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;2;91E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;2;92E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;2;92E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;2;92E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;2;93E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;2;94E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;2;80E;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;32E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;90E;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;95E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;95E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;90E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;2;97E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;98E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;83E;K;12;$agrid-colorD;K;6;CP$UIDd;2;99E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;100E;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;101E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;102E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;2;80E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;2;80E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;2;92E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;2;92E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;103E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;103E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;2;92E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;104E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;2;99E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;2;80E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;2;92E;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;2;34E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;105E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;106E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;107E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;109E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;110E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;111E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;103E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;2;92E;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;36E;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;3;112E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;113E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;31E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;114E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;83E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;80E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;31E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;116E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;100E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;2;80E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;117E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;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;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;80E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;118E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;119E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;31E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;114E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;120E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;121E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;80E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;31E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;122E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;100E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;2;80E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;123E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;11;CPColorWellK;8;$classesA;S;11;CPColorWellS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;39E;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;80E;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;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;87E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;126E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;127E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;100E;K;19;CPColorWellColorKeyD;K;6;CP$UIDd;3;128E;K;22;CPColorWellBorderedKeyD;K;6;CP$UIDd;2;92E;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;41E;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;80E;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;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;87E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;131E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;83E;K;6;$afontD;K;6;CP$UIDd;3;133E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;94E;K;11;$aalignmentD;K;6;CP$UIDd;3;100E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;92E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;134E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;135E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;103E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;103E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;103E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;136E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;94E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;100E;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;43E;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;80E;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;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;87E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;139E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;16;$aimage-positionD;K;6;CP$UIDd;2;94E;K;6;$afontD;K;6;CP$UIDd;3;133E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;80E;K;11;$aalignmentD;K;6;CP$UIDd;2;80E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;141E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;100E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;142E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;143E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;103E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;141E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;141E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;2;92E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;94E;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;6;$classD;K;6;CP$UIDd;2;39E;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;80E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;144E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;145E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;87E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;126E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;83E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;100E;K;19;CPColorWellColorKeyD;K;6;CP$UIDd;3;146E;K;22;CPColorWellBorderedKeyD;K;6;CP$UIDd;3;103E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;147E;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;47E;K;28;CPObjectControllerContentKeyD;K;6;CP$UIDd;1;0E;K;36;CPObjectControllerObjectClassNameKeyD;K;6;CP$UIDd;3;148E;K;31;CPObjectControllerIsEditableKeyD;K;6;CP$UIDd;3;103E;K;49;CPObjectControllerAutomaticallyPreparesContentKeyD;K;6;CP$UIDd;3;103E;K;37;CPArrayControllerAvoidsEmptySelectionD;K;6;CP$UIDd;3;103E;K;49;CPArrayControllerClearsFilterPredicateOnInsertionD;K;6;CP$UIDd;3;103E;K;41;CPArrayControllerFilterRestrictsInsertionD;K;6;CP$UIDd;2;92E;K;35;CPArrayControllerPreservesSelectionD;K;6;CP$UIDd;3;103E;K;39;CPArrayControllerSelectsInsertedObjectsD;K;6;CP$UIDd;3;103E;K;47;CPArrayControllerAlwaysUsesMultipleValuesMarkerD;K;6;CP$UIDd;3;103E;K;47;CPArrayControllerAutomaticallyRearrangesObjectsD;K;6;CP$UIDd;3;103E;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;9;theWindowS;22;value: selection.colorS;5;valueS;15;selection.colorD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;56E;K;10;CP.objectsD;K;26;CPConditionallySetsEnabledD;K;6;CP$UIDd;3;103E;E;E;S;27;value: avoidsEmptySelectionS;20;avoidsEmptySelectionD;K;6;$classD;K;6;CP$UIDd;2;56E;K;10;CP.objectsD;E;E;S;38;value: arrangedObjects.color.cssStringS;31;arrangedObjects.color.cssStringD;K;6;$classD;K;6;CP$UIDd;2;56E;K;10;CP.objectsD;E;E;S;19;contentArray: arrayS;12;contentArrayS;5;arrayD;K;6;$classD;K;6;CP$UIDd;2;56E;K;10;CP.objectsD;E;E;S;32;value: selection.color.cssStringS;25;selection.color.cssStringD;K;6;$classD;K;6;CP$UIDd;2;56E;K;10;CP.objectsD;K;17;CPNullPlaceholderD;K;6;CP$UIDd;3;149E;E;E;S;26;textColor: selection.colorS;9;textColorD;K;6;$classD;K;6;CP$UIDd;2;56E;K;10;CP.objectsD;E;E;D;K;6;$classD;K;6;CP$UIDd;2;56E;K;10;CP.objectsD;K;26;CPConditionallySetsEnabledD;K;6;CP$UIDd;3;103E;E;E;S;32;{10000000000000, 10000000000000}S;8;CPWindowS;24;{{335, 555}, {715, 473}}d;1;7S;6;Windowd;1;0S;20;{{0, 0}, {715, 473}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;E;E;S;6;normalS;22;{{20, 20}, {168, 135}}S;20;{{0, 0}, {168, 135}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;93E;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;89E;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;3;150E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;151E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;152E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;31E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;114E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;153E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;83E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;33E;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;154E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;154E;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;83E;E;d;1;2S;20;{{0, 0}, {167, 133}}D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;96E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;155E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;2;96E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;156E;E;d;1;4d;2;23S;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;E;E;d;3;164d;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;108E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;154E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;154E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;157E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;158E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;83E;K;16;$atext-alignmentD;K;6;CP$UIDd;2;80E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;143E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;159E;E;D;K;6;$classD;K;6;CP$UIDd;2;41E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;154E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;154E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;131E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;160E;K;6;$afontD;K;6;CP$UIDd;3;162E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;100E;K;20;$avertical-alignmentD;K;6;CP$UIDd;2;94E;K;11;$aalignmentD;K;6;CP$UIDd;2;80E;K;15;$acontent-insetD;K;6;CP$UIDd;3;164E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;143E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;135E;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;100E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;80E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;143E;E;d;1;3S;19;{{1, 1}, {166, 15}}S;19;{{0, 0}, {166, 15}}d;1;8S;8;scrollerS;29;_horizontalScrollerDidScroll:f;18;0.9940119760479041S;22;{{224, 16}, {15, 102}}S;19;{{0, 0}, {15, 102}}d;11;-2147483648S;17;disabled+verticalS;27;_verticalScrollerDidScroll:f;18;0.9925373134328358S;22;{{213, 19}, {103, 24}}S;19;{{0, 0}, {103, 24}}S;9;colorwellS;8;borderedD;K;6;$classD;K;6;CP$UIDd;2;96E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;165E;E;S;22;{{210, 51}, {194, 17}}S;19;{{0, 0}, {194, 17}}S;9;textfieldD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;132E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;166E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;167E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;103E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;103E;E;S;5;Labeld;4;3072D;K;6;$classD;K;6;CP$UIDd;2;96E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;168E;E;S;22;{{18, 161}, {172, 18}}S;19;{{0, 0}, {172, 18}}S;9;check-boxS;8;selectedd;1;1S;21;Avoid Empty SelectionS;0;S;22;{{324, 20}, {103, 23}}S;19;{{0, 0}, {103, 23}}D;K;6;$classD;K;6;CP$UIDd;2;96E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;169E;E;S;13;AppControllerS;19;CPMutableDictionaryS;4;NULLS;20;{{1, 1}, {166, 133}}S;20;{{0, 0}, {166, 133}}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;96E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;170E;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;141E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;141E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;141E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;173E;E;E;S;12;columnHeaderD;K;6;$classD;K;6;CP$UIDd;3;132E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;166E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;167E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;103E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;103E;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;161E;K;4;nameD;K;6;CP$UIDd;3;174E;K;12;defaultValueD;K;6;CP$UIDd;3;159E;K;6;valuesD;K;6;CP$UIDd;3;175E;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;163E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;176E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;178E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;141E;E;E;S;17;Arial, sans-serifd;2;12D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;141E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;178E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;141E;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;141E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;141E;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;172E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;109E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;154E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;154E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;109E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;180E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;83E;E;S;4;fontD;K;6;$classD;K;6;CP$UIDd;2;56E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;181E;K;6;normalD;K;6;CP$UIDd;3;159E;E;E;S;39;{"top":0,"right":5,"bottom":0,"left":5}f;13;0.05813049898f;13;0.05554189906f;18;0.6862745098039216d;2;18D;K;6;$classD;K;6;CP$UIDd;3;132E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;166E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;167E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;92E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;103E;E;E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Tests/Manual/CPColorWellBindings/Resources/MainMenu.xib b/Tests/Manual/CPColorWellBindings/Resources/MainMenu.xib index b716f978c..789de57ac 100644 --- a/Tests/Manual/CPColorWellBindings/Resources/MainMenu.xib +++ b/Tests/Manual/CPColorWellBindings/Resources/MainMenu.xib @@ -2,13 +2,13 @@ 1050 - 11C74 - 1938 - 1138.23 - 567.00 + 11E53 + 2182 + 1138.47 + 569.00 com.apple.InterfaceBuilder.CocoaPlugin - 1938 + 2182 YES @@ -72,7 +72,7 @@ {{213, 430}, {103, 23}} - + _NS:1100 YES YES @@ -297,13 +297,34 @@ 25 + + + 268 + + YES + + YES + NSColor pasteboard type + + + {{324, 430}, {103, 23}} + + + + _NS:1100 + YES + + 1 + MC4wNTgxMzA0OTg5OCAwLjA1NTU0MTg5OTA2IDEAA + + {715, 473} - {{0, 0}, {1680, 1028}} + {{0, 0}, {2560, 1418}} {10000000000000, 10000000000000} YES @@ -349,10 +370,14 @@ value: selection.color value selection.color + + NSConditionallySetsEnabled + + 2 - 523 + 540 @@ -438,6 +463,26 @@ 534 + + + value: selection.color + + + + + + value: selection.color + value + selection.color + + NSConditionallySetsEnabled + + + 2 + + + 541 + @@ -486,6 +531,7 @@ + @@ -576,6 +622,11 @@ + + 538 + + + @@ -602,8 +653,9 @@ 507.IBPluginDependency 520.IBPluginDependency 521.IBPluginDependency + 538.IBPluginDependency - + YES com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -625,6 +677,7 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin @@ -639,7 +692,7 @@ - 535 + 541 diff --git a/Tests/Manual/CPComboBoxTest/AppController.j b/Tests/Manual/CPComboBoxTest/AppController.j new file mode 100644 index 000000000..87a40e1ef --- /dev/null +++ b/Tests/Manual/CPComboBoxTest/AppController.j @@ -0,0 +1,228 @@ +/* + * AppController.j + * CPComboBoxTest + * + * Created by Aparajita Fishman. + * Copyright (c) 2011, Intalio, 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 + */ + +@import + + +@implementation Companies : CPObject +{ + CPMutableArray items @accessors; +} + +- (id)init +{ + self = [super init]; + + if (self) + { + items = [CPMutableArray array]; + + var employees = "Tom,Dick,Harry,Ted,Sam,Fred,Ralph,Ed,Tim,John,Bill,Irving,Stan,Rodney".split(","); + + employees = [CPArray arrayWithObjects:employees count:employees.length]; + [items addObject:[CPDictionary dictionaryWithObjectsAndKeys:@"Spacely Sprockets", @"name", employees, @"employees"]]; + + employees = "Jane,Sally,Joan,Sara,Melissa,Beverly,Gillian,Sandra,Samantha,Mary,Kate".split(","); + employees = [CPArray arrayWithObjects:employees count:employees.length]; + [items addObject:[CPDictionary dictionaryWithObjectsAndKeys:@"Cogswell Cogs", @"name", employees, @"employees"]]; + } + + return self; +} + +@end + +@implementation AppController : CPObject +{ + @outlet CPWindow theWindow; + CPWindow testWindow; + CPString employee @accessors; + Companies companies @accessors; + CPArrayController companiesController; + CPArrayController employeesController; + CPComboBox combo; + @outlet CPComboBox cibCombo; + @outlet CPTextField comboTarget; + CPString fontName; + int nextCheckboxY; +} + +- (id)init +{ + if (self = [super init]) + { + fontName = [CPFont systemFontFace]; + companies = [Companies new]; + } + + return self; +} + +- (void)awakeFromCib +{ +} + +- (void)applicationDidFinishLaunching:(CPNotification)aNotification +{ + testWindow = [[CPWindow alloc] initWithContentRect:CGRectMake(30, 50, 500, 400) styleMask:CPTitledWindowMask | CPResizableWindowMask]; + + var contentView = [testWindow contentView], + companiesScrollView = [[CPScrollView alloc] initWithFrame:CGRectMake(30, 30, 200, 100)], + companiesTable = [[CPTableView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)], + employeesScrollView = [[CPScrollView alloc] initWithFrame:CGRectMake(250, 30, 200, 200)], + employeesTable = [[CPTableView alloc] initWithFrame:CGRectMake(0, 0, 200, 200)]; + + [testWindow setTitle:@"CPComboBox (from code)"]; + + var column = [[CPTableColumn alloc] initWithIdentifier:@"name"]; + [column setResizingMask:CPTableColumnAutoresizingMask]; + [companiesTable addTableColumn:column]; + [companiesTable setAllowsMultipleSelection:YES]; + [companiesTable setColumnAutoresizingStyle:CPTableViewLastColumnOnlyAutoresizingStyle]; + [companiesScrollView setHasHorizontalScroller:NO]; + [companiesScrollView setHasVerticalScroller:YES]; + [companiesScrollView setDocumentView:companiesTable]; + [companiesScrollView setBorderType:CPBezelBorder]; + [companiesTable setHeaderView:nil]; + [companiesTable setAllowsEmptySelection:NO]; + + [contentView addSubview:companiesScrollView]; + + column = [[CPTableColumn alloc] initWithIdentifier:@"name"]; + [column setResizingMask:CPTableColumnAutoresizingMask]; + [employeesTable addTableColumn:column]; + [employeesTable setAllowsMultipleSelection:YES]; + [employeesTable setColumnAutoresizingStyle:CPTableViewLastColumnOnlyAutoresizingStyle]; + [employeesScrollView setHasHorizontalScroller:NO]; + [employeesScrollView setHasVerticalScroller:YES]; + [employeesScrollView setDocumentView:employeesTable]; + [employeesScrollView setBorderType:CPBezelBorder]; + [employeesTable setHeaderView:nil]; + [employeesTable setAllowsEmptySelection:YES]; + + [contentView addSubview:employeesScrollView]; + + combo = [[CPComboBox alloc] initWithFrame:CGRectMake(250, 240, 200, 29)]; + [combo setCompletes:YES]; + [contentView addSubview:combo]; + + var textfield = [CPTextField textFieldWithStringValue:@"" placeholder:@"" width:200]; + [textfield setFrameOrigin:CGPointMake(250, 290)]; + [contentView addSubview:textfield]; + + var center = [CPNotificationCenter defaultCenter]; + [center addObserver:self selector:@selector(comboNote:) name:CPComboBoxSelectionDidChangeNotification object:combo]; + [center addObserver:self selector:@selector(comboNote:) name:CPComboBoxSelectionIsChangingNotification object:combo]; + [center addObserver:self selector:@selector(comboNote:) name:CPComboBoxWillDismissNotification object:combo]; + [center addObserver:self selector:@selector(comboNote:) name:CPComboBoxWillPopUpNotification object:combo]; + [center addObserver:self selector:@selector(comboNote:) name:CPControlTextDidEndEditingNotification object:combo]; + + nextCheckboxY = 166; + [self makeCheckBoxWithTitle:@"Enabled" defaultState:CPOnState]; + [self makeCheckBoxWithTitle:@"Button bordered" defaultState:CPOnState]; + [self makeCheckBoxWithTitle:@"Bold" defaultState:CPOffState]; + [self makeCheckBoxWithTitle:@"Completes" defaultState:CPOnState]; + [self makeCheckBoxWithTitle:@"Force selection" defaultState:CPOffState]; + [self makeCheckBoxWithTitle:@"Vertical scrollbar" defaultState:CPOnState]; + [self makeCheckBoxWithTitle:@"Big item height" defaultState:CPOffState]; + [self makeCheckBoxWithTitle:@"More visible items" defaultState:CPOffState]; + + companiesController = [CPArrayController new]; + [companiesController bind:@"contentArray" toObject:companies withKeyPath:@"items" options:nil]; + + employeesController = [CPArrayController new]; + [employeesController bind:@"contentArray" toObject:companiesController withKeyPath:@"selection.employees" options:nil]; + + var employeeController = [CPObjectController new]; + [employeeController bind:@"content" toObject:employeesController withKeyPath:@"selection.self" options:nil]; + + [[companiesTable tableColumnWithIdentifier:@"name"] bind:@"value" toObject:companiesController withKeyPath:@"arrangedObjects.name" options:nil]; + [[employeesTable tableColumnWithIdentifier:@"name"] bind:@"value" toObject:employeesController withKeyPath:@"arrangedObjects" options:nil]; + [combo bind:@"contentValues" toObject:employeesController withKeyPath:@"arrangedObjects" options:nil]; + [combo bind:@"value" toObject:employeeController withKeyPath:@"content" options:nil]; + + [companiesController addObserver:self forKeyPath:@"selection" options:0 context:@"companies.selection"]; + [companiesController addObserver:self forKeyPath:@"selectionIndexes" options:0 context:@"companies.selectionIndexes"]; + [companiesController addObserver:self forKeyPath:@"arrangedObjects" options:0 context:@"companies.arrangedObjects"]; + [employeesController addObserver:self forKeyPath:@"selectionIndexes" options:0 context:@"employees.selectionIndexes"]; + [employeesController addObserver:self forKeyPath:@"selection" options:0 context:@"employees.selection"]; + [employeesController addObserver:self forKeyPath:@"arrangedObjects" options:0 context:@"employees.arrangedObjects"]; + [combo addObserver:self forKeyPath:@"value" options:0 context:@"combo.value"]; + + [testWindow setInitialFirstResponder:combo]; + [testWindow makeKeyAndOrderFront:self]; +} + +- (void)makeCheckBoxWithTitle:(CPString)aTitle defaultState:(BOOL)aState +{ + var checkbox = [CPCheckBox checkBoxWithTitle:aTitle]; + [checkbox setFrameOrigin:CGPointMake(55, nextCheckboxY)]; + [checkbox setState:aState]; + [checkbox setTarget:self]; + [checkbox setAction:@selector(setComboState:)]; + [[testWindow contentView] addSubview:checkbox]; + + nextCheckboxY += 25; +} + +- (void)observeValueForKeyPath:(CPString)keyPath ofObject:(id)object change:(CPDictionary)change context:(id)context +{ + console.log("\nkeyPath: %s\ncontext: %s\nnew: %s\nold: %s", keyPath, context, [[change valueForKey:CPKeyValueChangeNewKey] description], [[change valueForKey:CPKeyValueChangeOldKey] description]); +} + +- (void)setComboState:(id)sender +{ + var title = [sender title], + state = [sender state] === CPOnState; + + if (title === @"Enabled") + [combo setEnabled:state]; + else if (title === @"Button bordered") + [combo setButtonBordered:state]; + else if (title === @"Bold") + { + var font = [sender state] === CPOnState ? [CPFont boldFontWithName:fontName size:12] : [CPFont fontWithName:fontName size:12]; + [combo setFont:font]; + } + else if (title === @"Completes") + [combo setCompletes:state]; + else if (title === @"Force selection") + [combo setForceSelection:state]; + else if (title === @"Vertical scroller") + [combo setHasVerticalScroller:state]; + else if (title === @"Big item height") + [combo setItemHeight:state ? 47 : 23]; + else if (title === @"More visible items") + [combo setNumberOfVisibleItems:state ? 10 : 5]; +} + +- (void)comboNote:(CPNotification)aNote +{ + console.log([aNote name]); + + var object = [aNote object]; + + if ([aNote name] === CPComboBoxWillDismissNotification) + console.log("Selected: %d - %s", [object indexOfSelectedItem], [object objectValueOfSelectedItem]); +} + +@end diff --git a/Tests/Manual/CPComboBoxTest/Info.plist b/Tests/Manual/CPComboBoxTest/Info.plist new file mode 100644 index 000000000..eee5519b4 --- /dev/null +++ b/Tests/Manual/CPComboBoxTest/Info.plist @@ -0,0 +1,10 @@ + + + + + Main cib file base name + MainMenu.cib + CPBundleName + CPComboBoxTest + + diff --git a/Tests/Manual/Nib2CibAligment/Jakefile b/Tests/Manual/CPComboBoxTest/Jakefile similarity index 64% rename from Tests/Manual/Nib2CibAligment/Jakefile rename to Tests/Manual/CPComboBoxTest/Jakefile index 532880c47..a83c45d07 100644 --- a/Tests/Manual/Nib2CibAligment/Jakefile +++ b/Tests/Manual/CPComboBoxTest/Jakefile @@ -1,9 +1,9 @@ /* * Jakefile - * test2 + * test * - * Created by You on May 17, 2011. - * Copyright 2011, Your Company All rights reserved. + * Created by aparajita on August 19, 2011. + * Copyright 2011, Victory-Heart Productions All rights reserved. */ var ENV = require("system").env, @@ -15,17 +15,17 @@ var ENV = require("system").env, configuration = ENV["CONFIG"] || ENV["CONFIGURATION"] || ENV["c"] || "Debug", OS = require("os"); -app ("test2", function(task) +app ("test", function(task) { - task.setBuildIntermediatesPath(FILE.join("Build", "test2.build", configuration)); + task.setBuildIntermediatesPath(FILE.join("Build", "test.build", configuration)); task.setBuildPath(FILE.join("Build", configuration)); - task.setProductName("test2"); - task.setIdentifier("com.yourcompany.test2"); + task.setProductName("test"); + task.setIdentifier("com.aparajita.test"); task.setVersion("1.0"); - task.setAuthor("Your Company"); + task.setAuthor("Victory-Heart Productions"); task.setEmail("feedback @nospam@ yourcompany.com"); - task.setSummary("test2"); + task.setSummary("test"); task.setSources((new FileList("**/*.j")).exclude(FILE.join("Build", "**"))); task.setResources(new FileList("Resources/**")); task.setIndexFilePath("index.html"); @@ -38,7 +38,7 @@ app ("test2", function(task) task.setCompilerFlags("-O"); }); -task ("default", ["test2"], function() +task ("default", ["test"], function() { printResults(configuration); }); @@ -59,36 +59,36 @@ task ("release", function() task ("run", ["debug"], function() { - OS.system(["open", FILE.join("Build", "Debug", "test2", "index.html")]); + OS.system(["open", FILE.join("Build", "Debug", "test", "index.html")]); }); task ("run-release", ["release"], function() { - OS.system(["open", FILE.join("Build", "Release", "test2", "index.html")]); + OS.system(["open", FILE.join("Build", "Release", "test", "index.html")]); }); task ("deploy", ["release"], function() { - FILE.mkdirs(FILE.join("Build", "Deployment", "test2")); - OS.system(["press", "-f", FILE.join("Build", "Release", "test2"), FILE.join("Build", "Deployment", "test2")]); + FILE.mkdirs(FILE.join("Build", "Deployment", "test")); + OS.system(["press", "-f", FILE.join("Build", "Release", "test"), FILE.join("Build", "Deployment", "test")]); printResults("Deployment") }); task ("desktop", ["release"], function() { - FILE.mkdirs(FILE.join("Build", "Desktop", "test2")); - require("cappuccino/nativehost").buildNativeHost(FILE.join("Build", "Release", "test2"), FILE.join("Build", "Desktop", "test2", "test2.app")); + FILE.mkdirs(FILE.join("Build", "Desktop", "test")); + require("cappuccino/nativehost").buildNativeHost(FILE.join("Build", "Release", "test"), FILE.join("Build", "Desktop", "test", "test.app")); printResults("Desktop") }); task ("run-desktop", ["desktop"], function() { - OS.system([FILE.join("Build", "Desktop", "test2", "test2.app", "Contents", "MacOS", "NativeHost"), "-i"]); + OS.system([FILE.join("Build", "Desktop", "test", "test.app", "Contents", "MacOS", "NativeHost"), "-i"]); }); function printResults(configuration) { print("----------------------------"); - print(configuration+" app built at path: "+FILE.join("Build", configuration, "test2")); + print(configuration+" app built at path: "+FILE.join("Build", configuration, "test")); print("----------------------------"); } diff --git a/Tests/Manual/CPComboBoxTest/Resources/MainMenu.cib b/Tests/Manual/CPComboBoxTest/Resources/MainMenu.cib new file mode 100644 index 000000000..0f50b6fc6 --- /dev/null +++ b/Tests/Manual/CPComboBoxTest/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;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;30E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;38E;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;1;0E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;1;0E;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;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;46E;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;47E;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;48E;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;30E;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;30E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;38E;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;30E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;46E;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;30E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;34E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;52E;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;19E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;38E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;46E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;53E;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;44E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;30E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;54E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;55E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;56E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;58E;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;30E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;59E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;55E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;60E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;61E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;42E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;30E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;62E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;55E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;63E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;64E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;41E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;30E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;65E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;55E;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;32E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;30E;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;40E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;30E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;72E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;55E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;73E;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;38E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;32E;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;47E;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;18;CPObjectControllerK;8;$classesA;S;18;CPObjectControllerS;12;CPControllerS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;31E;K;28;CPObjectControllerContentKeyD;K;6;CP$UIDd;1;0E;K;36;CPObjectControllerObjectClassNameKeyD;K;6;CP$UIDd;2;80E;K;31;CPObjectControllerIsEditableKeyD;K;6;CP$UIDd;2;81E;K;49;CPObjectControllerAutomaticallyPreparesContentKeyD;K;6;CP$UIDd;2;82E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;33E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;2;83E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;2;84E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;2;85E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;2;86E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;2;87E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;36E;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;35E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;88E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;89E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;89E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;90E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;91E;E;D;K;10;$classnameS;10;CPComboBoxK;8;$classesA;S;10;CPComboBoxS;11;CPTextFieldS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;37E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;36E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;88E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;92E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;93E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;36E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;94E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;95E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;96E;K;6;$afontD;K;6;CP$UIDd;2;98E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;99E;K;11;$aalignmentD;K;6;CP$UIDd;3;100E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;81E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;101E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;102E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;2;81E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;2;81E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;2;81E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;104E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;99E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;100E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;K;18;CPComboBoxItemsKeyD;K;6;CP$UIDd;3;105E;K;17;CPComboBoxListKeyD;K;6;CP$UIDd;1;0E;K;21;CPComboBoxDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPComboBoxDataSourceKeyD;K;6;CP$UIDd;1;0E;K;27;CPComboBoxUsesDataSourceKeyD;K;6;CP$UIDd;2;82E;K;22;CPComboBoxCompletesKeyD;K;6;CP$UIDd;2;81E;K;33;CPComboBoxNumberOfVisibleItemsKeyD;K;6;CP$UIDd;3;106E;K;32;CPComboBoxHasVerticalScrollerKeyD;K;6;CP$UIDd;2;81E;K;27;CPComboBoxButtonBorderedKeyD;K;6;CP$UIDd;2;81E;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;39E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;36E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;88E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;107E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;108E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;36E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;94E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;109E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;110E;K;16;$aimage-positionD;K;6;CP$UIDd;2;99E;K;6;$afontD;K;6;CP$UIDd;2;98E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;88E;K;11;$aalignmentD;K;6;CP$UIDd;2;88E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;111E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;100E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;112E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;82E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;111E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;111E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;2;81E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;99E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;2;88E;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;39E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;36E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;88E;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;36E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;94E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;109E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;110E;K;16;$aimage-positionD;K;6;CP$UIDd;2;99E;K;6;$afontD;K;6;CP$UIDd;2;98E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;88E;K;11;$aalignmentD;K;6;CP$UIDd;2;88E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;111E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;100E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;115E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;82E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;111E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;111E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;2;81E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;99E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;2;88E;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;39E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;36E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;88E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;116E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;117E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;36E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;94E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;109E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;91E;K;16;$aimage-positionD;K;6;CP$UIDd;2;99E;K;6;$afontD;K;6;CP$UIDd;2;98E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;88E;K;11;$aalignmentD;K;6;CP$UIDd;2;88E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;88E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;100E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;118E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;82E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;111E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;111E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;2;81E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;99E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;2;88E;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;39E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;36E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;88E;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;36E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;94E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;109E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;110E;K;16;$aimage-positionD;K;6;CP$UIDd;2;99E;K;6;$afontD;K;6;CP$UIDd;2;98E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;88E;K;11;$aalignmentD;K;6;CP$UIDd;2;88E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;111E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;100E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;121E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;82E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;111E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;111E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;2;81E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;99E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;2;88E;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;39E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;36E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;88E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;122E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;123E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;36E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;94E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;109E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;110E;K;16;$aimage-positionD;K;6;CP$UIDd;2;99E;K;6;$afontD;K;6;CP$UIDd;2;98E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;88E;K;11;$aalignmentD;K;6;CP$UIDd;2;88E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;111E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;100E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;124E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;82E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;111E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;111E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;2;81E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;99E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;2;88E;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;2;45E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;36E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;88E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;125E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;126E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;36E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;94E;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;2;98E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;99E;K;11;$aalignmentD;K;6;CP$UIDd;3;100E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;81E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;101E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;102E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;2;81E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;2;81E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;2;81E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;104E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;99E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;100E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;101E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;34E;E;E;S;8;delegateS;8;cibComboS;11;comboTargetS;9;theWindowS;20;takeStringValueFrom:S;30;value: cibCombo.buttonBorderedS;5;valueS;23;cibCombo.buttonBorderedD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;57E;K;10;CP.objectsD;E;E;S;35;value: cibCombo.hasVerticalScrollerS;28;cibCombo.hasVerticalScrollerD;K;6;$classD;K;6;CP$UIDd;2;57E;K;10;CP.objectsD;E;E;S;30;value: cibCombo.forceSelectionS;23;cibCombo.forceSelectionD;K;6;$classD;K;6;CP$UIDd;2;57E;K;10;CP.objectsD;E;E;S;25;value: cibCombo.completesS;18;cibCombo.completesD;K;6;$classD;K;6;CP$UIDd;2;57E;K;10;CP.objectsD;E;E;S;20;contentObject: comboS;13;contentObjectS;5;comboD;K;6;$classD;K;6;CP$UIDd;2;57E;K;10;CP.objectsD;E;E;S;23;value: cibCombo.enabledS;16;cibCombo.enabledD;K;6;$classD;K;6;CP$UIDd;2;57E;K;10;CP.objectsD;E;E;S;18;enabled: selectionS;7;enabledS;9;selectionD;K;6;$classD;K;6;CP$UIDd;2;57E;K;10;CP.objectsD;E;E;S;13;AppControllerS;10;CPComboBoxT;F;S;32;{10000000000000, 10000000000000}S;8;CPWindowS;23;{{583, 51}, {394, 166}}d;2;15S;21;CPComboBox (from cib)d;1;0S;20;{{0, 0}, {394, 166}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;44E;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;46E;E;E;S;6;normalS;21;{{14, 25}, {199, 29}}S;19;{{0, 0}, {199, 29}}d;2;36S;8;comboboxS;35;bezeled+placeholder+button-borderedD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;97E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;129E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;130E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;82E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;82E;E;d;1;2d;1;4S;0;d;4;3072D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;103E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;131E;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;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;1;7S;21;{{247, 30}, {72, 18}}S;18;{{0, 0}, {72, 18}}S;9;check-boxS;8;selectedd;1;1S;7;EnabledS;21;{{247, 80}, {89, 18}}S;18;{{0, 0}, {89, 18}}S;9;CompletesS;23;{{247, 105}, {117, 18}}S;19;{{0, 0}, {117, 18}}S;15;Force selectionS;23;{{247, 130}, {129, 18}}S;19;{{0, 0}, {129, 18}}S;18;Vertical scrollbarS;22;{{247, 55}, {125, 18}}S;19;{{0, 0}, {125, 18}}S;15;Button borderedS;21;{{14, 74}, {196, 29}}S;19;{{0, 0}, {196, 29}}S;9;textfieldS;19;bezeled+placeholderS;17;Arial, sans-serifd;2;12D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;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;E;E;S;3;MoeS;5;LarryS;6;CheeseS;5;CurlyS;5;ShempS;7;GrouchoS;5;HarpoS;5;ChicoS;5;ZeppoE;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Tests/Manual/CPComboBoxTest/Resources/MainMenu.xib b/Tests/Manual/CPComboBoxTest/Resources/MainMenu.xib new file mode 100644 index 000000000..265203b64 --- /dev/null +++ b/Tests/Manual/CPComboBoxTest/Resources/MainMenu.xib @@ -0,0 +1,828 @@ + + + + 1050 + 11E53 + 2182 + 1138.47 + 569.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 2182 + + + YES + NSView + NSComboBox + NSWindowTemplate + NSObjectController + NSTextField + NSTextFieldCell + NSButtonCell + NSComboBoxCell + NSButton + NSCustomObject + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + YES + + NSApplication + + + FirstResponder + + + NSApplication + + + AppController + + + NSComboBox + YES + + + + 15 + 2 + {{583, 961}, {394, 166}} + 544735232 + CPComboBox (from cib) + NSWindow + + + + + 256 + + YES + + + 268 + {{20, 115}, {191, 26}} + + + + YES + + 343014976 + 272630784 + + + LucidaGrande + 13 + 1044 + + + YES + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + controlTextColor + + 3 + MAA + + + 7 + YES + YES + + YES + Moe + Larry + Cheese + Curly + Shemp + Groucho + Harpo + Chico + Zeppo + + + + + 274 + {13, 189} + + + YES + + YES + + 10 + 10 + 1000 + + 75628032 + 0 + + + LucidaGrande + 12 + 16 + + + 3 + MC4zMzMzMzI5ODU2AA + + + + + 338820672 + 268436480 + + + YES + + 6 + System + controlBackgroundColor + + 3 + MC42NjY2NjY2NjY3AA + + + + + 3 + YES + + + + 3 + 2 + + + 6 + System + gridColor + + 3 + MC41AA + + + 19 + tableViewAction: + -765427712 + + + + 1 + 15 + 0 + YES + 0 + 1 + + + + + + 268 + {{247, 118}, {72, 18}} + + + + YES + + -2080244224 + 0 + Enabled + + + 1211912703 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + + + + 268 + {{247, 93}, {125, 18}} + + + + YES + + -2080244224 + 0 + Button bordered + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{247, 68}, {89, 18}} + + + + YES + + -2080244224 + 0 + Completes + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{247, 43}, {117, 18}} + + + + YES + + 67239424 + 0 + Force selection + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{247, 18}, {129, 18}} + + + + YES + + -2080244224 + 0 + Vertical scrollbar + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{20, 66}, {188, 22}} + + + + YES + + -1804468671 + 272630784 + + + + + YES + + + 6 + System + textColor + + + + + + {394, 166} + + + + + {{0, 0}, {1920, 1178}} + {10000000000000, 10000000000000} + YES + + + + + YES + + + delegate + + + + 451 + + + + theWindow + + + + 464 + + + + cibCombo + + + + 529 + + + + comboTarget + + + + 577 + + + + enabled: selection + + + + + + enabled: selection + enabled + selection + 2 + + + 522 + + + + value: cibCombo.enabled + + + + + + value: cibCombo.enabled + value + cibCombo.enabled + 2 + + + 531 + + + + contentObject: combo + + + + + + contentObject: combo + contentObject + combo + 2 + + + 521 + + + + value: cibCombo.completes + + + + + + value: cibCombo.completes + value + cibCombo.completes + 2 + + + 535 + + + + value: cibCombo.forceSelection + + + + + + value: cibCombo.forceSelection + value + cibCombo.forceSelection + 2 + + + 548 + + + + value: cibCombo.hasVerticalScroller + + + + + + value: cibCombo.hasVerticalScroller + value + cibCombo.hasVerticalScroller + 2 + + + 546 + + + + value: cibCombo.buttonBordered + + + + + + value: cibCombo.buttonBordered + value + cibCombo.buttonBordered + 2 + + + 552 + + + + takeStringValueFrom: + + + + 578 + + + + + YES + + 0 + + YES + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 450 + + + + + 460 + + + YES + + + + + + 461 + + + YES + + + + + + + + + + + + 462 + + + YES + + + + + + 463 + + + + + 515 + + + YES + + + + + + 516 + + + + + 517 + + + + + 532 + + + YES + + + + + + 533 + + + + + 536 + + + YES + + + + + + 537 + + + + + 539 + + + YES + + + + + + 540 + + + + + 549 + + + YES + + + + + + 550 + + + + + 573 + + + YES + + + + + + 574 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 450.IBPluginDependency + 460.IBPluginDependency + 460.IBWindowTemplateEditedContentRect + 460.NSWindowTemplate.visibleAtLaunch + 461.IBPluginDependency + 462.IBPluginDependency + 463.IBComboBoxObjectValuesKey.objectValues + 463.IBPluginDependency + 515.IBPluginDependency + 516.IBPluginDependency + 517.IBPluginDependency + 532.IBPluginDependency + 533.IBPluginDependency + 536.IBPluginDependency + 537.IBPluginDependency + 539.IBPluginDependency + 540.IBPluginDependency + 549.IBPluginDependency + 550.IBPluginDependency + 573.IBPluginDependency + 574.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{357, 418}, {480, 270}} + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + YES + Moe + Larry + Cheese + Curly + Shemp + Groucho + Harpo + Chico + Zeppo + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + 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 + + + + + 578 + + + + YES + + AppController + NSObject + + YES + + YES + cibCombo + comboTarget + theWindow + + + YES + NSComboBox + NSTextField + NSWindow + + + + YES + + YES + cibCombo + comboTarget + theWindow + + + YES + + cibCombo + NSComboBox + + + comboTarget + NSTextField + + + 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/CPComboBoxTest/Resources/spinner.gif b/Tests/Manual/CPComboBoxTest/Resources/spinner.gif new file mode 100644 index 000000000..06dbc2bc2 Binary files /dev/null and b/Tests/Manual/CPComboBoxTest/Resources/spinner.gif differ diff --git a/Tests/Manual/CPComboBoxTest/index-debug.html b/Tests/Manual/CPComboBoxTest/index-debug.html new file mode 100644 index 000000000..052bcacac --- /dev/null +++ b/Tests/Manual/CPComboBoxTest/index-debug.html @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + CPComboBoxTest + + + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/CPComboBoxTest/index.html b/Tests/Manual/CPComboBoxTest/index.html new file mode 100644 index 000000000..bf35f355e --- /dev/null +++ b/Tests/Manual/CPComboBoxTest/index.html @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + CPComboBoxTest + + + + + + + + + + + + +
+
+ + + +
+
+ + + + diff --git a/Tests/Manual/CPComboBoxTest/main.j b/Tests/Manual/CPComboBoxTest/main.j new file mode 100644 index 000000000..e2cfd7a56 --- /dev/null +++ b/Tests/Manual/CPComboBoxTest/main.j @@ -0,0 +1,18 @@ +/* + * AppController.j + * test + * + * Created by aparajita on August 19, 2011. + * Copyright 2011, Victory-Heart Productions All rights reserved. + */ + +@import +@import + +@import "AppController.j" + + +function main(args, namedArgs) +{ + CPApplicationMain(args, namedArgs); +} diff --git a/Tests/Manual/CPPredicateEditorCibTest/Resources/MainMenu.cib b/Tests/Manual/CPPredicateEditorCibTest/Resources/MainMenu.cib index 8208e9a3a..a76db9ea1 100644 --- a/Tests/Manual/CPPredicateEditorCibTest/Resources/MainMenu.cib +++ b/Tests/Manual/CPPredicateEditorCibTest/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;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;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;104E;D;K;6;CP$UIDd;3;105E;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;106E;D;K;6;CP$UIDd;3;108E;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;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;231E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;3;237E;D;K;6;CP$UIDd;3;238E;D;K;6;CP$UIDd;3;240E;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;262E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;265E;D;K;6;CP$UIDd;3;267E;D;K;6;CP$UIDd;3;269E;D;K;6;CP$UIDd;1;0E;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;1;0E;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;276E;D;K;6;CP$UIDd;3;277E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;279E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;280E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;282E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;283E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;284E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;285E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;286E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;287E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;288E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;289E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;291E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;292E;D;K;6;CP$UIDd;3;293E;D;K;6;CP$UIDd;3;294E;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;296E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;297E;D;K;6;CP$UIDd;3;299E;D;K;6;CP$UIDd;3;300E;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;3;108E;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;3;108E;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;3;117E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;108E;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;134E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;134E;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;134E;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;3;134E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;108E;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;3;167E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;108E;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;188E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;208E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;3;231E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;3;240E;D;K;6;CP$UIDd;3;242E;D;K;6;CP$UIDd;3;243E;D;K;6;CP$UIDd;3;243E;D;K;6;CP$UIDd;3;242E;D;K;6;CP$UIDd;3;246E;D;K;6;CP$UIDd;3;240E;D;K;6;CP$UIDd;3;248E;D;K;6;CP$UIDd;3;249E;D;K;6;CP$UIDd;3;249E;D;K;6;CP$UIDd;3;248E;D;K;6;CP$UIDd;3;252E;D;K;6;CP$UIDd;3;252E;D;K;6;CP$UIDd;3;240E;D;K;6;CP$UIDd;3;255E;D;K;6;CP$UIDd;3;256E;D;K;6;CP$UIDd;3;256E;D;K;6;CP$UIDd;3;255E;D;K;6;CP$UIDd;3;259E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;3;262E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;265E;D;K;6;CP$UIDd;3;267E;D;K;6;CP$UIDd;3;269E;D;K;6;CP$UIDd;3;265E;D;K;6;CP$UIDd;3;265E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;272E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;273E;D;K;6;CP$UIDd;3;273E;D;K;6;CP$UIDd;3;273E;D;K;6;CP$UIDd;3;276E;D;K;6;CP$UIDd;3;277E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;279E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;280E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;282E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;283E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;284E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;285E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;286E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;287E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;288E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;289E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;291E;D;K;6;CP$UIDd;3;300E;D;K;6;CP$UIDd;3;300E;D;K;6;CP$UIDd;3;300E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;3;296E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;3;291E;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;301E;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;302E;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;3;106E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;303E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;297E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;295E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;304E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;297E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;267E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;305E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;297E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;240E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;306E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;297E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;291E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;307E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;297E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;276E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;308E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;297E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;264E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;309E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;297E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;231E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;310E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;240E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;303E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;267E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;311E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;267E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;303E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;276E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;311E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;276E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;303E;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;3;113E;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;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;313E;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;2;11E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;314E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;171E;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;28E;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;316E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;317E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;318E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;170E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;319E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;320E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;172E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;322E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;179E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;323E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;324E;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;325E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;121E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;106E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;326E;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;327E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;328E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;329E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;330E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;331E;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;332E;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;333E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;334E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;335E;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;336E;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;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;337E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;137E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;338E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;339E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;340E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;143E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;342E;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;343E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;344E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;345E;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;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;346E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;163E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;347E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;348E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;3;349E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;222E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;350E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;223E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;351E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;224E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;352E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;225E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;227E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;354E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;228E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;355E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;229E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;356E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;357E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;216E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;358E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;218E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;359E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;219E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;360E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;361E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;211E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;362E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;363E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;364E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;365E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;366E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;206E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;367E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;368E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;369E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;370E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;371E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;202E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;372E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;262E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;240E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;373E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;272E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;374E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;285E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;375E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;283E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;375E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;282E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;375E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;284E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;375E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;287E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;375E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;288E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;375E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;286E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;375E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;291E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;376E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;280E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;377E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;289E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;375E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;295E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;297E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;378E;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;103E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;240E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;299E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;379E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;380E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;381E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;383E;E;D;K;6;$classD;K;6;CP$UIDd;3;103E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;296E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;299E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;379E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;380E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;381E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;384E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;301E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;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;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;111E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;388E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;391E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;392E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;393E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;395E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;111E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;397E;K;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;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;111E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;399E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;117E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;400E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;401E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;402E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;403E;K;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;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;117E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;405E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;3;117E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;117E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;408E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;393E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;395E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;117E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;117E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;410E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;393E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;395E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;117E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;393E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;395E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;117E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;3;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;127E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;117E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;411E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;412E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;413E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;393E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;395E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;117E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;117E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;405E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;415E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;131E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;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;3;109E;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;131E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;419E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;3;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;134E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;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;3;109E;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;134E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;134E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;424E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;134E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;426E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;393E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;395E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;134E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;134E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;428E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;134E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;430E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;134E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;432E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;393E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;395E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;134E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;134E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;434E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;435E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;3;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;145E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;134E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;436E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;437E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;439E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;145E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;440E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;435E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;145E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;442E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;443E;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;444E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;145E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;445E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;447E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;145E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;448E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;450E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;145E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;451E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;3;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;152E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;134E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;452E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;453E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;454E;K;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;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;152E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;456E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;152E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;458E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;152E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;158E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;134E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;460E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;461E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;158E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;158E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;3;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;134E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;464E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;465E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;450E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;162E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;451E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;467E;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;447E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;162E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;448E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;439E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;162E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;440E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;435E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;469E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;167E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;469E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;470E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;471E;K;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;472E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;473E;K;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;474E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;435E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;167E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;476E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;167E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;478E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;167E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;480E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;174E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;167E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;481E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;482E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;483E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;3;174E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;3;167E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;486E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;435E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;167E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;488E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;393E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;395E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;167E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;167E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;393E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;395E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;167E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;3;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;182E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;490E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;491E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;182E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;493E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;415E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;182E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;495E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;186E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;495E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;496E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;497E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;188E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;186E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;497E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;498E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;499E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;188E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;493E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;447E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;188E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;502E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;450E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;188E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;504E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;505E;K;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;188E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;506E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;393E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;395E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;188E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;439E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;188E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;508E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;509E;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;510E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;188E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;511E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;393E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;395E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;188E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;512E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;198E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;188E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;512E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;513E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;514E;K;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;198E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;515E;K;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;198E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;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;3;198E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;517E;K;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;198E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;518E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;204E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;188E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;518E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;514E;K;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;204E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;515E;K;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;204E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;520E;K;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;204E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;521E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;209E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;188E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;521E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;522E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;514E;K;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;209E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;523E;K;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;209E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;524E;K;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;209E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;525E;K;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;209E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;526E;K;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;209E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;393E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;395E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;188E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;527E;K;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;188E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;528E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;393E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;395E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;188E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;529E;K;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;188E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;432E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;415E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;530E;K;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;188E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;430E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;415E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;531E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;389E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;221E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;186E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;531E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;532E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;533E;K;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;221E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;534E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;535E;K;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;221E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;536E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;537E;K;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;221E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;538E;K;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;221E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;539E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;393E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;395E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;221E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;540E;K;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;221E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;541E;K;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;221E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;432E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;542E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;543E;K;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;221E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;430E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;542E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;230E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;544E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;545E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;546E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;547E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;388E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;3;233E;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;232E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;549E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;549E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;550E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;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;234E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;233E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;552E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;553E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;554E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;233E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;555E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;556E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;558E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;1;0E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;3;237E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;3;238E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;559E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;559E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;559E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;559E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;393E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;395E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;393E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;560E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;447E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;3;548E;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;236E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;235E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;561E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;562E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;235E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;563E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;564E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;565E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;566E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;548E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;235E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;567E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;548E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;568E;K;18;CPScrollerStyleKeyD;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;235E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;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;235E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;563E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;564E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;565E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;571E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;548E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;235E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;572E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;548E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;450E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;17;CPPredicateEditorK;8;$classesA;S;17;CPPredicateEditorS;12;CPRuleEditorS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;239E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;558E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;573E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;573E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;574E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;558E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;575E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;576E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;20;CPRuleEditorEditableD;K;6;CP$UIDd;3;393E;K;35;CPRuleEditorAllowsEmptyCompoundRowsD;K;6;CP$UIDd;3;395E;K;25;CPRuleEditorDisallowEmptyD;K;6;CP$UIDd;3;393E;K;30;CPRuleEditorAlignmentGridWidthD;K;6;CP$UIDd;3;577E;K;23;CPRuleEditorSliceHeightD;K;6;CP$UIDd;3;578E;K;23;CPRuleEditorNestingModeD;K;6;CP$UIDd;3;439E;K;27;CPRuleEditorStringsFilenameD;K;6;CP$UIDd;3;394E;K;26;CPRuleEditorRowTypeKeyPathD;K;6;CP$UIDd;3;579E;K;24;CPRuleEditorItemsKeyPathD;K;6;CP$UIDd;3;580E;K;25;CPRuleEditorValuesKeyPathD;K;6;CP$UIDd;3;581E;K;29;CPRuleEditorBoundArrayKeyPathD;K;6;CP$UIDd;3;582E;K;31;CPRuleEditorSubrowsArrayKeyPathD;K;6;CP$UIDd;3;583E;K;24;CPRuleEditorSlicesHolderD;K;6;CP$UIDd;1;0E;K;18;CPRuleEditorSlicesD;K;6;CP$UIDd;3;584E;K;27;CPRuleEditorBoundArrayOwnerD;K;6;CP$UIDd;3;586E;K;20;CPPredicateTemplatesD;K;6;CP$UIDd;3;587E;E;D;K;10;$classnameS;28;CPPredicateEditorRowTemplateK;8;$classesA;S;28;CPPredicateEditorRowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;241E;K;23;CPPredicateTemplateTypeD;K;6;CP$UIDd;3;447E;K;26;CPPredicateTemplateOptionsD;K;6;CP$UIDd;3;548E;K;27;CPPredicateTemplateModifierD;K;6;CP$UIDd;3;548E;K;36;CPPredicateTemplateLeftAttributeTypeD;K;6;CP$UIDd;3;548E;K;37;CPPredicateTemplateRightAttributeTypeD;K;6;CP$UIDd;3;548E;K;33;CPPredicateTemplateLeftIsWildcardD;K;6;CP$UIDd;3;395E;K;34;CPPredicateTemplateRightIsWildcardD;K;6;CP$UIDd;3;395E;K;24;CPPredicateTemplateViewsD;K;6;CP$UIDd;3;588E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;394E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;589E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;590E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;591E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;450E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;243E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;K;30;CPMenuItemRepresentedObjectKeyD;K;6;CP$UIDd;3;447E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;592E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;591E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;243E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;K;30;CPMenuItemRepresentedObjectKeyD;K;6;CP$UIDd;3;450E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;394E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;593E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;594E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;591E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;450E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;246E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;241E;K;23;CPPredicateTemplateTypeD;K;6;CP$UIDd;3;450E;K;26;CPPredicateTemplateOptionsD;K;6;CP$UIDd;3;548E;K;27;CPPredicateTemplateModifierD;K;6;CP$UIDd;3;548E;K;36;CPPredicateTemplateLeftAttributeTypeD;K;6;CP$UIDd;3;548E;K;37;CPPredicateTemplateRightAttributeTypeD;K;6;CP$UIDd;3;595E;K;33;CPPredicateTemplateLeftIsWildcardD;K;6;CP$UIDd;3;395E;K;34;CPPredicateTemplateRightIsWildcardD;K;6;CP$UIDd;3;393E;K;24;CPPredicateTemplateViewsD;K;6;CP$UIDd;3;596E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;394E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;597E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;598E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;591E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;450E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;249E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;K;30;CPMenuItemRepresentedObjectKeyD;K;6;CP$UIDd;3;600E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;601E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;591E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;249E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;K;30;CPMenuItemRepresentedObjectKeyD;K;6;CP$UIDd;3;602E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;394E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;603E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;604E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;591E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;450E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;252E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;K;30;CPMenuItemRepresentedObjectKeyD;K;6;CP$UIDd;3;510E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;605E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;591E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;252E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;K;30;CPMenuItemRepresentedObjectKeyD;K;6;CP$UIDd;3;606E;E;D;K;6;$classD;K;6;CP$UIDd;3;241E;K;23;CPPredicateTemplateTypeD;K;6;CP$UIDd;3;450E;K;26;CPPredicateTemplateOptionsD;K;6;CP$UIDd;3;548E;K;27;CPPredicateTemplateModifierD;K;6;CP$UIDd;3;548E;K;36;CPPredicateTemplateLeftAttributeTypeD;K;6;CP$UIDd;3;548E;K;37;CPPredicateTemplateRightAttributeTypeD;K;6;CP$UIDd;3;607E;K;33;CPPredicateTemplateLeftIsWildcardD;K;6;CP$UIDd;3;395E;K;34;CPPredicateTemplateRightIsWildcardD;K;6;CP$UIDd;3;393E;K;24;CPPredicateTemplateViewsD;K;6;CP$UIDd;3;608E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;394E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;609E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;610E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;591E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;450E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;256E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;K;30;CPMenuItemRepresentedObjectKeyD;K;6;CP$UIDd;3;611E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;601E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;591E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;256E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;K;30;CPMenuItemRepresentedObjectKeyD;K;6;CP$UIDd;3;612E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;394E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;613E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;614E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;591E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;450E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;259E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;K;30;CPMenuItemRepresentedObjectKeyD;K;6;CP$UIDd;3;447E;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;261E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;233E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;615E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;616E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;233E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;555E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;617E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;618E;K;16;$aimage-positionD;K;6;CP$UIDd;3;548E;K;6;$afontD;K;6;CP$UIDd;3;620E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;548E;K;11;$aalignmentD;K;6;CP$UIDd;3;447E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;450E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;508E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;395E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;548E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;548E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;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;3;263E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;233E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;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;233E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;624E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;548E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;510E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;450E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;626E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;627E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;548E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;450E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;628E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;548E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;629E;E;D;K;6;$classD;K;6;CP$UIDd;3;234E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;630E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;631E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;632E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;633E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;630E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;555E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;556E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;634E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;1;0E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;3;271E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;3;270E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;559E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;559E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;559E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;559E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;393E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;393E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;393E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;635E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;447E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;3;548E;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;266E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;634E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;636E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;636E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;634E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;637E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;638E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;12;$agrid-colorD;K;6;CP$UIDd;3;639E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;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;640E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;641E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;548E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;510E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;395E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;393E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;393E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;393E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;393E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;642E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;639E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;3;548E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;393E;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;268E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;643E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;644E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;645E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;647E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;648E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;439E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;395E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;393E;K;28;CPSortDescriptorPrototypeKeyD;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;265E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;649E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;650E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;265E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;563E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;564E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;565E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;571E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;548E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;265E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;572E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;548E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;651E;K;18;CPScrollerStyleKeyD;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;265E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;652E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;653E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;265E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;563E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;564E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;565E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;566E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;548E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;265E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;567E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;548E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;654E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;261E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;630E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;655E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;656E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;630E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;555E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;617E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;618E;K;16;$aimage-positionD;K;6;CP$UIDd;3;548E;K;6;$afontD;K;6;CP$UIDd;3;620E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;548E;K;11;$aalignmentD;K;6;CP$UIDd;3;447E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;450E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;508E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;395E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;548E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;548E;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;234E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;630E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;657E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;632E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;658E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;630E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;555E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;556E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;659E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;1;0E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;3;274E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;3;275E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;559E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;559E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;559E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;559E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;393E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;393E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;393E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;660E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;447E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;3;548E;E;D;K;6;$classD;K;6;CP$UIDd;3;236E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;273E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;652E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;653E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;273E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;563E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;564E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;565E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;566E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;548E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;273E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;567E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;548E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;654E;K;18;CPScrollerStyleKeyD;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;273E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;649E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;650E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;273E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;563E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;564E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;565E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;571E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;548E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;273E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;572E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;548E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;651E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;266E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;659E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;636E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;636E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;659E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;637E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;638E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;12;$agrid-colorD;K;6;CP$UIDd;3;639E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;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;640E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;641E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;548E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;510E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;395E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;393E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;393E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;393E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;393E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;661E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;639E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;3;548E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;393E;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;6;$classD;K;6;CP$UIDd;3;268E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;643E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;644E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;645E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;662E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;663E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;439E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;395E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;393E;K;28;CPSortDescriptorPrototypeKeyD;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;278E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;630E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;664E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;665E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;630E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;555E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;666E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;6;$afontD;K;6;CP$UIDd;3;667E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;447E;K;11;$aalignmentD;K;6;CP$UIDd;3;510E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;393E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;668E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;669E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;395E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;395E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;395E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;447E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;510E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;261E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;630E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;670E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;656E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;630E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;555E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;617E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;618E;K;16;$aimage-positionD;K;6;CP$UIDd;3;548E;K;6;$afontD;K;6;CP$UIDd;3;620E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;548E;K;11;$aalignmentD;K;6;CP$UIDd;3;447E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;450E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;508E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;395E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;548E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;548E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;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;3;281E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;630E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;671E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;672E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;673E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;630E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;555E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;674E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;16;$aimage-positionD;K;6;CP$UIDd;3;447E;K;6;$afontD;K;6;CP$UIDd;3;667E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;548E;K;11;$aalignmentD;K;6;CP$UIDd;3;548E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;548E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;675E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;395E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;447E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;548E;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;281E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;630E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;563E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;676E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;677E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;630E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;555E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;674E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;16;$aimage-positionD;K;6;CP$UIDd;3;447E;K;6;$afontD;K;6;CP$UIDd;3;667E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;548E;K;11;$aalignmentD;K;6;CP$UIDd;3;548E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;548E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;678E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;395E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;447E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;548E;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;281E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;630E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;679E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;680E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;681E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;630E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;555E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;674E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;16;$aimage-positionD;K;6;CP$UIDd;3;447E;K;6;$afontD;K;6;CP$UIDd;3;667E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;548E;K;11;$aalignmentD;K;6;CP$UIDd;3;548E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;548E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;682E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;395E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;447E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;548E;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;281E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;630E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;447E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;683E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;681E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;630E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;555E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;674E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;16;$aimage-positionD;K;6;CP$UIDd;3;447E;K;6;$afontD;K;6;CP$UIDd;3;667E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;548E;K;11;$aalignmentD;K;6;CP$UIDd;3;548E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;548E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;684E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;395E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;447E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;548E;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;281E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;630E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;685E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;686E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;687E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;630E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;555E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;674E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;16;$aimage-positionD;K;6;CP$UIDd;3;447E;K;6;$afontD;K;6;CP$UIDd;3;667E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;548E;K;11;$aalignmentD;K;6;CP$UIDd;3;548E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;548E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;688E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;395E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;447E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;548E;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;281E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;630E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;510E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;689E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;681E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;630E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;555E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;674E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;16;$aimage-positionD;K;6;CP$UIDd;3;447E;K;6;$afontD;K;6;CP$UIDd;3;667E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;548E;K;11;$aalignmentD;K;6;CP$UIDd;3;548E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;548E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;690E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;395E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;447E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;548E;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;281E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;630E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;606E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;691E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;677E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;630E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;555E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;674E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;16;$aimage-positionD;K;6;CP$UIDd;3;447E;K;6;$afontD;K;6;CP$UIDd;3;667E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;548E;K;11;$aalignmentD;K;6;CP$UIDd;3;548E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;548E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;692E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;395E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;447E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;548E;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;281E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;630E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;693E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;681E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;630E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;555E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;674E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;16;$aimage-positionD;K;6;CP$UIDd;3;447E;K;6;$afontD;K;6;CP$UIDd;3;667E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;548E;K;11;$aalignmentD;K;6;CP$UIDd;3;548E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;548E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;694E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;395E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;447E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;548E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;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;3;290E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;630E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;3;300E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;695E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;696E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;630E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;555E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;697E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;698E;K;6;$afontD;K;6;CP$UIDd;3;620E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;510E;K;11;$aalignmentD;K;6;CP$UIDd;3;548E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;548E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;1;0E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;395E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;447E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;548E;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;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;699E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;291E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;591E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;300E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;700E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;291E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;591E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;300E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;109E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;701E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;291E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;591E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;450E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;300E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;3;261E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;233E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;702E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;703E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;233E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;624E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;617E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;704E;K;16;$aimage-positionD;K;6;CP$UIDd;3;548E;K;6;$afontD;K;6;CP$UIDd;3;620E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;548E;K;11;$aalignmentD;K;6;CP$UIDd;3;447E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;450E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;510E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;705E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;395E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;548E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;548E;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;278E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;233E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;706E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;707E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;233E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;575E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;666E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;708E;K;6;$afontD;K;6;CP$UIDd;3;709E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;447E;K;11;$aalignmentD;K;6;CP$UIDd;3;510E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;394E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;669E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;393E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;393E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;393E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;637E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;447E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;510E;K;31;CPTextFieldPlaceholderStringKeyD;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;710E;E;D;K;10;$classnameS;18;CPObjectControllerK;8;$classesA;S;18;CPObjectControllerS;12;CPControllerS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;298E;K;28;CPObjectControllerContentKeyD;K;6;CP$UIDd;1;0E;K;36;CPObjectControllerObjectClassNameKeyD;K;6;CP$UIDd;3;711E;K;31;CPObjectControllerIsEditableKeyD;K;6;CP$UIDd;3;393E;K;49;CPObjectControllerAutomaticallyPreparesContentKeyD;K;6;CP$UIDd;3;393E;E;D;K;6;$classD;K;6;CP$UIDd;3;107E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;712E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;713E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;231E;E;E;S;8;delegateS;11;addTemplateS;9;leftTableS;15;predicateEditorS;20;rightExpressionsTypeS;10;rightTableS;11;templateBoxS;6;windowS;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;7;addRow:S;15;addLeftKeyPath:S;16;updateOperators:S;25;selectRightAttributeType:S;17;addRightConstant:S;12;addTemplate:S;26;value: selection.predicateS;5;valueS;19;selection.predicateD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;382E;K;10;CP.objectsD;E;E;D;K;6;$classD;K;6;CP$UIDd;3;382E;K;10;CP.objectsD;K;22;CPValueTransformerNameD;K;6;CP$UIDd;3;714E;K;27;CPConditionallySetsEditableD;K;6;CP$UIDd;3;395E;K;38;CPAllowsEditingMultipleValuesSelectionD;K;6;CP$UIDd;3;395E;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;116E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;130E;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;115E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;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;118E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;121E;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;132E;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;137E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;157E;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;150E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;147E;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;155E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;156E;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;160E;D;K;6;CP$UIDd;3;159E;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;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;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;172E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;178E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;168E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;170E;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;175E;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;183E;D;K;6;CP$UIDd;3;184E;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;187E;D;K;6;CP$UIDd;3;220E;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;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;203E;D;K;6;CP$UIDd;3;208E;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;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;199E;D;K;6;CP$UIDd;3;200E;D;K;6;CP$UIDd;3;201E;D;K;6;CP$UIDd;3;202E;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;205E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;207E;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;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;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;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;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;CPWindowS;23;{{335, 77}, {960, 534}}d;2;15d;1;0S;20;{{0, 0}, {960, 534}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;262E;D;K;6;CP$UIDd;3;296E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;295E;E;E;S;6;normalS;22;{{20, 74}, {611, 164}}S;20;{{0, 0}, {611, 164}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;558E;D;K;6;CP$UIDd;3;237E;D;K;6;CP$UIDd;3;238E;D;K;6;CP$UIDd;3;560E;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;557E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;235E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;715E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;573E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;716E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;235E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;563E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;717E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;3;240E;E;d;2;10D;K;6;$classD;K;6;CP$UIDd;3;232E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;235E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;718E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;718E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;235E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;E;S;21;{{336, 79}, {15, 84}}S;18;{{0, 0}, {15, 84}}d;1;8d;11;-2147483648S;8;scrollerS;17;disabled+verticalS;27;_verticalScrollerDidScroll:f;17;0.977011501789093S;24;{{-100, 249}, {360, 15}}S;19;{{0, 0}, {360, 15}}S;8;disabledS;29;_horizontalScrollerDidScroll:S;20;{{0, 0}, {609, 162}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;720E;E;E;d;2;38S;11;rule-editord;2;75d;2;26S;7;rowTypeS;8;criteriaS;13;displayValuesS;10;boundArrayS;7;subrowsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;10;$classnameS;33;_CPRuleEditorViewUnboundRowHolderK;8;$classesA;S;33;_CPRuleEditorViewUnboundRowHolderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;585E;K;12;CPBoundArrayD;K;6;CP$UIDd;3;721E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;242E;D;K;6;CP$UIDd;3;248E;D;K;6;CP$UIDd;3;255E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;722E;D;K;6;CP$UIDd;3;723E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;244E;D;K;6;CP$UIDd;3;245E;E;E;S;3;AnyS;17;_popUpItemAction:S;3;AllD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;247E;E;E;S;25;of the following are trued;3;700D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;724E;D;K;6;CP$UIDd;3;725E;D;K;6;CP$UIDd;3;726E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;250E;D;K;6;CP$UIDd;3;251E;E;E;S;6;stringD;K;10;$classnameS;20;_CPKeyPathExpressionK;8;$classesA;S;20;_CPKeyPathExpressionS;21;_CPFunctionExpressionS;12;CPExpressionS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;599E;K;14;CPSelectorNameD;K;6;CP$UIDd;3;727E;K;11;CPArgumentsD;K;6;CP$UIDd;3;728E;K;9;CPOperandD;K;6;CP$UIDd;3;730E;K;16;CPExpressionTypeD;K;6;CP$UIDd;3;439E;E;S;5;mixedD;K;6;$classD;K;6;CP$UIDd;3;599E;K;14;CPSelectorNameD;K;6;CP$UIDd;3;727E;K;11;CPArgumentsD;K;6;CP$UIDd;3;731E;K;9;CPOperandD;K;6;CP$UIDd;3;730E;K;16;CPExpressionTypeD;K;6;CP$UIDd;3;439E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;253E;D;K;6;CP$UIDd;3;254E;E;E;S;2;isS;7;matchesd;1;6d;3;300D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;732E;D;K;6;CP$UIDd;3;733E;D;K;6;CP$UIDd;3;734E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;257E;D;K;6;CP$UIDd;3;258E;E;E;S;6;numberD;K;6;$classD;K;6;CP$UIDd;3;599E;K;14;CPSelectorNameD;K;6;CP$UIDd;3;727E;K;11;CPArgumentsD;K;6;CP$UIDd;3;735E;K;9;CPOperandD;K;6;CP$UIDd;3;730E;K;16;CPExpressionTypeD;K;6;CP$UIDd;3;439E;E;D;K;6;$classD;K;6;CP$UIDd;3;599E;K;14;CPSelectorNameD;K;6;CP$UIDd;3;727E;K;11;CPArgumentsD;K;6;CP$UIDd;3;736E;K;9;CPOperandD;K;6;CP$UIDd;3;730E;K;16;CPExpressionTypeD;K;6;CP$UIDd;3;439E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;260E;E;E;S;15;is greater thanS;22;{{599, 241}, {30, 24}}S;18;{{0, 0}, {30, 24}}S;6;buttonS;17;selected+borderedD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;619E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;737E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;738E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;393E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;395E;E;S;23;{{701, 34}, {242, 440}}S;20;{{0, 0}, {242, 440}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;630E;E;E;d;2;33D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;625E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;739E;E;D;K;6;$classD;K;6;CP$UIDd;3;625E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;740E;E;S;3;BoxS;6;{0, 0}D;K;6;$classD;K;6;CP$UIDd;3;232E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;264E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;789E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;790E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;791E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;264E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;759E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;E;S;20;{{9, 30}, {218, 97}}S;19;{{0, 0}, {218, 97}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;634E;D;K;6;CP$UIDd;3;271E;D;K;6;CP$UIDd;3;270E;D;K;6;CP$UIDd;3;635E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;557E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;265E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;741E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;636E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;742E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;265E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;563E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;743E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;3;267E;E;D;K;6;$classD;K;6;CP$UIDd;3;232E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;265E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;718E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;718E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;265E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;E;S;19;{{0, 0}, {216, 95}}D;K;6;$classD;K;6;CP$UIDd;3;625E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;744E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;3;625E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;745E;E;d;2;23S;6;{3, 2}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;269E;E;E;d;3;213d;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;646E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;718E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;718E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;746E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;747E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;548E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;394E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;748E;E;D;K;6;$classD;K;6;CP$UIDd;3;278E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;718E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;718E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;666E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;749E;K;6;$afontD;K;6;CP$UIDd;3;751E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;510E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;447E;K;11;$aalignmentD;K;6;CP$UIDd;3;548E;K;15;$acontent-insetD;K;6;CP$UIDd;3;753E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;394E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;669E;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;510E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;548E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;394E;E;S;21;{{1, -37}, {223, 15}}S;19;{{0, 0}, {223, 15}}f;18;0.9953917050691244S;23;{{224, -22}, {15, 102}}S;19;{{0, 0}, {15, 102}}f;18;0.9925373134328358S;20;{{8, 126}, {25, 24}}S;18;{{0, 0}, {25, 24}}S;21;{{9, 302}, {218, 97}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;659E;D;K;6;CP$UIDd;3;274E;D;K;6;CP$UIDd;3;275E;D;K;6;CP$UIDd;3;660E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;557E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;273E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;548E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;741E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;636E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;754E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;273E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;563E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;743E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;3;276E;E;D;K;6;$classD;K;6;CP$UIDd;3;232E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;273E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;718E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;718E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;273E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;277E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;646E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;718E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;718E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;755E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;747E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;551E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;548E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;394E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;748E;E;D;K;6;$classD;K;6;CP$UIDd;3;278E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;718E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;718E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;666E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;749E;K;6;$afontD;K;6;CP$UIDd;3;756E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;510E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;447E;K;11;$aalignmentD;K;6;CP$UIDd;3;548E;K;15;$acontent-insetD;K;6;CP$UIDd;3;757E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;394E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;669E;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;510E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;548E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;394E;E;S;19;{{7, 5}, {142, 17}}S;19;{{0, 0}, {142, 17}}S;9;textfieldD;K;6;$classD;K;6;CP$UIDd;3;619E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;737E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;738E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;395E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;395E;E;S;10;Key Paths:d;4;3072S;20;{{7, 398}, {25, 24}}d;1;9S;22;{{144, 201}, {84, 18}}S;18;{{0, 0}, {84, 18}}S;9;check-boxS;9;Ends WithS;21;{{14, 201}, {96, 18}}S;18;{{0, 0}, {96, 18}}S;11;Begins Withd;1;5S;21;{{72, 175}, {33, 18}}S;18;{{0, 0}, {33, 18}}S;1;≠S;22;{{127, 175}, {33, 18}}S;1;>d;2;99S;22;{{144, 227}, {78, 18}}S;18;{{0, 0}, {78, 18}}S;8;ContainsS;21;{{14, 175}, {33, 18}}S;1;=S;21;{{14, 227}, {96, 18}}S;7;MatchesS;22;{{189, 175}, {33, 18}}S;1;d;2;99S;22;{{144, 227}, {78, 18}}S;18;{{0, 0}, {78, 18}}S;8;ContainsS;21;{{14, 175}, {33, 18}}S;1;=S;21;{{14, 227}, {96, 18}}S;7;MatchesS;22;{{189, 175}, {33, 18}}S;1; - - 1070 - 11C74 - 1938 - 1138.23 - 567.00 - - com.apple.InterfaceBuilder.CocoaPlugin - 1938 - - - NSPopUpButtonCell - NSObjectController - NSScroller - NSPredicateEditor - NSMenuItem - NSMenu - NSTextFieldCell - NSScrollView - NSButtonCell - NSButton - NSBox - NSTableView - NSPopUpButton - NSPredicateEditorRowTemplate - NSCustomObject - NSView - NSWindowTemplate - NSTextField - NSTableColumn - - - com.apple.InterfaceBuilder.CocoaPlugin - - - PluginDependencyRecalculationVersion - - - - - NSApplication - - - FirstResponder - - - NSApplication - - - AMainMenu - - - - NewApplication - - 1048576 - 2147483647 - - NSImage - NSMenuCheckmark - - - NSImage - NSMenuMixedState - - submenuAction: - - NewApplication - - - - About NewApplication - - 2147483647 - - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Preferences… - , - 1048576 - 2147483647 - - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Services - - 1048576 - 2147483647 - - - submenuAction: - - Services - - _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 - - - - New - n - 1048576 - 2147483647 - - - - - - Open… - o - 1048576 - 2147483647 - - - - - - Open Recent - - 1048576 - 2147483647 - - - submenuAction: - - Open Recent - - - - 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 - - - - 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 - - - - 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 - - - - 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 - - - - Smart Copy/Paste - f - 1048576 - 2147483647 - - - 1 - - - - Smart Quotes - g - 1048576 - 2147483647 - - - 2 - - - - Smart Links - G - 1179648 - 2147483647 - - - 3 - - - - - - - Speech - - 1048576 - 2147483647 - - - submenuAction: - - Speech - - - - Start Speaking - - 1048576 - 2147483647 - - - - - - Stop Speaking - - 1048576 - 2147483647 - - - - - - - - - - - - Format - - 2147483647 - - - submenuAction: - - Format - - - - Font - - 2147483647 - - - submenuAction: - - Font - - - - 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 - - - - Use Default - - 2147483647 - - - - - - Use None - - 2147483647 - - - - - - Tighten - - 2147483647 - - - - - - Loosen - - 2147483647 - - - - - - - - - Ligature - - 2147483647 - - - submenuAction: - - Ligature - - - - Use Default - - 2147483647 - - - - - - Use None - - 2147483647 - - - - - - Use All - - 2147483647 - - - - - - - - - Baseline - - 2147483647 - - - submenuAction: - - Baseline - - - - 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 - - - - 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 - - - - Show Toolbar - t - 1572864 - 2147483647 - - - - - - Customize Toolbar… - - 1048576 - 2147483647 - - - - - - - - - Window - - 1048576 - 2147483647 - - - submenuAction: - - Window - - - - Minimize - m - 1048576 - 2147483647 - - - - - - Zoom - - 1048576 - 2147483647 - - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Bring All to Front - - 1048576 - 2147483647 - - - - - _NSWindowsMenu - - - - - Help - - 1048576 - 2147483647 - - - submenuAction: - - Help - - - - NewApplication Help - ? - 1048576 - 2147483647 - - - - - - - - _NSMainMenu - - - 15 - 2 - {{335, 417}, {960, 534}} - 1946157056 - Window - NSWindow - - - - - 256 - - - - 268 - {{601, 264}, {30, 30}} - - - - YES - - -2080244224 - 134217728 - + - - LucidaGrande - 13 - 1044 - - - -2038021889 - 134 - - LucidaGrande - 13 - 16 - - - - 400 - 75 - - - - - 270 - {{20, 478}, {611, 22}} - - - - YES - - -1804468671 - 268436480 - - - - YES - - 6 - System - textBackgroundColor - - 3 - MQA - - - - 6 - System - textColor - - 3 - MAA - - - - - - - 268 - - - - 2304 - - - - 294 - - - - 274 - - - - 290 - - - - 257 - {{581, 4}, {18, 18}} - - - - -1 - YES - - 67239424 - 134348800 - + - - LucidaGrande-Bold - 12 - 16 - - - - add - - - - - _addOption: - - -2038284033 - 36 - - LucidaGrande - 12 - 4883 - - - 400 - 75 - - - - - -2147483391 - {{561, 4}, {18, 18}} - - - - -1 - YES - - 67239424 - 134348800 - - - - - - remove - - - - - _deleteOption: - - -2038284033 - 36 - - - 400 - 75 - - - - - 256 - {{7, 4}, {58, 19}} - - - - -1 - YES - - 67239488 - 4196352 - - LucidaGrande - 11 - 3100 - - - - -2038284033 - 36 - - LucidaGrande - 11 - 16 - - - 400 - 75 - - - Any - - 1048576 - 2147483647 - 1 - - - _popUpItemAction: - - - - YES - - - - - - - All - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - - - 3 - YES - YES - 2 - - - - - 256 - {{71, 4}, {167, 19}} - - - - -1 - YES - - 67239488 - 4196352 - - - -2038284033 - 36 - - - 400 - 75 - - - of the following are true - - 1048576 - 2147483647 - 1 - - - _popUpItemAction: - - - YES - - - - - - - - 3 - YES - YES - 2 - - - - {609, 26} - - - - 0 - 0 - - - - - - - 2 - {{7, 4}, {58, 19}} - {{71, 4}, {167, 19}} - - - - - 2 - 0 - 0 - 0 - 0 - - - - - NO - NO - - - - - - - - 2 - {{7, 4}, {58, 19}} - {{71, 4}, {167, 19}} - - - 0 - 0 - YES - - - - 290 - - - - 257 - {{581, 4}, {18, 18}} - - - - -1 - YES - - 67239424 - 134348800 - + - - - - add - - - - - _addOption: - - -2038284033 - 36 - - - 400 - 75 - - - - - 257 - {{561, 4}, {18, 18}} - - - - -1 - YES - - 67239424 - 134348800 - - - - - - remove - - - - - _deleteOption: - - -2038284033 - 36 - - - 400 - 75 - - - - - 256 - {{37, 4}, {79, 19}} - - - - -1 - YES - - 67239488 - 4196352 - - - 3 - valueForKey: - - 1 - - - - 10 - string - - - - - -2038284033 - 36 - - - 400 - 75 - - - string - - 1048576 - 2147483647 - 1 - - - _popUpItemAction: - - - - YES - - - - - - - mixed - - 1048576 - 2147483647 - - - _popUpItemAction: - - 3 - valueForKey: - - - - 10 - mixed - - - - - - - - - 3 - YES - YES - 2 - - - - - 256 - {{122, 4}, {99, 19}} - - - - -1 - YES - - 67239488 - 4196352 - - - - -2038284033 - 36 - - - 400 - 75 - - - is - - 1048576 - 2147483647 - 1 - - - _popUpItemAction: - - - - YES - - - - - - - matches - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - - - 3 - YES - YES - 2 - - - - - 256 - {{227, 4}, {160, 18}} - - - - YES - - 343014976 - 4326400 - - - - YES - - - 6 - System - controlTextColor - - - - - - {{0, 26}, {609, 26}} - - - - 1 - 1 - - - - - - - - 3 - {{37, 4}, {79, 19}} - {{122, 4}, {99, 19}} - {{227, 4}, {160, 18}} - - - - - 1 - 0 - 0 - 0 - 700 - - - - - - NO - YES - - - - - - - - - - - - 3 - {{37, 4}, {79, 19}} - {{122, 4}, {99, 19}} - {{227, 4}, {160, 18}} - - - 0 - 0 - YES - - - - 290 - - - - 257 - {{581, 4}, {18, 18}} - - - - -1 - YES - - 67239424 - 134348800 - + - - - - add - - - - - _addOption: - - -2038284033 - 36 - - - 400 - 75 - - - - - 257 - {{561, 4}, {18, 18}} - - - - -1 - YES - - 67239424 - 134348800 - - - - - - remove - - - - - _deleteOption: - - -2038284033 - 36 - - - 400 - 75 - - - - - 256 - {{37, 4}, {74, 19}} - - - - -1 - YES - - 67239488 - 4196352 - - - 3 - valueForKey: - - - - 10 - number - - - - - -2038284033 - 36 - - - 400 - 75 - - - number - - 1048576 - 2147483647 - 1 - - - _popUpItemAction: - - - - YES - - - - - - - mixed - - 1048576 - 2147483647 - - - _popUpItemAction: - - 3 - valueForKey: - - - - 10 - mixed - - - - - - - - 3 - YES - YES - 2 - - - - - 256 - {{117, 4}, {82, 19}} - - - - -1 - YES - - 67239488 - 4196352 - - - - -2038284033 - 36 - - - 400 - 75 - - - is greater than - - 1048576 - 2147483647 - 1 - - - _popUpItemAction: - - - - YES - - - - - - - 3 - YES - YES - 2 - - - - - 256 - {{205, 4}, {25, 18}} - - - - YES - - 343014976 - 4326400 - - - - YES - - - - - - {{0, 52}, {609, 26}} - - - - 2 - 1 - - - - - - - - 3 - {{37, 4}, {74, 19}} - {{117, 4}, {82, 19}} - {{205, 4}, {25, 18}} - - - - - 1 - 0 - 0 - 0 - 300 - - - - - - NO - YES - - - - - - - - - - - - 3 - {{37, 4}, {74, 19}} - {{117, 4}, {82, 19}} - {{205, 4}, {25, 18}} - - - 0 - 0 - YES - - - {609, 162} - - - - - - - NSRuleEditorItemPBoardType - - {609, 162} - - - - YES - 75 - 26 - - YES - NO - YES - 3 - rowType - subrows - criteria - displayValues - boundArray - NSMutableDictionary - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {{1, 1}, {609, 162}} - - - - - - 3 - MC45MTAwMDAwMjYyAA - - 4 - - - - -2147483392 - {{336, 1}, {15, 84}} - - - - - _doScroller: - 0.97701150178909302 - - - - -2147483392 - {{-100, -100}, {360, 15}} - - - - 1 - - _doScroller: - - - {{20, 296}, {611, 164}} - - - - 133650 - - - - - - - 9 - - - - 274 - - - - 268 - {{9, 11}, {25, 25}} - - - - YES - - -2080244224 - 134217728 - + - - - -2038152961 - 134 - - - 400 - 75 - - - - - 268 - - - - 2304 - - - - 256 - {216, 95} - - - - YES - - - -2147483392 - {{224, 0}, {16, 17}} - - - - 213 - 40 - 1000 - - 75628096 - 2048 - - - - 3 - MC4zMzMzMzI5ODU2AA - - - 6 - System - headerTextColor - - - - - 337772096 - 2048 - Text Cell - - - - 6 - System - controlBackgroundColor - - 3 - MC42NjY2NjY2NjY3AA - - - - - 3 - YES - YES - - - - 3 - 2 - - - 6 - System - gridColor - - 3 - MC41AA - - - 17 - -692060160 - - - 4 - 15 - 0 - YES - 0 - 1 - - - {{1, 1}, {216, 95}} - - - - - - 4 - - - - -2147483392 - {{224, 17}, {15, 102}} - - - - - _doScroller: - 0.9925373134328358 - - - - -2147483392 - {{1, 119}, {223, 15}} - - - - 1 - - _doScroller: - 0.99539170506912444 - - - {{9, 311}, {218, 97}} - - - - 133682 - - - - QSAAAEEgAABBmAAAQZgAAA - - - - 268 - {{144, 219}, {84, 18}} - - - - 9 - YES - - 67239424 - 0 - Ends With - - - 1211912703 - 2 - - NSImage - NSSwitch - - - NSSwitch - - - - 200 - 25 - - - - - 268 - {{6, 145}, {223, 26}} - - - - YES - - -2076049856 - 2048 - - - 109199615 - 129 - - - 400 - 75 - - - Strings - - 1048576 - 2147483647 - 1 - - - _popUpItemAction: - - - YES - - OtherViews - - - - - Numbers - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - Constant Values - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - - 1 - YES - YES - 2 - - - - - 268 - {{14, 219}, {96, 18}} - - - - 8 - YES - - 67239424 - 0 - Begins With - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{72, 245}, {33, 18}} - - - - 5 - YES - - 67239424 - 0 - ≠ - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{127, 245}, {33, 18}} - - - - 2 - YES - - 67239424 - 0 - > - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{144, 193}, {78, 18}} - - - - 99 - YES - - 67239424 - 0 - Contains - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{14, 245}, {33, 18}} - - - - 4 - YES - - 67239424 - 0 - = - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{7, 416}, {142, 17}} - - - - YES - - 68288064 - 272630784 - Key Paths: - - - - 6 - System - controlColor - - - - - - - - 268 - - - - 2304 - - - - 256 - {216, 95} - - - - YES - - - -2147483392 - {{224, 0}, {16, 17}} - - - - 213 - 40 - 1000 - - 75628096 - 2048 - - - - 3 - MC4zMzMzMzI5ODU2AA - - - - - 337772096 - 2048 - Text Cell - - - - - - 3 - YES - YES - - - - 3 - 2 - - - 17 - -692060160 - - - 4 - 15 - 0 - YES - 0 - 1 - - - {{1, 1}, {216, 95}} - - - - - - 4 - - - - -2147483392 - {{224, 17}, {15, 102}} - - - - - _doScroller: - 0.9925373134328358 - - - - -2147483392 - {{1, 119}, {223, 15}} - - - - 1 - - _doScroller: - 0.99539170506912444 - - - {{9, 39}, {218, 97}} - - - - 133682 - - - - QSAAAEEgAABBmAAAQZgAAA - - - - 268 - {{10, 283}, {25, 25}} - - - - YES - - -2080244224 - 134217728 - + - - - -2038152961 - 134 - - - 400 - 75 - - - - - 268 - {{14, 193}, {96, 18}} - - - - 6 - YES - - 67239424 - 0 - Matches - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{189, 245}, {33, 18}} - - - - YES - - 67239424 - 0 - < - - - 1211912703 - 2 - - - - - 200 - 25 - - - - {{1, 1}, {240, 438}} - - - - - - {{701, 60}, {242, 440}} - - - - {0, 0} - - 67239424 - 0 - Box - - - - 3 - MCAwLjgwMDAwMDAxMTkAA - - - - 1 - 4 - 0 - NO - - 1 - MC44OTExMjkwMzIzIDAuODkwMTM0MTM1OSAwLjg4OTk0NTgwNTEAA - - - - - 265 - {{837, 20}, {103, 25}} - - - YES - - -1543373312 - 134217728 - Add Template - - - -2038152961 - 134 - - - 400 - 75 - - - - {960, 534} - - - - - {{0, 0}, {1680, 1028}} - {10000000000000, 10000000000000} - YES - - - AppController - - - - predicate - - YES - YES - - - - - - - - terminate: - - - - 449 - - - - delegate - - - - 475 - - - - 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 - - - - predicateEditor - - - - 1136 - - - - window - - - - 1138 - - - - leftTable - - - - 1318 - - - - rightExpressionsType - - - - 1320 - - - - rightTable - - - - 1321 - - - - templateBox - - - - 1322 - - - - addLeftKeyPath: - - - - 1323 - - - - addRightConstant: - - - - 1324 - - - - selectRightAttributeType: - - - - 1327 - - - - updateOperators: - - - - 1329 - - - - updateOperators: - - - - 1330 - - - - updateOperators: - - - - 1331 - - - - updateOperators: - - - - 1332 - - - - updateOperators: - - - - 1333 - - - - updateOperators: - - - - 1334 - - - - updateOperators: - - - - 1335 - - - - updateOperators: - - - - 1336 - - - - addTemplate: - - - - 1344 - - - - addTemplate - - - - 1345 - - - - value: selection.predicate - - - - - - value: selection.predicate - value - selection.predicate - - - - PredicateTransformer - - 2 - - - 1439 - - - - addRow: - - - - 1131 - - - - delegate - - - - 1133 - - - - value: selection.predicate - - - - - - value: selection.predicate - value - selection.predicate - 2 - - - 1435 - - - - dataSource - - - - 1337 - - - - delegate - - - - 1338 - - - - dataSource - - - - 1339 - - - - delegate - - - - 1340 - - - - - - 0 - - - - - - -2 - - - File's Owner - - - -1 - - - First Responder - - - -3 - - - Application - - - 29 - - - - - - - - - - - - MainMenu - - - 19 - - - - - - - - 56 - - - - - - - - 103 - - - - - - 1 - - - 217 - - - - - - - - 83 - - - - - - - - 81 - - - - - - - - - - - - - - - - - - 75 - - - 3 - - - 80 - - - 8 - - - 78 - - - 6 - - - 72 - - - - - 82 - - - 9 - - - 124 - - - - - - - - 77 - - - 5 - - - 73 - - - 1 - - - 79 - - - 7 - - - 112 - - - 10 - - - 74 - - - 2 - - - 125 - - - - - - - - 126 - - - - - 205 - - - - - - - - - - - - - - - - - - - - 202 - - - - - 198 - - - - - 207 - - - - - 214 - - - - - 199 - - - - - 203 - - - - - 197 - - - - - 206 - - - - - 215 - - - - - 218 - - - - - - - - 216 - - - - - - - - 200 - - - - - - - - - - - 219 - - - - - 201 - - - - - 204 - - - - - 220 - - - - - - - - - - - - 213 - - - - - 210 - - - - - 221 - - - - - 208 - - - - - 209 - - - - - 106 - - - - - - 2 - - - 111 - - - - - 57 - - - - - - - - - - - - - - - - - - 58 - - - - - 134 - - - - - 150 - - - - - 136 - - - 1111 - - - 144 - - - - - 129 - - - 121 - - - 143 - - - - - 236 - - - - - 131 - - - - - - - - 149 - - - - - 145 - - - - - 130 - - - - - 24 - - - - - - - - - - - 92 - - - - - 5 - - - - - 239 - - - - - 23 - - - - - 295 - - - - - - - - 296 - - - - - - - - - 297 - - - - - 298 - - - - - 211 - - - - - - - - 212 - - - - - - - - - 195 - - - - - 196 - - - - - 346 - - - - - 348 - - - - - - - - 349 - - - - - - - - - - 350 - - - - - 351 - - - - - 354 - - - - - 371 - - - - - - - - 372 - - - - - - - - - - - - 375 - - - - - - - - 376 - - - - - - - - - 377 - - - - - - - - 378 - - - - - - - - 379 - - - - - - - - - - - - - - - 380 - - - - - 381 - - - - - 382 - - - - - 383 - - - - - 384 - - - - - 385 - - - - - 386 - - - - - 387 - - - - - 388 - - - - - - - - - - - - - - - - - - - - - - - 389 - - - - - 390 - - - - - 391 - - - - - 392 - - - - - 393 - - - - - 394 - - - - - 395 - - - - - 396 - - - - - 397 - - - - - - - - 398 - - - - - - - - 399 - - - - - - - - 400 - - - - - 401 - - - - - 402 - - - - - 403 - - - - - 404 - - - - - 405 - - - - - - - - - - - - 406 - - - - - 407 - - - - - 408 - - - - - 409 - - - - - 410 - - - - - 411 - - - - - - - - - - 412 - - - - - 413 - - - - - 414 - - - - - 415 - - - - - - - - - - - 416 - - - - - 417 - - - - - 418 - - - - - 419 - - - - - 471 - - - - - - - - 472 - - - - - 474 - - - AppController - - - 476 - - - - - - - - 477 - - - - - 1051 - - - - - - - - - - 1052 - - - - - 1053 - - - - - 1054 - - - - - - - - - - 1055 - - - - - - - - - 1056 - - - - - - - - - 1057 - - - - - - - - - 1058 - - - - - - - - - 1309 - - - - - - - - - - - - - - - - - - - - - 1280 - - - - - - - - 1281 - - - - - 1239 - - - - - - - - - - 1243 - - - - - - - - 1242 - - - - - 1240 - - - - - 1244 - - - - - - - - 1247 - - - - - 1256 - - - - - - - - 1257 - - - - - 1274 - - - - - - - - 1275 - - - - - - - - 1276 - - - - - - - - - - 1279 - - - - - 1278 - - - - - 1277 - - - - - 1254 - - - - - - - - 1255 - - - - - 1260 - - - - - - - - 1261 - - - - - 1252 - - - - - - - - 1253 - - - - - 1266 - - - - - - - - 1267 - - - - - 1262 - - - - - - - - 1263 - - - - - 1248 - - - - - - - - 1249 - - - - - 1268 - - - - - - - - - - 1271 - - - - - 1270 - - - - - 1269 - - - - - - - - 1272 - - - - - - - - 1273 - - - - - 1250 - - - - - - - - 1251 - - - - - 1264 - - - - - - - - 1265 - - - - - 1310 - - - - - - - - 1311 - - - - - 1342 - - - - - - - - 1343 - - - - - 1346 - - - - - 1347 - - - - - 1350 - - - - - - - - - 1351 - - - - - - - - - 1355 - - - - - - - - 1372 - - - - - 1377 - - - - - 1378 - - - - - 1381 - - - - - 1382 - - - - - 1414 - - - - - 1440 - - - - - - - - - 1441 - - - - - 1442 - - - - - 1443 - - - - - - - - 1444 - - - - - - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - {{91, 135}, {960, 534}} - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - - - - - 1444 - - - - - AppController - NSObject - - id - id - id - id - id - id - id - id - - - - addLeftKeyPath: - id - - - addRightConstant: - id - - - addTemplate: - id - - - displayPredicate: - id - - - newTemplate: - id - - - predicateEditorAction: - id - - - selectRightAttributeType: - id - - - updateOperators: - id - - - - NSButton - NSTableView - NSPredicateEditor - NSTextField - NSPopUpButton - NSTableView - NSBox - NSWindow - - - - addTemplate - NSButton - - - leftTable - NSTableView - - - predicateEditor - NSPredicateEditor - - - predicateField - NSTextField - - - rightExpressionsType - NSPopUpButton - - - rightTable - NSTableView - - - templateBox - NSBox - - - window - NSWindow - - - - IBProjectSource - ./Classes/AppController.h - - - - NSDocument - - id - id - id - id - id - id - - - - printDocument: - id - - - revertDocumentToSaved: - id - - - runPageLayout: - id - - - saveDocument: - id - - - saveDocumentAs: - id - - - saveDocumentTo: - id - - - - IBProjectSource - ./Classes/NSDocument.h - - - - - 0 - IBCocoaFramework - - com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 - - - YES - 3 - - {9, 8} - {7, 2} - {15, 15} - - + + 1060 + 11E53 + 851 + 1138.47 + 569.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 851 + + + + + + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + + NSApplication + + + FirstResponder + + + NSApplication + + + AMainMenu + + + + NewApplication + + 1048576 + 2147483647 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + submenuAction: + + NewApplication + + + + About NewApplication + + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Preferences… + , + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Services + + 1048576 + 2147483647 + + + submenuAction: + + Services + + _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 + + + + New + n + 1048576 + 2147483647 + + + + + + Open… + o + 1048576 + 2147483647 + + + + + + Open Recent + + 1048576 + 2147483647 + + + submenuAction: + + Open Recent + + + + 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 + + + + 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 + + + + 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 + + + + 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 + + + + Smart Copy/Paste + f + 1048576 + 2147483647 + + + 1 + + + + Smart Quotes + g + 1048576 + 2147483647 + + + 2 + + + + Smart Links + G + 1179648 + 2147483647 + + + 3 + + + + + + + Speech + + 1048576 + 2147483647 + + + submenuAction: + + Speech + + + + Start Speaking + + 1048576 + 2147483647 + + + + + + Stop Speaking + + 1048576 + 2147483647 + + + + + + + + + + + + Format + + 2147483647 + + + submenuAction: + + Format + + + + Font + + 2147483647 + + + submenuAction: + + Font + + + + 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 + + + + Use Default + + 2147483647 + + + + + + Use None + + 2147483647 + + + + + + Tighten + + 2147483647 + + + + + + Loosen + + 2147483647 + + + + + + + + + Ligature + + 2147483647 + + + submenuAction: + + Ligature + + + + Use Default + + 2147483647 + + + + + + Use None + + 2147483647 + + + + + + Use All + + 2147483647 + + + + + + + + + Baseline + + 2147483647 + + + submenuAction: + + Baseline + + + + 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 + + + + 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 + + + + Show Toolbar + t + 1572864 + 2147483647 + + + + + + Customize Toolbar… + + 1048576 + 2147483647 + + + + + + + + + Window + + 1048576 + 2147483647 + + + submenuAction: + + Window + + + + Minimize + m + 1048576 + 2147483647 + + + + + + Zoom + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Bring All to Front + + 1048576 + 2147483647 + + + + + _NSWindowsMenu + + + + + Help + + 1048576 + 2147483647 + + + submenuAction: + + Help + + + + NewApplication Help + ? + 1048576 + 2147483647 + + + + + + + + _NSMainMenu + + + 15 + 2 + {{335, 417}, {960, 534}} + 1946157056 + Window + NSWindow + + + {1.7976931348623157e+308, 1.7976931348623157e+308} + + + 256 + + + + 268 + {{601, 264}, {30, 30}} + + + YES + + -2080244224 + 134217728 + + + + LucidaGrande + 13 + 1040 + + + -2038021889 + 134 + + LucidaGrande + 13 + 16 + + + + 400 + 75 + + + + + 270 + {{20, 478}, {611, 22}} + + + YES + + -1804468671 + 268436480 + + + + YES + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + 3 + MAA + + + + + + + 268 + + + + 2304 + + + + 294 + + + + 274 + + + + 290 + + + + 257 + {{581, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + + + + LucidaGrande-Bold + 12 + 16 + + + + add + + + + + _addOption: + + -2038284033 + 36 + + LucidaGrande + 12 + 4880 + + + 400 + 75 + + + + + -2147483391 + {{561, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + - + + + + remove + + + + + _deleteOption: + + -2038284033 + 36 + + + 400 + 75 + + + + + 256 + {{7, 4}, {58, 19}} + + + -1 + YES + + 67239488 + 4196352 + + LucidaGrande + 11 + 3088 + + + + -2038284033 + 36 + + LucidaGrande + 11 + 16 + + + 400 + 75 + + + Any + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + + YES + + + + + + + All + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + + 3 + YES + YES + 2 + + + + + 256 + {{71, 4}, {167, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + -2038284033 + 36 + + + 400 + 75 + + + of the following are true + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + + + + + + + 3 + YES + YES + 2 + + + + {609, 26} + + + 0 + 0 + + + + + + + 2 + {{7, 4}, {58, 19}} + {{71, 4}, {167, 19}} + + + + + 2 + 0 + 0 + 0 + 0 + + + + + NO + NO + + + + + + + + 2 + {{7, 4}, {58, 19}} + {{71, 4}, {167, 19}} + + + 0 + 0 + YES + + + + 290 + + + + 257 + {{581, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + + + + + + add + + + + + _addOption: + + -2038284033 + 36 + + + 400 + 75 + + + + + 257 + {{561, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + - + + + + remove + + + + + _deleteOption: + + -2038284033 + 36 + + + 400 + 75 + + + + + 256 + {{37, 4}, {79, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + 3 + valueForKey: + + 1 + + + + 10 + string + + + + + -2038284033 + 36 + + + 400 + 75 + + + string + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + + YES + + + + + + + mixed + + 1048576 + 2147483647 + + + _popUpItemAction: + + 3 + valueForKey: + + + + 10 + mixed + + + + + + + + + 3 + YES + YES + 2 + + + + + 256 + {{122, 4}, {99, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + + -2038284033 + 36 + + + 400 + 75 + + + is + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + + YES + + + + + + + matches + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + + 3 + YES + YES + 2 + + + + + 256 + {{227, 4}, {160, 18}} + + + YES + + 343014976 + 4326400 + + + + YES + + + 6 + System + controlTextColor + + + + + + {{0, 26}, {609, 26}} + + + 1 + 1 + + + + + + + + 3 + {{37, 4}, {79, 19}} + {{122, 4}, {99, 19}} + {{227, 4}, {160, 18}} + + + + + 1 + 0 + 0 + 0 + 700 + + + + + + NO + YES + + + + + + + + + + + + 3 + {{37, 4}, {79, 19}} + {{122, 4}, {99, 19}} + {{227, 4}, {160, 18}} + + + 0 + 0 + YES + + + + 290 + + + + 257 + {{581, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + + + + + + add + + + + + _addOption: + + -2038284033 + 36 + + + 400 + 75 + + + + + 257 + {{561, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + - + + + + remove + + + + + _deleteOption: + + -2038284033 + 36 + + + 400 + 75 + + + + + 256 + {{37, 4}, {74, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + 3 + valueForKey: + + + + 10 + number + + + + + -2038284033 + 36 + + + 400 + 75 + + + number + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + + YES + + + + + + + mixed + + 1048576 + 2147483647 + + + _popUpItemAction: + + 3 + valueForKey: + + + + 10 + mixed + + + + + + + + 3 + YES + YES + 2 + + + + + 256 + {{117, 4}, {82, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + + -2038284033 + 36 + + + 400 + 75 + + + is greater than + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + + YES + + + + + + + 3 + YES + YES + 2 + + + + + 256 + {{205, 4}, {25, 18}} + + + YES + + 343014976 + 4326400 + + + + YES + + + + + + {{0, 52}, {609, 26}} + + + 2 + 1 + + + + + + + + 3 + {{37, 4}, {74, 19}} + {{117, 4}, {82, 19}} + {{205, 4}, {25, 18}} + + + + + 1 + 0 + 0 + 0 + 300 + + + + + + NO + YES + + + + + + + + + + + + 3 + {{37, 4}, {74, 19}} + {{117, 4}, {82, 19}} + {{205, 4}, {25, 18}} + + + 0 + 0 + YES + + + {609, 162} + + + + + + NSRuleEditorItemPBoardType + + {609, 162} + + + YES + 75 + 26 + format.strings + YES + NO + YES + 3 + rowType + subrows + criteria + displayValues + boundArray + NSMutableDictionary + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {{1, 1}, {609, 162}} + + + + + 3 + MC45MTAwMDAwMjYyAA + + 4 + + + + -2147483392 + {{336, 1}, {15, 84}} + + + + _doScroller: + 0.97701150178909302 + + + + -2147483392 + {{-100, -100}, {360, 15}} + + + 1 + + _doScroller: + + + {{20, 296}, {611, 164}} + + + 133650 + + + + + + + 9 + + + + 274 + + + + 268 + {{9, 11}, {25, 25}} + + + YES + + -2080244224 + 134217728 + + + + + -2038152961 + 134 + + + 400 + 75 + + + + + 268 + + + + 2304 + + + + 256 + {216, 95} + + + YES + + + -2147483392 + {{224, 0}, {16, 17}} + + + + 213 + 40 + 1000 + + 75628096 + 2048 + + + + 3 + MC4zMzMzMzI5ODU2AA + + + 6 + System + headerTextColor + + + + + 337772096 + 2048 + Text Cell + + + + 6 + System + controlBackgroundColor + + 3 + MC42NjY2NjY2NjY3AA + + + + + 3 + YES + YES + + + + 3 + 2 + + + 6 + System + gridColor + + 3 + MC41AA + + + 17 + -692060160 + + + 4 + 15 + 0 + YES + 0 + 1 + + + {{1, 1}, {216, 95}} + + + + + 4 + + + + -2147483392 + {{224, 17}, {15, 102}} + + + + _doScroller: + 0.9925373134328358 + + + + -2147483392 + {{1, 119}, {223, 15}} + + + 1 + + _doScroller: + 0.99539170506912444 + + + {{9, 311}, {218, 97}} + + + 133682 + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 268 + {{144, 219}, {84, 18}} + + + 9 + YES + + 67239424 + 0 + Ends With + + + 1211912703 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + + + + 268 + {{6, 145}, {223, 26}} + + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + Strings + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + + + + Numbers + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Constant Values + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{14, 219}, {96, 18}} + + + 8 + YES + + 67239424 + 0 + Begins With + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{72, 245}, {33, 18}} + + + 5 + YES + + 67239424 + 0 + ≠ + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{127, 245}, {33, 18}} + + + 2 + YES + + 67239424 + 0 + > + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{144, 193}, {78, 18}} + + + 99 + YES + + 67239424 + 0 + Contains + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{14, 245}, {33, 18}} + + + 4 + YES + + 67239424 + 0 + = + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{7, 416}, {142, 17}} + + + YES + + 68288064 + 272630784 + Key Paths: + + + + 6 + System + controlColor + + + + + + + + 268 + + + + 2304 + + + + 256 + {216, 95} + + + YES + + + -2147483392 + {{224, 0}, {16, 17}} + + + + 213 + 40 + 1000 + + 75628096 + 2048 + + + + 3 + MC4zMzMzMzI5ODU2AA + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 3 + 2 + + + 17 + -692060160 + + + 4 + 15 + 0 + YES + 0 + 1 + + + {{1, 1}, {216, 95}} + + + + + 4 + + + + -2147483392 + {{224, 17}, {15, 102}} + + + + _doScroller: + 0.9925373134328358 + + + + -2147483392 + {{1, 119}, {223, 15}} + + + 1 + + _doScroller: + 0.99539170506912444 + + + {{9, 39}, {218, 97}} + + + 133682 + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 268 + {{10, 283}, {25, 25}} + + + YES + + -2080244224 + 134217728 + + + + + -2038152961 + 134 + + + 400 + 75 + + + + + 268 + {{14, 193}, {96, 18}} + + + 6 + YES + + 67239424 + 0 + Matches + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{189, 245}, {33, 18}} + + + YES + + 67239424 + 0 + < + + + 1211912703 + 2 + + + + + 200 + 25 + + + + {{1, 1}, {240, 438}} + + + + + {{701, 60}, {242, 440}} + + + {0, 0} + + 67239424 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 4 + 0 + NO + + 1 + MC44OTExMjkwMzIzIDAuODkwMTM0MTM1OSAwLjg4OTk0NTgwNTEAA + + + + + 265 + {{837, 20}, {103, 25}} + + YES + + -1543373312 + 134217728 + Add Template + + + -2038152961 + 134 + + + 400 + 75 + + + + {960, 534} + + + + {{0, 0}, {1680, 1028}} + {1.7976931348623157e+308, 1.7976931348623157e+308} + YES + + + AppController + + + + predicate + + YES + YES + + + + + + + + performMiniaturize: + + + + 37 + + + + arrangeInFront: + + + + 39 + + + + print: + + + + 86 + + + + runPageLayout: + + + + 87 + + + + clearRecentDocuments: + + + + 127 + + + + orderFrontStandardAboutPanel: + + + + 142 + + + + 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 + + + + terminate: + + + + 449 + + + + delegate + + + + 475 + + + + addRow: + + + + 1131 + + + + delegate + + + + 1133 + + + + predicateEditor + + + + 1136 + + + + window + + + + 1138 + + + + leftTable + + + + 1318 + + + + rightExpressionsType + + + + 1320 + + + + rightTable + + + + 1321 + + + + templateBox + + + + 1322 + + + + addLeftKeyPath: + + + + 1323 + + + + addRightConstant: + + + + 1324 + + + + selectRightAttributeType: + + + + 1327 + + + + updateOperators: + + + + 1329 + + + + updateOperators: + + + + 1330 + + + + updateOperators: + + + + 1331 + + + + updateOperators: + + + + 1332 + + + + updateOperators: + + + + 1333 + + + + updateOperators: + + + + 1334 + + + + updateOperators: + + + + 1335 + + + + updateOperators: + + + + 1336 + + + + dataSource + + + + 1337 + + + + delegate + + + + 1338 + + + + dataSource + + + + 1339 + + + + delegate + + + + 1340 + + + + addTemplate: + + + + 1344 + + + + addTemplate + + + + 1345 + + + + value: selection.predicate + + + + + + value: selection.predicate + value + selection.predicate + 2 + + + 1435 + + + + value: selection.predicate + + + + + + value: selection.predicate + value + selection.predicate + + + + PredicateTransformer + + 2 + + + 1439 + + + + + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 29 + + + + + + + + + + + + MainMenu + + + 19 + + + + + + + + 56 + + + + + + + + 103 + + + + + + 1 + + + 217 + + + + + + + + 83 + + + + + + + + 81 + + + + + + + + + + + + + + + + + + 75 + + + 3 + + + 80 + + + 8 + + + 78 + + + 6 + + + 72 + + + + + 82 + + + 9 + + + 124 + + + + + + + + 77 + + + 5 + + + 73 + + + 1 + + + 79 + + + 7 + + + 112 + + + 10 + + + 74 + + + 2 + + + 125 + + + + + + + + 126 + + + + + 205 + + + + + + + + + + + + + + + + + + + + 202 + + + + + 198 + + + + + 207 + + + + + 214 + + + + + 199 + + + + + 203 + + + + + 197 + + + + + 206 + + + + + 215 + + + + + 218 + + + + + + + + 216 + + + + + + + + 200 + + + + + + + + + + + 219 + + + + + 201 + + + + + 204 + + + + + 220 + + + + + + + + + + + + 213 + + + + + 210 + + + + + 221 + + + + + 208 + + + + + 209 + + + + + 106 + + + + + + 2 + + + 111 + + + + + 57 + + + + + + + + + + + + + + + + + + 58 + + + + + 134 + + + + + 150 + + + + + 136 + + + 1111 + + + 144 + + + + + 129 + + + 121 + + + 143 + + + + + 236 + + + + + 131 + + + + + + + + 149 + + + + + 145 + + + + + 130 + + + + + 24 + + + + + + + + + + + 92 + + + + + 5 + + + + + 239 + + + + + 23 + + + + + 295 + + + + + + + + 296 + + + + + + + + + 297 + + + + + 298 + + + + + 211 + + + + + + + + 212 + + + + + + + + + 195 + + + + + 196 + + + + + 346 + + + + + 348 + + + + + + + + 349 + + + + + + + + + + 350 + + + + + 351 + + + + + 354 + + + + + 371 + + + + + + + + 372 + + + + + + + + + + + + 375 + + + + + + + + 376 + + + + + + + + + 377 + + + + + + + + 378 + + + + + + + + 379 + + + + + + + + + + + + + + + 380 + + + + + 381 + + + + + 382 + + + + + 383 + + + + + 384 + + + + + 385 + + + + + 386 + + + + + 387 + + + + + 388 + + + + + + + + + + + + + + + + + + + + + + + 389 + + + + + 390 + + + + + 391 + + + + + 392 + + + + + 393 + + + + + 394 + + + + + 395 + + + + + 396 + + + + + 397 + + + + + + + + 398 + + + + + + + + 399 + + + + + + + + 400 + + + + + 401 + + + + + 402 + + + + + 403 + + + + + 404 + + + + + 405 + + + + + + + + + + + + 406 + + + + + 407 + + + + + 408 + + + + + 409 + + + + + 410 + + + + + 411 + + + + + + + + + + 412 + + + + + 413 + + + + + 414 + + + + + 415 + + + + + + + + + + + 416 + + + + + 417 + + + + + 418 + + + + + 419 + + + + + 471 + + + + + + + + 472 + + + + + 474 + + + AppController + + + 476 + + + + + + + + 477 + + + + + 1051 + + + + + + + + + + 1052 + + + + + 1053 + + + + + 1054 + + + + + + + + + + 1055 + + + + + + + + + 1056 + + + + + + + + + 1057 + + + + + + + + + 1058 + + + + + + + + + 1309 + + + + + + + + + + + + + + + + + + + + + 1280 + + + + + + + + 1281 + + + + + 1239 + + + + + + + + + + 1243 + + + + + + + + 1242 + + + + + 1240 + + + + + 1244 + + + + + + + + 1247 + + + + + 1256 + + + + + + + + 1257 + + + + + 1274 + + + + + + + + 1275 + + + + + + + + 1276 + + + + + + + + + + 1279 + + + + + 1278 + + + + + 1277 + + + + + 1254 + + + + + + + + 1255 + + + + + 1260 + + + + + + + + 1261 + + + + + 1252 + + + + + + + + 1253 + + + + + 1266 + + + + + + + + 1267 + + + + + 1262 + + + + + + + + 1263 + + + + + 1248 + + + + + + + + 1249 + + + + + 1268 + + + + + + + + + + 1271 + + + + + 1270 + + + + + 1269 + + + + + + + + 1272 + + + + + + + + 1273 + + + + + 1250 + + + + + + + + 1251 + + + + + 1264 + + + + + + + + 1265 + + + + + 1310 + + + + + + + + 1311 + + + + + 1342 + + + + + + + + 1343 + + + + + 1346 + + + + + 1347 + + + + + 1350 + + + + + + + + + 1351 + + + + + + + + + 1355 + + + + + + + + 1372 + + + + + 1377 + + + + + 1378 + + + + + 1381 + + + + + 1382 + + + + + 1414 + + + + + 1440 + + + + + + + + + 1441 + + + + + 1442 + + + + + 1443 + + + + + + + + 1444 + + + + + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{0, 851}, {960, 534}} + com.apple.InterfaceBuilder.CocoaPlugin + {{0, 851}, {960, 534}} + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + + + 1444 + + + + + AppController + NSObject + + id + id + id + id + id + id + id + id + + + + addLeftKeyPath: + id + + + addRightConstant: + id + + + addTemplate: + id + + + displayPredicate: + id + + + newTemplate: + id + + + predicateEditorAction: + id + + + selectRightAttributeType: + id + + + updateOperators: + id + + + + NSButton + NSTableView + NSPredicateEditor + NSTextField + NSPopUpButton + NSTableView + NSBox + NSWindow + + + + addTemplate + NSButton + + + leftTable + NSTableView + + + predicateEditor + NSPredicateEditor + + + predicateField + NSTextField + + + rightExpressionsType + NSPopUpButton + + + rightTable + NSTableView + + + templateBox + NSBox + + + window + NSWindow + + + + IBProjectSource + ./Classes/AppController.h + + + + NSDocument + + id + id + id + id + id + id + + + + printDocument: + id + + + revertDocumentToSaved: + id + + + runPageLayout: + id + + + saveDocument: + id + + + saveDocumentAs: + id + + + saveDocumentTo: + id + + + + IBProjectSource + ./Classes/NSDocument.h + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + + 3 + + {11, 11} + {10, 3} + {15, 15} + + diff --git a/Tests/Manual/CPSplitViewTest/AppController.j b/Tests/Manual/CPSplitViewTest/AppController.j index 6f1decd76..5a4559e22 100644 --- a/Tests/Manual/CPSplitViewTest/AppController.j +++ b/Tests/Manual/CPSplitViewTest/AppController.j @@ -11,7 +11,11 @@ @implementation AppController : CPObject { - CPWindow theWindow; //this "outlet" is connected automatically by the Cib + CPWindow theWindow; //this "outlet" is connected automatically by the Cib + + @outlet CPSplitView splitViewA; + @outlet CPSplitView splitViewB; + @outlet CPSplitView splitViewC; } - (void)applicationDidFinishLaunching:(CPNotification)aNotification @@ -35,4 +39,32 @@ return (subview !== [subviews objectAtIndex:1]); } +- (@action)deleteAutosave:(id)sender +{ + [splitViewA deleteAutosave]; + [splitViewB deleteAutosave]; + [splitViewC deleteAutosave]; + + [sender setTitle:@"Autosave deleted. Reload to see original positions."]; + [sender setEnabled:NO]; + [sender sizeToFit]; +} + +@end + +@implementation CPSplitView (Reset) + +- (void)deleteAutosave +{ + var userDefaults = [CPUserDefaults standardUserDefaults], + autosaveName = [self _framesKeyForAutosaveName:[self autosaveName]], + autosavePrecollapseName = [self _precollapseKeyForAutosaveName:[self autosaveName]]; + + [userDefaults setObject:nil forKey:autosaveName]; + [userDefaults setObject:nil forKey:autosavePrecollapseName]; + + // Prevent a new autosave from being made. + [self setAutosaveName:nil]; +} + @end diff --git a/Tests/Manual/CPSplitViewTest/Resources/MainMenu.cib b/Tests/Manual/CPSplitViewTest/Resources/MainMenu.cib index 0d5c972a0..acbdeb481 100644 --- a/Tests/Manual/CPSplitViewTest/Resources/MainMenu.cib +++ b/Tests/Manual/CPSplitViewTest/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;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;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;81E;D;K;6;CP$UIDd;2;83E;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;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;206E;D;K;6;CP$UIDd;3;208E;D;K;6;CP$UIDd;3;210E;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;215E;D;K;6;CP$UIDd;3;217E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;219E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;223E;D;K;6;CP$UIDd;3;224E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;225E;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;83E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;126E;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;127E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;109E;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;2;83E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;2;83E;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;163E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;163E;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;163E;D;K;6;CP$UIDd;3;178E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;183E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;195E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;208E;D;K;6;CP$UIDd;3;210E;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;210E;D;K;6;CP$UIDd;3;215E;D;K;6;CP$UIDd;3;217E;D;K;6;CP$UIDd;3;210E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;210E;D;K;6;CP$UIDd;3;219E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;3;219E;D;K;6;CP$UIDd;3;223E;D;K;6;CP$UIDd;3;224E;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;226E;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;227E;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;225E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;228E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;225E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;206E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;229E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;210E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;225E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;228E;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;18E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;88E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;230E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;231E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;93E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;11E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;232E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;233E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;18E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;143E;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;18E;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;236E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;237E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;238E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;239E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;107E;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;18E;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;241E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;242E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;96E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;81E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;244E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;245E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;246E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;247E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;248E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;249E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;250E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;251E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;252E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;110E;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;18E;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;254E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;255E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;256E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;257E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;258E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;259E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;260E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;261E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;158E;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;18E;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;263E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;264E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;265E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;266E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;267E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;268E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;269E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;270E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;271E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;202E;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;18E;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;273E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;274E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;167E;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;18E;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;276E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;193E;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;18E;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;278E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;279E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;280E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;281E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;282E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;283E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;180E;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;18E;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;285E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;286E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;174E;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;18E;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;288E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;289E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;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;290E;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;217E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;214E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;291E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;226E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;292E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;293E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;294E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;295E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;86E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;83E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;295E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;298E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;299E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;300E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;302E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;86E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;303E;K;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;86E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;2;86E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;86E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;306E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;3;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;92E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;83E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;307E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;308E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;309E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;92E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;92E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;312E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;92E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;92E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;315E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;300E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;302E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;92E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;2;92E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;317E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;300E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;302E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;92E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;300E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;302E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;92E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;3;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;102E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;92E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;318E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;319E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;320E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;300E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;302E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;92E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;321E;K;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;92E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;312E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;322E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;106E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;83E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;84E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;106E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;326E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;3;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;109E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;83E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;327E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;328E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;109E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;109E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;331E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;332E;K;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;109E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;333E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;300E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;302E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;109E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;334E;K;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;109E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;335E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;109E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;337E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;338E;K;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;109E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;339E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;300E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;302E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;109E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;109E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;341E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;342E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;343E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;120E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;109E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;343E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;344E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;120E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;347E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;342E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;348E;K;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;120E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;349E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;120E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;352E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;120E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;355E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;357E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;120E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;358E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;127E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;109E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;359E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;360E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;127E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;362E;K;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;127E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;363E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;127E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;365E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;127E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;3;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;133E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;109E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;367E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;368E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;133E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;133E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;3;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;137E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;109E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;371E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;372E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;357E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;137E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;358E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;354E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;137E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;355E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;137E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;347E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;342E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;376E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;142E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;83E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;376E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;377E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;378E;K;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;142E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;379E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;380E;K;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;142E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;381E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;342E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;382E;K;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;142E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;383E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;384E;K;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;142E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;385E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;142E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;387E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;149E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;142E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;388E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;389E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;390E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;149E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;142E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;393E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;342E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;142E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;395E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;300E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;302E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;142E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;142E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;300E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;302E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;142E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;397E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;157E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;83E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;397E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;398E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;157E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;400E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;322E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;157E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;3;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;161E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;83E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;14;CPMenuTitleKeyD;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;84E;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;3;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;163E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;404E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;405E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;406E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;163E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;400E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;354E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;163E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;409E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;410E;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;357E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;163E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;411E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;163E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;413E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;300E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;302E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;163E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;415E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;417E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;163E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;418E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;300E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;302E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;3;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;173E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;419E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;420E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;179E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;84E;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;179E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;179E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;179E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;3;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;184E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;428E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;429E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;184E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;184E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;184E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;3;184E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;184E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;300E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;302E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;163E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;435E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;300E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;302E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;163E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;339E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;322E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;163E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;337E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;322E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;3;296E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;196E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;438E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;439E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;196E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;441E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;196E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;443E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;196E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;196E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;446E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;297E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;300E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;302E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;196E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;196E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;196E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;339E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;449E;E;D;K;6;$classD;K;6;CP$UIDd;2;84E;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;196E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;337E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;449E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;205E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;451E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;452E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;453E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;351E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;295E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;3;208E;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;207E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;454E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;455E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;455E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;456E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;457E;E;D;K;10;$classnameS;11;CPSplitViewK;8;$classesA;S;11;CPSplitViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;208E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;454E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;458E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;459E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;460E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;208E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;461E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;462E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;457E;K;22;CPSplitViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;24;CPSplitViewIsVerticalKeyD;K;6;CP$UIDd;3;302E;K;28;CPSplitViewIsPaneSplitterKeyD;K;6;CP$UIDd;3;300E;K;26;CPSplitViewAutosaveNameKeyD;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;3;211E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;210E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;454E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;463E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;464E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;465E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;210E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;466E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;457E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;467E;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;213E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;212E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;454E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;468E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;469E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;212E;K;22;CPViewAutoresizingMaskD;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;6;$afontD;K;6;CP$UIDd;3;474E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;354E;K;11;$aalignmentD;K;6;CP$UIDd;3;417E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;300E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;301E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;475E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;300E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;300E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;300E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;477E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;354E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;417E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;211E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;210E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;454E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;478E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;479E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;480E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;210E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;466E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;457E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;467E;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;3;216E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;215E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;454E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;481E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;482E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;215E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;470E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;483E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;457E;K;6;$afontD;K;6;CP$UIDd;3;484E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;454E;K;11;$aalignmentD;K;6;CP$UIDd;3;454E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;485E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;486E;K;19;CPSliderMinValueKeyD;K;6;CP$UIDd;3;454E;K;19;CPSliderMaxValueKeyD;K;6;CP$UIDd;3;487E;K;23;CPSliderAltIncrValueKeyD;K;6;CP$UIDd;3;454E;E;D;K;6;$classD;K;6;CP$UIDd;3;213E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;210E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;454E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;488E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;489E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;210E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;490E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;471E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;457E;K;6;$afontD;K;6;CP$UIDd;3;474E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;354E;K;11;$aalignmentD;K;6;CP$UIDd;3;417E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;300E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;491E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;475E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;302E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;302E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;302E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;354E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;417E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;210E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;454E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;492E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;492E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;493E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;210E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;490E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;462E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;457E;K;22;CPSplitViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;24;CPSplitViewIsVerticalKeyD;K;6;CP$UIDd;3;300E;K;28;CPSplitViewIsPaneSplitterKeyD;K;6;CP$UIDd;3;302E;K;26;CPSplitViewAutosaveNameKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;211E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;219E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;454E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;494E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;494E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;495E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;219E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;466E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;457E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;467E;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;221E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;220E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;454E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;496E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;497E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;220E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;466E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;499E;K;6;$afontD;K;6;CP$UIDd;3;500E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;454E;K;11;$aalignmentD;K;6;CP$UIDd;3;354E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;454E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;417E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;501E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;302E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;354E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;454E;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;211E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;219E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;454E;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;219E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;466E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;457E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;467E;E;D;K;6;$classD;K;6;CP$UIDd;3;221E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;223E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;454E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;505E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;506E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;223E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;466E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;499E;K;6;$afontD;K;6;CP$UIDd;3;500E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;454E;K;11;$aalignmentD;K;6;CP$UIDd;3;354E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;454E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;417E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;507E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;302E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;354E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;454E;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;508E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;206E;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;20;takeDoubleValueFrom:S;9;AMainMenuS;11;_CPMainMenuD;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;3;141E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;3;105E;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;90E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;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;93E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;2;96E;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;107E;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;112E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;132E;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;125E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;122E;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;130E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;131E;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;135E;D;K;6;CP$UIDd;3;134E;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;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;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;147E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;145E;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;150E;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;158E;D;K;6;CP$UIDd;3;159E;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;162E;D;K;6;CP$UIDd;3;195E;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;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;178E;D;K;6;CP$UIDd;3;183E;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;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;174E;D;K;6;CP$UIDd;3;175E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;177E;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;180E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;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;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;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;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;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;CPWindowS;24;{{335, 668}, {480, 360}}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;210E;E;E;S;6;normalS;22;{{20, 20}, {440, 191}}S;20;{{0, 0}, {440, 191}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;215E;D;K;6;CP$UIDd;3;219E;E;E;d;2;18S;9;splitviewS;21;{{0, 119}, {440, 45}}S;19;{{0, 0}, {440, 45}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;214E;E;E;d;1;8S;6;CPViewS;21;{{166, 8}, {104, 29}}S;19;{{0, 0}, {104, 29}}d;2;45S;9;textfieldS;19;bezeled+placeholderD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;473E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;509E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;510E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;302E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;302E;E;d;4;3072D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;476E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;511E;E;S;20;{{0, 44}, {440, 65}}S;19;{{0, 0}, {440, 65}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;217E;E;E;S;21;{{172, 23}, {96, 21}}S;18;{{0, 0}, {96, 21}}S;6;sliderD;K;6;$classD;K;6;CP$UIDd;3;473E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;512E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;510E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;302E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;302E;E;d;2;50d;2;68d;3;100S;21;{{0, 174}, {440, 17}}S;19;{{0, 0}, {440, 17}}d;2;36S;5;LabelS;19;{{0, 0}, {440, 34}}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;223E;E;E;S;19;{{0, 0}, {218, 34}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;222E;E;E;S;19;{{81, 5}, {52, 24}}S;18;{{0, 0}, {52, 24}}S;6;buttonS;8;borderedD;K;6;$classD;K;6;CP$UIDd;3;473E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;509E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;510E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;300E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;302E;E;S;4;LeftS;21;{{227, 0}, {213, 34}}S;19;{{0, 0}, {213, 34}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;224E;E;E;S;19;{{74, 5}, {61, 24}}S;18;{{0, 0}, {61, 24}}S;5;RightS;13;AppControllerS;17;Arial, sans-serifd;2;12D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;357E;D;K;6;CP$UIDd;3;357E;D;K;6;CP$UIDd;3;357E;D;K;6;CP$UIDd;3;357E;E;E;S;9;HelveticaE;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;22E;D;K;6;CP$UIDd;2;23E;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;24E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;36E;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;40E;D;K;6;CP$UIDd;1;0E;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;1;0E;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;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;26E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;30E;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;43E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;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;50E;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;51E;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;49E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;49E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;30E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;53E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;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;2;54E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;49E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;43E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;55E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;49E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;26E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;56E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;30E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;49E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;52E;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;21E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;39E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;36E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;57E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;34E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;49E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;58E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;50E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;2;59E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;2;60E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;2;61E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;2;62E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;2;63E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;28E;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;27E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;64E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;65E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;65E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;66E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;67E;E;D;K;10;$classnameS;11;CPSplitViewK;8;$classesA;S;11;CPSplitViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;64E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;65E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;65E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;68E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;69E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;70E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;67E;K;22;CPSplitViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;24;CPSplitViewIsVerticalKeyD;K;6;CP$UIDd;2;71E;K;28;CPSplitViewIsPaneSplitterKeyD;K;6;CP$UIDd;2;72E;K;26;CPSplitViewAutosaveNameKeyD;K;6;CP$UIDd;2;53E;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;31E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;64E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;73E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;74E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;75E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;76E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;67E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;2;77E;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;33E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;32E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;64E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;78E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;79E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;32E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;80E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;81E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;82E;K;6;$afontD;K;6;CP$UIDd;2;84E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;64E;K;11;$aalignmentD;K;6;CP$UIDd;2;85E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;64E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;86E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;2;87E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;2;88E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;71E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;2;89E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;2;64E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;2;72E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;85E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;2;64E;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;2;35E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;32E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;64E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;90E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;91E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;32E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;92E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;93E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;94E;K;6;$afontD;K;6;CP$UIDd;2;95E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;85E;K;11;$aalignmentD;K;6;CP$UIDd;2;86E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;72E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;88E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;96E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;2;72E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;2;72E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;2;72E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;2;98E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;85E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;86E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;31E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;64E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;99E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;100E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;101E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;76E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;67E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;2;77E;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;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;64E;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;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;92E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;104E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;67E;K;6;$afontD;K;6;CP$UIDd;3;105E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;64E;K;11;$aalignmentD;K;6;CP$UIDd;2;64E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;106E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;107E;K;19;CPSliderMinValueKeyD;K;6;CP$UIDd;2;64E;K;19;CPSliderMaxValueKeyD;K;6;CP$UIDd;3;108E;K;23;CPSliderAltIncrValueKeyD;K;6;CP$UIDd;2;64E;E;D;K;6;$classD;K;6;CP$UIDd;2;35E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;64E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;109E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;110E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;80E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;93E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;67E;K;6;$afontD;K;6;CP$UIDd;2;95E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;85E;K;11;$aalignmentD;K;6;CP$UIDd;2;86E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;72E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;111E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;96E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;2;71E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;2;71E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;2;71E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;85E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;86E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;64E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;112E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;112E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;113E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;76E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;70E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;67E;K;22;CPSplitViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;24;CPSplitViewIsVerticalKeyD;K;6;CP$UIDd;2;72E;K;28;CPSplitViewIsPaneSplitterKeyD;K;6;CP$UIDd;2;71E;K;26;CPSplitViewAutosaveNameKeyD;K;6;CP$UIDd;2;54E;E;D;K;6;$classD;K;6;CP$UIDd;2;31E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;41E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;64E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;114E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;114E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;115E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;41E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;76E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;67E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;2;77E;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;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;64E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;114E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;114E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;116E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;42E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;69E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;70E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;67E;K;22;CPSplitViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;24;CPSplitViewIsVerticalKeyD;K;6;CP$UIDd;2;71E;K;28;CPSplitViewIsPaneSplitterKeyD;K;6;CP$UIDd;2;72E;K;26;CPSplitViewAutosaveNameKeyD;K;6;CP$UIDd;2;55E;E;D;K;6;$classD;K;6;CP$UIDd;2;31E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;43E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;64E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;117E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;118E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;43E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;76E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;67E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;2;77E;E;D;K;6;$classD;K;6;CP$UIDd;2;31E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;43E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;64E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;119E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;119E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;120E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;43E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;76E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;67E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;2;77E;E;D;K;6;$classD;K;6;CP$UIDd;2;33E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;45E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;64E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;121E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;122E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;45E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;76E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;81E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;82E;K;6;$afontD;K;6;CP$UIDd;2;84E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;64E;K;11;$aalignmentD;K;6;CP$UIDd;2;85E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;64E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;86E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;123E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;2;88E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;71E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;2;89E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;2;64E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;2;72E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;85E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;2;64E;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;31E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;41E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;64E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;124E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;125E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;126E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;41E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;76E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;67E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;2;77E;E;D;K;6;$classD;K;6;CP$UIDd;2;33E;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;64E;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;47E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;76E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;81E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;82E;K;6;$afontD;K;6;CP$UIDd;2;84E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;64E;K;11;$aalignmentD;K;6;CP$UIDd;2;85E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;64E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;86E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;129E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;2;88E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;71E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;2;89E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;2;64E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;2;72E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;85E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;2;64E;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;130E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;26E;E;E;S;8;delegateS;10;splitViewAS;10;splitViewBS;10;splitViewCS;9;theWindowS;20;takeDoubleValueFrom:S;15;deleteAutosave:S;32;{10000000000000, 10000000000000}S;8;CPWindowS;24;{{335, 668}, {480, 360}}d;1;7S;6;Windowd;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;2;30E;E;E;S;6;normalD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;41E;E;E;d;2;18S;9;splitviewF;T;S;21;{{0, 231}, {480, 85}}S;19;{{0, 0}, {480, 85}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;36E;E;E;d;1;8S;6;CPViewS;21;{{18, 31}, {130, 24}}S;19;{{0, 0}, {130, 24}}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;2;83E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;131E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;132E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;72E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;71E;E;d;1;2d;1;4S;15;Delete AutosaveS;0;d;2;14S;22;{{358, 29}, {104, 29}}S;19;{{0, 0}, {104, 29}}d;2;45S;9;textfieldS;19;bezeled+placeholderD;K;6;$classD;K;6;CP$UIDd;2;83E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;131E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;132E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;71E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;71E;E;d;4;3072D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;97E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;133E;E;S;21;{{0, 142}, {480, 79}}S;19;{{0, 0}, {480, 79}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;39E;E;E;S;21;{{192, 31}, {96, 21}}S;18;{{0, 0}, {96, 21}}S;6;sliderD;K;6;$classD;K;6;CP$UIDd;2;83E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;134E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;132E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;71E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;71E;E;d;2;50d;2;68d;3;100S;21;{{0, 326}, {480, 34}}S;19;{{0, 0}, {480, 34}}S;5;LabelS;20;{{0, 0}, {480, 132}}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;47E;E;E;S;20;{{0, 0}, {246, 132}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;43E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;E;E;S;20;{{0, 81}, {246, 51}}S;19;{{0, 0}, {246, 51}}S;19;{{0, 0}, {246, 72}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;46E;E;E;S;21;{{70, 24}, {102, 24}}S;19;{{0, 0}, {102, 24}}S;11;Bottom LeftS;22;{{247, 0}, {233, 132}}S;20;{{0, 0}, {233, 132}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;48E;E;E;S;20;{{84, 54}, {61, 24}}S;18;{{0, 0}, {61, 24}}S;5;RightS;13;AppControllerS;17;Arial, sans-serifd;2;12D;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;135E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;135E;E;E;S;9;Helveticad;1;1E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Tests/Manual/CPSplitViewTest/Resources/MainMenu.xib b/Tests/Manual/CPSplitViewTest/Resources/MainMenu.xib index df5d4dc8b..d497e2df5 100644 --- a/Tests/Manual/CPSplitViewTest/Resources/MainMenu.xib +++ b/Tests/Manual/CPSplitViewTest/Resources/MainMenu.xib @@ -2,29 +2,27 @@ 1050 - 11C74 - 1938 - 1138.23 - 567.00 + 11E53 + 2182 + 1138.47 + 569.00 com.apple.InterfaceBuilder.CocoaPlugin - 1938 + 2182 YES - NSSplitView - NSMenuItem - NSMenu - NSTextFieldCell - NSButton - NSButtonCell - NSSlider - NSSliderCell - NSCustomView - NSCustomObject + NSTextField NSView NSWindowTemplate - NSTextField + NSSplitView + NSTextFieldCell + NSSliderCell + NSCustomView + NSSlider + NSButtonCell + NSButton + NSCustomObject YES @@ -45,1081 +43,6 @@ 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 @@ -1142,7 +65,7 @@ 268 - {440, 17} + {480, 34} @@ -1184,10 +107,34 @@ 256 YES + + + 268 + {{14, 24}, {142, 32}} + + + + _NS:9 + YES + + 67239424 + 134217728 + Delete Autosave + + _NS:9 + + -2038284033 + 129 + + + 200 + 25 + + 301 - {{172, 11}, {96, 22}} + {{364, 30}, {96, 22}} @@ -1217,10 +164,10 @@ - {{0, 27}, {440, 45}} + {{0, 44}, {480, 85}} - + _NS:1113 NSView @@ -1232,7 +179,7 @@ 301 - {{172, 21}, {96, 21}} + {{192, 27}, {96, 21}} @@ -1258,7 +205,7 @@ - {{0, 82}, {440, 65}} + {{0, 139}, {480, 79}} @@ -1267,7 +214,7 @@ - 268 + 256 YES @@ -1275,35 +222,71 @@ 256 YES - + - 256 - {{77, -1}, {64, 32}} + 274 + + YES + + + 256 + {246, 51} + + + + _NS:11 + NSView + + + + 256 + + YES + + + 256 + {{66, 18}, {114, 32}} + + + + _NS:687 + YES + + 67239424 + 134217728 + Bottom Left + + _NS:687 + + -2038284033 + 129 + + + 200 + 25 + + + + {{0, 60}, {246, 72}} + + + + _NS:13 + NSView + + + {246, 132} - - _NS:687 - YES - - 67239424 - 134217728 - Left - - _NS:687 - - -2038284033 - 129 - - - 200 - 25 - + + _NS:9 + splitViewC - {218, 34} + {246, 132} - + _NS:1165 NSView @@ -1315,7 +298,7 @@ 256 - {{70, -1}, {73, 32}} + {{80, 48}, {73, 32}} @@ -1337,7 +320,7 @@ - {{227, 0}, {213, 34}} + {{247, 0}, {233, 132}} @@ -1345,20 +328,23 @@ NSView
- {{0, 157}, {440, 34}} + {{0, 228}, {480, 132}} _NS:1163 YES + 2 + splitViewB
- {{20, 149}, {440, 191}} + {480, 360} _NS:1111 3 + splitViewA {480, 360} @@ -1377,22 +363,6 @@ YES - - - terminate: - - - - 449 - - - - orderFrontStandardAboutPanel: - - - - 142 - delegate @@ -1401,478 +371,6 @@ 451 - - - 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 @@ -1881,6 +379,38 @@ 459 + + + splitViewA + + + + 479 + + + + splitViewB + + + + 480 + + + + splitViewC + + + + 481 + + + + deleteAutosave: + + + + 482 + takeDoubleValueFrom: @@ -1927,548 +457,6 @@ Application - - 29 - - - YES - - - - - - - - - - MainMenu - - - 19 - - - YES - - - - - - 56 - - - YES - - - - - - 103 - - - YES - - - - 1 - - - 217 - - - YES - - - - - - 83 - - - YES - - - - - - 81 - - - YES - - - - - - - - - - - - - - - - 75 - - - 3 - - - 80 - - - 8 - - - 78 - - - 6 - - - 72 - - - - - 82 - - - 9 - - - 124 - - - YES - - - - - - 77 - - - 5 - - - 73 - - - 1 - - - 79 - - - 7 - - - 112 - - - 10 - - - 74 - - - 2 - - - 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 - - - - 2 - - - 111 - - - - - 57 - - - YES - - - - - - - - - - - - - - - - 58 - - - - - 134 - - - - - 150 - - - - - 136 - - - 1111 - - - 144 - - - - - 129 - - - 121 - - - 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 @@ -2487,311 +475,6 @@ - - 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 @@ -2814,6 +497,7 @@ YES + @@ -2884,7 +568,7 @@ YES - + @@ -2897,20 +581,6 @@ - - 468 - - - YES - - - - - - 469 - - - 470 @@ -2925,6 +595,58 @@ + + 474 + + + YES + + + + + + + 475 + + + + + 476 + + + YES + + + + + + 468 + + + YES + + + + + + 469 + + + + + 477 + + + YES + + + + + + 478 + + + @@ -2934,115 +656,10 @@ -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 452.IBPluginDependency 453.IBPluginDependency @@ -3060,89 +677,18 @@ 469.IBPluginDependency 470.IBPluginDependency 471.IBPluginDependency - 5.IBPluginDependency - 56.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 + 474.IBPluginDependency + 475.IBPluginDependency + 476.IBPluginDependency + 477.IBPluginDependency + 478.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 @@ -3168,62 +714,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 - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin @@ -3238,7 +728,7 @@ - 473 + 482 @@ -3246,78 +736,61 @@ AppController NSObject + + deleteAutosave: + id + + + deleteAutosave: + + deleteAutosave: + id + + + + YES + + YES + splitViewA + splitViewB + splitViewC + + + YES + NSSplitView + NSSplitView + NSSplitView + + + + YES + + YES + splitViewA + splitViewB + splitViewC + + + YES + + splitViewA + NSSplitView + + + splitViewB + NSSplitView + + + splitViewC + NSSplitView + + + IBProjectSource ./Classes/AppController.h - - NSDocument - - YES - - YES - printDocument: - revertDocumentToSaved: - runPageLayout: - saveDocument: - saveDocumentAs: - saveDocumentTo: - - - YES - id - id - id - id - id - id - - - - YES - - YES - printDocument: - revertDocumentToSaved: - runPageLayout: - saveDocument: - saveDocumentAs: - saveDocumentTo: - - - YES - - printDocument: - id - - - revertDocumentToSaved: - id - - - runPageLayout: - id - - - saveDocument: - id - - - saveDocumentAs: - id - - - saveDocumentTo: - id - - - - - IBProjectSource - ./Classes/NSDocument.h - - 0 @@ -3332,18 +805,5 @@ YES 3 - - YES - - YES - NSMenuCheckmark - NSMenuMixedState - - - YES - {9, 8} - {7, 2} - -
diff --git a/Tests/Manual/FontEnhancementTest/AppController.j b/Tests/Manual/FontEnhancementTest/AppController.j index 6a2bd3518..6eff78438 100644 --- a/Tests/Manual/FontEnhancementTest/AppController.j +++ b/Tests/Manual/FontEnhancementTest/AppController.j @@ -7,6 +7,7 @@ */ @import +@import var fontLabelField = nil, @@ -15,17 +16,13 @@ var fontLabelField = nil, @implementation AppController : CPObject { - CPWindow theWindow; //this "outlet" is connected automatically by the Cib - CPTextField label1; - CPTextField fontLabel; - CPTableView theTableView; - CPRadio radio1; - CPRadio radio2; -} - -- (void)applicationDidFinishLaunching:(CPNotification)aNotification -{ - // This is called when the application is done loading. + @outlet CPWindow theWindow; + @outlet CPTextField systemFontLabel; + @outlet CPTextField label1; + @outlet CPTextField fontLabel; + @outlet CPTableView theTableView; + @outlet CPRadio radio1; + @outlet CPRadio radio2; } - (void)awakeFromCib @@ -44,6 +41,9 @@ var fontLabelField = nil, [radio1 setFont:font]; [radio2 setFont:font]; + + var systemFont = [CPString stringWithFormat:@"System font: %@ %d", [CPFont systemFontFace], [CPFont systemFontSize]]; + [systemFontLabel setStringValue:systemFont]; } - (int)numberOfRowsInTableView:(id)aTableView diff --git a/Tests/Manual/FontEnhancementTest/Info.plist b/Tests/Manual/FontEnhancementTest/Info.plist index bb75f15fa..8edb4a8bc 100644 --- a/Tests/Manual/FontEnhancementTest/Info.plist +++ b/Tests/Manual/FontEnhancementTest/Info.plist @@ -6,9 +6,5 @@ MainMenu.cib CPBundleName FontEnhancementTest - CPSystemFontFace - Lucida Grande - CPSystemFontSize - 12 diff --git a/Tests/Manual/FontEnhancementTest/Resources/MainMenu.cib b/Tests/Manual/FontEnhancementTest/Resources/MainMenu.cib index 9c95c7c3e..9418b3961 100644 --- a/Tests/Manual/FontEnhancementTest/Resources/MainMenu.cib +++ b/Tests/Manual/FontEnhancementTest/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;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;24E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;1;0E;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;38E;D;K;6;CP$UIDd;1;0E;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;2;43E;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;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;52E;D;K;6;CP$UIDd;2;54E;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;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;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;73E;D;K;6;CP$UIDd;1;0E;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;1;0E;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;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;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;26E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;28E;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;58E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;73E;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;28E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;28E;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;11E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;73E;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;88E;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;89E;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;84E;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;84E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;65E;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;84E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;30E;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;84E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;94E;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;84E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;96E;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;84E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;46E;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;84E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;26E;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;46E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;84E;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;84E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;88E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;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;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;103E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;104E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;105E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;28E;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;27E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;107E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;107E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;108E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;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;29E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;110E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;111E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;113E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;K;6;$afontD;K;6;CP$UIDd;3;115E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;116E;K;11;$aalignmentD;K;6;CP$UIDd;3;117E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;118E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;119E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;121E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;121E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;121E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;116E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;117E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;122E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;123E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;113E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;K;6;$afontD;K;6;CP$UIDd;3;124E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;116E;K;11;$aalignmentD;K;6;CP$UIDd;3;117E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;118E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;125E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;121E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;121E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;121E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;116E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;117E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;126E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;127E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;113E;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;3;116E;K;11;$aalignmentD;K;6;CP$UIDd;3;117E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;118E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;130E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;118E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;118E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;118E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;132E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;116E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;117E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;134E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;135E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;113E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;128E;K;6;$afontD;K;6;CP$UIDd;3;136E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;116E;K;11;$aalignmentD;K;6;CP$UIDd;3;117E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;118E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;130E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;118E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;118E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;118E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;132E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;116E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;117E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;125E;E;D;K;10;$classnameS;13;CPSearchFieldK;8;$classesA;S;13;CPSearchFieldS;11;CPTextFieldS;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;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;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;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;139E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;6;$afontD;K;6;CP$UIDd;3;141E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;116E;K;11;$aalignmentD;K;6;CP$UIDd;3;117E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;130E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;118E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;118E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;118E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;132E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;116E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;117E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;142E;K;27;CPSendsWholeSearchStringKeyD;K;6;CP$UIDd;3;121E;K;33;CPSendsSearchStringImmediatelyKeyD;K;6;CP$UIDd;3;121E;K;19;CPMaximumRecentsKeyD;K;6;CP$UIDd;3;143E;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;36E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;144E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;145E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;146E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;K;6;$afontD;K;6;CP$UIDd;3;147E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;106E;K;11;$aalignmentD;K;6;CP$UIDd;3;116E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;117E;K;29;CPSegmentedControlSegmentsKeyD;K;6;CP$UIDd;3;148E;K;29;CPSegmentedControlSelectedKeyD;K;6;CP$UIDd;3;106E;K;33;CPSegmentedControlSegmentStyleKeyD;K;6;CP$UIDd;3;149E;K;33;CPSegmentedControlTrackingModeKeyD;K;6;CP$UIDd;3;106E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;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;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;139E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;140E;K;6;$afontD;K;6;CP$UIDd;3;136E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;116E;K;11;$aalignmentD;K;6;CP$UIDd;3;117E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;130E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;118E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;118E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;118E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;132E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;116E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;117E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;125E;K;27;CPSendsWholeSearchStringKeyD;K;6;CP$UIDd;3;121E;K;33;CPSendsSearchStringImmediatelyKeyD;K;6;CP$UIDd;3;121E;K;19;CPMaximumRecentsKeyD;K;6;CP$UIDd;3;143E;E;D;K;6;$classD;K;6;CP$UIDd;2;36E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;152E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;153E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;146E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;106E;K;11;$aalignmentD;K;6;CP$UIDd;3;116E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;117E;K;29;CPSegmentedControlSegmentsKeyD;K;6;CP$UIDd;3;155E;K;29;CPSegmentedControlSelectedKeyD;K;6;CP$UIDd;3;106E;K;33;CPSegmentedControlSegmentStyleKeyD;K;6;CP$UIDd;3;149E;K;33;CPSegmentedControlTrackingModeKeyD;K;6;CP$UIDd;3;106E;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;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;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;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;159E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;161E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;3;162E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;43E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;2;44E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;163E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;163E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;163E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;163E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;118E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;121E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;118E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;164E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;116E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;3;106E;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;42E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;41E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;165E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;166E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;41E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;167E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;168E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;169E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;170E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;106E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;41E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;171E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;117E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;106E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;172E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;42E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;41E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;173E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;174E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;41E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;167E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;168E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;169E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;175E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;106E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;41E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;176E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;117E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;106E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;177E;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;45E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;161E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;178E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;178E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;161E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;179E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;180E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;K;12;$agrid-colorD;K;6;CP$UIDd;3;181E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;117E;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;182E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;183E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;106E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;106E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;121E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;118E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;118E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;118E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;118E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;184E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;181E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;3;106E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;121E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;3;186E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;2;52E;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;47E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;187E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;188E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;189E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;190E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;192E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;193E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;194E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;121E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;118E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;47E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;195E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;196E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;189E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;190E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;197E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;198E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;194E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;121E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;118E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;47E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;199E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;200E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;163E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;201E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;202E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;203E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;194E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;121E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;118E;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;51E;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;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;204E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;204E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;162E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;205E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;K;29;CPTableHeaderViewTableViewKeyD;K;6;CP$UIDd;2;46E;K;33;CPTableHeaderViewDrawsColumnLinesD;K;6;CP$UIDd;3;118E;E;D;K;10;$classnameS;9;CPTabViewK;8;$classesA;S;9;CPTabViewS;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;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;206E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;207E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;208E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;106E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;K;17;CPTabViewItemsKeyD;K;6;CP$UIDd;3;209E;K;24;CPTabViewSelectedItemKeyD;K;6;CP$UIDd;2;58E;K;16;CPTabViewTypeKeyD;K;6;CP$UIDd;3;106E;K;16;CPTabViewFontKeyD;K;6;CP$UIDd;3;210E;K;20;CPTabViewDelegateKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;13;CPTabViewItemK;8;$classesA;S;13;CPTabViewItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;55E;K;26;CPTabViewItemIdentifierKeyD;K;6;CP$UIDd;3;195E;K;21;CPTabViewItemLabelKeyD;K;6;CP$UIDd;3;211E;K;20;CPTabViewItemViewKeyD;K;6;CP$UIDd;2;57E;K;23;CPTabViewItemAuxViewKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;212E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;213E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;E;D;K;6;$classD;K;6;CP$UIDd;2;55E;K;26;CPTabViewItemIdentifierKeyD;K;6;CP$UIDd;3;199E;K;21;CPTabViewItemLabelKeyD;K;6;CP$UIDd;3;214E;K;20;CPTabViewItemViewKeyD;K;6;CP$UIDd;2;59E;K;23;CPTabViewItemAuxViewKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;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;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;215E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;213E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;54E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;167E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;216E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;217E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;218E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;106E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;K;17;CPTabViewItemsKeyD;K;6;CP$UIDd;3;219E;K;24;CPTabViewSelectedItemKeyD;K;6;CP$UIDd;2;61E;K;16;CPTabViewTypeKeyD;K;6;CP$UIDd;3;106E;K;16;CPTabViewFontKeyD;K;6;CP$UIDd;3;154E;K;20;CPTabViewDelegateKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;55E;K;26;CPTabViewItemIdentifierKeyD;K;6;CP$UIDd;3;195E;K;21;CPTabViewItemLabelKeyD;K;6;CP$UIDd;3;220E;K;20;CPTabViewItemViewKeyD;K;6;CP$UIDd;2;62E;K;23;CPTabViewItemAuxViewKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;60E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;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;2;60E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;167E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;E;D;K;6;$classD;K;6;CP$UIDd;2;55E;K;26;CPTabViewItemIdentifierKeyD;K;6;CP$UIDd;3;199E;K;21;CPTabViewItemLabelKeyD;K;6;CP$UIDd;3;223E;K;20;CPTabViewItemViewKeyD;K;6;CP$UIDd;2;64E;K;23;CPTabViewItemAuxViewKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;224E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;222E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;225E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;226E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;227E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;113E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;K;6;$afontD;K;6;CP$UIDd;3;124E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;116E;K;11;$aalignmentD;K;6;CP$UIDd;3;117E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;118E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;228E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;121E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;121E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;121E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;116E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;117E;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;66E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;229E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;230E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;231E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;232E;K;16;$aimage-positionD;K;6;CP$UIDd;3;106E;K;6;$afontD;K;6;CP$UIDd;3;233E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;106E;K;11;$aalignmentD;K;6;CP$UIDd;3;116E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;149E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;117E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;234E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;121E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;106E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;106E;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;66E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;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;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;231E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;232E;K;16;$aimage-positionD;K;6;CP$UIDd;3;106E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;106E;K;11;$aalignmentD;K;6;CP$UIDd;3;116E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;149E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;117E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;125E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;121E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;106E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;106E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;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;69E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;237E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;238E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;239E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;240E;K;16;$aimage-positionD;K;6;CP$UIDd;3;116E;K;6;$afontD;K;6;CP$UIDd;3;241E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;106E;K;11;$aalignmentD;K;6;CP$UIDd;3;106E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;149E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;117E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;242E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;121E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;116E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;106E;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;69E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;243E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;244E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;239E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;240E;K;16;$aimage-positionD;K;6;CP$UIDd;3;116E;K;6;$afontD;K;6;CP$UIDd;3;136E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;106E;K;11;$aalignmentD;K;6;CP$UIDd;3;106E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;149E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;117E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;125E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;121E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;116E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;106E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;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;72E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;2;87E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;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;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;247E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;248E;K;6;$afontD;K;6;CP$UIDd;3;249E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;117E;K;11;$aalignmentD;K;6;CP$UIDd;3;106E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;106E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;117E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;1;0E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;121E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;116E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;106E;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;74E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;250E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;73E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;251E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;149E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;252E;E;D;K;6;$classD;K;6;CP$UIDd;2;74E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;253E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;73E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;251E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;252E;E;D;K;6;$classD;K;6;CP$UIDd;2;74E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;254E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;73E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;251E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;252E;E;D;K;6;$classD;K;6;CP$UIDd;2;72E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;2;86E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;255E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;246E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;247E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;248E;K;6;$afontD;K;6;CP$UIDd;3;154E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;117E;K;11;$aalignmentD;K;6;CP$UIDd;3;106E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;106E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;117E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;1;0E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;121E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;116E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;106E;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;74E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;125E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;78E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;251E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;149E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;86E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;252E;E;D;K;6;$classD;K;6;CP$UIDd;2;74E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;253E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;78E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;251E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;86E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;252E;E;D;K;6;$classD;K;6;CP$UIDd;2;74E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;254E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;78E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;251E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;86E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;252E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;256E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;257E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;258E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;259E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;260E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;261E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;262E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;263E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;264E;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;263E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;265E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;26E;E;E;S;8;delegateS;9;fontLabelS;6;label1D;K;10;$classnameS;7;CPRadioK;8;$classesA;S;7;CPRadioS;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;93E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;82E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;266E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;266E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;82E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;267E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;268E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;269E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;248E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;116E;K;16;$aimage-positionD;K;6;CP$UIDd;3;116E;K;6;$afontD;K;6;CP$UIDd;3;270E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;106E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;116E;K;11;$aalignmentD;K;6;CP$UIDd;3;106E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;106E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;117E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;271E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;121E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;116E;K;24;CPButtonKeyEquivalentKeyD;K;6;CP$UIDd;3;272E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;273E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;3;274E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;3;275E;K;20;CPRadioRadioGroupKeyD;K;6;CP$UIDd;3;277E;E;S;6;radio1D;K;6;$classD;K;6;CP$UIDd;2;93E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;82E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;278E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;266E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;82E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;267E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;268E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;269E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;232E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;116E;K;16;$aimage-positionD;K;6;CP$UIDd;3;116E;K;6;$afontD;K;6;CP$UIDd;3;270E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;106E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;116E;K;11;$aalignmentD;K;6;CP$UIDd;3;106E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;149E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;117E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;279E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;121E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;116E;K;24;CPButtonKeyEquivalentKeyD;K;6;CP$UIDd;3;280E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;252E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;3;274E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;3;275E;K;20;CPRadioRadioGroupKeyD;K;6;CP$UIDd;3;277E;E;S;6;radio2S;12;theTableViewS;9;theWindowS;10;dataSourceS;32;{10000000000000, 10000000000000}S;8;CPWindowS;23;{{256, 60}, {612, 664}}d;1;7S;21;Font Enhancement Testd;1;0S;20;{{0, 0}, {612, 664}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;60E;E;E;S;6;normalS;21;{{29, 49}, {221, 28}}S;19;{{0, 0}, {221, 28}}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;114E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;281E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;267E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;118E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;118E;E;d;1;2d;1;4T;S;22;Georgia bold italic 18d;4;3072F;S;20;{{29, 84}, {95, 17}}S;18;{{0, 0}, {95, 17}}D;K;6;$classD;K;6;CP$UIDd;3;114E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;282E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;283E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;121E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;121E;E;S;15;Default IB fontS;22;{{26, 123}, {210, 32}}S;19;{{0, 0}, {210, 32}}S;19;bezeled+placeholderD;K;6;$classD;K;6;CP$UIDd;3;114E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;284E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;285E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;121E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;121E;E;S;0;D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;131E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;286E;E;S;15;Trebuchet MS 14S;22;{{26, 159}, {210, 29}}S;19;{{0, 0}, {210, 29}}D;K;6;$classD;K;6;CP$UIDd;3;114E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;282E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;283E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;121E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;121E;E;S;22;{{26, 209}, {211, 30}}S;19;{{0, 0}, {211, 30}}S;11;searchfieldS;27;bezeled+rounded+placeholderD;K;6;$classD;K;6;CP$UIDd;3;114E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;287E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;283E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;121E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;121E;E;S;10;Verdana 12d;3;254S;22;{{26, 295}, {182, 24}}S;19;{{0, 0}, {182, 24}}S;17;segmented-controlD;K;6;$classD;K;6;CP$UIDd;3;114E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;288E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;289E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;118E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;291E;D;K;6;CP$UIDd;3;292E;D;K;6;CP$UIDd;3;293E;E;E;d;1;1S;22;{{26, 241}, {210, 30}}S;19;{{0, 0}, {210, 30}}S;22;{{26, 330}, {152, 24}}S;19;{{0, 0}, {152, 24}}D;K;6;$classD;K;6;CP$UIDd;3;114E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;282E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;283E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;118E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;294E;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;296E;E;E;S;23;{{32, 405}, {455, 135}}S;20;{{0, 0}, {455, 135}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;164E;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;160E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;41E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;297E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;178E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;298E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;41E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;167E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;179E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;46E;E;D;K;6;$classD;K;6;CP$UIDd;3;160E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;41E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;299E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;300E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;301E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;41E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;167E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;179E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;52E;E;d;2;10D;K;6;$classD;K;6;CP$UIDd;2;27E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;41E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;302E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;302E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;41E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;E;S;21;{{439, 1}, {15, 117}}S;19;{{0, 0}, {15, 117}}d;1;8d;11;-2147483648S;8;scrollerS;17;disabled+verticalS;27;_verticalScrollerDidScroll:f;18;0.8717948717948718S;24;{{-100, 220}, {426, 15}}S;19;{{0, 0}, {426, 15}}S;8;disabledS;29;_horizontalScrollerDidScroll:f;18;0.9906976744186047S;20;{{0, 0}, {453, 117}}D;K;6;$classD;K;6;CP$UIDd;3;131E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;303E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;3;131E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;304E;E;d;2;23S;6;{3, 2}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;49E;D;K;6;CP$UIDd;2;50E;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;185E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;41E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;106E;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;41E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;167E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;307E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;E;S;1;0d;3;137d;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;191E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;302E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;302E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;308E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;309E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;106E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;310E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;136E;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;302E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;302E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;113E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;311E;K;6;$afontD;K;6;CP$UIDd;3;313E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;117E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;116E;K;11;$aalignmentD;K;6;CP$UIDd;3;106E;K;15;$acontent-insetD;K;6;CP$UIDd;3;315E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;130E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;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;117E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;106E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;130E;E;d;1;3S;1;1d;3;131D;K;6;$classD;K;6;CP$UIDd;3;191E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;302E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;302E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;316E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;309E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;106E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;317E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;136E;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;302E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;302E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;113E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;311E;K;6;$afontD;K;6;CP$UIDd;3;318E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;117E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;116E;K;11;$aalignmentD;K;6;CP$UIDd;3;106E;K;15;$acontent-insetD;K;6;CP$UIDd;3;319E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;130E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;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;117E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;106E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;130E;E;S;1;2d;3;125f;22;3.4028234663852886e+38D;K;6;$classD;K;6;CP$UIDd;3;191E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;302E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;302E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;320E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;309E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;106E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;321E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;136E;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;302E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;302E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;113E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;311E;K;6;$afontD;K;6;CP$UIDd;3;322E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;117E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;116E;K;11;$aalignmentD;K;6;CP$UIDd;3;106E;K;15;$acontent-insetD;K;6;CP$UIDd;3;323E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;130E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;120E;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;117E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;106E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;130E;E;S;19;{{0, 0}, {453, 23}}S;14;tableHeaderRowS;22;{{25, 564}, {257, 85}}S;19;{{0, 0}, {257, 85}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;59E;E;E;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;58E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;114E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;211E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;289E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;118E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;121E;E;S;6;ImpactS;21;{{10, 33}, {237, 39}}S;19;{{0, 0}, {237, 39}}S;2;13S;21;{{10, 13}, {237, 39}}S;23;{{322, 564}, {266, 85}}S;19;{{0, 0}, {266, 85}}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;2;61E;D;K;6;CP$UIDd;2;63E;E;E;S;7;DefaultS;21;{{10, 13}, {246, 39}}S;19;{{0, 0}, {246, 39}}S;7;IB fontS;21;{{10, 33}, {246, 39}}S;21;{{29, 14}, {578, 17}}S;19;{{0, 0}, {578, 17}}d;2;34S;45;View font: S;22;{{361, 54}, {168, 24}}S;19;{{0, 0}, {168, 24}}S;6;buttonS;17;selected+borderedD;K;6;$classD;K;6;CP$UIDd;3;114E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;284E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;285E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;118E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;121E;E;S;20;Trebuchet MS Bold 14S;22;{{361, 91}, {118, 24}}S;19;{{0, 0}, {118, 24}}S;23;{{361, 146}, {213, 18}}S;19;{{0, 0}, {213, 18}}S;9;check-boxS;8;selectedD;K;6;$classD;K;6;CP$UIDd;3;114E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;324E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;325E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;121E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;118E;E;S;25;Times New Roman italic 16S;23;{{361, 178}, {113, 18}}S;19;{{0, 0}, {113, 18}}S;23;{{361, 225}, {198, 24}}S;19;{{0, 0}, {198, 24}}S;12;popup-buttonS;8;borderedD;K;6;$classD;K;6;CP$UIDd;3;114E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;326E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;289E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;121E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;121E;E;S;17;Lucida Console 13S;17;_popUpItemAction:d;7;1048576S;6;Item 2S;6;Item 3S;23;{{361, 262}, {198, 24}}S;23;{{363, 319}, {218, 20}}S;19;{{0, 0}, {218, 20}}D;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;2;96E;E;E;S;23;{{363, 353}, {218, 18}}S;19;{{0, 0}, {218, 18}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;327E;D;K;6;CP$UIDd;3;328E;E;E;S;13;AppControllerS;10;OtherViewsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;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;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;E;E;S;19;{{0, 0}, {107, 20}}d;2;18D;K;6;$classD;K;6;CP$UIDd;3;131E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;329E;E;S;5;radioD;K;6;$classD;K;6;CP$UIDd;3;114E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;330E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;285E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;121E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;121E;E;S;11;Palatino orS;4;cAA=d;7;1572864f;3;0.5f;4;0.05D;K;10;$classnameS;12;CPRadioGroupK;8;$classesA;S;12;CPRadioGroupS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;276E;K;21;CPRadioGroupRadiosKeyD;K;6;CP$UIDd;3;331E;K;28;CPRadioGroupSelectedRadioKeyD;K;6;CP$UIDd;2;96E;E;S;21;{{111, 0}, {107, 20}}S;10;Cambria 14S;4;QwA=S;7;GeorgiaS;13;Lucida Granded;2;12S;12;Trebuchet MSd;2;14D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;149E;E;E;S;7;VerdanaS;13;Comic Sans MSd;2;13D;K;10;$classnameS;14;_CPSegmentItemK;8;$classesA;S;14;_CPSegmentItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;290E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;332E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;118E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;118E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;106E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;106E;E;D;K;6;$classD;K;6;CP$UIDd;3;290E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;333E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;121E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;118E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;149E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;106E;E;D;K;6;$classD;K;6;CP$UIDd;3;290E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;214E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;121E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;118E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;106E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;106E;E;D;K;6;$classD;K;6;CP$UIDd;3;290E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;220E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;118E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;118E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;106E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;106E;E;D;K;6;$classD;K;6;CP$UIDd;3;290E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;334E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;121E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;118E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;149E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;106E;E;D;K;6;$classD;K;6;CP$UIDd;3;290E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;335E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;121E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;118E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;106E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;106E;E;S;20;{{1, 1}, {453, 117}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;46E;E;E;S;21;{{1, 118}, {453, 17}}S;19;{{0, 0}, {453, 17}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;52E;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;149E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;149E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;274E;D;K;6;CP$UIDd;3;274E;D;K;6;CP$UIDd;3;274E;D;K;6;CP$UIDd;3;149E;E;E;S;22;{{439, 112}, {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;337E;E;E;S;12;columnHeaderS;19;Courier New Bold 13S;11;placeholderD;K;10;$classnameS;17;_CPThemeAttributeK;8;$classesA;S;17;_CPThemeAttributeS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;312E;K;4;nameD;K;6;CP$UIDd;3;335E;K;12;defaultValueD;K;6;CP$UIDd;3;136E;K;6;valuesD;K;6;CP$UIDd;3;339E;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;314E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;340E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;341E;E;E;S;14;Courier New 13D;K;6;$classD;K;6;CP$UIDd;3;312E;K;4;nameD;K;6;CP$UIDd;3;335E;K;12;defaultValueD;K;6;CP$UIDd;3;136E;K;6;valuesD;K;6;CP$UIDd;3;342E;E;D;K;6;$classD;K;6;CP$UIDd;3;314E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;340E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;343E;E;E;S;15;Default IB FontD;K;6;$classD;K;6;CP$UIDd;3;312E;K;4;nameD;K;6;CP$UIDd;3;335E;K;12;defaultValueD;K;6;CP$UIDd;3;136E;K;6;valuesD;K;6;CP$UIDd;3;344E;E;D;K;6;$classD;K;6;CP$UIDd;3;314E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;340E;E;S;15;Times New Romand;2;16S;14;Lucida ConsoleD;K;6;$classD;K;6;CP$UIDd;2;93E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;83E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;345E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;345E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;83E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;267E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;268E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;269E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;232E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;116E;K;16;$aimage-positionD;K;6;CP$UIDd;3;116E;K;6;$afontD;K;6;CP$UIDd;3;136E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;106E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;116E;K;11;$aalignmentD;K;6;CP$UIDd;3;116E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;149E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;117E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;220E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;121E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;116E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;106E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;3;274E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;3;275E;K;20;CPRadioRadioGroupKeyD;K;6;CP$UIDd;3;346E;E;D;K;6;$classD;K;6;CP$UIDd;2;93E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;83E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;347E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;345E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;83E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;267E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;268E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;269E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;348E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;116E;K;16;$aimage-positionD;K;6;CP$UIDd;3;116E;K;6;$afontD;K;6;CP$UIDd;3;136E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;106E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;116E;K;11;$aalignmentD;K;6;CP$UIDd;3;149E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;106E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;117E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;223E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;121E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;116E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;106E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;3;274E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;3;275E;K;20;CPRadioRadioGroupKeyD;K;6;CP$UIDd;3;346E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;106E;E;E;S;8;PalatinoD;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;349E;E;S;10;Comic SansS;4;boldS;2;IBS;4;fontD;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;336E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;192E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;302E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;302E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;192E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;267E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;E;D;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;338E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;350E;K;6;normalD;K;6;CP$UIDd;3;350E;E;E;S;39;{"top":0,"right":5,"bottom":0,"left":5}D;K;6;$classD;K;6;CP$UIDd;3;336E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;197E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;302E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;302E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;197E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;267E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;E;D;K;6;$classD;K;6;CP$UIDd;3;338E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;350E;K;6;normalD;K;6;CP$UIDd;3;351E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;336E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;202E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;302E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;302E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;202E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;267E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;109E;E;D;K;6;$classD;K;6;CP$UIDd;3;338E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;352E;K;6;normalD;K;6;CP$UIDd;3;136E;E;E;S;19;{{0, 0}, {107, 18}}D;K;6;$classD;K;6;CP$UIDd;3;276E;K;21;CPRadioGroupRadiosKeyD;K;6;CP$UIDd;3;353E;K;28;CPRadioGroupSelectedRadioKeyD;K;6;CP$UIDd;3;327E;E;S;21;{{111, 0}, {107, 18}}S;17;disabled+borderedD;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;2;96E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;114E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;354E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;289E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;118E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;3;114E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;354E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;289E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;121E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;3;114E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;282E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;283E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;118E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;355E;E;S;11;Courier NewD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;327E;D;K;6;CP$UIDd;3;328E;E;E;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;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;1;0E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;1;0E;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;44E;D;K;6;CP$UIDd;2;45E;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;51E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;55E;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;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;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;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;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;2;83E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;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;1;0E;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;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;2;90E;D;K;6;CP$UIDd;2;91E;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;29E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;42E;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;47E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;29E;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;29E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;74E;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;92E;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;93E;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;88E;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;88E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;66E;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;88E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;31E;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;88E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;98E;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;88E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;100E;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;88E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;87E;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;88E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;47E;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;88E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;27E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;104E;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;88E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;105E;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;88E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;94E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;92E;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;3;106E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;107E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;108E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;109E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;110E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;29E;K;53;_CPCibWindowTemplateWindowAutorecalculatesKeyViewLoopD;K;6;CP$UIDd;3;111E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;113E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;113E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;114E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;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;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;116E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;117E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;119E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;K;6;$afontD;K;6;CP$UIDd;3;121E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;122E;K;11;$aalignmentD;K;6;CP$UIDd;3;123E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;111E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;124E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;125E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;126E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;126E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;126E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;128E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;122E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;123E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;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;3;112E;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;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;119E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;K;6;$afontD;K;6;CP$UIDd;3;131E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;122E;K;11;$aalignmentD;K;6;CP$UIDd;3;123E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;111E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;132E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;125E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;126E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;126E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;126E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;128E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;122E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;123E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;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;3;112E;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;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;119E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;135E;K;6;$afontD;K;6;CP$UIDd;3;136E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;122E;K;11;$aalignmentD;K;6;CP$UIDd;3;123E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;111E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;137E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;125E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;111E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;111E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;111E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;138E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;122E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;123E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;139E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;140E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;141E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;119E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;135E;K;6;$afontD;K;6;CP$UIDd;3;131E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;122E;K;11;$aalignmentD;K;6;CP$UIDd;3;123E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;111E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;137E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;125E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;111E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;111E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;111E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;138E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;122E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;123E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;132E;E;D;K;10;$classnameS;13;CPSearchFieldK;8;$classesA;S;13;CPSearchFieldS;11;CPTextFieldS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;35E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;142E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;143E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;145E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;122E;K;11;$aalignmentD;K;6;CP$UIDd;3;123E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;137E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;125E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;111E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;111E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;111E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;138E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;122E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;123E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;147E;K;27;CPSendsWholeSearchStringKeyD;K;6;CP$UIDd;3;126E;K;33;CPSendsSearchStringImmediatelyKeyD;K;6;CP$UIDd;3;126E;K;19;CPMaximumRecentsKeyD;K;6;CP$UIDd;3;148E;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;37E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;149E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;150E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;K;6;$afontD;K;6;CP$UIDd;3;152E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;112E;K;11;$aalignmentD;K;6;CP$UIDd;3;122E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;29;CPSegmentedControlSegmentsKeyD;K;6;CP$UIDd;3;153E;K;29;CPSegmentedControlSelectedKeyD;K;6;CP$UIDd;3;112E;K;33;CPSegmentedControlSegmentStyleKeyD;K;6;CP$UIDd;3;154E;K;33;CPSegmentedControlTrackingModeKeyD;K;6;CP$UIDd;3;112E;E;D;K;6;$classD;K;6;CP$UIDd;2;35E;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;3;112E;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;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;144E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;145E;K;6;$afontD;K;6;CP$UIDd;3;131E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;122E;K;11;$aalignmentD;K;6;CP$UIDd;3;123E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;137E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;125E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;111E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;111E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;111E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;138E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;122E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;123E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;132E;K;27;CPSendsWholeSearchStringKeyD;K;6;CP$UIDd;3;126E;K;33;CPSendsSearchStringImmediatelyKeyD;K;6;CP$UIDd;3;126E;K;19;CPMaximumRecentsKeyD;K;6;CP$UIDd;3;148E;E;D;K;6;$classD;K;6;CP$UIDd;2;37E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;157E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;158E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;151E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;K;6;$afontD;K;6;CP$UIDd;3;159E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;112E;K;11;$aalignmentD;K;6;CP$UIDd;3;122E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;29;CPSegmentedControlSegmentsKeyD;K;6;CP$UIDd;3;160E;K;29;CPSegmentedControlSelectedKeyD;K;6;CP$UIDd;3;112E;K;33;CPSegmentedControlSegmentStyleKeyD;K;6;CP$UIDd;3;154E;K;33;CPSegmentedControlTrackingModeKeyD;K;6;CP$UIDd;3;112E;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;41E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;161E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;162E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;163E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;164E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;166E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;3;167E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;44E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;2;45E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;168E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;168E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;168E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;168E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;111E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;126E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;111E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;169E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;122E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;3;112E;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;43E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;170E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;171E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;42E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;172E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;173E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;174E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;175E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;112E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;42E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;176E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;112E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;177E;K;18;CPScrollerStyleKeyD;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;42E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;178E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;179E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;42E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;172E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;173E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;174E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;180E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;112E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;42E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;181E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;112E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;182E;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;46E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;166E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;183E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;183E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;166E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;184E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;185E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;K;12;$agrid-colorD;K;6;CP$UIDd;3;186E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;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;187E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;188E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;112E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;112E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;126E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;111E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;111E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;111E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;111E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;189E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;186E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;3;112E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;126E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;3;191E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;2;53E;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;48E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;192E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;193E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;194E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;195E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;197E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;198E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;199E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;126E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;111E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;48E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;200E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;201E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;194E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;195E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;202E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;203E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;199E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;126E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;111E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;48E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;204E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;205E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;168E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;206E;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;199E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;126E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;111E;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;52E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;167E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;112E;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;167E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;210E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;K;29;CPTableHeaderViewTableViewKeyD;K;6;CP$UIDd;2;47E;K;33;CPTableHeaderViewDrawsColumnLinesD;K;6;CP$UIDd;3;111E;E;D;K;10;$classnameS;9;CPTabViewK;8;$classesA;S;9;CPTabViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;211E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;212E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;213E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;K;17;CPTabViewItemsKeyD;K;6;CP$UIDd;3;214E;K;24;CPTabViewSelectedItemKeyD;K;6;CP$UIDd;2;59E;K;16;CPTabViewTypeKeyD;K;6;CP$UIDd;3;112E;K;16;CPTabViewFontKeyD;K;6;CP$UIDd;3;215E;K;20;CPTabViewDelegateKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;13;CPTabViewItemK;8;$classesA;S;13;CPTabViewItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;56E;K;26;CPTabViewItemIdentifierKeyD;K;6;CP$UIDd;3;200E;K;21;CPTabViewItemLabelKeyD;K;6;CP$UIDd;3;216E;K;20;CPTabViewItemViewKeyD;K;6;CP$UIDd;2;58E;K;23;CPTabViewItemAuxViewKeyD;K;6;CP$UIDd;1;0E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;217E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;218E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;E;D;K;6;$classD;K;6;CP$UIDd;2;56E;K;26;CPTabViewItemIdentifierKeyD;K;6;CP$UIDd;3;204E;K;21;CPTabViewItemLabelKeyD;K;6;CP$UIDd;3;219E;K;20;CPTabViewItemViewKeyD;K;6;CP$UIDd;2;60E;K;23;CPTabViewItemAuxViewKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;55E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;220E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;218E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;55E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;172E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;221E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;222E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;223E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;112E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;K;17;CPTabViewItemsKeyD;K;6;CP$UIDd;3;224E;K;24;CPTabViewSelectedItemKeyD;K;6;CP$UIDd;2;64E;K;16;CPTabViewTypeKeyD;K;6;CP$UIDd;3;112E;K;16;CPTabViewFontKeyD;K;6;CP$UIDd;3;131E;K;20;CPTabViewDelegateKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;56E;K;26;CPTabViewItemIdentifierKeyD;K;6;CP$UIDd;3;200E;K;21;CPTabViewItemLabelKeyD;K;6;CP$UIDd;3;225E;K;20;CPTabViewItemViewKeyD;K;6;CP$UIDd;2;63E;K;23;CPTabViewItemAuxViewKeyD;K;6;CP$UIDd;1;0E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;226E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;227E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;E;D;K;6;$classD;K;6;CP$UIDd;2;56E;K;26;CPTabViewItemIdentifierKeyD;K;6;CP$UIDd;3;204E;K;21;CPTabViewItemLabelKeyD;K;6;CP$UIDd;3;228E;K;20;CPTabViewItemViewKeyD;K;6;CP$UIDd;2;65E;K;23;CPTabViewItemAuxViewKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;229E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;227E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;61E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;172E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;230E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;231E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;232E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;119E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;K;6;$afontD;K;6;CP$UIDd;3;131E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;122E;K;11;$aalignmentD;K;6;CP$UIDd;3;123E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;111E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;233E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;125E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;126E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;126E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;126E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;128E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;122E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;123E;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;67E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;234E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;235E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;236E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;237E;K;16;$aimage-positionD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;238E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;112E;K;11;$aalignmentD;K;6;CP$UIDd;3;122E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;154E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;239E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;137E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;126E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;240E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;112E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;111E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;112E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;112E;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;67E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;241E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;158E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;236E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;237E;K;16;$aimage-positionD;K;6;CP$UIDd;3;112E;K;6;$afontD;K;6;CP$UIDd;3;159E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;112E;K;11;$aalignmentD;K;6;CP$UIDd;3;122E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;154E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;132E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;137E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;126E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;240E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;112E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;111E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;112E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;112E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;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;70E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;242E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;243E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;244E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;245E;K;16;$aimage-positionD;K;6;CP$UIDd;3;122E;K;6;$afontD;K;6;CP$UIDd;3;246E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;112E;K;11;$aalignmentD;K;6;CP$UIDd;3;112E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;154E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;247E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;137E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;126E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;154E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;154E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;111E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;122E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;112E;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;70E;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;3;112E;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;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;244E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;245E;K;16;$aimage-positionD;K;6;CP$UIDd;3;122E;K;6;$afontD;K;6;CP$UIDd;3;131E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;112E;K;11;$aalignmentD;K;6;CP$UIDd;3;112E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;154E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;132E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;137E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;126E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;154E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;154E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;111E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;122E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;112E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;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;73E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;29E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;2;91E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;250E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;251E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;252E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;253E;K;6;$afontD;K;6;CP$UIDd;3;254E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;123E;K;11;$aalignmentD;K;6;CP$UIDd;3;112E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;112E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;1;0E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;137E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;126E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;255E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;112E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;111E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;122E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;112E;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;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;256E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;74E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;257E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;154E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;258E;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;2;74E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;257E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;258E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;260E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;74E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;257E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;258E;E;D;K;6;$classD;K;6;CP$UIDd;2;73E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;29E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;2;90E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;261E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;251E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;252E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;253E;K;6;$afontD;K;6;CP$UIDd;3;159E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;123E;K;11;$aalignmentD;K;6;CP$UIDd;3;112E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;112E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;1;0E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;137E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;126E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;255E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;112E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;111E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;122E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;112E;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;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;132E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;79E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;257E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;154E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;258E;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;2;79E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;257E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;258E;E;D;K;6;$classD;K;6;CP$UIDd;2;75E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;260E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;79E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;257E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;258E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;3;112E;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;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;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;3;112E;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;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;268E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;269E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;119E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;K;6;$afontD;K;6;CP$UIDd;3;270E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;154E;K;11;$aalignmentD;K;6;CP$UIDd;3;123E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;111E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;271E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;125E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;126E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;126E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;126E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;128E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;154E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;123E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;70E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;272E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;243E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;244E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;245E;K;16;$aimage-positionD;K;6;CP$UIDd;3;122E;K;6;$afontD;K;6;CP$UIDd;3;273E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;112E;K;11;$aalignmentD;K;6;CP$UIDd;3;112E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;154E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;274E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;137E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;126E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;154E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;154E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;111E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;122E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;112E;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;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;275E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;231E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;29E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;232E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;119E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;K;6;$afontD;K;6;CP$UIDd;3;131E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;122E;K;11;$aalignmentD;K;6;CP$UIDd;3;123E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;111E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;276E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;125E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;126E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;126E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;126E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;128E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;122E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;123E;K;31;CPTextFieldPlaceholderStringKeyD;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;277E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;89E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;278E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;279E;E;D;K;6;$classD;K;6;CP$UIDd;2;89E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;278E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;280E;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;9;fontLabelS;6;label1D;K;10;$classnameS;7;CPRadioK;8;$classesA;S;7;CPRadioS;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;97E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;83E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;281E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;281E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;83E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;282E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;283E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;284E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;253E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;122E;K;16;$aimage-positionD;K;6;CP$UIDd;3;122E;K;6;$afontD;K;6;CP$UIDd;3;285E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;112E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;122E;K;11;$aalignmentD;K;6;CP$UIDd;3;112E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;112E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;286E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;126E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;154E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;154E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;111E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;122E;K;24;CPButtonKeyEquivalentKeyD;K;6;CP$UIDd;3;287E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;288E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;3;289E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;3;290E;K;20;CPRadioRadioGroupKeyD;K;6;CP$UIDd;3;292E;E;S;6;radio1D;K;6;$classD;K;6;CP$UIDd;2;97E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;83E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;293E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;281E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;83E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;282E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;283E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;284E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;237E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;122E;K;16;$aimage-positionD;K;6;CP$UIDd;3;122E;K;6;$afontD;K;6;CP$UIDd;3;285E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;112E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;122E;K;11;$aalignmentD;K;6;CP$UIDd;3;112E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;154E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;294E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;126E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;154E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;154E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;111E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;122E;K;24;CPButtonKeyEquivalentKeyD;K;6;CP$UIDd;3;295E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;258E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;3;289E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;3;290E;K;20;CPRadioRadioGroupKeyD;K;6;CP$UIDd;3;292E;E;S;6;radio2S;15;systemFontLabelS;12;theTableViewS;9;theWindowS;10;dataSourceS;32;{10000000000000, 10000000000000}S;8;CPWindowS;23;{{148, 80}, {612, 685}}d;1;7S;21;Font Enhancement TestT;d;1;0S;20;{{0, 0}, {612, 685}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;61E;E;E;S;6;normalS;21;{{29, 82}, {221, 28}}S;19;{{0, 0}, {221, 28}}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;120E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;296E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;282E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;111E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;111E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;126E;E;d;1;2d;1;4S;22;Georgia bold italic 18d;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;127E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;297E;E;S;21;{{29, 117}, {79, 17}}S;18;{{0, 0}, {79, 17}}D;K;6;$classD;K;6;CP$UIDd;3;120E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;298E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;299E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;111E;E;S;11;System fontS;22;{{26, 189}, {210, 32}}S;19;{{0, 0}, {210, 32}}S;19;bezeled+placeholderD;K;6;$classD;K;6;CP$UIDd;3;120E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;300E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;240E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;126E;E;S;0;D;K;6;$classD;K;6;CP$UIDd;3;127E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;301E;E;S;15;Trebuchet MS 14S;22;{{26, 225}, {210, 29}}S;19;{{0, 0}, {210, 29}}S;22;{{26, 269}, {211, 30}}S;19;{{0, 0}, {211, 30}}S;11;searchfieldS;27;bezeled+rounded+placeholderD;K;6;$classD;K;6;CP$UIDd;3;120E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;302E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;255E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;126E;E;S;10;Verdana 12d;3;254S;22;{{26, 365}, {182, 24}}S;19;{{0, 0}, {182, 24}}S;17;segmented-controlD;K;6;$classD;K;6;CP$UIDd;3;120E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;303E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;304E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;111E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;126E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;306E;D;K;6;CP$UIDd;3;307E;D;K;6;CP$UIDd;3;308E;E;E;d;1;1S;22;{{26, 301}, {210, 30}}S;19;{{0, 0}, {210, 30}}S;22;{{26, 400}, {118, 24}}S;19;{{0, 0}, {118, 24}}D;K;6;$classD;K;6;CP$UIDd;3;120E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;298E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;299E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;111E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;309E;D;K;6;CP$UIDd;3;310E;E;E;S;22;{{32, 470}, {455, 85}}S;19;{{0, 0}, {455, 85}}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;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;169E;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;165E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;311E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;183E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;312E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;42E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;172E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;184E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;47E;E;D;K;6;$classD;K;6;CP$UIDd;3;165E;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;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;313E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;314E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;315E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;42E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;172E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;184E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;53E;E;d;2;10D;K;6;$classD;K;6;CP$UIDd;2;28E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;42E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;316E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;316E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;42E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;E;S;23;{{439, -49}, {15, 117}}S;19;{{0, 0}, {15, 117}}d;1;8d;11;-2147483648S;8;scrollerS;17;disabled+verticalS;27;_verticalScrollerDidScroll:f;18;0.8717948717948718S;24;{{-100, 170}, {426, 15}}S;19;{{0, 0}, {426, 15}}S;8;disabledS;29;_horizontalScrollerDidScroll:f;18;0.9906976744186047S;19;{{0, 0}, {453, 67}}D;K;6;$classD;K;6;CP$UIDd;3;127E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;317E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;3;127E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;318E;E;d;2;23S;6;{3, 2}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;50E;D;K;6;CP$UIDd;2;51E;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;190E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;112E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;319E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;320E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;321E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;E;S;1;0d;3;137d;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;196E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;316E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;316E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;322E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;323E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;112E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;324E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;325E;E;D;K;6;$classD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;316E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;316E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;119E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;326E;K;6;$afontD;K;6;CP$UIDd;3;328E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;123E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;122E;K;11;$aalignmentD;K;6;CP$UIDd;3;112E;K;15;$acontent-insetD;K;6;CP$UIDd;3;330E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;137E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;125E;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;123E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;112E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;137E;E;d;1;3S;1;1d;3;131D;K;6;$classD;K;6;CP$UIDd;3;196E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;316E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;316E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;331E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;323E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;112E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;332E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;325E;E;D;K;6;$classD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;316E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;316E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;119E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;326E;K;6;$afontD;K;6;CP$UIDd;3;333E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;123E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;122E;K;11;$aalignmentD;K;6;CP$UIDd;3;112E;K;15;$acontent-insetD;K;6;CP$UIDd;3;334E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;137E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;125E;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;123E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;112E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;137E;E;S;1;2d;3;125f;22;3.4028234663852886e+38D;K;6;$classD;K;6;CP$UIDd;3;196E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;316E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;316E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;335E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;323E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;112E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;336E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;325E;E;D;K;6;$classD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;316E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;316E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;119E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;326E;K;6;$afontD;K;6;CP$UIDd;3;337E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;123E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;122E;K;11;$aalignmentD;K;6;CP$UIDd;3;112E;K;15;$acontent-insetD;K;6;CP$UIDd;3;338E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;137E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;125E;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;123E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;112E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;137E;E;S;19;{{0, 0}, {453, 23}}S;14;tableHeaderRowS;22;{{25, 574}, {257, 85}}S;19;{{0, 0}, {257, 85}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;60E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;59E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;120E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;216E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;304E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;111E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;126E;E;S;6;ImpactS;21;{{10, 33}, {237, 39}}S;19;{{0, 0}, {237, 39}}S;2;13S;21;{{10, 13}, {237, 39}}S;23;{{322, 574}, {266, 85}}S;19;{{0, 0}, {266, 85}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;65E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;64E;E;E;S;6;SystemS;21;{{10, 33}, {246, 39}}S;19;{{0, 0}, {246, 39}}S;4;fontS;21;{{10, 13}, {246, 39}}S;21;{{29, 41}, {578, 17}}S;19;{{0, 0}, {578, 17}}d;2;34S;45;View font: S;22;{{361, 85}, {168, 24}}S;19;{{0, 0}, {168, 24}}S;6;buttonS;17;selected+borderedD;K;6;$classD;K;6;CP$UIDd;3;120E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;300E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;240E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;111E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;126E;E;S;20;Trebuchet MS Bold 14d;2;14S;23;{{361, 122}, {118, 24}}S;23;{{361, 207}, {213, 18}}S;19;{{0, 0}, {213, 18}}S;9;check-boxS;8;selectedD;K;6;$classD;K;6;CP$UIDd;3;120E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;339E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;340E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;111E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;126E;E;S;25;Times New Roman italic 16S;22;{{361, 174}, {97, 18}}S;18;{{0, 0}, {97, 18}}S;23;{{361, 281}, {198, 24}}S;19;{{0, 0}, {198, 24}}S;12;popup-buttonS;8;borderedD;K;6;$classD;K;6;CP$UIDd;3;120E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;341E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;304E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;126E;E;d;2;12S;17;Lucida Console 13S;17;_popUpItemAction:d;7;1048576S;6;Item 2S;6;Item 3S;23;{{361, 318}, {198, 24}}S;23;{{363, 370}, {218, 20}}S;19;{{0, 0}, {218, 20}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;3;100E;E;E;S;23;{{363, 404}, {218, 18}}S;19;{{0, 0}, {218, 18}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;342E;D;K;6;CP$UIDd;3;343E;E;E;S;22;{{29, 142}, {208, 22}}S;19;{{0, 0}, {208, 22}}D;K;6;$classD;K;6;CP$UIDd;3;120E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;298E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;282E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;111E;E;S;14;System font 18S;23;{{361, 239}, {213, 18}}D;K;6;$classD;K;6;CP$UIDd;3;120E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;344E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;304E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;126E;E;S;9;Ubuntu 13S;21;{{29, 16}, {578, 17}}S;13;System font: S;13;AppControllerS;10;OtherViewsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;E;E;S;19;{{0, 0}, {107, 20}}d;2;18D;K;6;$classD;K;6;CP$UIDd;3;127E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;345E;E;S;5;radioD;K;6;$classD;K;6;CP$UIDd;3;120E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;346E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;240E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;126E;E;S;11;Palatino orS;4;cAA=d;7;1572864f;3;0.5f;4;0.05D;K;10;$classnameS;12;CPRadioGroupK;8;$classesA;S;12;CPRadioGroupS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;291E;K;21;CPRadioGroupRadiosKeyD;K;6;CP$UIDd;3;347E;K;28;CPRadioGroupSelectedRadioKeyD;K;6;CP$UIDd;3;100E;E;S;21;{{111, 0}, {107, 20}}S;10;Cambria 14S;4;QwA=S;7;GeorgiaD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;348E;D;K;6;CP$UIDd;3;348E;D;K;6;CP$UIDd;3;348E;D;K;6;CP$UIDd;3;154E;E;E;S;28;_CPFontSystemFacePlaceholderd;2;-1S;12;Trebuchet MSD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;154E;E;E;S;7;VerdanaS;13;Comic Sans MSd;2;13D;K;10;$classnameS;14;_CPSegmentItemK;8;$classesA;S;14;_CPSegmentItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;305E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;349E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;111E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;111E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;112E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;112E;E;D;K;6;$classD;K;6;CP$UIDd;3;305E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;350E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;126E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;111E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;154E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;112E;E;D;K;6;$classD;K;6;CP$UIDd;3;305E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;219E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;126E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;111E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;112E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;112E;E;D;K;6;$classD;K;6;CP$UIDd;3;305E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;225E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;111E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;111E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;112E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;112E;E;D;K;6;$classD;K;6;CP$UIDd;3;305E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;228E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;3;126E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;3;111E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;154E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;3;112E;E;S;19;{{1, 1}, {453, 67}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;47E;E;E;S;20;{{1, 68}, {453, 17}}S;19;{{0, 0}, {453, 17}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;53E;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;154E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;154E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;351E;D;K;6;CP$UIDd;3;351E;D;K;6;CP$UIDd;3;351E;D;K;6;CP$UIDd;3;154E;E;E;S;20;{{439, 0}, {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;353E;E;E;S;12;columnHeaderS;19;Courier New Bold 13D;K;6;$classD;K;6;CP$UIDd;3;120E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;298E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;255E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;111E;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;327E;K;4;nameD;K;6;CP$UIDd;3;228E;K;12;defaultValueD;K;6;CP$UIDd;3;325E;K;6;valuesD;K;6;CP$UIDd;3;355E;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;329E;K;15;CPValueValueKeyD;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;357E;E;E;S;14;Courier New 13D;K;6;$classD;K;6;CP$UIDd;3;327E;K;4;nameD;K;6;CP$UIDd;3;228E;K;12;defaultValueD;K;6;CP$UIDd;3;325E;K;6;valuesD;K;6;CP$UIDd;3;358E;E;D;K;6;$classD;K;6;CP$UIDd;3;329E;K;15;CPValueValueKeyD;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;359E;E;E;S;11;System FontD;K;6;$classD;K;6;CP$UIDd;3;327E;K;4;nameD;K;6;CP$UIDd;3;228E;K;12;defaultValueD;K;6;CP$UIDd;3;325E;K;6;valuesD;K;6;CP$UIDd;3;360E;E;D;K;6;$classD;K;6;CP$UIDd;3;329E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;356E;E;S;15;Times New Romand;2;16S;14;Lucida ConsoleD;K;6;$classD;K;6;CP$UIDd;2;97E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;84E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;361E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;361E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;84E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;282E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;283E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;284E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;237E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;122E;K;16;$aimage-positionD;K;6;CP$UIDd;3;122E;K;6;$afontD;K;6;CP$UIDd;3;131E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;112E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;122E;K;11;$aalignmentD;K;6;CP$UIDd;3;112E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;154E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;225E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;126E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;154E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;154E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;111E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;122E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;112E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;3;289E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;3;290E;K;20;CPRadioRadioGroupKeyD;K;6;CP$UIDd;3;362E;E;D;K;6;$classD;K;6;CP$UIDd;2;97E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;84E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;363E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;361E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;84E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;282E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;283E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;284E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;364E;K;15;$aimage-scalingD;K;6;CP$UIDd;3;122E;K;16;$aimage-positionD;K;6;CP$UIDd;3;122E;K;6;$afontD;K;6;CP$UIDd;3;131E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;112E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;122E;K;11;$aalignmentD;K;6;CP$UIDd;3;112E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;112E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;123E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;228E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;126E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;154E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;154E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;111E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;122E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;112E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;3;289E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;3;290E;K;20;CPRadioRadioGroupKeyD;K;6;CP$UIDd;3;362E;E;S;6;UbuntuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;112E;E;E;S;8;PalatinoD;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;365E;E;f;18;0.6862745098039216S;10;Comic SansS;4;boldf;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;352E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;197E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;316E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;316E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;197E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;282E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;E;D;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;354E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;366E;K;6;normalD;K;6;CP$UIDd;3;366E;E;E;S;39;{"top":0,"right":5,"bottom":0,"left":5}D;K;6;$classD;K;6;CP$UIDd;3;352E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;202E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;316E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;316E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;202E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;282E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;E;D;K;6;$classD;K;6;CP$UIDd;3;354E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;366E;K;6;normalD;K;6;CP$UIDd;3;367E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;352E;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;316E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;316E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;207E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;282E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;115E;E;D;K;6;$classD;K;6;CP$UIDd;3;354E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;368E;K;6;normalD;K;6;CP$UIDd;3;325E;E;E;S;19;{{0, 0}, {107, 18}}D;K;6;$classD;K;6;CP$UIDd;3;291E;K;21;CPRadioGroupRadiosKeyD;K;6;CP$UIDd;3;369E;K;28;CPRadioGroupSelectedRadioKeyD;K;6;CP$UIDd;3;342E;E;S;21;{{111, 0}, {107, 18}}S;17;disabled+borderedD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;3;100E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;120E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;370E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;304E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;111E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;126E;E;D;K;6;$classD;K;6;CP$UIDd;3;120E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;370E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;304E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;126E;E;D;K;6;$classD;K;6;CP$UIDd;3;120E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;344E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;255E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;111E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;126E;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;371E;E;S;11;Courier NewD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;342E;D;K;6;CP$UIDd;3;343E;E;E;E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Tests/Manual/FontEnhancementTest/Resources/MainMenu.xib b/Tests/Manual/FontEnhancementTest/Resources/MainMenu.xib index 84e7e776a..6bea1776e 100644 --- a/Tests/Manual/FontEnhancementTest/Resources/MainMenu.xib +++ b/Tests/Manual/FontEnhancementTest/Resources/MainMenu.xib @@ -1,900 +1,979 @@ - - 1050 - 10J869 - 804 - 1038.35 - 461.00 - - com.apple.InterfaceBuilder.CocoaPlugin - 804 - - - YES - - - - YES - com.apple.InterfaceBuilder.CocoaPlugin - - - PluginDependencyRecalculationVersion - - - - YES - - NSApplication - - - FirstResponder - - - NSApplication - - - 7 - 2 - {{256, 694}, {612, 664}} - 1946157056 - Font Enhancement Test - NSWindow - - {1.79769e+308, 1.79769e+308} - - - 256 - - YES - - - 268 - {{29, 588}, {221, 26}} - - YES - - 68288064 - 272630784 - Georgia bold italic 18 - - Georgia-BoldItalic - 18 - 16 - - - - 6 - System - controlColor - - 3 - MC42NjY2NjY2NjY3AA - - - - 6 - System - controlTextColor - - 3 - MAA - - - - - - - 266 - {{29, 633}, {578, 17}} - - YES - - 68288064 - 272630784 - View font: <roll over a view to see its font> - - LucidaGrande - 13 - 16 - - - - - - - - - 268 - {{29, 563}, {95, 17}} - - YES - - 68288064 - 272630784 - Default IB font - - LucidaGrande - 13 - 1044 - - - - - - - - - 268 - {{363, 584}, {168, 25}} - - YES - - -2080244224 - 134217728 - Trebuchet MS Bold 14 - - TrebuchetMS-Bold - 14 - 16 - - - -2038152961 - 163 - - - 400 - 75 - - - - - 268 - {{363, 547}, {118, 25}} - - YES - - -2080244224 - 134217728 - Default IB font - - - -2038152961 - 163 - - - 400 - 75 - - - - - 268 - - YES - - - 2304 - - YES - - - 256 - {453, 117} - - YES - - - 256 - {453, 17} - - - - - - -2147483392 - {{439, 0}, {16, 17}} - - - - YES - - 0 - 137 - 40 - 1000 - - 75628096 - 2048 - Courier New Bold 13 - - LucidaGrande - 11 - 3100 - - - 3 - MC4zMzMzMzI5ODU2AA - - - 6 - System - headerTextColor - - - - - 337772096 - 2048 - Text Cell - - CourierNewPS-BoldMT - 13 - 16 - - - - 6 - System - controlBackgroundColor - - - - - 3 - YES - YES - - - - 1 - 131 - 40 - 1000 - - 75628096 - 2048 - Courier New 13 - - - - - - 337772096 - 2048 - Text Cell - - CourierNewPSMT - 13 - 16 - - - - - - 3 - YES - YES - - - - 2 - 125 - 10 - 3.4028234663852886e+38 - - 75628096 - 2048 - Default IB Font - - - 6 - System - headerColor - - 3 - MQA - - - - - - 337772096 - 2048 - Text Cell - - - - - - 3 - YES - YES - - - - 3 - 2 - - - 6 - System - gridColor - - 3 - MC41AA - - - 17 - -702545920 - - - 0 - 15 - 0 - YES - 0 - - - {{1, 17}, {453, 117}} - - - - - 4 - - - - -2147483392 - {{439, 17}, {15, 117}} - - - _doScroller: - 0.87179487179487181 - - - - -2147483392 - {{-100, -100}, {426, 15}} - - 1 - - _doScroller: - 0.99069767441860468 - - - - 2304 - - YES - - - {{1, 0}, {453, 17}} - - - - - 4 - - - - {{32, 124}, {455, 135}} - - - 530 - - - - - - QSAAAEEgAABBmAAAQZgAAA - - - - 268 - {{32, 512}, {202, 25}} - - YES - - -1804468671 - 272630784 - - - TrebuchetMS - 14 - 16 - - Trebuchet MS 14 - - YES - - 6 - System - textBackgroundColor - - - - 6 - System - textColor - - - - - - - 268 - {{32, 479}, {202, 22}} - - YES - - -1804468671 - 272630784 - - - Default IB font - - YES - - - - - - - 268 - {{32, 428}, {203, 22}} - - YES - - 343014976 - 268436544 - - - Verdana - 12 - 16 - - Verdana 12 - - YES - 1 - - - - 130560 - 0 - search - - _searchFieldSearch: - - 138690815 - 0 - - 400 - 75 - - - 130560 - 0 - clear - - YES - - YES - - YES - AXDescription - NSAccessibilityEncodedAttributesValueType - - - YES - cancel - - - - - - _searchFieldCancel: - - 138690815 - 0 - - 400 - 75 - - 255 - - - - - 268 - {{32, 396}, {202, 22}} - - YES - - 343014976 - 268436544 - - - Default IB font - - YES - 1 - - - - 130560 - 0 - search - - _searchFieldSearch: - - 138690815 - 0 - - 400 - 75 - - - 130560 - 0 - clear - - YES - - YES - - YES - AXDescription - NSAccessibilityEncodedAttributesValueType - - - YES - cancel - - - - - - _searchFieldCancel: - - 138690815 - 0 - - 400 - 75 - - 255 - - - - - 268 - {{361, 500}, {213, 18}} - - YES - - -2080244224 - 0 - Times New Roman italic 16 - - TimesNewRomanPS-ItalicMT - 16 - 16 - - - 1211912703 - 2 - - NSImage - NSSwitch - - - NSSwitch - - - - 200 - 25 - - - - - 268 - {{361, 468}, {113, 18}} - - YES - - -2080244224 - 0 - Default IB font - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{360, 413}, {204, 26}} - - YES - - -2076049856 - 2048 - - LucidaConsole - 13 - 16 - - - 109199615 - 129 - - - 400 - 75 - - - Lucida Console 13 - - 1048576 - 2147483647 - 1 - - NSImage - NSMenuCheckmark - - - NSImage - NSMenuMixedState - - _popUpItemAction: - - - YES - - OtherViews - - YES - - - - Item 2 - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - Item 3 - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - - 1 - YES - YES - 2 - - - - - 268 - {{360, 376}, {204, 26}} - - YES - - -2076049856 - 2048 - - - 109199615 - 129 - - - 400 - 75 - - - Default IB font - - 1048576 - 2147483647 - 1 - - - _popUpItemAction: - - - YES - - OtherViews - - YES - - - - Item 2 - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - Item 3 - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - - 1 - YES - YES - 2 - - - - - 268 - {{30, 345}, {182, 24}} - - YES - - -2080244224 - 0 - - ComicSansMS-Bold - 13 - 16 - - - - YES - - Comic Sans - YES - 0 - - - bold - 1 - 0 - - - 13 - 0 - - - 1 - - - - - 268 - {{30, 310}, {152, 24}} - - YES - - 67239424 - 0 - - - - YES - - Default - YES - 0 - - - IB - 1 - 0 - - - font - 0 - - - 1 - - - - - 268 - {{363, 325}, {218, 20}} - - YES - 1 - 2 - - YES - - 67239424 - 0 - Palatino or - - Palatino-Roman - 14 - 16 - - - 1 - 1211912703 - 402653184 - - NSRadioButton - - - p - 200 - 25 - - - -2080244224 - 33554432 - Cambria 14 - - - 1211912703 - 268435456 - - C - 400 - 75 - - - {107, 20} - {4, 2} - 1151868928 - NSActionCell - - 67239424 - 0 - Radio - - 1211912703 - 0 - - 549453824 - {18, 18} - - YES - - YES - - - - TU0AKgAABRgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAAAAAAA + + 1050 + 11E53 + 851 + 1138.47 + 569.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 851 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + YES + + NSApplication + + + FirstResponder + + + NSApplication + + + 7 + 2 + {{148, 653}, {612, 685}} + 1946159104 + Font Enhancement Test + NSWindow + + + {1.7976931348623157e+308, 1.7976931348623157e+308} + + + 256 + + YES + + + 268 + {{29, 576}, {221, 26}} + + + YES + + 68288064 + 272630784 + Georgia bold italic 18 + + Georgia-BoldItalic + 18 + 16 + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 266 + {{29, 627}, {578, 17}} + + + YES + + 68288064 + 272630784 + View font: <roll over a view to see its font> + + LucidaGrande + 13 + 16 + + + + + + + + + 266 + {{29, 652}, {578, 17}} + + YES + + 68288064 + 272630784 + System font: + + + + + + + + + 268 + {{29, 551}, {79, 17}} + + + YES + + 68288064 + 272630784 + System font + + LucidaGrande + 13 + 1040 + + + + + + + + + 268 + {{29, 521}, {208, 22}} + + + YES + + 67239424 + 272630272 + System font 18 + + LucidaGrande + 18 + 16 + + + + + + + + + 268 + {{363, 574}, {168, 25}} + + + YES + + -2080244224 + 134217728 + Trebuchet MS Bold 14 + + TrebuchetMS-Bold + 14 + 16 + + + -2038152961 + 163 + + + 400 + 75 + + + + + 268 + {{363, 537}, {118, 25}} + + + YES + + -2080244224 + 134217728 + System font + + + -2038152961 + 163 + + + 400 + 75 + + + + + 268 + + YES + + + 2304 + + YES + + + 256 + {453, 67} + + + YES + + + 256 + {453, 17} + + + + + + + -2147483392 + {{439, 0}, {16, 17}} + + + YES + + 0 + 137 + 40 + 1000 + + 75628096 + 2048 + Courier New Bold 13 + + LucidaGrande + 11 + 3088 + + + 3 + MC4zMzMzMzI5ODU2AA + + + 6 + System + headerTextColor + + + + + 337772096 + 2048 + Text Cell + + CourierNewPS-BoldMT + 13 + 16 + + + + 6 + System + controlBackgroundColor + + + + + 3 + YES + YES + + + + 1 + 131 + 40 + 1000 + + 75628096 + 2048 + Courier New 13 + + + + + + 337772096 + 2048 + Text Cell + + CourierNewPSMT + 13 + 16 + + + + + + 3 + YES + YES + + + + 2 + 125 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + System Font + + + 6 + System + headerColor + + 3 + MQA + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 3 + 2 + + + 6 + System + gridColor + + 3 + MC41AA + + + 17 + -702545920 + + + 0 + 15 + 0 + YES + 0 + 1 + + + {{1, 17}, {453, 67}} + + + + + 4 + + + + -2147483392 + {{439, 17}, {15, 117}} + + + + _doScroller: + 0.87179487179487181 + + + + -2147483392 + {{-100, -100}, {426, 15}} + + + 1 + + _doScroller: + 0.99069767441860468 + + + + 2304 + + YES + + + {{1, 0}, {453, 17}} + + + + + 4 + + + {{32, 130}, {455, 85}} + + + 133650 + + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 268 + {{32, 467}, {202, 25}} + + + YES + + -1804468671 + 272630784 + + + TrebuchetMS + 14 + 16 + + Trebuchet MS 14 + + YES + + 6 + System + textBackgroundColor + + + + 6 + System + textColor + + + + + + + 268 + {{32, 434}, {202, 22}} + + + YES + + -1804468671 + 272630784 + + + System font + + YES + + + + + + + 268 + {{32, 389}, {203, 22}} + + + YES + + 343014976 + 268436544 + + + Verdana + 12 + 16 + + Verdana 12 + + YES + 1 + + + + 130560 + 0 + search + + _searchFieldSearch: + + 138690815 + 0 + + 400 + 75 + + + 130560 + 0 + clear + + YES + + YES + + YES + AXDescription + NSAccessibilityEncodedAttributesValueType + + + YES + cancel + + + + + + _searchFieldCancel: + + 138690815 + 0 + + 400 + 75 + + 255 + + + + + 268 + {{32, 357}, {202, 22}} + + + YES + + 343014976 + 268436544 + + + System font + + YES + 1 + + + + 130560 + 0 + search + + _searchFieldSearch: + + 138690815 + 0 + + 400 + 75 + + + 130560 + 0 + clear + + YES + + YES + + YES + AXDescription + NSAccessibilityEncodedAttributesValueType + + + YES + cancel + + + + + + _searchFieldCancel: + + 138690815 + 0 + + 400 + 75 + + 255 + + + + + 268 + {{361, 460}, {213, 18}} + + + YES + + -2080244224 + 0 + Times New Roman italic 16 + + TimesNewRomanPS-ItalicMT + 16 + 16 + + + 1211912703 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + + + + 268 + {{361, 428}, {213, 18}} + + + YES + + -2080244224 + 0 + Ubuntu 13 + + Ubuntu-Regular + 13 + 16 + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{361, 493}, {97, 18}} + + + YES + + -2080244224 + 0 + System font + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{360, 378}, {204, 26}} + + + YES + + -2076049856 + 2048 + + LucidaConsole + 13 + 16 + + + 109199615 + 129 + + + 400 + 75 + + + Lucida Console 13 + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{360, 341}, {204, 26}} + + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + System font + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{30, 296}, {182, 24}} + + + YES + + -2080244224 + 0 + + ComicSansMS-Bold + 13 + 16 + + + + YES + + Comic Sans + YES + 0 + + + bold + 1 + 0 + + + 13 + 0 + + + 1 + + + + + 268 + {{30, 261}, {118, 24}} + + + YES + + 67239424 + 0 + + + + YES + + System + YES + 0 + + + font + 1 + 0 + + + 1 + + + + + 268 + {{363, 295}, {218, 20}} + + + YES + 1 + 2 + + YES + + 67239424 + 0 + Palatino or + + Palatino-Roman + 14 + 16 + + + 1 + 1211912703 + 402653184 + + NSRadioButton + + + p + 200 + 25 + + + -2080244224 + 33554432 + Cambria 14 + + + 1211912703 + 268435456 + + C + 400 + 75 + + + {107, 20} + {4, 2} + 1151868928 + NSActionCell + + 67239424 + 0 + Radio + + 1211912703 + 0 + + 549453824 + {18, 18} + + YES + + YES + + + + TU0AKgAABRgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAADwRERGLJycnySsrK/A1NTXw IyMjyRwcHIsJCQk8AAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFFRUVdVBQUOCoqKj/ 29vb//n5+f/6+vr/2tra/6qqqv9UVFTgHx8fdQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUZGRl5 @@ -919,85 +998,86 @@ AAAAAwAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQEAAAMAAAABABIAAAEB AAMAAAABABIAAAECAAMAAAAEAAAFugEDAAMAAAABAAEAAAEGAAMAAAABAAIAAAERAAQAAAABAAAACAES AAMAAAABAAEAAAEVAAMAAAABAAQAAAEWAAMAAAABABIAAAEXAAQAAAABAAAFEAEcAAMAAAABAAEAAAFS AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA - - - - - - 3 - MCAwAA - - - - 400 - 75 - - 1 - - - - - - - - 268 - {{363, 293}, {218, 18}} - - YES - 1 - 2 - - YES - - -2080244224 - 134217728 - Default - - - 1 - 1211912703 - 0 - - - - 200 - 25 - - - 604110336 - 67108864 - IB font - - - 1211912703 - 0 - - 400 - 75 - - - {107, 18} - {4, 2} - 1151868928 - NSActionCell - - 67239424 - 0 - Radio - - 1211912703 - 0 - - 549453824 - {18, 18} - - YES - - YES - - - - TU0AKgAABRgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAAAAAAA + + + + + + 3 + MCAwAA + + + + 400 + 75 + + 1 + + + + + + + + 268 + {{363, 263}, {218, 18}} + + + YES + 1 + 2 + + YES + + -2080244224 + 0 + System + + + 1 + 1211912703 + 0 + + + + 200 + 25 + + + 604110336 + 0 + font + + + 1211912703 + 0 + + 400 + 75 + + + {107, 18} + {4, 2} + 1151868928 + NSActionCell + + 67239424 + 0 + Radio + + 1211912703 + 0 + + 549453824 + {18, 18} + + YES + + YES + + + + TU0AKgAABRgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAADwRERGLJycnySsrK/A1NTXw IyMjyRwcHIsJCQk8AAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFFRUVdVBQUOCoqKj/ 29vb//n5+f/6+vr/2tra/6qqqv9UVFTgHx8fdQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUZGRl5 @@ -1022,1098 +1102,1118 @@ AAAAAwAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQEAAAMAAAABABIAAAEB AAMAAAABABIAAAECAAMAAAAEAAAFugEDAAMAAAABAAEAAAEGAAMAAAABAAIAAAERAAQAAAABAAAACAES AAMAAAABAAEAAAEVAAMAAAABAAQAAAEWAAMAAAABABIAAAEXAAQAAAABAAAFEAEcAAMAAAABAAEAAAFS AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA - - - - - - - - 400 - 75 - - - - - - - - - 12 - {{25, 15}, {257, 85}} - - - YES - - 1 - - - 256 - {{10, 33}, {237, 39}} - - Impact - - - - - 2 - - - 256 - {{10, 33}, {237, 39}} - - - 13 - - - - - - - Impact - 13 - 16 - - 0 - YES - - YES - - - - - - 12 - {{322, 15}, {266, 85}} - - - YES - - 1 - - - 256 - {{10, 33}, {246, 39}} - - - Default - - - - - 2 - - - 256 - {{10, 33}, {246, 39}} - - IB font - - - - - - - LucidaGrande-Bold - 13 - 16 - - 0 - YES - - YES - - - - - {612, 664} - - - {{0, 0}, {2560, 1418}} - {1.79769e+308, 1.79769e+308} - - - AppController - - - - - YES - - - delegate - - - - 451 - - - - theWindow - - - - 459 - - - - label1 - - - - 462 - - - - fontLabel - - - - 465 - - - - theTableView - - - - 491 - - - - dataSource - - - - 514 - - - - delegate - - - - 515 - - - - radio1 - - - - 581 - - - - radio2 - - - - 582 - - - - - YES - - 0 - - YES - - - - - - -2 - - - File's Owner - - - -1 - - - First Responder - - - -3 - - - Application - - - 371 - - - YES - - - - - - 372 - - - YES - - - - - - - - - - - - - - - - - - - - - - - - - 450 - - - - - 460 - - - YES - - - - - - 461 - - - - - 463 - - - YES - - - - - - 464 - - - - - 468 - - - YES - - - - - - 469 - - - - - 474 - - - YES - - - - - - 475 - - - - - 476 - - - YES - - - - - - 477 - - - - - 478 - - - YES - - - - - - - - - 479 - - - - - 480 - - - - - 481 - - - YES - - - - - - - - 482 - - - - - 483 - - - YES - - - - - - 484 - - - YES - - - - - - 485 - - - - - 486 - - - - - 492 - - - YES - - - - - - 493 - - - - - 516 - - - YES - - - - - - 517 - - - - - 518 - - - YES - - - - - - 519 - - - - - 520 - - - YES - - - - - - 521 - - - - - 522 - - - YES - - - - - - 523 - - - - - 528 - - - YES - - - - - - 529 - - - - - 530 - - - YES - - - - - - 531 - - - - - 532 - - - YES - - - - - - 533 - - - YES - - - - - - 534 - - - YES - - - - - - - - 535 - - - - - 536 - - - - - 537 - - - - - 538 - - - YES - - - - - - 539 - - - YES - - - - - - 540 - - - YES - - - - - - - - 541 - - - - - 542 - - - - - 543 - - - - - 544 - - - YES - - - - - - 545 - - - - - 546 - - - YES - - - - - - 547 - - - - - 548 - - - YES - - - - - - - - 549 - - - - - 551 - - - - - 552 - - - - - 558 - - - YES - - - - - - - - 560 - - - - - 561 - - - - - 562 - - - - - 563 - - - YES - - - - - - - 564 - - - YES - - - - - - 565 - - - YES - - - - - - 566 - - - - - 567 - - - - - 573 - - - YES - - - - - - - 574 - - - YES - - - - - - 575 - - - YES - - - - - - 576 - - - - - 577 - - - - - - - YES - - YES - -3.IBPluginDependency - 371.IBEditorWindowLastContentRect - 371.IBPluginDependency - 371.IBWindowTemplateEditedContentRect - 371.NSWindowTemplate.visibleAtLaunch - 371.editorWindowContentRectSynchronizationRect - 371.windowTemplate.maxSize - 372.IBPluginDependency - 460.IBPluginDependency - 460.IBViewBoundsToFrameTransform - 461.IBPluginDependency - 463.IBPluginDependency - 463.IBViewBoundsToFrameTransform - 464.IBPluginDependency - 468.IBPluginDependency - 468.IBViewBoundsToFrameTransform - 469.IBPluginDependency - 474.IBPluginDependency - 474.IBViewBoundsToFrameTransform - 475.IBPluginDependency - 476.IBPluginDependency - 476.IBViewBoundsToFrameTransform - 477.IBPluginDependency - 478.IBPluginDependency - 478.IBViewBoundsToFrameTransform - 479.IBPluginDependency - 480.IBPluginDependency - 481.IBPluginDependency - 482.IBPluginDependency - 483.IBPluginDependency - 484.IBPluginDependency - 485.IBPluginDependency - 486.IBPluginDependency - 516.IBPluginDependency - 516.IBViewBoundsToFrameTransform - 517.IBPluginDependency - 518.IBPluginDependency - 518.IBViewBoundsToFrameTransform - 519.IBPluginDependency - 520.IBPluginDependency - 520.IBViewBoundsToFrameTransform - 521.IBPluginDependency - 522.IBPluginDependency - 522.IBViewBoundsToFrameTransform - 523.IBPluginDependency - 528.IBPluginDependency - 528.IBViewBoundsToFrameTransform - 529.IBPluginDependency - 530.IBPluginDependency - 530.IBViewBoundsToFrameTransform - 531.IBPluginDependency - 532.IBPluginDependency - 532.IBViewBoundsToFrameTransform - 533.IBPluginDependency - 534.IBEditorWindowLastContentRect - 534.IBPluginDependency - 535.IBPluginDependency - 536.IBPluginDependency - 537.IBPluginDependency - 538.IBPluginDependency - 538.IBViewBoundsToFrameTransform - 539.IBPluginDependency - 540.IBPluginDependency - 541.IBPluginDependency - 542.IBPluginDependency - 543.IBPluginDependency - 544.IBPluginDependency - 544.IBSegmentedControlTracker.RoundRobinState - 544.IBSegmentedControlTracker.WasGrowing - 544.IBViewBoundsToFrameTransform - 545.IBPluginDependency - 546.IBPluginDependency - 546.IBViewBoundsToFrameTransform - 547.IBPluginDependency - 548.IBPluginDependency - 548.IBViewBoundsToFrameTransform - 549.IBPluginDependency - 551.IBPluginDependency - 558.IBPluginDependency - 558.IBViewBoundsToFrameTransform - 561.IBPluginDependency - 562.IBPluginDependency - 563.IBPluginDependency - 563.IBViewBoundsToFrameTransform - 564.IBPluginDependency - 565.IBPluginDependency - 566.IBPluginDependency - 567.IBPluginDependency - 573.IBPluginDependency - 574.IBPluginDependency - 575.IBPluginDependency - 576.IBPluginDependency - 577.IBPluginDependency - - - YES - com.apple.InterfaceBuilder.CocoaPlugin - {{742, 702}, {612, 664}} - com.apple.InterfaceBuilder.CocoaPlugin - {{742, 702}, {612, 664}} - - {{33, 99}, {480, 360}} - {3.40282e+38, 3.40282e+38} - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABCjAAAxBvAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBiAAAxD5AAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABB6AAAxBeAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDv4AAxBfAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDv4AAxA6AAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABCAAAAw8gAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABCAAAAxA6AAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABCAAAAxAaAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABB4AAAw/oAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABCAAAAw+IAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDvoAAxAEAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDvoAAw/IAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDvgAAw9qAAA - - com.apple.InterfaceBuilder.CocoaPlugin - {{1091, 1078}, {204, 63}} - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDvgAAw8gAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - - - P4AAAL+AAABBkAAAw8mAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABAwAAAw7gAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDv4AAw6uAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDv4AAw5qAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABByAAAw3IAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - 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 - - - - - YES - - - YES - - - - 582 - - - - YES - - AppController - NSObject - - YES - - YES - fontLabel - label1 - radio1 - radio2 - theTableView - theWindow - - - YES - id - id - id - id - id - NSWindow - - - - YES - - YES - fontLabel - label1 - radio1 - radio2 - theTableView - theWindow - - - YES - - fontLabel - id - - - label1 - id - - - radio1 - id - - - radio2 - id - - - theTableView - id - - - theWindow - NSWindow - - - - - IBUserSource - - - - - - 0 - IBCocoaFramework - - com.apple.InterfaceBuilder.CocoaPlugin.macosx - - - - com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 - - - YES - ../adsfsdf.xcodeproj - 3 - - YES - - YES - NSMenuCheckmark - NSMenuMixedState - NSSwitch - - - YES - {9, 8} - {7, 2} - {15, 15} - - - + + + + + + + + 400 + 75 + + + + + + + + + 12 + {{25, 26}, {257, 85}} + + + YES + + 1 + + + 256 + {{10, 33}, {237, 39}} + + Impact + + + + + 2 + + + 256 + {{10, 33}, {237, 39}} + + + + 13 + + + + + + + Impact + 13 + 16 + + 0 + YES + + YES + + + + + + 12 + {{322, 26}, {266, 85}} + + + YES + + 1 + + + 256 + {{10, 33}, {246, 39}} + + System + + + + + 2 + + + 256 + {{10, 33}, {246, 39}} + + + font + + + + + + + 0 + YES + + YES + + + + + {612, 685} + + + + {{0, 0}, {2560, 1418}} + {1.7976931348623157e+308, 1.7976931348623157e+308} + YES + + + AppController + + + + + YES + + + delegate + + + + 451 + + + + theWindow + + + + 459 + + + + label1 + + + + 462 + + + + fontLabel + + + + 465 + + + + theTableView + + + + 491 + + + + dataSource + + + + 514 + + + + delegate + + + + 515 + + + + radio1 + + + + 581 + + + + radio2 + + + + 582 + + + + systemFontLabel + + + + 610 + + + + + YES + + 0 + + YES + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 371 + + + YES + + + + + + 372 + + + YES + + + + + + + + + + + + + + + + + + + + + + + + + + + + 450 + + + + + 460 + + + YES + + + + + + 461 + + + + + 463 + + + YES + + + + + + 464 + + + + + 468 + + + YES + + + + + + 469 + + + + + 474 + + + YES + + + + + + 475 + + + + + 476 + + + YES + + + + + + 477 + + + + + 478 + + + YES + + + + + + + + + 479 + + + + + 480 + + + + + 481 + + + YES + + + + + + + + 482 + + + + + 483 + + + YES + + + + + + 484 + + + YES + + + + + + 485 + + + + + 486 + + + + + 492 + + + YES + + + + + + 493 + + + + + 516 + + + YES + + + + + + 517 + + + + + 518 + + + YES + + + + + + 519 + + + + + 520 + + + YES + + + + + + 521 + + + + + 522 + + + YES + + + + + + 523 + + + + + 528 + + + YES + + + + + + 529 + + + + + 530 + + + YES + + + + + + 531 + + + + + 532 + + + YES + + + + + + 533 + + + YES + + + + + + 534 + + + YES + + + + + + + + 535 + + + + + 536 + + + + + 537 + + + + + 538 + + + YES + + + + + + 539 + + + YES + + + + + + 540 + + + YES + + + + + + + + 541 + + + + + 542 + + + + + 543 + + + + + 544 + + + YES + + + + + + 545 + + + + + 546 + + + YES + + + + + + 547 + + + + + 548 + + + YES + + + + + + + + 549 + + + + + 551 + + + + + 552 + + + + + 558 + + + YES + + + + + + + + 560 + + + + + 561 + + + + + 562 + + + + + 563 + + + YES + + + + + + + 564 + + + YES + + + + + + 565 + + + YES + + + + + + 566 + + + + + 567 + + + + + 573 + + + YES + + + + + + + 574 + + + YES + + + + + + 575 + + + YES + + + + + + 576 + + + + + 577 + + + + + 591 + + + YES + + + + + + 592 + + + + + 597 + + + YES + + + + + + 598 + + + + + 608 + + + YES + + + + + + 609 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 371.IBEditorWindowLastContentRect + 371.IBPluginDependency + 371.IBWindowTemplateEditedContentRect + 371.NSWindowTemplate.visibleAtLaunch + 372.IBPluginDependency + 450.IBPluginDependency + 460.IBPluginDependency + 461.IBPluginDependency + 463.IBPluginDependency + 463.IBViewBoundsToFrameTransform + 464.IBPluginDependency + 468.IBPluginDependency + 469.IBPluginDependency + 474.IBPluginDependency + 475.IBPluginDependency + 476.IBPluginDependency + 477.IBPluginDependency + 478.IBPluginDependency + 479.IBPluginDependency + 480.IBPluginDependency + 481.IBPluginDependency + 482.IBPluginDependency + 483.IBPluginDependency + 484.IBPluginDependency + 485.IBPluginDependency + 486.IBPluginDependency + 492.IBPluginDependency + 493.IBPluginDependency + 516.IBPluginDependency + 517.IBPluginDependency + 518.IBPluginDependency + 519.IBPluginDependency + 520.IBPluginDependency + 521.IBPluginDependency + 522.IBPluginDependency + 523.IBPluginDependency + 528.IBPluginDependency + 529.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.IBNSSegmentedControlInspectorSelectedSegmentMetadataKey + 547.IBPluginDependency + 548.IBPluginDependency + 549.IBPluginDependency + 551.IBPluginDependency + 552.IBPluginDependency + 558.IBPluginDependency + 560.IBPluginDependency + 561.IBPluginDependency + 562.IBPluginDependency + 563.IBPluginDependency + 564.IBPluginDependency + 565.IBPluginDependency + 566.IBPluginDependency + 567.IBPluginDependency + 573.IBPluginDependency + 574.IBPluginDependency + 575.IBPluginDependency + 576.IBPluginDependency + 577.IBPluginDependency + 591.IBPluginDependency + 592.IBPluginDependency + 597.IBPluginDependency + 598.IBPluginDependency + 608.IBPluginDependency + 608.IBViewBoundsToFrameTransform + 609.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{1119, 569}, {612, 685}} + com.apple.InterfaceBuilder.CocoaPlugin + {{1119, 569}, {612, 685}} + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABB6AAAxCCAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABCCAAAxB9AAA + + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 610 + + + + YES + + AppController + NSObject + + YES + + YES + fontLabel + label1 + radio1 + radio2 + theTableView + theWindow + + + YES + id + id + id + id + id + NSWindow + + + + YES + + YES + fontLabel + label1 + radio1 + radio2 + theTableView + theWindow + + + YES + + fontLabel + id + + + label1 + id + + + radio1 + id + + + radio2 + id + + + theTableView + id + + + theWindow + NSWindow + + + + + IBProjectSource + ./Classes/AppController.h + + + + AppController + + systemFontLabel + id + + + systemFontLabel + + systemFontLabel + id + + + + IBUserSource + + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + + 3 + + YES + + YES + NSMenuCheckmark + NSMenuMixedState + NSSwitch + + + YES + {11, 11} + {10, 3} + {15, 15} + + + diff --git a/Tests/Manual/FontEnhancementTest/index-debug.html b/Tests/Manual/FontEnhancementTest/index-debug.html index 52138da4a..30f87d1d5 100644 --- a/Tests/Manual/FontEnhancementTest/index-debug.html +++ b/Tests/Manual/FontEnhancementTest/index-debug.html @@ -19,7 +19,8 @@ - + + FontEnhancementTest diff --git a/Tests/Manual/FontEnhancementTest/index.html b/Tests/Manual/FontEnhancementTest/index.html index 6ce00e85e..5fa2df0fb 100644 --- a/Tests/Manual/FontEnhancementTest/index.html +++ b/Tests/Manual/FontEnhancementTest/index.html @@ -19,7 +19,8 @@ - + + FontEnhancementTest diff --git a/Tests/Manual/FontMetricsExplorer/Resources/MainMenu.cib b/Tests/Manual/FontMetricsExplorer/Resources/MainMenu.cib index c12b2c5af..213f49551 100644 --- a/Tests/Manual/FontMetricsExplorer/Resources/MainMenu.cib +++ b/Tests/Manual/FontMetricsExplorer/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;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;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;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;1;0E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;44E;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;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;1;0E;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;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;2;59E;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;35E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;33E;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;33E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;56E;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;60E;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;61E;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;57E;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;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;42E;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;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;53E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;64E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;43E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;65E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;37E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;44E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;54E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;68E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;51E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;69E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;35E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;70E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;31E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;71E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;54E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;55E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;72E;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;26E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;37E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;57E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;73E;E;D;K;6;$classD;K;6;CP$UIDd;2;26E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;51E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;57E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;74E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;60E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;30E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;2;75E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;2;76E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;2;77E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;2;78E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;2;79E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;33E;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;32E;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;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;92E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;94E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;92E;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;36E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;2;59E;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;33E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;87E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;99E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;100E;K;6;$afontD;K;6;CP$UIDd;3;101E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;92E;K;11;$aalignmentD;K;6;CP$UIDd;2;80E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;80E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;92E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;1;0E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;96E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;91E;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;102E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;37E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;103E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;104E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;59E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;105E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;106E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;107E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;92E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;108E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;92E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;109E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;110E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;92E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;111E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;92E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;112E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;113E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;80E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;114E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;80E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;115E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;113E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;80E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;114E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;80E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;116E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;113E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;80E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;114E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;80E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;117E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;118E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;92E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;119E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;92E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;120E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;121E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;92E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;122E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;92E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;123E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;124E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;3;125E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;92E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;126E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;92E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;127E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;124E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;3;128E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;92E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;129E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;92E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;130E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;107E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;92E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;131E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;92E;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;50E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;132E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;133E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;87E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;134E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;84E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;80E;K;11;$aalignmentD;K;6;CP$UIDd;2;80E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;135E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;92E;K;19;CPSliderMinValueKeyD;K;6;CP$UIDd;3;136E;K;19;CPSliderMaxValueKeyD;K;6;CP$UIDd;3;137E;K;23;CPSliderAltIncrValueKeyD;K;6;CP$UIDd;2;80E;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;52E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;138E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;139E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;87E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;84E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;140E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;138E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;139E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;141E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;87E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;84E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;142E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;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;2;80E;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;54E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;145E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;88E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;84E;K;6;$afontD;K;6;CP$UIDd;3;146E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;91E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;147E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;91E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;148E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;149E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;3;150E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;91E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;151E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;91E;K;31;CPTextFieldPlaceholderStringKeyD;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;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;58E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;153E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;154E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;31E;E;E;S;8;delegateS;12;ascenderTextS;12;baselineViewS;13;descenderTextS;8;fontMenuS;14;lineHeightTextS;11;metricsViewS;10;sizeSliderS;8;sizeTextS;9;theWindowS;10;sampleTextS;14;setFontFamily:S;12;setFontSize:S;32;{10000000000000, 10000000000000}S;8;CPWindowS;23;{{408, 63}, {332, 290}}d;1;7S;21;Font Metrics Explorerd;1;0S;20;{{0, 0}, {332, 290}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;37E;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;56E;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;35E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;53E;E;E;d;2;18S;6;normalS;22;{{282, 100}, {31, 17}}S;18;{{0, 0}, {31, 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;2;89E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;155E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;135E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;96E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;96E;E;d;1;2d;1;4T;S;2;12d;4;3072F;S;21;{{55, 58}, {237, 24}}S;19;{{0, 0}, {237, 24}}S;12;popup-buttonS;8;borderedD;K;6;$classD;K;6;CP$UIDd;2;89E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;155E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;135E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;93E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;96E;E;S;6;Item 1S;17;_popUpItemAction:d;1;1d;7;1048576S;20;{{19, 63}, {38, 17}}S;18;{{0, 0}, {38, 17}}S;5;Font:S;21;{{19, 193}, {67, 17}}S;18;{{0, 0}, {67, 17}}S;9;Ascender:S;21;{{99, 193}, {35, 17}}S;18;{{0, 0}, {35, 17}}S;1;0S;21;{{99, 218}, {35, 17}}S;21;{{99, 243}, {35, 17}}S;21;{{19, 218}, {75, 17}}S;18;{{0, 0}, {75, 17}}S;10;Descender:S;21;{{19, 243}, {80, 17}}S;18;{{0, 0}, {80, 17}}S;12;Line Height:S;20;{{17, 17}, {72, 24}}S;18;{{0, 0}, {72, 24}}D;K;6;$classD;K;6;CP$UIDd;2;89E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;155E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;2;83E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;93E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;96E;E;S;4;FontS;21;{{17, 152}, {72, 24}}D;K;6;$classD;K;6;CP$UIDd;2;89E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;155E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;2;83E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;93E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;96E;E;S;7;MetricsS;21;{{19, 100}, {38, 17}}S;5;Size:S;21;{{57, 95}, {214, 21}}S;19;{{0, 0}, {214, 21}}S;6;sliderd;2;12d;1;8d;2;48S;24;{{149, 155}, {163, 100}}S;20;{{0, 0}, {163, 100}}S;12;BaselineViewD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;55E;E;E;S;11;MetricsViewS;21;{{-3, 42}, {169, 18}}S;19;{{0, 0}, {169, 18}}d;2;42D;K;6;$classD;K;6;CP$UIDd;2;89E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;155E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;156E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;96E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;96E;E;S;3;logS;23;{{146, 260}, {167, 14}}S;19;{{0, 0}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;2;89E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;155E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;157E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;96E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;96E;E;S;25;Click grid to change textS;13;AppControllerS;10;OtherViewsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;39E;E;E;S;17;Arial, sans-serifd;2;14d;2;11E;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;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;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;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;1;0E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;44E;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;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;1;0E;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;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;2;59E;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;35E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;33E;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;33E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;56E;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;60E;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;61E;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;57E;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;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;42E;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;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;53E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;64E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;43E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;65E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;37E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;44E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;54E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;68E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;51E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;69E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;35E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;70E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;31E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;71E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;54E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;55E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;72E;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;26E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;37E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;57E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;73E;E;D;K;6;$classD;K;6;CP$UIDd;2;26E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;51E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;57E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;74E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;60E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;30E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;2;75E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;2;76E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;2;77E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;2;78E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;2;79E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;33E;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;32E;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;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;92E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;94E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;2;98E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;92E;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;36E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;2;59E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;80E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;99E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;100E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;87E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;101E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;102E;K;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;92E;K;11;$aalignmentD;K;6;CP$UIDd;2;80E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;80E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;92E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;1;0E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;103E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;96E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;104E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;2;80E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;2;93E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;91E;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;105E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;37E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;106E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;107E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;59E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;108E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;109E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;110E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;92E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;111E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;2;98E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;92E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;112E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;113E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;92E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;114E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;2;98E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;92E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;115E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;116E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;80E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;117E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;2;98E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;80E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;118E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;116E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;80E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;117E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;2;98E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;80E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;119E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;116E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;80E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;117E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;2;98E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;80E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;120E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;121E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;92E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;122E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;2;98E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;92E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;123E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;124E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;92E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;125E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;2;98E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;92E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;126E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;127E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;3;128E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;92E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;129E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;2;98E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;92E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;130E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;127E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;3;128E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;92E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;131E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;2;98E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;92E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;132E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;110E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;2;90E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;92E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;133E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;2;98E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;92E;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;50E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;134E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;135E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;87E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;136E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;84E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;80E;K;11;$aalignmentD;K;6;CP$UIDd;2;80E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;104E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;92E;K;19;CPSliderMinValueKeyD;K;6;CP$UIDd;3;137E;K;19;CPSliderMaxValueKeyD;K;6;CP$UIDd;3;138E;K;23;CPSliderAltIncrValueKeyD;K;6;CP$UIDd;2;80E;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;52E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;139E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;140E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;87E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;84E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;139E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;140E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;142E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;87E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;84E;K;28;_CPCibCustomViewClassNameKeyD;K;6;CP$UIDd;3;143E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;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;2;80E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;144E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;145E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;54E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;146E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;88E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;84E;K;6;$afontD;K;6;CP$UIDd;3;147E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;91E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;148E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;2;98E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;91E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;34E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;33E;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;3;149E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;150E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;33E;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;6;$afontD;K;6;CP$UIDd;3;151E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;91E;K;11;$aalignmentD;K;6;CP$UIDd;2;91E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;93E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;152E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;95E;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;2;98E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;91E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;91E;K;31;CPTextFieldPlaceholderStringKeyD;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;153E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;58E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;154E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;155E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;31E;E;E;S;8;delegateS;12;ascenderTextS;12;baselineViewS;13;descenderTextS;8;fontMenuS;14;lineHeightTextS;11;metricsViewS;10;sizeSliderS;8;sizeTextS;9;theWindowS;10;sampleTextS;14;setFontFamily:S;12;setFontSize:S;32;{10000000000000, 10000000000000}S;8;CPWindowS;23;{{408, 63}, {332, 290}}d;1;7S;21;Font Metrics Explorerd;1;0S;20;{{0, 0}, {332, 290}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;37E;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;56E;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;35E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;53E;E;E;d;2;18S;6;normalS;22;{{282, 100}, {31, 17}}S;18;{{0, 0}, {31, 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;2;89E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;156E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;157E;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;93E;E;d;1;2d;1;4T;S;2;12d;4;3072F;D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;97E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;158E;E;S;21;{{55, 58}, {237, 24}}S;19;{{0, 0}, {237, 24}}S;12;popup-buttonS;8;borderedS;0;d;2;12S;6;Item 1S;17;_popUpItemAction:d;1;1d;7;1048576S;20;{{19, 63}, {38, 17}}S;18;{{0, 0}, {38, 17}}S;5;Font:S;21;{{19, 193}, {67, 17}}S;18;{{0, 0}, {67, 17}}S;9;Ascender:S;21;{{99, 193}, {35, 17}}S;18;{{0, 0}, {35, 17}}S;1;0S;21;{{99, 218}, {35, 17}}S;21;{{99, 243}, {35, 17}}S;21;{{19, 218}, {75, 17}}S;18;{{0, 0}, {75, 17}}S;10;Descender:S;21;{{19, 243}, {80, 17}}S;18;{{0, 0}, {80, 17}}S;12;Line Height:S;20;{{17, 17}, {72, 24}}S;18;{{0, 0}, {72, 24}}D;K;6;$classD;K;6;CP$UIDd;2;89E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;156E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;2;83E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;93E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;96E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;2;93E;E;S;4;FontS;21;{{17, 152}, {72, 24}}S;7;MetricsS;21;{{19, 100}, {38, 17}}S;5;Size:S;21;{{57, 95}, {214, 21}}S;19;{{0, 0}, {214, 21}}S;6;sliderd;1;8d;2;48S;24;{{149, 155}, {163, 100}}S;20;{{0, 0}, {163, 100}}S;12;BaselineViewD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;55E;E;E;S;11;MetricsViewS;21;{{-3, 42}, {169, 18}}S;19;{{0, 0}, {169, 18}}d;2;42D;K;6;$classD;K;6;CP$UIDd;2;89E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;156E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;159E;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;93E;E;S;3;logS;23;{{146, 260}, {167, 14}}S;19;{{0, 0}, {167, 14}}D;K;6;$classD;K;6;CP$UIDd;2;89E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;156E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;160E;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;93E;E;S;25;Click grid to change textS;13;AppControllerS;10;OtherViewsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;39E;E;E;S;28;_CPFontSystemFontPlaceholderd;2;-1D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;107E;E;E;d;2;14d;2;11f;18;0.6862745098039216E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Tests/Manual/FontMetricsExplorer/Resources/MainMenu.xib b/Tests/Manual/FontMetricsExplorer/Resources/MainMenu.xib index 00ffeed65..967d29094 100644 --- a/Tests/Manual/FontMetricsExplorer/Resources/MainMenu.xib +++ b/Tests/Manual/FontMetricsExplorer/Resources/MainMenu.xib @@ -1,22 +1,36 @@ - 1060 - 10F569 - 788 - 1038.29 - 461.00 + 1070 + 11E53 + 2182 + 1138.47 + 569.00 com.apple.InterfaceBuilder.CocoaPlugin - 788 + 2182 - - + + NSPopUpButton + NSMenuItem + NSMenu + NSTextFieldCell + NSSlider + NSSliderCell + NSCustomObject + NSCustomView + NSView + NSWindowTemplate + NSTextField + NSPopUpButtonCell com.apple.InterfaceBuilder.CocoaPlugin - + + PluginDependencyRecalculationVersion + + NSApplication @@ -35,7 +49,7 @@ Font Metrics Explorer NSWindow - {1.79769e+308, 1.79769e+308} + 274 @@ -45,6 +59,8 @@ 268 {{54, 206}, {243, 26}} + + YES -2076049856 @@ -98,6 +114,8 @@ 268 {{19, 210}, {38, 17}} + + YES 68288064 @@ -130,6 +148,8 @@ 268 {{19, 80}, {67, 17}} + + YES 68288064 @@ -146,6 +166,8 @@ 268 {{99, 80}, {35, 17}} + + YES 68288064 @@ -162,6 +184,8 @@ 268 {{99, 55}, {35, 17}} + + YES 68288064 @@ -178,6 +202,8 @@ 268 {{99, 30}, {35, 17}} + + YES 68288064 @@ -194,6 +220,8 @@ 268 {{19, 55}, {75, 17}} + + YES 68288064 @@ -210,6 +238,8 @@ 268 {{19, 30}, {80, 17}} + + YES 68288064 @@ -226,6 +256,8 @@ 268 {{146, 16}, {167, 14}} + + YES 68288064 @@ -246,6 +278,8 @@ 268 {{17, 250}, {72, 22}} + + YES 68288064 @@ -266,6 +300,8 @@ 268 {{17, 115}, {72, 22}} + + YES 68288064 @@ -282,6 +318,8 @@ 268 {{19, 173}, {38, 17}} + + YES 68288064 @@ -298,6 +336,8 @@ 268 {{282, 173}, {31, 17}} + + YES 68288064 @@ -314,6 +354,8 @@ 268 {{57, 174}, {214, 21}} + + YES -2080244224 @@ -339,6 +381,8 @@ 298 {{-3, 40}, {169, 18}} + + YES 68288064 @@ -357,6 +401,8 @@ {{149, 35}, {163, 100}} + + MetricsView @@ -364,14 +410,19 @@ 268 {{149, 35}, {163, 100}} + + BaselineView {332, 290} + + {{0, 0}, {1680, 1028}} - {1.79769e+308, 1.79769e+308} + {10000000000000, 10000000000000} + YES AppController @@ -459,14 +510,6 @@ 1095 - - - sampleText - - - - 1103 - metricsView @@ -483,6 +526,14 @@ 1109 + + + sampleText + + + + 1103 + @@ -773,10 +824,11 @@ + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{451, 847}, {110, 23}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -806,16 +858,14 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{329, 888}, {163, 96}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{884, 511}, {332, 290}} com.apple.InterfaceBuilder.CocoaPlugin {{884, 511}, {332, 290}} - {{33, 99}, {480, 360}} com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin @@ -828,20 +878,6 @@ AppController NSObject - - id - id - - - - setFontFamily: - id - - - setFontSize: - id - - NSTextField BaselineView @@ -851,7 +887,6 @@ MetricsView NSSlider NSTextField - NSWindow @@ -886,22 +921,18 @@ sizeText NSTextField - - theWindow - NSWindow - - IBUserSource - + IBProjectSource + ./Classes/AppController.h BaselineView NSView - IBUserSource - + IBProjectSource + ./Classes/BaselineView.h @@ -919,8 +950,8 @@ - IBUserSource - + IBProjectSource + ./Classes/MetricsView.h @@ -928,11 +959,10 @@ 0 IBCocoaFramework YES - ../registration.xcodeproj 3 - {9, 8} - {7, 2} + {11, 11} + {10, 3} diff --git a/Tests/Manual/NewTextFieldBezel/AppController.j b/Tests/Manual/NewTextFieldBezel/AppController.j new file mode 100644 index 000000000..fb92db10c --- /dev/null +++ b/Tests/Manual/NewTextFieldBezel/AppController.j @@ -0,0 +1,121 @@ +/* + * AppController.j + * NewTextField + * + * Created by Aparajita Fishman. + * Copyright (c) 2011, Intalio, 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 + */ + +@import + + +@implementation AppController : CPObject +{ + CPWindow theWindow; + CPMutableArray fields; +} + +- (void)applicationDidFinishLaunching:(CPNotification)aNotification +{ + theWindow = [[CPWindow alloc] initWithContentRect:CGRectMakeZero() styleMask:CPBorderlessBridgeWindowMask]; + fields = [CPMutableArray array]; + + var field = [CPTextField textFieldWithStringValue:@"" placeholder:@"Text field" width:200]; + [fields addObject:field]; + [self configureField:field at:50]; + + field = [CPTextField roundedTextFieldWithStringValue:@"" placeholder:@"Text field" width:200]; + [fields addObject:field]; + [self configureField:field at:100]; + + field = [CPTextField textFieldWithStringValue:@"" placeholder:@"Big text field" width:200]; + [field setFont:[CPFont systemFontOfSize:16]]; + [fields addObject:field]; + [self configureField:field at:150]; + + field = [[CPSearchField alloc] initWithFrame:CPMakeRect(0, 0, 200, 30)]; + [fields addObject:field]; + [self configureField:field at:200]; + + field = [[CPTokenField alloc] initWithFrame:CPMakeRect(0, 0, 200, 30)]; + [field setEditable:YES]; + [field setPlaceholderString:"Type in a token!"]; + [field setTokenizingCharacterSet:[CPCharacterSet characterSetWithCharactersInString:@" "]]; + [fields addObject:field]; + [self configureField:field at:250]; + + [self makeTableAt:300]; + [theWindow orderFront:self]; +} + +- (void)configureField:(CPTextField)aField at:(int)yCoord +{ + var contentView = [theWindow contentView]; + + [aField setFrameOrigin:CGPointMake(50, yCoord)]; + [aField sizeToFit]; + [contentView addSubview:aField]; + + var enabler = [CPCheckBox checkBoxWithTitle:@"Enabled"]; + + [enabler setFrameOrigin:CGPointMake(50 + 200 + 10, yCoord + 7)]; + [enabler setTarget:self]; + [enabler setAction:@selector(enableField:)]; + [enabler setState:CPOnState]; + [enabler setTag:[fields count] - 1]; + [contentView addSubview:enabler]; +} + +- (void)makeTableAt:(int)yCoord +{ + var scrollView = [[CPScrollView alloc] initWithFrame:CGRectMake(50, yCoord, 200, 200)], + table = [[CPTableView alloc] initWithFrame:CGRectMake(0, 0, 200, 200)], + column = [[CPTableColumn alloc] initWithIdentifier:@"1"]; + + [scrollView setBorderType:CPBezelBorder]; + [table setDataSource:self]; + [table setVerticalMotionCanBeginDrag:NO]; + [column setResizingMask:CPTableColumnAutoresizingMask]; + [column setEditable:YES]; + [table setColumnAutoresizingStyle:CPTableViewLastColumnOnlyAutoresizingStyle]; + [table addTableColumn:column]; + [[theWindow contentView] addSubview:scrollView]; + [scrollView setDocumentView:table]; +} + +- (void)enableField:(id)sender +{ + var field = [fields objectAtIndex:[sender tag]]; + [field setEnabled:[sender state] === CPOnState]; +} + +- (int)numberOfRowsInTableView:(CPTableView)aTableView +{ + return 7; +} + +- (id)tableView:(CPTableView)aTableView objectValueForTableColumn:(CPTableColumn)column row:(int)row +{ + return "Double-click to edit"; +} + +- (void)tableView:(CPTableView)aTableView setObjectValue:(id)anObject forTableColumn:(CPTableColumn)aTableColumn row:(int)rowIndex +{ + +} + +@end diff --git a/Tests/Manual/NewTextFieldBezel/Info.plist b/Tests/Manual/NewTextFieldBezel/Info.plist new file mode 100644 index 000000000..19de2f81c --- /dev/null +++ b/Tests/Manual/NewTextFieldBezel/Info.plist @@ -0,0 +1,12 @@ + + + + + CPApplicationDelegateClass + AppController + CPBundleName + NewTextField + CPPrincipalClass + CPApplication + + diff --git a/Tests/Manual/NewTextFieldBezel/Jakefile b/Tests/Manual/NewTextFieldBezel/Jakefile new file mode 100644 index 000000000..684e5113f --- /dev/null +++ b/Tests/Manual/NewTextFieldBezel/Jakefile @@ -0,0 +1,93 @@ +/* + * Jakefile + * NewTextField + * + * Created by aparajita on August 10, 2011. + * Copyright 2011, Victory-Heart Productions 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 ("NewTextField", function(task) +{ + task.setBuildIntermediatesPath(FILE.join("Build", "NewTextField.build", configuration)); + task.setBuildPath(FILE.join("Build", configuration)); + + task.setProductName("NewTextField"); + task.setIdentifier("com.aparajita.NewTextField"); + task.setVersion("1.0"); + task.setAuthor("Victory-Heart Productions"); + task.setEmail("feedback @nospam@ yourcompany.com"); + task.setSummary("NewTextField"); + 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", ["NewTextField"], 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", "NewTextField", "index.html")]); +}); + +task ("run-release", ["release"], function() +{ + OS.system(["open", FILE.join("Build", "Release", "NewTextField", "index.html")]); +}); + +task ("deploy", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Deployment", "NewTextField")); + OS.system(["press", "-f", FILE.join("Build", "Release", "NewTextField"), FILE.join("Build", "Deployment", "NewTextField")]); + printResults("Deployment") +}); + +task ("desktop", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Desktop", "NewTextField")); + require("cappuccino/nativehost").buildNativeHost(FILE.join("Build", "Release", "NewTextField"), FILE.join("Build", "Desktop", "NewTextField", "NewTextField.app")); + printResults("Desktop") +}); + +task ("run-desktop", ["desktop"], function() +{ + OS.system([FILE.join("Build", "Desktop", "NewTextField", "NewTextField.app", "Contents", "MacOS", "NativeHost"), "-i"]); +}); + +function printResults(configuration) +{ + print("----------------------------"); + print(configuration+" app built at path: "+FILE.join("Build", configuration, "NewTextField")); + print("----------------------------"); +} diff --git a/Tests/Manual/NewTextFieldBezel/Resources/spinner.gif b/Tests/Manual/NewTextFieldBezel/Resources/spinner.gif new file mode 100644 index 000000000..06dbc2bc2 Binary files /dev/null and b/Tests/Manual/NewTextFieldBezel/Resources/spinner.gif differ diff --git a/Tests/Manual/NewTextFieldBezel/index-debug.html b/Tests/Manual/NewTextFieldBezel/index-debug.html new file mode 100644 index 000000000..4c283399a --- /dev/null +++ b/Tests/Manual/NewTextFieldBezel/index-debug.html @@ -0,0 +1,107 @@ + + + + + + + + + + + + + + + NewTextField + + + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/NewTextFieldBezel/index.html b/Tests/Manual/NewTextFieldBezel/index.html new file mode 100644 index 000000000..d288174a1 --- /dev/null +++ b/Tests/Manual/NewTextFieldBezel/index.html @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + NewTextField + + + + + + + + + + + + +
+
+ + + +
+
+ + + + diff --git a/Tests/Manual/NewTextFieldBezel/main.j b/Tests/Manual/NewTextFieldBezel/main.j new file mode 100644 index 000000000..c5515727b --- /dev/null +++ b/Tests/Manual/NewTextFieldBezel/main.j @@ -0,0 +1,18 @@ +/* + * AppController.j + * NewTextField + * + * Created by aparajita on August 10, 2011. + * Copyright 2011, Victory-Heart Productions All rights reserved. + */ + +@import +@import + +@import "AppController.j" + + +function main(args, namedArgs) +{ + CPApplicationMain(args, namedArgs); +} diff --git a/Tests/Manual/Nib2CibAligment/AppController.j b/Tests/Manual/Nib2CibAlignment/AppController.j similarity index 100% rename from Tests/Manual/Nib2CibAligment/AppController.j rename to Tests/Manual/Nib2CibAlignment/AppController.j diff --git a/Tests/Manual/Nib2CibAlignment/Info.plist b/Tests/Manual/Nib2CibAlignment/Info.plist new file mode 100644 index 000000000..e41fd81c5 --- /dev/null +++ b/Tests/Manual/Nib2CibAlignment/Info.plist @@ -0,0 +1,10 @@ + + + + + Main cib file base name + MainMenu.cib + CPBundleName + nib2cibAlignment + + diff --git a/Tests/Manual/Nib2CibAlignment/Jakefile b/Tests/Manual/Nib2CibAlignment/Jakefile new file mode 100644 index 000000000..783724dc9 --- /dev/null +++ b/Tests/Manual/Nib2CibAlignment/Jakefile @@ -0,0 +1,94 @@ +/* + * Jakefile + * nib2cibAlignment + * + * Created by You on May 17, 2011. + * Copyright 2011, 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 ("nib2cibAlignment", function(task) +{ + task.setBuildIntermediatesPath(FILE.join("Build", "nib2cibAlignment.build", configuration)); + task.setBuildPath(FILE.join("Build", configuration)); + + task.setProductName("nib2cibAlignment"); + task.setIdentifier("com.yourcompany.nib2cibAlignment"); + task.setVersion("1.0"); + task.setAuthor("Your Company"); + task.setEmail("feedback @nospam@ yourcompany.com"); + task.setSummary("nib2cibAlignment"); + 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", ["nib2cibAlignment"], 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", "nib2cibAlignment", "index.html")]); +}); + +task ("run-release", ["release"], function() +{ + OS.system(["open", FILE.join("Build", "Release", "nib2cibAlignment", "index.html")]); +}); + +task ("deploy", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Deployment", "nib2cibAlignment")); + OS.system(["press", "-f", FILE.join("Build", "Release", "nib2cibAlignment"), FILE.join("Build", "Deployment", "nib2cibAlignment")]); + printResults("Deployment") +}); + +task ("desktop", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Desktop", "nib2cibAlignment")); + require("cappuccino/nativehost").buildNativeHost(FILE.join("Build", "Release", "nib2cibAlignment"), FILE.join("Build", "Desktop", "nib2cibAlignment", "nib2cibAlignment.app")); + printResults("Desktop") +}); + +task ("run-desktop", ["desktop"], function() +{ + OS.system([FILE.join("Build", "Desktop", "nib2cibAlignment", "nib2cibAlignment.app", "Contents", "MacOS", "NativeHost"), "-i"]); +}); + +function printResults(configuration) +{ + print("----------------------------"); + print(configuration+" app built at path: "+FILE.join("Build", configuration, "nib2cibAlignment")); + print("----------------------------"); +} diff --git a/Tests/Manual/Nib2CibAligment/Resources/MainMenu.cib b/Tests/Manual/Nib2CibAlignment/Resources/MainMenu.cib similarity index 55% rename from Tests/Manual/Nib2CibAligment/Resources/MainMenu.cib rename to Tests/Manual/Nib2CibAlignment/Resources/MainMenu.cib index b6ce9a57a..08de4e205 100644 --- a/Tests/Manual/Nib2CibAligment/Resources/MainMenu.cib +++ b/Tests/Manual/Nib2CibAlignment/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;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;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;79E;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;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;204E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;208E;D;K;6;CP$UIDd;1;0E;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;1;0E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;215E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;217E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;219E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;223E;D;K;6;CP$UIDd;1;0E;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;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;229E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;230E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;231E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;232E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;234E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;236E;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;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;1;0E;D;K;6;CP$UIDd;3;261E;D;K;6;CP$UIDd;3;263E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;265E;D;K;6;CP$UIDd;3;266E;D;K;6;CP$UIDd;3;268E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;269E;D;K;6;CP$UIDd;3;270E;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;81E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;2;81E;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;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;170E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;159E;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;194E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;208E;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;212E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;215E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;217E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;219E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;223E;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;226E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;227E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;228E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;229E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;230E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;231E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;232E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;234E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;236E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;237E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;238E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;239E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;240E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;241E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;242E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;243E;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;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;3;206E;D;K;6;CP$UIDd;3;260E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;263E;D;K;6;CP$UIDd;3;270E;D;K;6;CP$UIDd;3;270E;D;K;6;CP$UIDd;3;270E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;268E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;3;263E;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;271E;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;272E;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;269E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;273E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;269E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;204E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;274E;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;86E;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;2;88E;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;2;91E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;11E;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;144E;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;150E;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;141E;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;149E;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;143E;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;142E;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;145E;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;105E;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;152E;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;3;148E;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;2;92E;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;2;94E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;79E;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;102E;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;2;93E;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;132E;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;133E;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;114E;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;109E;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;112E;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;127E;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;108E;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;113E;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;128E;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;110E;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;123E;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;120E;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;116E;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;126E;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;2;87E;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;156E;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;157E;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;129E;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;136E;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;137E;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;138E;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;195E;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;196E;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;197E;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;198E;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;200E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;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;201E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;318E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;202E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;319E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;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;3;320E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;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;321E;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;322E;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;323E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;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;324E;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;325E;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;326E;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;327E;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;328E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;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;329E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;179E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;330E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;180E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;331E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;172E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;332E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;173E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;333E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;174E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;334E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;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;335E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;271E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;336E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;337E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;338E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;339E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;84E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;81E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;339E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;342E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;343E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;348E;K;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;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;349E;K;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;84E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;350E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;90E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;81E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;351E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;352E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;354E;K;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;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;355E;K;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;356E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;90E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;2;90E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;359E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;90E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;361E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;362E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;100E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;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;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;365E;K;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;356E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;366E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;104E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;81E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;367E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;368E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;104E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;370E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;107E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;81E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;371E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;372E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;375E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;376E;K;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;377E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;378E;K;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;379E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;380E;K;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;381E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;382E;K;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;383E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;384E;K;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;385E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;386E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;118E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;387E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;388E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;390E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;118E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;391E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;386E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;118E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;393E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;395E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;118E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;396E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;397E;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;398E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;118E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;399E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;401E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;118E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;402E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;403E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;125E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;403E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;404E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;125E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;125E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;407E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;125E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;409E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;410E;K;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;125E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;131E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;411E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;412E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;131E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;131E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;135E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;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;82E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;401E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;402E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;398E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;399E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;390E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;391E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;386E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;140E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;81E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;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;82E;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;140E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;423E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;140E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;425E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;386E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;140E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;427E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;140E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;429E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;140E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;431E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;147E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;140E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;432E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;433E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;434E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;147E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;140E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;437E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;386E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;140E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;439E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;140E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;140E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;140E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;155E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;81E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;441E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;442E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;443E;K;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;155E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;444E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;366E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;155E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;159E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;81E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;446E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;447E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;161E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;159E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;448E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;449E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;450E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;451E;K;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;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;444E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;398E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;453E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;454E;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;401E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;455E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;456E;K;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;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;457E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;390E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;459E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;461E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;462E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;171E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;463E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;464E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;465E;K;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;171E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;171E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;467E;K;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;171E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;171E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;469E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;177E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;469E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;470E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;465E;K;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;177E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;177E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;471E;K;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;177E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;182E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;472E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;473E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;465E;K;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;182E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;474E;K;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;182E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;182E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;476E;K;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;182E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;182E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;479E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;383E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;366E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;381E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;366E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;194E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;159E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;482E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;483E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;194E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;485E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;487E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;82E;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;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;490E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;194E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;491E;K;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;82E;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;194E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;383E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;493E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;194E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;381E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;493E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;203E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;495E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;496E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;497E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;395E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;339E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;3;206E;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;205E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;499E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;500E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;501E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;503E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;401E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;510E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;401E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;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;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;511E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;512E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;513E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;515E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;519E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;512E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;513E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;520E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;521E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;522E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;523E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;401E;K;6;$afontD;K;6;CP$UIDd;3;524E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;525E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;401E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;526E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;527E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;528E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;529E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;524E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;530E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;531E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;532E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;533E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;534E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;532E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;535E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;536E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;537E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;532E;K;6;$afontD;K;6;CP$UIDd;3;524E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;538E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;398E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;539E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;540E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;532E;K;6;$afontD;K;6;CP$UIDd;3;541E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;538E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;398E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;542E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;540E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;401E;K;6;$afontD;K;6;CP$UIDd;3;541E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;525E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;401E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;543E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;540E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;544E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;528E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;545E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;540E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;546E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;522E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;547E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;540E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;401E;K;6;$afontD;K;6;CP$UIDd;3;546E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;510E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;401E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;548E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;512E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;549E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;550E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;551E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;512E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;549E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;552E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;553E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;540E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;541E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;530E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;554E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;540E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;532E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;546E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;533E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;555E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;540E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;532E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;556E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;536E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;557E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;558E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;532E;K;6;$afontD;K;6;CP$UIDd;3;546E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;538E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;398E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;559E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;558E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;401E;K;6;$afontD;K;6;CP$UIDd;3;546E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;525E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;401E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;560E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;558E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;561E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;528E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;562E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;558E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;563E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;522E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;564E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;558E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;401E;K;6;$afontD;K;6;CP$UIDd;3;563E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;510E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;401E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;565E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;558E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;546E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;530E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;566E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;558E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;532E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;563E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;533E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;567E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;558E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;532E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;568E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;536E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;569E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;570E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;532E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;538E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;398E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;571E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;570E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;401E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;525E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;401E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;572E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;570E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;573E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;528E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;574E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;570E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;401E;K;6;$afontD;K;6;CP$UIDd;3;541E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;510E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;401E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;575E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;570E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;530E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;576E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;570E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;532E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;541E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;533E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;577E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;570E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;532E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;578E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;536E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;579E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;581E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;582E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;583E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;581E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;584E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;585E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;581E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;586E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;587E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;581E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;588E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;589E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;581E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;590E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;591E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;581E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;592E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;593E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;581E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;594E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;595E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;581E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;596E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;597E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;598E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;599E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;600E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;598E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;601E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;602E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;598E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;603E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;604E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;598E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;605E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;606E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;598E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;607E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;608E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;598E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;609E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;610E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;598E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;611E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;612E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;598E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;613E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;E;D;K;6;$classD;K;6;CP$UIDd;3;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;614E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;570E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;541E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;522E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;615E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;580E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;581E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;616E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;516E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;517E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;518E;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;3;262E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;3;270E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;617E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;540E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;618E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;532E;K;6;$afontD;K;6;CP$UIDd;3;563E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;461E;K;11;$aalignmentD;K;6;CP$UIDd;3;498E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;1;0E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;398E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;619E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;263E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;620E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;401E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;270E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;621E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;263E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;620E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;270E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;622E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;263E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;620E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;270E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;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;267E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;623E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;624E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;625E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;626E;K;6;$afontD;K;6;CP$UIDd;3;627E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;398E;K;11;$aalignmentD;K;6;CP$UIDd;3;461E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;344E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;345E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;628E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;344E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;344E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;344E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;629E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;398E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;461E;K;31;CPTextFieldPlaceholderStringKeyD;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;630E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;631E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;632E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;204E;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;9;AMainMenuS;11;_CPMainMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;3;103E;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;88E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;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;91E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;2;94E;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;105E;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;110E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;113E;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;117E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;130E;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;123E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;120E;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;128E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;129E;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;133E;D;K;6;CP$UIDd;3;132E;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;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;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;145E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;143E;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;148E;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;156E;D;K;6;CP$UIDd;3;157E;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;160E;D;K;6;CP$UIDd;3;193E;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;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;176E;D;K;6;CP$UIDd;3;181E;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;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;172E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;175E;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;178E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;180E;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;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;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;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;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;CPWindowS;24;{{335, -79}, {870, 717}}d;1;0S;21;{{7, 11}, {870, 717}}S;20;{{0, 0}, {870, 717}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;208E;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;237E;D;K;6;CP$UIDd;3;238E;D;K;6;CP$UIDd;3;239E;D;K;6;CP$UIDd;3;260E;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;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;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;210E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;224E;D;K;6;CP$UIDd;3;225E;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;261E;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;263E;D;K;6;CP$UIDd;3;268E;E;E;S;6;normalS;21;{{18, 18}, {230, 24}}S;19;{{0, 0}, {230, 24}}d;2;36S;6;buttonS;17;selected+borderedD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;633E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;570E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;344E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;E;S;26;CPTexturedSquareBezelStyleS;19;{{18, 0}, {5, 717}}S;18;{{0, 0}, {5, 717}}d;2;20D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;634E;E;D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;635E;E;S;3;BoxS;6;{0, 0}S;20;{{247, 0}, {5, 717}}D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;636E;E;S;21;{{18, 58}, {230, 24}}S;27;CPTexturedRoundedBezelStyleS;21;{{18, 99}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;633E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;570E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;344E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;E;S;23;CPSmallSquareBezelStyleS;22;{{18, 139}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;633E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;570E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;E;S;21;CPRoundRectBezelStyleS;22;{{18, 177}, {230, 24}}S;20;CPRecessedBezelStyleS;22;{{18, 215}, {230, 24}}S;8;borderedS;28;CPShadowlessSquareBezelStyleS;22;{{18, 255}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;633E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;598E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;E;S;25;CPRegularSquareBezelStyleS;22;{{18, 296}, {230, 24}}S;19;CPRoundedBezelStyleS;23;{{618, 296}, {230, 24}}d;2;33D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;633E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;570E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;344E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;E;S;22;{{618, 99}, {230, 24}}S;23;{{618, 139}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;633E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;570E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;E;S;22;{{618, 58}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;633E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;570E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;344E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;E;S;22;{{618, 18}, {230, 24}}S;20;{{618, 0}, {5, 717}}d;2;17D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;637E;E;S;20;{{847, 0}, {5, 717}}D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;638E;E;S;23;{{618, 177}, {230, 24}}S;23;{{618, 215}, {230, 24}}S;23;{{618, 255}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;633E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;598E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;E;S;23;{{618, 667}, {230, 24}}d;1;9S;23;{{618, 470}, {230, 24}}S;23;{{618, 510}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;633E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;570E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;E;S;23;{{618, 429}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;633E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;570E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;344E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;E;S;23;{{618, 389}, {230, 24}}S;23;{{618, 548}, {230, 24}}S;23;{{618, 586}, {230, 24}}S;23;{{618, 626}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;633E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;598E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;E;S;22;{{18, 667}, {230, 24}}d;2;12S;22;{{18, 470}, {230, 24}}S;22;{{18, 510}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;633E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;570E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;E;S;22;{{18, 389}, {230, 24}}S;22;{{18, 548}, {230, 24}}S;22;{{18, 586}, {230, 24}}S;22;{{18, 626}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;633E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;598E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;E;S;19;{{0, 18}, {870, 5}}S;18;{{0, 0}, {870, 5}}d;2;34D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;639E;E;S;19;{{0, 58}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;640E;E;S;19;{{0, 99}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;641E;E;S;20;{{0, 139}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;642E;E;S;20;{{0, 177}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;643E;E;S;20;{{0, 215}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;644E;E;S;20;{{0, 255}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;645E;E;S;20;{{0, 296}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;646E;E;S;20;{{0, 389}, {870, 5}}d;2;10D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;647E;E;S;20;{{0, 429}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;648E;E;S;20;{{0, 470}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;649E;E;S;20;{{0, 510}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;650E;E;S;20;{{0, 548}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;651E;E;S;20;{{0, 586}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;652E;E;S;20;{{0, 626}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;653E;E;S;20;{{0, 667}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;654E;E;S;22;{{18, 429}, {230, 24}}S;21;{{12, 331}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;655E;E;S;23;{{618, 331}, {230, 24}}S;12;popup-buttonS;6;Item 1S;17;_popUpItemAction:S;6;Item 2S;6;Item 3S;22;{{14, 329}, {238, 29}}S;19;{{0, 0}, {238, 29}}S;9;textfieldS;19;bezeled+placeholderD;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;633E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;570E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;E;d;4;3072D;K;6;$classD;K;6;CP$UIDd;3;514E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;656E;E;S;13;AppControllerS;10;OtherViewsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;265E;D;K;6;CP$UIDd;3;266E;E;E;S;17;Arial, sans-serifD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;657E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;401E;D;K;6;CP$UIDd;3;401E;D;K;6;CP$UIDd;3;401E;D;K;6;CP$UIDd;3;401E;E;E;f;4;0.42E;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;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;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;79E;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;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;204E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;208E;D;K;6;CP$UIDd;1;0E;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;1;0E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;215E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;217E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;219E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;223E;D;K;6;CP$UIDd;1;0E;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;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;229E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;230E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;231E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;232E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;234E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;236E;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;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;1;0E;D;K;6;CP$UIDd;3;261E;D;K;6;CP$UIDd;3;263E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;265E;D;K;6;CP$UIDd;3;266E;D;K;6;CP$UIDd;3;268E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;269E;D;K;6;CP$UIDd;3;270E;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;81E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;2;81E;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;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;170E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;159E;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;194E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;208E;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;212E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;215E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;217E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;219E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;223E;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;226E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;227E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;228E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;229E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;230E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;231E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;232E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;234E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;236E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;237E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;238E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;239E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;240E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;241E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;242E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;243E;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;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;3;206E;D;K;6;CP$UIDd;3;260E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;263E;D;K;6;CP$UIDd;3;270E;D;K;6;CP$UIDd;3;270E;D;K;6;CP$UIDd;3;270E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;268E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;3;263E;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;271E;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;272E;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;269E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;273E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;269E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;204E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;274E;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;86E;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;2;88E;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;2;91E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;11E;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;144E;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;150E;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;141E;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;149E;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;143E;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;142E;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;145E;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;105E;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;152E;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;3;148E;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;2;92E;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;2;94E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;79E;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;102E;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;2;93E;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;132E;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;133E;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;114E;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;109E;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;112E;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;127E;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;108E;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;113E;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;128E;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;110E;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;123E;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;120E;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;116E;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;126E;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;2;87E;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;156E;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;157E;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;129E;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;136E;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;137E;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;138E;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;195E;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;196E;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;197E;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;198E;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;200E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;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;201E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;318E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;202E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;319E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;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;3;320E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;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;321E;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;322E;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;323E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;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;324E;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;325E;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;326E;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;327E;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;328E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;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;329E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;179E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;330E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;180E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;331E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;172E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;332E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;173E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;333E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;174E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;334E;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;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;335E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;271E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;336E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;337E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;338E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;339E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;84E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;81E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;339E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;342E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;343E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;348E;K;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;84E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;349E;K;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;84E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;350E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;90E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;81E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;351E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;352E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;353E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;354E;K;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;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;355E;K;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;356E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;90E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;2;90E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;359E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;90E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;361E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;362E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;100E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;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;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;365E;K;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;356E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;366E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;104E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;81E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;367E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;368E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;104E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;370E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;107E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;81E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;371E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;372E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;375E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;376E;K;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;377E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;378E;K;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;379E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;380E;K;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;381E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;382E;K;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;383E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;384E;K;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;385E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;386E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;118E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;387E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;388E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;390E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;118E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;391E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;386E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;118E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;393E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;395E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;118E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;396E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;397E;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;398E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;118E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;399E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;401E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;118E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;402E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;403E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;125E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;403E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;404E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;125E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;125E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;407E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;125E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;409E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;410E;K;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;125E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;131E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;411E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;412E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;131E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;131E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;135E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;107E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;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;82E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;401E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;402E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;398E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;399E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;390E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;391E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;386E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;140E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;81E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;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;82E;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;140E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;423E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;140E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;425E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;386E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;140E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;427E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;140E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;429E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;140E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;431E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;147E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;140E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;432E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;433E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;434E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;147E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;140E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;437E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;386E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;140E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;439E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;140E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;140E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;140E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;155E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;81E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;441E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;442E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;443E;K;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;155E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;444E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;366E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;155E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;159E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;81E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;446E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;447E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;161E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;159E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;448E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;449E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;450E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;451E;K;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;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;444E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;398E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;453E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;454E;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;401E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;455E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;456E;K;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;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;457E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;390E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;459E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;461E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;462E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;171E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;463E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;464E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;465E;K;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;171E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;171E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;467E;K;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;171E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;171E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;469E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;177E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;469E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;470E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;465E;K;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;177E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;177E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;471E;K;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;177E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;182E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;472E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;473E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;465E;K;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;182E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;474E;K;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;182E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;182E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;476E;K;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;182E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;182E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;479E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;161E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;383E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;366E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;161E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;381E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;366E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;340E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;194E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;159E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;482E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;483E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;3;194E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;485E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;487E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;82E;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;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;490E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;344E;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;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;346E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;194E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;491E;K;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;82E;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;194E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;383E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;493E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;194E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;381E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;493E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;203E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;495E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;496E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;497E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;395E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;339E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;3;206E;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;205E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;499E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;500E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;501E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;503E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;401E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;510E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;401E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;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;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;512E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;513E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;514E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;516E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;520E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;513E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;514E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;521E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;522E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;523E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;524E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;401E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;525E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;401E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;526E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;527E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;528E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;529E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;530E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;531E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;532E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;533E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;534E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;535E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;536E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;534E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;537E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;538E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;539E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;534E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;540E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;398E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;541E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;542E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;534E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;540E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;398E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;543E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;542E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;401E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;525E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;401E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;544E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;542E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;545E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;528E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;546E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;542E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;523E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;547E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;542E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;401E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;510E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;401E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;548E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;513E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;549E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;550E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;551E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;513E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;549E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;552E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;553E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;542E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;554E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;531E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;532E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;555E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;542E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;534E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;535E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;556E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;542E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;534E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;557E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;538E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;558E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;559E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;534E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;540E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;398E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;560E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;559E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;401E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;525E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;401E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;561E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;559E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;562E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;528E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;563E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;559E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;523E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;564E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;559E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;401E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;510E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;401E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;565E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;559E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;566E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;531E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;532E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;567E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;559E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;534E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;535E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;568E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;559E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;534E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;569E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;538E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;570E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;532E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;534E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;540E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;398E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;571E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;532E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;401E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;525E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;401E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;572E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;532E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;573E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;528E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;574E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;532E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;401E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;510E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;401E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;575E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;532E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;576E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;531E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;532E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;577E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;532E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;534E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;535E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;578E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;532E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;534E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;579E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;538E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;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;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;582E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;583E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;584E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;581E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;582E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;585E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;586E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;581E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;582E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;587E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;588E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;581E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;582E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;589E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;590E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;581E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;582E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;591E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;592E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;581E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;582E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;593E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;594E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;581E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;582E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;595E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;596E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;581E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;582E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;597E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;598E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;581E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;599E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;600E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;601E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;581E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;599E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;602E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;603E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;581E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;599E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;604E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;605E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;581E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;599E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;606E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;607E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;581E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;599E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;608E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;609E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;581E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;599E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;610E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;611E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;581E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;599E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;612E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;613E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;581E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;599E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;614E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;E;D;K;6;$classD;K;6;CP$UIDd;3;207E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;615E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;532E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;506E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;507E;K;16;$aimage-positionD;K;6;CP$UIDd;3;498E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;498E;K;11;$aalignmentD;K;6;CP$UIDd;3;398E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;401E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;523E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;511E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;498E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;209E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;616E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;581E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;582E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;3;498E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;502E;K;12;CPBoxTypeKeyD;K;6;CP$UIDd;3;398E;K;18;CPBoxBorderTypeKeyD;K;6;CP$UIDd;3;390E;K;19;CPBoxBorderColorKeyD;K;6;CP$UIDd;3;617E;K;17;CPBoxFillColorKeyD;K;6;CP$UIDd;3;517E;K;20;CPBoxCornerRadiusKeyD;K;6;CP$UIDd;3;498E;K;19;CPBoxBorderWidthKeyD;K;6;CP$UIDd;3;401E;K;10;CPBoxTitleD;K;6;CP$UIDd;3;518E;K;18;CPBoxTitlePositionD;K;6;CP$UIDd;3;498E;K;14;CPBoxTitleViewD;K;6;CP$UIDd;1;0E;K;21;CPBoxContentMarginKeyD;K;6;CP$UIDd;3;519E;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;3;262E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;3;270E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;618E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;504E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;542E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;619E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;534E;K;6;$afontD;K;6;CP$UIDd;3;509E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;461E;K;11;$aalignmentD;K;6;CP$UIDd;3;498E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;461E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;1;0E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;345E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;346E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;532E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;498E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;3;344E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;398E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;498E;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;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;620E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;263E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;621E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;401E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;270E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;622E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;263E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;621E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;270E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;E;D;K;6;$classD;K;6;CP$UIDd;2;82E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;623E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;263E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;621E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;270E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;341E;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;267E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;498E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;624E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;625E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;505E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;626E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;627E;K;6;$afontD;K;6;CP$UIDd;3;628E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;398E;K;11;$aalignmentD;K;6;CP$UIDd;3;461E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;344E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;345E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;629E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;344E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;344E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;344E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;630E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;398E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;461E;K;31;CPTextFieldPlaceholderStringKeyD;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;631E;E;D;K;6;$classD;K;6;CP$UIDd;2;80E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;632E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;633E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;204E;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;9;AMainMenuS;11;_CPMainMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;3;103E;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;88E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;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;91E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;2;94E;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;105E;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;110E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;113E;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;117E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;130E;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;123E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;120E;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;128E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;129E;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;133E;D;K;6;CP$UIDd;3;132E;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;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;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;145E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;143E;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;148E;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;156E;D;K;6;CP$UIDd;3;157E;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;160E;D;K;6;CP$UIDd;3;193E;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;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;176E;D;K;6;CP$UIDd;3;181E;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;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;172E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;175E;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;178E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;180E;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;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;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;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;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;CPWindowS;24;{{335, -79}, {870, 717}}d;1;0S;21;{{7, 11}, {870, 717}}S;20;{{0, 0}, {870, 717}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;208E;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;237E;D;K;6;CP$UIDd;3;238E;D;K;6;CP$UIDd;3;239E;D;K;6;CP$UIDd;3;260E;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;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;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;210E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;224E;D;K;6;CP$UIDd;3;225E;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;261E;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;263E;D;K;6;CP$UIDd;3;268E;E;E;S;6;normalS;21;{{18, 18}, {230, 24}}S;19;{{0, 0}, {230, 24}}d;2;36S;6;buttonS;17;selected+borderedD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;634E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;635E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;344E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;344E;E;S;26;CPTexturedSquareBezelStyled;2;14S;19;{{18, 0}, {5, 717}}S;18;{{0, 0}, {5, 717}}d;2;20D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;636E;E;D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;637E;E;S;3;BoxS;6;{0, 0}S;20;{{247, 0}, {5, 717}}D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;638E;E;S;21;{{18, 58}, {230, 24}}S;27;CPTexturedRoundedBezelStyleS;21;{{18, 99}, {230, 24}}S;23;CPSmallSquareBezelStyleS;22;{{18, 139}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;634E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;532E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;344E;E;S;21;CPRoundRectBezelStyleS;22;{{18, 177}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;634E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;532E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;344E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;344E;E;S;20;CPRecessedBezelStyled;2;12S;22;{{18, 215}, {230, 24}}S;8;borderedS;28;CPShadowlessSquareBezelStyleS;22;{{18, 255}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;634E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;599E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;344E;E;S;25;CPRegularSquareBezelStyleS;22;{{18, 296}, {230, 24}}S;19;CPRoundedBezelStyleS;23;{{618, 296}, {230, 24}}d;2;33S;22;{{618, 99}, {230, 24}}S;23;{{618, 139}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;634E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;532E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;344E;E;S;22;{{618, 58}, {230, 24}}S;22;{{618, 18}, {230, 24}}S;20;{{618, 0}, {5, 717}}d;2;17D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;639E;E;S;20;{{847, 0}, {5, 717}}D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;640E;E;S;23;{{618, 177}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;634E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;532E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;344E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;344E;E;S;23;{{618, 215}, {230, 24}}S;23;{{618, 255}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;634E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;599E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;344E;E;S;23;{{618, 667}, {230, 24}}d;1;9S;23;{{618, 470}, {230, 24}}S;23;{{618, 510}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;634E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;532E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;344E;E;S;23;{{618, 429}, {230, 24}}S;23;{{618, 389}, {230, 24}}S;23;{{618, 548}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;634E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;532E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;344E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;344E;E;S;23;{{618, 586}, {230, 24}}S;23;{{618, 626}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;634E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;599E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;344E;E;S;22;{{18, 667}, {230, 24}}S;22;{{18, 470}, {230, 24}}S;22;{{18, 510}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;634E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;532E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;344E;E;S;22;{{18, 389}, {230, 24}}S;22;{{18, 548}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;634E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;532E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;344E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;344E;E;S;22;{{18, 586}, {230, 24}}S;22;{{18, 626}, {230, 24}}D;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;634E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;599E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;344E;E;S;19;{{0, 18}, {870, 5}}S;18;{{0, 0}, {870, 5}}d;2;34D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;641E;E;S;19;{{0, 58}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;642E;E;S;19;{{0, 99}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;643E;E;S;20;{{0, 139}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;644E;E;S;20;{{0, 177}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;645E;E;S;20;{{0, 215}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;646E;E;S;20;{{0, 255}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;647E;E;S;20;{{0, 296}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;648E;E;S;20;{{0, 389}, {870, 5}}d;2;10D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;649E;E;S;20;{{0, 429}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;650E;E;S;20;{{0, 470}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;651E;E;S;20;{{0, 510}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;652E;E;S;20;{{0, 548}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;653E;E;S;20;{{0, 586}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;654E;E;S;20;{{0, 626}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;655E;E;S;20;{{0, 667}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;656E;E;S;22;{{18, 429}, {230, 24}}S;21;{{12, 331}, {870, 5}}D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;657E;E;S;23;{{618, 331}, {230, 24}}S;12;popup-buttonS;6;Item 1S;17;_popUpItemAction:S;6;Item 2S;6;Item 3S;22;{{14, 329}, {238, 29}}S;19;{{0, 0}, {238, 29}}S;9;textfieldS;19;bezeled+placeholderD;K;6;$classD;K;6;CP$UIDd;3;508E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;634E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;635E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;346E;K;17;CPFontIsSystemKeyD;K;6;CP$UIDd;3;344E;E;d;4;3072D;K;6;$classD;K;6;CP$UIDd;3;515E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;658E;E;S;13;AppControllerS;10;OtherViewsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;265E;D;K;6;CP$UIDd;3;266E;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;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;659E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;401E;D;K;6;CP$UIDd;3;401E;D;K;6;CP$UIDd;3;401E;D;K;6;CP$UIDd;3;401E;E;E;f;4;0.42E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Tests/Manual/Nib2CibAligment/Resources/MainMenu.xib b/Tests/Manual/Nib2CibAlignment/Resources/MainMenu.xib similarity index 100% rename from Tests/Manual/Nib2CibAligment/Resources/MainMenu.xib rename to Tests/Manual/Nib2CibAlignment/Resources/MainMenu.xib diff --git a/Tests/Manual/Nib2CibAlignment/Resources/spinner.gif b/Tests/Manual/Nib2CibAlignment/Resources/spinner.gif new file mode 100644 index 000000000..06dbc2bc2 Binary files /dev/null and b/Tests/Manual/Nib2CibAlignment/Resources/spinner.gif differ diff --git a/Tests/Manual/Nib2CibAligment/index-debug.html b/Tests/Manual/Nib2CibAlignment/index-debug.html similarity index 99% rename from Tests/Manual/Nib2CibAligment/index-debug.html rename to Tests/Manual/Nib2CibAlignment/index-debug.html index 0f3b05380..98d814738 100644 --- a/Tests/Manual/Nib2CibAligment/index-debug.html +++ b/Tests/Manual/Nib2CibAlignment/index-debug.html @@ -20,7 +20,7 @@ - test2 + nib2cib alignment + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/Nib2CibBaselineAlignementTest/index.html b/Tests/Manual/Nib2CibBaselineAlignementTest/index.html new file mode 100644 index 000000000..7c0d18ce7 --- /dev/null +++ b/Tests/Manual/Nib2CibBaselineAlignementTest/index.html @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + Nib2CibBaselineAlignementTest + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/Nib2CibBaselineAlignementTest/main.j b/Tests/Manual/Nib2CibBaselineAlignementTest/main.j new file mode 100644 index 000000000..954a69dca --- /dev/null +++ b/Tests/Manual/Nib2CibBaselineAlignementTest/main.j @@ -0,0 +1,18 @@ +/* + * AppController.j + * Nib2CibBaselineAlignementTest + * + * Created by You on July 12, 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/TableTest/EditingControls/AppController.j b/Tests/Manual/TableTest/EditingControls/AppController.j new file mode 100644 index 000000000..451d4ba94 --- /dev/null +++ b/Tests/Manual/TableTest/EditingControls/AppController.j @@ -0,0 +1,83 @@ +/* + * AppController.j + * issue1593 + * + * Created by You on July 9, 2012. + * Copyright 2012, Your Company All rights reserved. + */ + +@import + +@implementation AppController : CPObject +{ + @outlet CPWindow theWindow; //this "outlet" is connected automatically by the Cib + @outlet CPTableView tableView; + @outlet CPArrayController arrayController; + + CPArray content @accessors; +} + +- (void)awakeFromCib +{ + var keys = [[tableView tableColumns] valueForKey:@"identifier"]; + [self setContent:[ + [CPDictionary dictionaryWithObjects:[YES, NO, @"NO"] forKeys:keys], + [CPDictionary dictionaryWithObjects:[NO, YES, @"YES"] forKeys:keys] + ]]; + + [self _selectSegment:0]; + [theWindow setFullPlatformWindow:YES]; +} + +- (IBAction)selectSegment:(id)sender +{ + [self _selectSegment:[sender selectedSegment]]; +} + +- (void)_selectSegment:(CPInteger)anIndex +{ + var EnumerateColumns; + + if (anIndex == 0) + { + EnumerateColumns = function(column, idx) + { + [column bind:CPValueBinding toObject:arrayController withKeyPath:(@"arrangedObjects." + [column identifier]) options:nil]; + }; + + [tableView setDataSource:nil]; + } + else + { + EnumerateColumns = function(column, idx) + { + [column unbind:CPValueBinding]; + }; + + [tableView setDataSource:self]; + } + + [[tableView tableColumns] enumerateObjectsUsingBlock:EnumerateColumns]; +} + +- (IBAction)logContent:(id)sender +{ + CPLogConsole([content description]); +} + +- (int)numberOfRowsInTableView:(id)aTableView +{ + return [content count]; +} + +- (id)tableView:(id)aTableView objectValueForTableColumn:(CPTableColumn)aTableColumn row:(int)aRow +{ + return [[content objectAtIndex:aRow] objectForKey:[aTableColumn identifier]]; +} + +- (void)tableView:(CPTableView)aTableView setObjectValue:(id)aValue forTableColumn:(CPTableColumn)aTableColumn row:(int)aRow +{ + [[content objectAtIndex:aRow] setObject:aValue forKey:[aTableColumn identifier]]; +} + +@end diff --git a/Tests/Manual/Nib2CibAligment/Info.plist b/Tests/Manual/TableTest/EditingControls/Info.plist similarity index 90% rename from Tests/Manual/Nib2CibAligment/Info.plist rename to Tests/Manual/TableTest/EditingControls/Info.plist index 7dd824f3a..96cf4eeb7 100644 --- a/Tests/Manual/Nib2CibAligment/Info.plist +++ b/Tests/Manual/TableTest/EditingControls/Info.plist @@ -5,6 +5,6 @@ Main cib file base name MainMenu.cib CPBundleName - test2 + issue1593 diff --git a/Tests/Manual/TableTest/EditingControls/Jakefile b/Tests/Manual/TableTest/EditingControls/Jakefile new file mode 100644 index 000000000..70632f181 --- /dev/null +++ b/Tests/Manual/TableTest/EditingControls/Jakefile @@ -0,0 +1,94 @@ +/* + * Jakefile + * issue1593 + * + * Created by You on July 9, 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 ("issue1593", function(task) +{ + task.setBuildIntermediatesPath(FILE.join("Build", "issue1593.build", configuration)); + task.setBuildPath(FILE.join("Build", configuration)); + + task.setProductName("issue1593"); + task.setIdentifier("com.yourcompany.issue1593"); + task.setVersion("1.0"); + task.setAuthor("Your Company"); + task.setEmail("feedback @nospam@ yourcompany.com"); + task.setSummary("issue1593"); + 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", ["issue1593"], 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", "issue1593", "index.html")]); +}); + +task ("run-release", ["release"], function() +{ + OS.system(["open", FILE.join("Build", "Release", "issue1593", "index.html")]); +}); + +task ("deploy", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Deployment", "issue1593")); + OS.system(["press", "-f", FILE.join("Build", "Release", "issue1593"), FILE.join("Build", "Deployment", "issue1593")]); + printResults("Deployment") +}); + +task ("desktop", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Desktop", "issue1593")); + require("cappuccino/nativehost").buildNativeHost(FILE.join("Build", "Release", "issue1593"), FILE.join("Build", "Desktop", "issue1593", "issue1593.app")); + printResults("Desktop") +}); + +task ("run-desktop", ["desktop"], function() +{ + OS.system([FILE.join("Build", "Desktop", "issue1593", "issue1593.app", "Contents", "MacOS", "NativeHost"), "-i"]); +}); + +function printResults(configuration) +{ + print("----------------------------"); + print(configuration+" app built at path: "+FILE.join("Build", configuration, "issue1593")); + print("----------------------------"); +} diff --git a/Tests/Manual/TableTest/EditingControls/Resources/MainMenu.cib b/Tests/Manual/TableTest/EditingControls/Resources/MainMenu.cib new file mode 100644 index 000000000..06996f31d --- /dev/null +++ b/Tests/Manual/TableTest/EditingControls/Resources/MainMenu.cib @@ -0,0 +1,4 @@ +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;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;23E;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;24E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;34E;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;36E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;38E;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;1;0E;D;K;6;CP$UIDd;2;45E;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;2;50E;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;26E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;47E;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;51E;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;52E;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;48E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;53E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;48E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;50E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;54E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;48E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;32E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;55E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;48E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;26E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;56E;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;19E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;45E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;48E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;57E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;47E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;48E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;58E;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;22E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;50E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;48E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;59E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;60E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;61E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;63E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;2;51E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;2;64E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;2;65E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;2;66E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;2;67E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;2;68E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;28E;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;27E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;69E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;70E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;70E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;71E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;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;29E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;69E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;73E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;74E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;75E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;76E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;77E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;2;79E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;2;80E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;41E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;2;38E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;2;81E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;2;81E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;2;81E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;2;81E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;2;82E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;2;82E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;2;82E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;2;83E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;2;84E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;2;69E;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;31E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;79E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;69E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;85E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;85E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;79E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;2;87E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;2;88E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;K;12;$agrid-colorD;K;6;CP$UIDd;2;89E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;90E;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;91E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;2;92E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;2;69E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;2;90E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;2;93E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;2;82E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;2;82E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;2;82E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;2;82E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;2;94E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;2;89E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;2;69E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;2;93E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;2;96E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;2;40E;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;33E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;2;97E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;2;98E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;2;99E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;100E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;102E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;104E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;105E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;2;93E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;2;82E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;33E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;106E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;107E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;2;81E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;108E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;109E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;110E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;105E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;2;93E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;2;82E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;33E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;111E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;112E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;2;81E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;108E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;113E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;114E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;105E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;2;93E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;2;82E;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;37E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;69E;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;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;117E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;119E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;69E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;30E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;120E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;90E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;2;69E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;121E;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;39E;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;2;69E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;122E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;122E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;80E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;123E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;K;29;CPTableHeaderViewTableViewKeyD;K;6;CP$UIDd;2;32E;K;33;CPTableHeaderViewDrawsColumnLinesD;K;6;CP$UIDd;2;82E;E;D;K;6;$classD;K;6;CP$UIDd;2;37E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;69E;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;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;117E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;118E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;119E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;126E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;69E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;30E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;127E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;90E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;2;69E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;128E;K;18;CPScrollerStyleKeyD;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;42E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;69E;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;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;76E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;131E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;K;6;$afontD;K;6;CP$UIDd;3;133E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;84E;K;11;$aalignmentD;K;6;CP$UIDd;2;90E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;2;82E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;134E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;135E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;2;93E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;2;93E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;2;93E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;136E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;2;84E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;90E;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;44E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;69E;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;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;76E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;111E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;139E;K;6;$afontD;K;6;CP$UIDd;3;140E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;69E;K;11;$aalignmentD;K;6;CP$UIDd;2;84E;K;17;CPControlValueKeyD;K;6;CP$UIDd;2;69E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;90E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;141E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;142E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;93E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;143E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;2;69E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;2;82E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;84E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;2;69E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;1;0E;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;46E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;69E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;144E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;145E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;76E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;146E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;K;6;$afontD;K;6;CP$UIDd;3;140E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;69E;K;11;$aalignmentD;K;6;CP$UIDd;2;84E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;90E;K;29;CPSegmentedControlSegmentsKeyD;K;6;CP$UIDd;3;147E;K;29;CPSegmentedControlSelectedKeyD;K;6;CP$UIDd;2;69E;K;33;CPSegmentedControlSegmentStyleKeyD;K;6;CP$UIDd;3;148E;K;33;CPSegmentedControlTrackingModeKeyD;K;6;CP$UIDd;2;69E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;149E;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;49E;K;28;CPObjectControllerContentKeyD;K;6;CP$UIDd;1;0E;K;36;CPObjectControllerObjectClassNameKeyD;K;6;CP$UIDd;3;150E;K;31;CPObjectControllerIsEditableKeyD;K;6;CP$UIDd;2;82E;K;49;CPObjectControllerAutomaticallyPreparesContentKeyD;K;6;CP$UIDd;2;93E;K;37;CPArrayControllerAvoidsEmptySelectionD;K;6;CP$UIDd;2;82E;K;49;CPArrayControllerClearsFilterPredicateOnInsertionD;K;6;CP$UIDd;2;82E;K;41;CPArrayControllerFilterRestrictsInsertionD;K;6;CP$UIDd;2;82E;K;35;CPArrayControllerPreservesSelectionD;K;6;CP$UIDd;2;82E;K;39;CPArrayControllerSelectsInsertedObjectsD;K;6;CP$UIDd;2;82E;K;47;CPArrayControllerAlwaysUsesMultipleValuesMarkerD;K;6;CP$UIDd;2;93E;K;47;CPArrayControllerAutomaticallyRearrangesObjectsD;K;6;CP$UIDd;2;93E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;26E;E;E;S;8;delegateS;15;arrayControllerS;9;tableViewS;9;theWindowS;11;logContent:S;14;selectSegment:S;21;contentArray: contentS;12;contentArrayS;7;contentD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;62E;K;10;CP.objectsD;E;E;S;32;{10000000000000, 10000000000000}S;8;CPWindowS;24;{{547, 308}, {728, 366}}d;1;7S;6;Windowd;1;0S;20;{{0, 0}, {728, 366}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;47E;E;E;S;6;normalS;22;{{20, 81}, {239, 246}}S;20;{{0, 0}, {239, 246}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;83E;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;78E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;69E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;151E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;85E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;152E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;117E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;153E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;32E;E;D;K;6;$classD;K;6;CP$UIDd;2;78E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;69E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;154E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;155E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;156E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;117E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;153E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;40E;E;d;2;10T;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;157E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;157E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;30E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;E;d;1;2S;20;{{0, 0}, {237, 228}}D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;86E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;158E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;2;86E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;159E;E;d;1;4d;2;23S;6;{3, 2}F;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;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;95E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;2;69E;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;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;117E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;162E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;E;S;8;checkboxd;2;85d;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;101E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;157E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;157E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;163E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;164E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;K;16;$atext-alignmentD;K;6;CP$UIDd;2;90E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;165E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;133E;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;3;103E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;157E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;157E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;166E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;K;15;$aimage-scalingD;K;6;CP$UIDd;2;84E;K;16;$aimage-positionD;K;6;CP$UIDd;2;84E;K;20;$avertical-alignmentD;K;6;CP$UIDd;2;84E;K;11;$aalignmentD;K;6;CP$UIDd;2;90E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;90E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;167E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;142E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;93E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;148E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;148E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;2;82E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;84E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;2;69E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;3;169E;E;d;1;3S;4;textd;2;80f;22;3.4028234663852886e+38D;K;6;$classD;K;6;CP$UIDd;3;101E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;157E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;157E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;170E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;164E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;K;16;$atext-alignmentD;K;6;CP$UIDd;2;69E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;171E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;42E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;157E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;157E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;131E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;172E;K;6;$afontD;K;6;CP$UIDd;3;174E;K;17;$aline-break-modeD;K;6;CP$UIDd;2;90E;K;20;$avertical-alignmentD;K;6;CP$UIDd;2;84E;K;11;$aalignmentD;K;6;CP$UIDd;2;69E;K;15;$acontent-insetD;K;6;CP$UIDd;3;176E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;142E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;135E;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;90E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;2;69E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;142E;E;S;6;buttond;2;60D;K;6;$classD;K;6;CP$UIDd;3;101E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;157E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;157E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;177E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;164E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;K;16;$atext-alignmentD;K;6;CP$UIDd;2;84E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;178E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;44E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;179E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;180E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;111E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;139E;K;15;$aimage-scalingD;K;6;CP$UIDd;2;84E;K;16;$aimage-positionD;K;6;CP$UIDd;2;69E;K;20;$avertical-alignmentD;K;6;CP$UIDd;2;84E;K;11;$aalignmentD;K;6;CP$UIDd;2;84E;K;7;$aimageD;K;6;CP$UIDd;3;181E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;2;90E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;182E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;3;183E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;2;93E;K;23;CPButtonHighlightsByKeyD;K;6;CP$UIDd;3;143E;K;23;CPButtonShowsStateByKeyD;K;6;CP$UIDd;3;184E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;2;82E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;2;69E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;2;69E;K;24;CPButtonPeriodicDelayKeyD;K;6;CP$UIDd;3;168E;K;27;CPButtonPeriodicIntervalKeyD;K;6;CP$UIDd;3;169E;E;S;19;{{1, 1}, {280, 15}}S;19;{{0, 0}, {280, 15}}d;1;8d;11;-2147483648S;8;scrollerS;29;_horizontalScrollerDidScroll:f;18;0.9916317991631799S;19;{{0, 0}, {237, 23}}S;14;tableHeaderRowS;23;{{224, 127}, {15, 102}}S;19;{{0, 0}, {15, 102}}S;17;disabled+verticalS;27;_verticalScrollerDidScroll:f;18;0.9342105263157895S;23;{{294, 129}, {371, 99}}S;19;{{0, 0}, {371, 99}}S;9;textfieldD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;132E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;185E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;184E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;93E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;93E;E;S;164;Steps: In the table, Edit a CPTextField or click a CPButton . + Log Model and see the result in the console. + +Expected: The model should reflect UI changes.d;4;3072D;K;6;$classD;K;6;CP$UIDd;2;86E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;186E;E;S;22;{{295, 79}, {166, 24}}S;19;{{0, 0}, {166, 24}}S;8;borderedD;K;6;$classD;K;6;CP$UIDd;3;132E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;185E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;184E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;82E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;93E;E;S;9;Log ModelS;0;d;2;14S;22;{{272, 19}, {177, 24}}S;19;{{0, 0}, {177, 24}}S;17;segmented-controlD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;189E;E;E;d;1;1S;13;AppControllerS;19;CPMutableDictionaryS;20;{{1, 1}, {237, 228}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;32E;E;E;D;K;6;$classD;K;6;CP$UIDd;2;86E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;190E;E;S;21;{{1, 229}, {237, 17}}S;19;{{0, 0}, {237, 17}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;40E;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;191E;D;K;6;CP$UIDd;3;191E;D;K;6;CP$UIDd;3;191E;D;K;6;CP$UIDd;3;148E;E;E;S;22;{{224, 223}, {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;193E;E;E;S;12;columnHeaderS;9;Check BoxS;9;check-boxS;5;Checkf;3;0.5f;4;0.05D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;194E;E;E;S;10;Text FieldS;11;placeholderD;K;10;$classnameS;17;_CPThemeAttributeK;8;$classesA;S;17;_CPThemeAttributeS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;173E;K;4;nameD;K;6;CP$UIDd;3;195E;K;12;defaultValueD;K;6;CP$UIDd;3;133E;K;6;valuesD;K;6;CP$UIDd;3;196E;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;175E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;197E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;198E;E;E;S;6;ButtonS;19;{{4, 6}, {-12, 24}}S;19;{{0, 0}, {-12, 24}}D;K;6;$classD;K;6;CP$UIDd;3;173E;K;4;nameD;K;6;CP$UIDd;3;199E;K;12;defaultValueD;K;6;CP$UIDd;1;0E;K;5;stateD;K;6;CP$UIDd;3;200E;K;5;valueD;K;6;CP$UIDd;3;201E;E;S;2;OnS;3;Offd;2;12S;17;Arial, sans-serifD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;148E;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;187E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;203E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;2;82E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;2;82E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;2;69E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;2;69E;E;D;K;6;$classD;K;6;CP$UIDd;3;187E;K;21;CPSegmentItemImageKeyD;K;6;CP$UIDd;1;0E;K;21;CPSegmentItemLabelKeyD;K;6;CP$UIDd;3;204E;K;20;CPSegmentItemMenuKeyD;K;6;CP$UIDd;1;0E;K;24;CPSegmentItemSelectedKeyD;K;6;CP$UIDd;2;93E;K;23;CPSegmentItemEnabledKeyD;K;6;CP$UIDd;2;82E;K;19;CPSegmentItemTagKeyD;K;6;CP$UIDd;3;148E;K;21;CPSegmentItemWidthKeyD;K;6;CP$UIDd;2;69E;E;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;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;192E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;102E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;157E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;157E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;102E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;205E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;E;D;K;6;$classD;K;6;CP$UIDd;3;192E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;109E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;157E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;157E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;109E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;205E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;E;S;4;fontD;K;6;$classD;K;6;CP$UIDd;2;62E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;140E;K;6;normalD;K;6;CP$UIDd;3;133E;E;E;S;39;{"top":0,"right":5,"bottom":0,"left":5}D;K;6;$classD;K;6;CP$UIDd;3;192E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;113E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;157E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;157E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;113E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;205E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;2;72E;E;S;5;imageS;11;highlightedD;K;6;$classD;K;6;CP$UIDd;3;132E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;206E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;207E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;93E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;2;93E;E;f;18;0.6862745098039216S;8;BindingsS;11;Data Sourced;2;18S;13;Lucida Granded;2;13E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Tests/Manual/TableTest/EditingControls/Resources/MainMenu.xib b/Tests/Manual/TableTest/EditingControls/Resources/MainMenu.xib new file mode 100644 index 000000000..362d8f7e2 --- /dev/null +++ b/Tests/Manual/TableTest/EditingControls/Resources/MainMenu.xib @@ -0,0 +1,759 @@ + + + + 1070 + 11E53 + 2809 + 1138.47 + 569.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 2809 + + + NSArrayController + NSButton + NSButtonCell + NSCustomObject + NSScrollView + NSScroller + NSSegmentedCell + NSSegmentedControl + NSTableColumn + NSTableHeaderView + NSTableView + NSTextField + NSTextFieldCell + NSView + NSWindowTemplate + + + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + + NSApplication + + + FirstResponder + + + NSApplication + + + 7 + 2 + {{547, 354}, {728, 366}} + 1954021376 + Window + NSWindow + + + + + 256 + + + + 268 + + + + 2304 + + + + 256 + {237, 228} + + + + _NS:13 + YES + + + 256 + {237, 17} + + + + _NS:16 + + + + + -2147483392 + {{224, 0}, {16, 17}} + + + + _NS:19 + + + + button + 60 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Button + + LucidaGrande + 11 + 3100 + + + 6 + System + headerColor + + 3 + MQA + + + + 6 + System + headerTextColor + + 3 + MAA + + + + + 67108864 + 134217728 + On + + LucidaGrande + 13 + 1044 + + _NS:9 + + -1229570048 + 1 + + Off + + 200 + 25 + + 3 + YES + YES + + + + checkbox + 85 + 40 + 1000 + + 75497536 + 2048 + Check Box + + + 3 + MC4zMzMzMzI5ODU2AA + + + + + 67108864 + 268435456 + Check + + _NS:9 + + 1211912448 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + 3 + YES + YES + + + + text + 80 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Text Field + + + + + + 337772096 + 2048 + Text Cell + + + + 6 + System + controlBackgroundColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + + + 3 + YES + YES + + + + 3 + 2 + + + 6 + System + gridColor + + 3 + MC41AA + + + 17 + -700448768 + + + 4 + 15 + 0 + YES + 0 + 1 + + + {{1, 17}, {237, 228}} + + + + _NS:11 + + + 4 + + + + -2147483392 + {{224, 17}, {15, 102}} + + + + _NS:58 + + _doScroller: + 0.93421052631578949 + + + + -2147483392 + {{1, 230}, {280, 15}} + + + + _NS:60 + YES + 1 + + _doScroller: + 0.99163179916317989 + + + + 2304 + + + + {{1, 0}, {237, 17}} + + + + _NS:15 + + + 4 + + + + {{20, 39}, {239, 246}} + + + + _NS:9 + 133810 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 268 + {{294, 138}, {371, 99}} + + + + _NS:1549 + YES + + 68157504 + 272630784 + U3RlcHM6IEluIHRoZSB0YWJsZSwgRWRpdCBhIENQVGV4dEZpZWxkIG9yIGNsaWNrIGEgQ1BCdXR0b24g +LgogICAgICAgICAgTG9nIE1vZGVsIGFuZCBzZWUgdGhlIHJlc3VsdCBpbiB0aGUgY29uc29sZS4KCkV4 +cGVjdGVkOiBUaGUgbW9kZWwgc2hvdWxkIHJlZmxlY3QgVUkgY2hhbmdlcy4 + + _NS:1549 + + + 6 + System + controlColor + + + + + + + + 268 + {{291, 257}, {178, 32}} + + + + _NS:9 + YES + + 67108864 + 134217728 + Log Model + + _NS:9 + + -2038284288 + 129 + + + 200 + 25 + + + + + 268 + {{276, 323}, {177, 24}} + + + + _NS:9 + YES + + 67108864 + 0 + + _NS:9 + + + + Bindings + YES + 0 + + + Data Source + 1 + 0 + + + 1 + + + + {728, 366} + + + + + {{0, 0}, {1680, 1028}} + {10000000000000, 10000000000000} + YES + + + AppController + + + YES + + YES + YES + YES + YES + YES + + + + + + + delegate + + + + 451 + + + + theWindow + + + + 459 + + + + logContent: + + + + 478 + + + + arrayController + + + + 493 + + + + tableView + + + + 494 + + + + selectSegment: + + + + 495 + + + + contentArray: content + + + + + + contentArray: content + contentArray + content + 2 + + + 473 + + + + + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 371 + + + + + + + + 372 + + + + + + + + + + + 450 + + + + + 460 + + + + + + + + + + + 461 + + + + + + + + + + 462 + + + + + 463 + + + + + 464 + + + + + 465 + + + + + + + + 469 + + + + + + + + 470 + + + + + 471 + + + + + 472 + + + + + 476 + + + + + + + + 477 + + + + + 479 + + + + + + + + 480 + + + + + 491 + + + + + + + + 492 + + + + + 505 + + + + + + + + 507 + + + + + + + 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 + + + + + + 507 + + + + + AppController + NSObject + + id + id + + + + logContent: + id + + + selectSegment: + id + + + + NSArrayController + NSTableView + NSWindow + + + + arrayController + NSArrayController + + + tableView + NSTableView + + + theWindow + NSWindow + + + + IBProjectSource + ./Classes/AppController.h + + + + + 0 + IBCocoaFramework + YES + 3 + + NSSwitch + {15, 15} + + + diff --git a/Tests/Manual/TableTest/EditingControls/Resources/spinner.gif b/Tests/Manual/TableTest/EditingControls/Resources/spinner.gif new file mode 100644 index 000000000..06dbc2bc2 Binary files /dev/null and b/Tests/Manual/TableTest/EditingControls/Resources/spinner.gif differ diff --git a/Tests/Manual/TableTest/EditingControls/index-debug.html b/Tests/Manual/TableTest/EditingControls/index-debug.html new file mode 100644 index 000000000..2d6241861 --- /dev/null +++ b/Tests/Manual/TableTest/EditingControls/index-debug.html @@ -0,0 +1,107 @@ + + + + + + + + + + + + + + + issue1593 + + + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/TableTest/EditingControls/index.html b/Tests/Manual/TableTest/EditingControls/index.html new file mode 100644 index 000000000..6f2d2308d --- /dev/null +++ b/Tests/Manual/TableTest/EditingControls/index.html @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + issue1593 + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/TableTest/EditingControls/main.j b/Tests/Manual/TableTest/EditingControls/main.j new file mode 100644 index 000000000..ba6e0a66e --- /dev/null +++ b/Tests/Manual/TableTest/EditingControls/main.j @@ -0,0 +1,18 @@ +/* + * AppController.j + * issue1593 + * + * Created by You on July 9, 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/TableTest/TableBindings/AppController.j b/Tests/Manual/TableTest/TableBindings/AppController.j index 6cb6051e6..424c21710 100644 --- a/Tests/Manual/TableTest/TableBindings/AppController.j +++ b/Tests/Manual/TableTest/TableBindings/AppController.j @@ -12,10 +12,11 @@ @implementation AppController : CPObject { CPWindow theWindow; //this "outlet" is connected automatically by the Cib - CPArrayController arrayController; - CPTextField from; - CPTextField to; - + + @outlet CPTextField locationField; + @outlet CPTextField lengthField; + @outlet CPPopUpButton KeyPathPopup; + CPArray rows @accessors; } @@ -46,11 +47,22 @@ [self setRows:theRows]; } -- (void)test:(id)sender +- (IBAction)updateOrReloadContent:(id)sender { - var range = CPMakeRange([from intValue], [to intValue]); - var indexes = [CPIndexSet indexSetWithIndexesInRange:range]; - - [[rows objectsAtIndexes:indexes] setValue:@"b" forKey:@"colTwo"]; + var range = CPMakeRange([locationField intValue], [lengthField intValue]), + indexes = [CPIndexSet indexSetWithIndexesInRange:range], + keyPath = [KeyPathPopup titleOfSelectedItem]; + + var value = String.fromCharCode(97 + Math.round(Math.random() * 26)); + + if ([sender tag] == 1000) + [[rows objectsAtIndexes:indexes] setValue:value forKey:keyPath]; + else + { + var rowsCopy = [rows copy]; + [[rowsCopy objectsAtIndexes:indexes] setValue:value forKey:keyPath]; + [self setRows:rowsCopy]; + } } + @end diff --git a/Tests/Manual/TableTest/TableBindings/Resources/MainMenu.cib b/Tests/Manual/TableTest/TableBindings/Resources/MainMenu.cib index 3614c66e3..6bd00af62 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;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;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;86E;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;87E;D;K;6;CP$UIDd;2;89E;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;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;212E;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;219E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;223E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;224E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;226E;D;K;6;CP$UIDd;3;228E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;229E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;231E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;232E;D;K;6;CP$UIDd;3;234E;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;89E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;115E;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;115E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;115E;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;2;89E;D;K;6;CP$UIDd;3;147E;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;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;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;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;2;89E;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;169E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;178E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;169E;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;169E;D;K;6;CP$UIDd;3;189E;D;K;6;CP$UIDd;3;190E;D;K;6;CP$UIDd;3;190E;D;K;6;CP$UIDd;3;190E;D;K;6;CP$UIDd;3;190E;D;K;6;CP$UIDd;3;190E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;201E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;223E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;224E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;228E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;229E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;231E;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;235E;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;236E;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;232E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;237E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;232E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;234E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;238E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;232E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;228E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;239E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;232E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;212E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;240E;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;232E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;229E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;241E;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;94E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;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;2;96E;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;99E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;11E;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;152E;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;158E;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;149E;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;157E;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;151E;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;150E;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;153E;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;113E;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;160E;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;156E;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;100E;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;102E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;87E;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;110E;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;101E;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;3;140E;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;141E;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;122E;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;117E;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;120E;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;135E;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;116E;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;121E;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;136E;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;118E;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;131E;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;128E;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;124E;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;134E;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;2;95E;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;164E;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;165E;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;137E;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;144E;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;145E;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;146E;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;203E;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;204E;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;205E;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;206E;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;208E;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;209E;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;210E;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;173E;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;197E;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;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;289E;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;290E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;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;291E;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;292E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;193E;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;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;294E;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;295E;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;296E;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;297E;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;298E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;180E;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;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;300E;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;301E;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;302E;E;D;K;6;$classD;K;6;CP$UIDd;2;20E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;231E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;232E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;303E;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;83E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;234E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;232E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;304E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;305E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;306E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;308E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;224E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;234E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;309E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;310E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;311E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;312E;E;D;K;6;$classD;K;6;CP$UIDd;2;83E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;223E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;234E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;313E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;310E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;314E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;315E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;235E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;316E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;317E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;318E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;319E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;92E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;89E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;319E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;322E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;323E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;324E;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;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;326E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;92E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;2;92E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;2;92E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;2;92E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;330E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;98E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;89E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;331E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;332E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;333E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;334E;K;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;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;98E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;336E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;2;98E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;338E;K;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;98E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;339E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;324E;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;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;326E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;341E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;324E;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;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;326E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;324E;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;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;326E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;3;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;108E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;342E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;343E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;344E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;324E;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;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;326E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;2;98E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;336E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;346E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;3;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;112E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;89E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;347E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;348E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;349E;K;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;112E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;350E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;115E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;89E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;351E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;352E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;115E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;354E;K;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;115E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;355E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;115E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;357E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;324E;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;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;326E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;115E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;115E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;359E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;3;115E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;361E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;362E;K;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;115E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;363E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;324E;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;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;326E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;115E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;115E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;365E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;366E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;3;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;126E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;115E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;367E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;368E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;370E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;371E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;366E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;126E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;373E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;375E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;376E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;378E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;379E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;380E;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;381E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;126E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;382E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;133E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;115E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;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;90E;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;133E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;133E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;387E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;133E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;389E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;133E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;3;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;139E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;115E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;391E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;392E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;139E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;139E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;395E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;143E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;115E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;395E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;396E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;397E;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;381E;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;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;378E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;379E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;370E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;143E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;371E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;366E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;148E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;89E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;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;90E;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;3;148E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;403E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;148E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;405E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;366E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;3;148E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;407E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;148E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;409E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;410E;K;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;148E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;411E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;3;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;155E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;148E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;412E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;413E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;414E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;155E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;148E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;417E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;366E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;148E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;419E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;324E;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;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;326E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;148E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;148E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;324E;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;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;326E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;148E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;3;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;163E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;89E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;421E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;422E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;163E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;424E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;346E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;163E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;3;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;167E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;89E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;426E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;427E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;3;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;169E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;428E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;429E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;430E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;169E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;424E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;378E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;169E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;433E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;381E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;169E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;435E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;169E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;437E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;324E;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;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;326E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;169E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;370E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;169E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;439E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;441E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;169E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;442E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;324E;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;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;326E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;169E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;443E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;179E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;169E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;443E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;444E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;179E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;3;179E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;179E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;179E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;3;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;185E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;169E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;449E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;450E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;185E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;3;185E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;451E;K;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;90E;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;3;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;190E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;169E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;452E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;453E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;190E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;454E;K;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;190E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;190E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;456E;K;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;190E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;190E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;324E;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;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;326E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;169E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;169E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;459E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;324E;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;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;326E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;169E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;169E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;363E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;346E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;169E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;361E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;346E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;3;320E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;202E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;88E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;462E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;463E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;202E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;465E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;202E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;467E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;202E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;469E;K;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;202E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;470E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;321E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;324E;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;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;326E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;202E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;471E;K;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;202E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;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;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;202E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;363E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;473E;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;474E;K;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;202E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;361E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;473E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;211E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;475E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;476E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;477E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;375E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;319E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;3;214E;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;213E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;478E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;479E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;479E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;480E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;481E;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;215E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;214E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;478E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;482E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;483E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;484E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;214E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;485E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;486E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;481E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;488E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;3;489E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;3;218E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;3;219E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;490E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;490E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;490E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;490E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;324E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;324E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;324E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;491E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;378E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;3;478E;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;217E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;216E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;478E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;492E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;493E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;216E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;494E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;495E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;496E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;497E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;498E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;216E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;499E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;441E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;478E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;500E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;217E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;216E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;478E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;501E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;502E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;216E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;494E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;495E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;496E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;503E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;478E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;3;216E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;504E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;441E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;478E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;505E;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;3;220E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;488E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;478E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;506E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;506E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;488E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;508E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;509E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;481E;K;12;$agrid-colorD;K;6;CP$UIDd;3;510E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;441E;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;511E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;512E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;478E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;381E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;326E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;324E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;324E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;324E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;324E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;513E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;510E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;3;478E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;324E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;3;515E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;3;226E;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;222E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;516E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;517E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;518E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;520E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;521E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;370E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;326E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;324E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;222E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;522E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;517E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;518E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;523E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;524E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;370E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;326E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;324E;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;225E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;489E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;478E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;525E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;525E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;489E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;526E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;481E;K;29;CPTableHeaderViewTableViewKeyD;K;6;CP$UIDd;3;221E;K;33;CPTableHeaderViewDrawsColumnLinesD;K;6;CP$UIDd;3;324E;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;227E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;214E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;478E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;527E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;528E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;214E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;485E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;529E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;530E;K;6;$afontD;K;6;CP$UIDd;3;532E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;378E;K;11;$aalignmentD;K;6;CP$UIDd;3;441E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;324E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;325E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;533E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;324E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;324E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;324E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;508E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;378E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;441E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;3;227E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;214E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;478E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;534E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;528E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;214E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;485E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;529E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;530E;K;6;$afontD;K;6;CP$UIDd;3;532E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;378E;K;11;$aalignmentD;K;6;CP$UIDd;3;441E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;324E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;325E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;533E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;324E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;324E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;324E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;508E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;378E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;441E;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;3;230E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;214E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;478E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;535E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;536E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;214E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;485E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;537E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;538E;K;16;$aimage-positionD;K;6;CP$UIDd;3;478E;K;6;$afontD;K;6;CP$UIDd;3;539E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;478E;K;11;$aalignmentD;K;6;CP$UIDd;3;478E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;478E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;441E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;540E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;326E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;478E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;478E;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;541E;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;233E;K;28;CPObjectControllerContentKeyD;K;6;CP$UIDd;1;0E;K;36;CPObjectControllerObjectClassNameKeyD;K;6;CP$UIDd;3;542E;K;31;CPObjectControllerIsEditableKeyD;K;6;CP$UIDd;3;324E;K;49;CPObjectControllerAutomaticallyPreparesContentKeyD;K;6;CP$UIDd;3;326E;K;37;CPArrayControllerAvoidsEmptySelectionD;K;6;CP$UIDd;3;326E;K;49;CPArrayControllerClearsFilterPredicateOnInsertionD;K;6;CP$UIDd;3;326E;K;41;CPArrayControllerFilterRestrictsInsertionD;K;6;CP$UIDd;3;324E;K;35;CPArrayControllerPreservesSelectionD;K;6;CP$UIDd;3;326E;K;39;CPArrayControllerSelectsInsertedObjectsD;K;6;CP$UIDd;3;326E;K;47;CPArrayControllerAlwaysUsesMultipleValuesMarkerD;K;6;CP$UIDd;3;326E;K;47;CPArrayControllerAutomaticallyRearrangesObjectsD;K;6;CP$UIDd;3;326E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;212E;E;E;S;8;delegateS;15;arrayControllerS;4;fromS;9;theWindowS;2;toS;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;5;test:S;18;contentArray: rowsS;12;contentArrayS;4;rowsD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;307E;K;10;CP.objectsD;E;E;S;29;value: arrangedObjects.colTwoS;5;valueS;22;arrangedObjects.colTwoD;K;6;$classD;K;6;CP$UIDd;3;307E;K;10;CP.objectsD;K;22;CPValidatesImmediatelyD;K;6;CP$UIDd;3;324E;E;E;S;29;value: arrangedObjects.colOneS;22;arrangedObjects.colOneD;K;6;$classD;K;6;CP$UIDd;3;307E;K;10;CP.objectsD;K;22;CPValidatesImmediatelyD;K;6;CP$UIDd;3;324E;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;97E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;3;111E;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;96E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;94E;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;99E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;102E;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;113E;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;118E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;138E;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;131E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;128E;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;136E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;137E;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;141E;D;K;6;CP$UIDd;3;140E;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;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;146E;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;153E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;151E;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;156E;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;164E;D;K;6;CP$UIDd;3;165E;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;168E;D;K;6;CP$UIDd;3;201E;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;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;184E;D;K;6;CP$UIDd;3;189E;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;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;180E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;183E;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;186E;D;K;6;CP$UIDd;3;187E;D;K;6;CP$UIDd;3;188E;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;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;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;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;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;CPWindowS;24;{{335, 128}, {663, 442}}d;1;0S;20;{{0, 0}, {663, 442}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;231E;D;K;6;CP$UIDd;3;228E;D;K;6;CP$UIDd;3;229E;E;E;S;6;normalS;22;{{-1, -1}, {665, 384}}S;20;{{0, 0}, {665, 384}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;488E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;219E;D;K;6;CP$UIDd;3;489E;D;K;6;CP$UIDd;3;515E;D;K;6;CP$UIDd;3;491E;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;487E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;216E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;478E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;543E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;506E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;544E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;216E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;494E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;545E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;481E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;3;221E;E;D;K;6;$classD;K;6;CP$UIDd;3;487E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;216E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;478E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;546E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;547E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;548E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;216E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;494E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;545E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;481E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;3;226E;E;d;2;10D;K;6;$classD;K;6;CP$UIDd;3;213E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;216E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;549E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;549E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;216E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;481E;E;S;23;{{224, 265}, {15, 102}}S;19;{{0, 0}, {15, 102}}d;1;8d;11;-2147483648S;8;scrollerS;17;disabled+verticald;2;37S;27;_verticalScrollerDidScroll:f;18;0.1947367936372757S;21;{{1, 250}, {223, 15}}S;19;{{0, 0}, {223, 15}}S;8;disabledS;29;_horizontalScrollerDidScroll:f;18;0.5714285969734192S;20;{{0, 0}, {663, 366}}D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;507E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;550E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;3;507E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;551E;E;d;2;23S;6;{3, 2}D;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;224E;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;514E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;216E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;478E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;552E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;553E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;216E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;494E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;554E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;481E;E;d;3;101d;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;519E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;549E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;549E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;555E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;556E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;481E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;478E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;325E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;532E;E;D;K;6;$classD;K;6;CP$UIDd;3;227E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;549E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;549E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;529E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;557E;K;6;$afontD;K;6;CP$UIDd;3;559E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;441E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;378E;K;11;$aalignmentD;K;6;CP$UIDd;3;478E;K;15;$acontent-insetD;K;6;CP$UIDd;3;561E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;325E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;533E;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;441E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;478E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;325E;E;d;3;556D;K;6;$classD;K;6;CP$UIDd;3;519E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;549E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;549E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;562E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;556E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;481E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;478E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;325E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;532E;E;D;K;6;$classD;K;6;CP$UIDd;3;227E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;549E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;549E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;529E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;557E;K;6;$afontD;K;6;CP$UIDd;3;563E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;441E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;378E;K;11;$aalignmentD;K;6;CP$UIDd;3;478E;K;15;$acontent-insetD;K;6;CP$UIDd;3;564E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;325E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;533E;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;441E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;478E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;325E;E;S;19;{{0, 0}, {663, 23}}S;14;tableHeaderRowS;22;{{556, 392}, {40, 29}}S;18;{{0, 0}, {40, 29}}S;9;textfieldS;19;bezeled+placeholderD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;531E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;565E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;566E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;326E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;326E;E;d;4;3072S;22;{{605, 392}, {40, 29}}S;23;{{380, 393}, {163, 24}}S;19;{{0, 0}, {163, 24}}S;6;buttonS;8;borderedD;K;6;$classD;K;6;CP$UIDd;3;531E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;565E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;566E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;324E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;326E;E;S;22;Change Model In Range:S;13;AppControllerS;19;CPMutableDictionaryS;20;{{1, 1}, {663, 366}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;221E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;507E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;567E;E;S;21;{{1, 367}, {663, 17}}S;19;{{0, 0}, {663, 17}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;226E;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;381E;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;3;381E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;568E;D;K;6;CP$UIDd;3;568E;D;K;6;CP$UIDd;3;568E;D;K;6;CP$UIDd;3;381E;E;E;S;22;{{224, 361}, {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;570E;E;E;S;12;columnHeaderS;11;placeholderD;K;10;$classnameS;17;_CPThemeAttributeK;8;$classesA;S;17;_CPThemeAttributeS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;558E;K;4;nameD;K;6;CP$UIDd;3;571E;K;12;defaultValueD;K;6;CP$UIDd;3;532E;K;6;valuesD;K;6;CP$UIDd;3;572E;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;560E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;573E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;574E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;558E;K;4;nameD;K;6;CP$UIDd;3;571E;K;12;defaultValueD;K;6;CP$UIDd;3;532E;K;6;valuesD;K;6;CP$UIDd;3;575E;E;D;K;6;$classD;K;6;CP$UIDd;3;560E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;573E;E;S;17;Arial, sans-serifd;2;12D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;3;381E;E;E;f;3;0.5D;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;569E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;520E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;549E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;549E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;520E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;576E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;481E;E;S;4;fontD;K;6;$classD;K;6;CP$UIDd;3;307E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;539E;K;6;normalD;K;6;CP$UIDd;3;532E;E;E;S;39;{"top":0,"right":5,"bottom":0,"left":5}D;K;6;$classD;K;6;CP$UIDd;3;569E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;523E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;549E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;549E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;523E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;576E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;481E;E;D;K;6;$classD;K;6;CP$UIDd;3;307E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;539E;K;6;normalD;K;6;CP$UIDd;3;532E;E;E;d;2;18E;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;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;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;2;41E;D;K;6;CP$UIDd;2;43E;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;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;1;0E;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;55E;D;K;6;CP$UIDd;1;0E;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;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;2;66E;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;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;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;2;77E;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;39E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;51E;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;55E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;79E;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;61E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;63E;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;71E;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;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;55E;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;75E;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;75E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;55E;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;75E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;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;75E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;51E;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;75E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;52E;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;75E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;51E;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;75E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;35E;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;75E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;52E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;89E;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;61E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;51E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;62E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;52E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;90E;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;75E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;73E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;75E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;91E;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;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;43E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;92E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;93E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;94E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;2;96E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;75E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;2;97E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;2;98E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;2;99E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;100E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;68E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;101E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;102E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;103E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;104E;E;D;K;6;$classD;K;6;CP$UIDd;2;28E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;67E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;77E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;105E;K;31;CPCibBindingConnectorBindingKeyD;K;6;CP$UIDd;3;102E;K;31;CPCibBindingConnectorKeyPathKeyD;K;6;CP$UIDd;3;106E;K;31;CPCibBindingConnectorOptionsKeyD;K;6;CP$UIDd;3;107E;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;3;108E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;109E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;110E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;111E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;112E;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;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;114E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;114E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;115E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;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;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;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;117E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;118E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;119E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;120E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;121E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;123E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;3;124E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;49E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;2;48E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;125E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;125E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;125E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;125E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;126E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;126E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;126E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;127E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;128E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;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;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;124E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;129E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;129E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;124E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;130E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;29;CPTableHeaderViewTableViewKeyD;K;6;CP$UIDd;2;43E;K;33;CPTableHeaderViewDrawsColumnLinesD;K;6;CP$UIDd;3;126E;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;42E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;123E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;131E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;131E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;123E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;133E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;134E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;12;$agrid-colorD;K;6;CP$UIDd;3;135E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;136E;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;137E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;138E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;113E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;139E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;140E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;126E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;126E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;126E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;126E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;141E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;135E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;1;0E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;126E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;3;143E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;2;41E;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;44E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;144E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;145E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;146E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;148E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;149E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;150E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;140E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;126E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;44E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;151E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;145E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;146E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;152E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;153E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;150E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;140E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;126E;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;47E;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;113E;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;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;156E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;157E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;158E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;159E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;113E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;39E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;160E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;136E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;113E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;161E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;47E;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;113E;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;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;156E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;157E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;158E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;164E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;165E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;39E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;166E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;136E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;113E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;167E;K;18;CPScrollerStyleKeyD;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;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;113E;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;120E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;170E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;171E;K;6;$afontD;K;6;CP$UIDd;3;173E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;128E;K;11;$aalignmentD;K;6;CP$UIDd;3;136E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;126E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;174E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;175E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;126E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;126E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;126E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;133E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;128E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;136E;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;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;176E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;177E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;120E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;170E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;171E;K;6;$afontD;K;6;CP$UIDd;3;178E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;128E;K;11;$aalignmentD;K;6;CP$UIDd;3;136E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;126E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;179E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;175E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;126E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;126E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;126E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;3;133E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;128E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;136E;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;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;180E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;181E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;120E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;170E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;6;$afontD;K;6;CP$UIDd;3;182E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;128E;K;11;$aalignmentD;K;6;CP$UIDd;3;136E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;126E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;183E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;175E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;140E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;140E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;140E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;128E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;136E;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;54E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;2;79E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;184E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;185E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;120E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;186E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;187E;K;6;$afontD;K;6;CP$UIDd;3;188E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;136E;K;11;$aalignmentD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;113E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;136E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;1;0E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;140E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;128E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;113E;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;56E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;189E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;55E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;190E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;3;139E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;79E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;191E;E;D;K;6;$classD;K;6;CP$UIDd;2;56E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;192E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;55E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;190E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;79E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;191E;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;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;193E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;194E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;120E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;170E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;6;$afontD;K;6;CP$UIDd;3;182E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;128E;K;11;$aalignmentD;K;6;CP$UIDd;3;136E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;126E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;195E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;175E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;140E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;140E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;140E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;128E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;136E;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;60E;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;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;196E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;197E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;120E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;198E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;113E;K;11;$aalignmentD;K;6;CP$UIDd;3;113E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;199E;K;18;CPStepperIncrementD;K;6;CP$UIDd;3;139E;K;17;CPStepperMaxValueD;K;6;CP$UIDd;3;151E;K;19;CPStepperAutorepeatD;K;6;CP$UIDd;3;126E;E;D;K;6;$classD;K;6;CP$UIDd;2;60E;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;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;200E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;197E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;120E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;198E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;113E;K;11;$aalignmentD;K;6;CP$UIDd;3;113E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;201E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;199E;K;18;CPStepperIncrementD;K;6;CP$UIDd;3;139E;K;17;CPStepperMaxValueD;K;6;CP$UIDd;3;151E;K;19;CPStepperAutorepeatD;K;6;CP$UIDd;3;126E;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;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;202E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;203E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;204E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;120E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;121E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;205E;K;29;CPScrollViewHeaderClipViewKeyD;K;6;CP$UIDd;3;206E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;64E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;2;65E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;125E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;125E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;125E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;125E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;126E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;126E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;126E;K;25;CPScrollViewCornerViewKeyD;K;6;CP$UIDd;1;0E;K;31;CPScrollViewBottomCornerViewKeyD;K;6;CP$UIDd;3;207E;K;25;CPScrollViewBorderTypeKeyD;K;6;CP$UIDd;3;128E;K;28;CPScrollViewScrollerStyleKeyD;K;6;CP$UIDd;1;0E;K;32;CPScrollViewScrollerKnobStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;47E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;63E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;113E;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;63E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;156E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;157E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;158E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;164E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;165E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;63E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;166E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;136E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;113E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;167E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;47E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;63E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;113E;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;63E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;156E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;3;157E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;158E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;159E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;113E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;63E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;160E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;136E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;113E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;161E;K;18;CPScrollerStyleKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;42E;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;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;208E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;208E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;205E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;133E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;134E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;12;$agrid-colorD;K;6;CP$UIDd;3;135E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;136E;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;137E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;138E;K;37;CPTableViewSelectionHighlightStyleKeyD;K;6;CP$UIDd;3;113E;K;37;CPTableViewColumnAutoresizingStyleKeyD;K;6;CP$UIDd;3;139E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;140E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;126E;K;30;CPTableViewColumnReorderingKeyD;K;6;CP$UIDd;3;126E;K;28;CPTableViewColumnResizingKeyD;K;6;CP$UIDd;3;126E;K;29;CPTableViewColumnSelectionKeyD;K;6;CP$UIDd;3;126E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;209E;K;23;CPTableViewGridColorKeyD;K;6;CP$UIDd;3;135E;K;27;CPTableViewGridStyleMaskKeyD;K;6;CP$UIDd;1;0E;K;39;CPTableViewUsesAlternatingBackgroundKeyD;K;6;CP$UIDd;3;126E;K;34;CPTableViewAlternatingRowColorsKeyD;K;6;CP$UIDd;1;0E;K;24;CPTableViewCornerViewKeyD;K;6;CP$UIDd;3;210E;K;24;CPTableViewHeaderViewKeyD;K;6;CP$UIDd;2;69E;K;26;CPTableViewAutosaveNameKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;44E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;211E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;145E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;146E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;212E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;213E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;150E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;140E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;126E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;44E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;214E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;145E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;146E;K;26;CPTableColumnHeaderViewKeyD;K;6;CP$UIDd;3;215E;K;24;CPTableColumnDataViewKeyD;K;6;CP$UIDd;3;216E;K;28;CPTableColumnResizingMaskKeyD;K;6;CP$UIDd;3;150E;K;24;CPTableColumnIsHiddenKeyD;K;6;CP$UIDd;3;140E;K;26;CPTableColumnIsEditableKeyD;K;6;CP$UIDd;3;126E;K;28;CPSortDescriptorPrototypeKeyD;K;6;CP$UIDd;1;0E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;206E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;217E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;217E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;206E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;130E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;29;CPTableHeaderViewTableViewKeyD;K;6;CP$UIDd;2;66E;K;33;CPTableHeaderViewDrawsColumnLinesD;K;6;CP$UIDd;3;126E;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;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;218E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;219E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;120E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;170E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;6;$afontD;K;6;CP$UIDd;3;182E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;128E;K;11;$aalignmentD;K;6;CP$UIDd;3;136E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;126E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;220E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;175E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;140E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;140E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;140E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;128E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;136E;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;37E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;221E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;219E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;120E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;170E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;6;$afontD;K;6;CP$UIDd;3;182E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;128E;K;11;$aalignmentD;K;6;CP$UIDd;3;136E;K;35;CPControlSendsActionOnEndEditingKeyD;K;6;CP$UIDd;3;126E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;222E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;175E;K;24;CPTextFieldIsEditableKeyD;K;6;CP$UIDd;3;140E;K;26;CPTextFieldIsSelectableKeyD;K;6;CP$UIDd;3;140E;K;29;CPTextFieldDrawsBackgroundKeyD;K;6;CP$UIDd;3;140E;K;29;CPTextFieldBackgroundColorKeyD;K;6;CP$UIDd;1;0E;K;27;CPTextFieldLineBreakModeKeyD;K;6;CP$UIDd;3;128E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;136E;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;72E;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;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;223E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;224E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;120E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;225E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;187E;K;6;$afontD;K;6;CP$UIDd;3;188E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;113E;K;11;$aalignmentD;K;6;CP$UIDd;3;128E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;113E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;136E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;226E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;140E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;128E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;113E;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;72E;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;146E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;227E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;228E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;37E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;120E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;225E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;187E;K;6;$afontD;K;6;CP$UIDd;3;188E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;113E;K;11;$aalignmentD;K;6;CP$UIDd;3;128E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;113E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;136E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;3;229E;K;25;CPButtonAlternateTitleKeyD;K;6;CP$UIDd;1;0E;K;27;CPButtonAllowsMixedStateKeyD;K;6;CP$UIDd;3;140E;K;32;CPButtonImageDimsWhenDisabledKeyD;K;6;CP$UIDd;1;0E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;3;128E;K;28;CPButtonKeyEquivalentMaskKeyD;K;6;CP$UIDd;3;113E;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;230E;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;76E;K;28;CPObjectControllerContentKeyD;K;6;CP$UIDd;1;0E;K;36;CPObjectControllerObjectClassNameKeyD;K;6;CP$UIDd;3;231E;K;31;CPObjectControllerIsEditableKeyD;K;6;CP$UIDd;3;126E;K;49;CPObjectControllerAutomaticallyPreparesContentKeyD;K;6;CP$UIDd;3;140E;K;37;CPArrayControllerAvoidsEmptySelectionD;K;6;CP$UIDd;3;140E;K;49;CPArrayControllerClearsFilterPredicateOnInsertionD;K;6;CP$UIDd;3;140E;K;41;CPArrayControllerFilterRestrictsInsertionD;K;6;CP$UIDd;3;126E;K;35;CPArrayControllerPreservesSelectionD;K;6;CP$UIDd;3;140E;K;39;CPArrayControllerSelectsInsertedObjectsD;K;6;CP$UIDd;3;140E;K;47;CPArrayControllerAlwaysUsesMultipleValuesMarkerD;K;6;CP$UIDd;3;140E;K;47;CPArrayControllerAutomaticallyRearrangesObjectsD;K;6;CP$UIDd;3;140E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;78E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;232E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;233E;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;12;KeyPathPopupS;15;arrayControllerS;4;fromS;11;lengthFieldS;13;locationFieldS;9;theWindowS;2;toS;21;takeIntegerValueFrom:S;22;updateOrReloadContent:S;24;content: arrangedObjectsS;7;contentS;15;arrangedObjectsD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;95E;K;10;CP.objectsD;E;E;S;18;contentArray: rowsS;12;contentArrayS;4;rowsD;K;6;$classD;K;6;CP$UIDd;2;95E;K;10;CP.objectsD;E;E;S;29;value: arrangedObjects.colTwoS;5;valueS;22;arrangedObjects.colTwoD;K;6;$classD;K;6;CP$UIDd;2;95E;K;10;CP.objectsD;E;E;S;29;value: arrangedObjects.colOneS;22;arrangedObjects.colOneD;K;6;$classD;K;6;CP$UIDd;2;95E;K;10;CP.objectsD;E;E;S;32;{10000000000000, 10000000000000}S;8;CPWindowS;24;{{335, 266}, {999, 454}}d;1;7S;6;Windowd;1;0S;20;{{0, 0}, {999, 454}}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;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;E;E;S;6;normalS;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;123E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;127E;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;122E;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;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;234E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;131E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;235E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;156E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;236E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;43E;E;D;K;6;$classD;K;6;CP$UIDd;3;122E;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;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;237E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;238E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;239E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;156E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;236E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;41E;E;d;2;10T;D;K;6;$classD;K;6;CP$UIDd;2;36E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;39E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;240E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;240E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;39E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;E;d;1;2S;19;{{0, 0}, {499, 23}}S;14;tableHeaderRowS;20;{{0, 0}, {499, 342}}D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;132E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;241E;E;S;9;tableviewD;K;6;$classD;K;6;CP$UIDd;3;132E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;242E;E;d;1;4d;2;23S;6;{3, 2}d;1;1F;D;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;45E;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;142E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;243E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;244E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;245E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;E;d;3;393d;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;147E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;240E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;240E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;246E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;247E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;113E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;248E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;182E;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;240E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;240E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;170E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;249E;K;6;$afontD;K;6;CP$UIDd;3;251E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;136E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;128E;K;11;$aalignmentD;K;6;CP$UIDd;3;113E;K;15;$acontent-insetD;K;6;CP$UIDd;3;253E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;248E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;175E;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;136E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;113E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;248E;E;d;1;3d;3;100D;K;6;$classD;K;6;CP$UIDd;3;147E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;240E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;240E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;254E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;247E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;113E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;248E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;182E;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;240E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;240E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;170E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;249E;K;6;$afontD;K;6;CP$UIDd;3;255E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;136E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;128E;K;11;$aalignmentD;K;6;CP$UIDd;3;113E;K;15;$acontent-insetD;K;6;CP$UIDd;3;256E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;248E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;175E;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;136E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;113E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;248E;E;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;23;{{224, 241}, {15, 102}}S;19;{{0, 0}, {15, 102}}S;17;disabled+verticald;2;37S;27;_verticalScrollerDidScroll:f;18;0.1947367936372757S;22;{{510, 408}, {34, 29}}S;18;{{0, 0}, {34, 29}}S;9;textfieldS;7;bezeledD;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;172E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;257E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;258E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;140E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;140E;E;S;1;0d;4;3072S;22;{{581, 408}, {35, 29}}S;18;{{0, 0}, {35, 29}}D;K;6;$classD;K;6;CP$UIDd;3;172E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;257E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;258E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;140E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;140E;E;S;1;5S;23;{{179, 417}, {171, 17}}S;19;{{0, 0}, {171, 17}}D;K;6;$classD;K;6;CP$UIDd;3;172E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;257E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;258E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;140E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;140E;E;S;26;Model values for Key Path:S;22;{{353, 412}, {74, 24}}S;18;{{0, 0}, {74, 24}}S;12;popup-buttonS;8;borderedD;K;6;$classD;K;6;CP$UIDd;3;172E;K;13;CPFontNameKeyD;K;6;CP$UIDd;3;257E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;3;258E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;3;126E;K;17;CPFontIsItalicKeyD;K;6;CP$UIDd;3;140E;E;S;6;colOneS;17;_popUpItemAction:d;7;1048576S;6;colTwoS;22;{{452, 417}, {59, 17}}S;18;{{0, 0}, {59, 17}}S;8;In RangeS;22;{{547, 410}, {19, 27}}S;18;{{0, 0}, {19, 27}}S;7;stepperd;5;65540S;22;{{619, 410}, {19, 27}}d;1;5S;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;205E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;207E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;122E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;63E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;259E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;208E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;260E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;63E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;156E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;236E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;3;122E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;63E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;261E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;262E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;263E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;63E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;156E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;236E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;69E;E;D;K;6;$classD;K;6;CP$UIDd;2;36E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;63E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;240E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;240E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;63E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;1;0E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;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;2;67E;D;K;6;CP$UIDd;2;68E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;142E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;12;CPViewTagKeyD;K;6;CP$UIDd;3;113E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;243E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;244E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;245E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;E;d;2;76D;K;6;$classD;K;6;CP$UIDd;3;147E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;240E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;240E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;264E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;247E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;113E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;248E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;182E;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;240E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;240E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;170E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;249E;K;6;$afontD;K;6;CP$UIDd;3;265E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;136E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;128E;K;11;$aalignmentD;K;6;CP$UIDd;3;113E;K;15;$acontent-insetD;K;6;CP$UIDd;3;266E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;248E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;175E;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;136E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;113E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;248E;E;d;3;366D;K;6;$classD;K;6;CP$UIDd;3;147E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;240E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;240E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;267E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;247E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;116E;K;16;$atext-alignmentD;K;6;CP$UIDd;3;113E;K;38;_CPTableColumnHeaderViewStringValueKeyD;K;6;CP$UIDd;3;248E;K;32;_CPTableColumnHeaderViewImageKeyD;K;6;CP$UIDd;1;0E;K;31;_CPTableColumnHeaderViewFontKeyD;K;6;CP$UIDd;3;182E;E;D;K;6;$classD;K;6;CP$UIDd;2;50E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;240E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;240E;K;19;CPViewThemeClassKeyD;K;6;CP$UIDd;3;170E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;249E;K;6;$afontD;K;6;CP$UIDd;3;268E;K;17;$aline-break-modeD;K;6;CP$UIDd;3;136E;K;20;$avertical-alignmentD;K;6;CP$UIDd;3;128E;K;11;$aalignmentD;K;6;CP$UIDd;3;113E;K;15;$acontent-insetD;K;6;CP$UIDd;3;269E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;248E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;175E;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;136E;K;23;CPTextFieldAlignmentKeyD;K;6;CP$UIDd;3;113E;K;31;CPTextFieldPlaceholderStringKeyD;K;6;CP$UIDd;3;248E;E;S;19;{{0, 0}, {448, 23}}S;20;{{17, 6}, {244, 17}}S;19;{{0, 0}, {244, 17}}S;26;Table Column Value BindingS;21;{{478, 6}, {244, 17}}S;26;Table View Content BindingS;22;{{930, 414}, {47, 24}}S;18;{{0, 0}, {47, 24}}S;6;buttonS;3;SetS;22;{{834, 414}, {84, 24}}S;18;{{0, 0}, {84, 24}}S;8;MutationS;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;57E;D;K;6;CP$UIDd;2;58E;E;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;43E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;132E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;270E;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;2;41E;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;139E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;139E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;271E;D;K;6;CP$UIDd;3;271E;D;K;6;CP$UIDd;3;271E;D;K;6;CP$UIDd;3;139E;E;E;S;20;{{224, 0}, {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;273E;E;E;S;12;columnHeaderS;0;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;250E;K;4;nameD;K;6;CP$UIDd;3;274E;K;12;defaultValueD;K;6;CP$UIDd;3;182E;K;6;valuesD;K;6;CP$UIDd;3;275E;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;252E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;276E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;277E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;250E;K;4;nameD;K;6;CP$UIDd;3;274E;K;12;defaultValueD;K;6;CP$UIDd;3;182E;K;6;valuesD;K;6;CP$UIDd;3;278E;E;D;K;6;$classD;K;6;CP$UIDd;3;252E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;276E;E;S;17;Arial, sans-serifd;2;12S;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;66E;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;69E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;279E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;250E;K;4;nameD;K;6;CP$UIDd;3;274E;K;12;defaultValueD;K;6;CP$UIDd;3;182E;K;6;valuesD;K;6;CP$UIDd;3;280E;E;D;K;6;$classD;K;6;CP$UIDd;3;252E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;276E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;281E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;250E;K;4;nameD;K;6;CP$UIDd;3;274E;K;12;defaultValueD;K;6;CP$UIDd;3;182E;K;6;valuesD;K;6;CP$UIDd;3;282E;E;D;K;6;$classD;K;6;CP$UIDd;3;252E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;276E;E;D;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;139E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;139E;E;E;f;3;0.5D;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;272E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;148E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;240E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;240E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;148E;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;116E;E;S;4;fontD;K;6;$classD;K;6;CP$UIDd;2;95E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;188E;K;6;normalD;K;6;CP$UIDd;3;182E;E;E;S;39;{"top":0,"right":5,"bottom":0,"left":5}D;K;6;$classD;K;6;CP$UIDd;3;272E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;152E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;240E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;240E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;152E;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;116E;E;D;K;6;$classD;K;6;CP$UIDd;2;95E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;188E;K;6;normalD;K;6;CP$UIDd;3;182E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;272E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;212E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;240E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;240E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;212E;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;116E;E;D;K;6;$classD;K;6;CP$UIDd;2;95E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;188E;K;6;normalD;K;6;CP$UIDd;3;182E;E;E;D;K;6;$classD;K;6;CP$UIDd;3;272E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;215E;K;18;CPResponderMenuKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;240E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;240E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;215E;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;116E;E;D;K;6;$classD;K;6;CP$UIDd;2;95E;K;10;CP.objectsD;K;21;selectedTableDataViewD;K;6;CP$UIDd;3;188E;K;6;normalD;K;6;CP$UIDd;3;182E;E;E;d;2;18E;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 adc7c5981..338daa889 100644 --- a/Tests/Manual/TableTest/TableBindings/Resources/MainMenu.xib +++ b/Tests/Manual/TableTest/TableBindings/Resources/MainMenu.xib @@ -2,17 +2,35 @@ 1050 - 10J567 - 823 - 1038.35 - 462.00 + 11D50 + 2427 + 1138.32 + 568.00 com.apple.InterfaceBuilder.CocoaPlugin - 823 + 2427 - + YES - + NSPopUpButtonCell + NSStepper + NSScroller + NSArrayController + NSTableHeaderView + NSPopUpButton + NSScrollView + NSTextFieldCell + NSMenu + NSMenuItem + NSButton + NSTableView + NSButtonCell + NSCustomObject + NSStepperCell + NSView + NSWindowTemplate + NSTextField + NSTableColumn YES @@ -33,1090 +51,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 - - - - - - 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, 308}, {663, 442}} + {{335, 308}, {999, 454}} 1946157056 Window NSWindow - {1.79769e+308, 1.79769e+308} + 256 @@ -1135,26 +78,29 @@ 256 - {663, 366} + {448, 342} + + YES 256 - {663, 17} + {448, 17} + + - - + + -2147483392 {{224, 0}, {16, 17}} - YES - 101 + 76 40 1000 @@ -1194,7 +140,7 @@ 6 System controlBackgroundColor - + 3 MC42NjY2NjY2NjY3AA @@ -1212,7 +158,7 @@ - 556 + 366 40 1000 @@ -1244,7 +190,7 @@ 3 MQA - + 6 System gridColor @@ -1262,10 +208,12 @@ 0 YES 0 + 1 - {{1, 17}, {663, 366}} + {{1, 17}, {448, 342}} + @@ -1276,6 +224,8 @@ -2147483392 {{224, 17}, {15, 102}} + + _doScroller: 37 @@ -1284,12 +234,14 @@ -2147483392 - {{1, 119}, {223, 15}} + {{1, 368}, {461, 15}} + + 1 _doScroller: - 0.57142859697341919 + 0.87809523809523804 @@ -1298,56 +250,38 @@ YES - {{1, 0}, {663, 17}} + {{1, 0}, {448, 17}} + 4 - - {{-1, 59}, {665, 384}} + {{20, 63}, {450, 360}} - - 562 + + + 133682 - QSAAAEEgAABBmAAAQZgAAA - - - 268 - {{382, 20}, {163, 31}} - - YES - - 67239424 - 0 - Change Model In Range: - - - -2038152961 - 134 - - - 400 - 75 - - 268 - {{562, 24}, {32, 22}} + {{516, 20}, {26, 22}} + + YES -1804468671 272630784 - + 0 YES @@ -1368,13 +302,15 @@ 268 - {{611, 24}, {32, 22}} + {{587, 20}, {27, 22}} + + YES -1804468671 272630784 - + 5 YES @@ -1382,12 +318,418 @@ + + + 268 + + YES + + + 2304 + + YES + + + 256 + {499, 342} + + + + YES + + + 256 + {499, 17} + + + + + + + + -2147483392 + {{224, 0}, {16, 17}} + + + YES + + 100 + 40 + 1000 + + 75628096 + 2048 + + + + 3 + MC4zMzMzMzI5ODU2AA + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 393 + 40 + 1000 + + 75628096 + 2048 + + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 3 + 2 + + + 17 + -692027392 + + + 1 + 15 + 0 + YES + 0 + 1 + + + {{1, 17}, {499, 342}} + + + + + + 4 + + + + -2147483392 + {{224, 17}, {15, 102}} + + + + + _doScroller: + 37 + 0.1947367936372757 + + + + -2147483392 + {{1, 368}, {461, 15}} + + + + 1 + + _doScroller: + 0.87809523809523804 + + + + 2304 + + YES + + + {{1, 0}, {499, 17}} + + + + + + 4 + + + {{478, 63}, {501, 360}} + + + + 133682 + + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 268 + {{179, 20}, {171, 17}} + + + + _NS:1505 + YES + + 68288064 + 272630784 + Model values for Key Path: + + _NS:1505 + + + 6 + System + controlColor + + + + + + + + 268 + {{352, 16}, {80, 26}} + + + + _NS:9 + YES + + -2076049856 + 2048 + + _NS:9 + + 109199360 + 129 + + + 400 + 75 + + + colOne + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + colTwo + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{452, 20}, {59, 17}} + + + + _NS:1505 + YES + + 68288064 + 272630784 + In Range + + _NS:1505 + + + + + + + + 268 + {{547, 17}, {19, 27}} + + + + _NS:1083 + YES + + 917024 + 0 + _NS:1083 + + 100 + 1 + YES + + + + + 268 + {{619, 17}, {19, 27}} + + + + _NS:1083 + YES + + 917024 + 0 + _NS:1083 + + 5 + 100 + 1 + YES + + + + + 268 + {{830, 10}, {96, 32}} + + + + _NS:9 + 1000 + YES + + 67108864 + 134217728 + Mutation + + _NS:9 + + -2038284288 + 129 + + + 200 + 25 + + + + + 268 + {{926, 10}, {59, 32}} + + + + _NS:9 + YES + + 67108864 + 134217728 + Set + + _NS:9 + + -2038284288 + 129 + + + 200 + 25 + + + + + 268 + {{17, 431}, {244, 17}} + + + + _NS:1505 + YES + + 68288064 + 272630784 + Table Column Value Binding + + _NS:1505 + + + + + + + + 268 + {{478, 431}, {244, 17}} + + + + _NS:1505 + YES + + 68288064 + 272630784 + Table View Content Binding + + _NS:1505 + + + + + - {663, 442} + {999, 454} + + - {{0, 0}, {1440, 878}} - {1.79769e+308, 1.79769e+308} + {{0, 0}, {1680, 1028}} + {10000000000000, 10000000000000} + YES AppController @@ -1406,494 +748,6 @@ YES - - - performMiniaturize: - - - - 37 - - - - arrangeInFront: - - - - 39 - - - - print: - - - - 86 - - - - runPageLayout: - - - - 87 - - - - clearRecentDocuments: - - - - 127 - - - - orderFrontStandardAboutPanel: - - - - 142 - - - - 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 - - - - terminate: - - - - 449 - delegate @@ -1910,6 +764,70 @@ 459 + + + arrayController + + + + 486 + + + + from + + + + 496 + + + + to + + + + 497 + + + + KeyPathPopup + + + + 535 + + + + locationField + + + + 536 + + + + lengthField + + + + 537 + + + + updateOrReloadContent: + + + + 551 + + + + updateOrReloadContent: + + + + 552 + value: arrangedObjects.colOne @@ -1921,14 +839,10 @@ value: arrangedObjects.colOne value arrangedObjects.colOne - - NSValidatesImmediately - - 2 - 484 + 511 @@ -1941,22 +855,10 @@ value: arrangedObjects.colTwo value arrangedObjects.colTwo - - NSValidatesImmediately - - 2 - 485 - - - - arrayController - - - - 486 + 514 @@ -1976,27 +878,35 @@ - test: - - + takeIntegerValueFrom: + + - 491 + 529 - - from - - + + takeIntegerValueFrom: + + - 496 + 530 - - to - - + + content: arrangedObjects + + + + + + content: arrangedObjects + content + arrangedObjects + 2 + - 497 + 509 @@ -2028,548 +938,6 @@ Application - - 29 - - - YES - - - - - - - - - - MainMenu - - - 19 - - - YES - - - - - - 56 - - - YES - - - - - - 103 - - - YES - - - - 1 - - - 217 - - - YES - - - - - - 83 - - - YES - - - - - - 81 - - - YES - - - - - - - - - - - - - - - - 75 - - - 3 - - - 80 - - - 8 - - - 78 - - - 6 - - - 72 - - - - - 82 - - - 9 - - - 124 - - - YES - - - - - - 77 - - - 5 - - - 73 - - - 1 - - - 79 - - - 7 - - - 112 - - - 10 - - - 74 - - - 2 - - - 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 - - - - 2 - - - 111 - - - - - 57 - - - YES - - - - - - - - - - - - - - - - 58 - - - - - 134 - - - - - 150 - - - - - 136 - - - 1111 - - - 144 - - - - - 129 - - - 121 - - - 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 @@ -2584,407 +952,32 @@ 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 - - 460 - - - YES - - - - - - - - - 461 - - - - - 462 - - - - - 463 - - - YES - - - - - - - 464 - - - - - 465 - - - YES - - - - - - 466 - - - YES - - - - - - 467 - - - - - 468 - - - 473 - - 489 - - - YES - - - - - - 490 - - - 492 @@ -3013,196 +1006,300 @@ + + 500 + + + YES + + + + + + + + + 501 + + + + + 502 + + + YES + + + + + + + 503 + + + + + 504 + + + + + 505 + + + YES + + + + + + 506 + + + YES + + + + + + 507 + + + + + 508 + + + + + 515 + + + YES + + + + + + 516 + + + + + 517 + + + YES + + + + + + 518 + + + YES + + + + + + 519 + + + YES + + + + + + + 520 + + + + + 521 + + + + + 523 + + + YES + + + + + + 524 + + + + + 525 + + + YES + + + + + + 526 + + + + + 527 + + + YES + + + + + + 528 + + + + + 531 + + + YES + + + + + + 532 + + + + + 533 + + + YES + + + + + + 534 + + + + + 460 + + + YES + + + + + + + + + 464 + + + + + 463 + + + YES + + + + + + + 466 + + + YES + + + + + + 467 + + + + + 465 + + + YES + + + + + + 468 + + + + + 462 + + + + + 461 + + + + + 553 + + + YES + + + + + + 554 + + + + + 555 + + + YES + + + + + + 556 + + + 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 - 379.IBPluginDependency - 380.IBPluginDependency - 381.IBPluginDependency - 382.IBPluginDependency - 383.IBPluginDependency - 384.IBPluginDependency - 385.IBPluginDependency - 386.IBPluginDependency - 387.IBPluginDependency - 388.IBEditorWindowLastContentRect - 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 460.IBPluginDependency 461.IBPluginDependency 462.IBPluginDependency @@ -3213,192 +1310,51 @@ 467.IBPluginDependency 468.IBPluginDependency 473.IBPluginDependency - 489.IBPluginDependency - 489.IBViewBoundsToFrameTransform - 490.IBPluginDependency 492.IBPluginDependency - 492.IBViewBoundsToFrameTransform 493.IBPluginDependency 494.IBPluginDependency - 494.IBViewBoundsToFrameTransform 495.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 + 500.IBPluginDependency + 501.IBPluginDependency + 502.IBPluginDependency + 503.IBPluginDependency + 504.IBPluginDependency + 505.IBPluginDependency + 506.IBPluginDependency + 507.IBPluginDependency + 508.IBPluginDependency + 515.IBPluginDependency + 516.IBPluginDependency + 517.IBPluginDependency + 518.IBPluginDependency + 519.IBPluginDependency + 520.IBPluginDependency + 521.IBPluginDependency + 523.IBPluginDependency + 524.IBPluginDependency + 525.IBPluginDependency + 526.IBPluginDependency + 527.IBPluginDependency + 528.IBPluginDependency + 531.IBPluginDependency + 532.IBPluginDependency + 533.IBPluginDependency + 534.IBPluginDependency + 553.IBPluginDependency + 554.IBPluginDependency + 555.IBPluginDependency + 556.IBPluginDependency - + 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 - - {{312, 306}, {663, 442}} com.apple.InterfaceBuilder.CocoaPlugin {{312, 306}, {663, 442}} - {{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 @@ -3411,7 +1367,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 @@ -3444,85 +1399,21 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDuIAAwkQAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABEDIAAwkQAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABEGMAAwkQAAA - - 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 - YES - - YES - + YES - - YES - + - 498 + 556 @@ -3531,13 +1422,13 @@ AppController NSObject - test: + updateOrReloadContent: id - test: + updateOrReloadContent: - test: + updateOrReloadContent: id @@ -3545,16 +1436,14 @@ YES YES - arrayController - from - theWindow - to + KeyPathPopup + lengthField + locationField - + YES - NSArrayController + NSPopUpButton NSTextField - NSWindow NSTextField @@ -3562,34 +1451,29 @@ YES YES - arrayController - from - theWindow - to + KeyPathPopup + lengthField + locationField - + YES - arrayController - NSArrayController + KeyPathPopup + NSPopUpButton - from + lengthField NSTextField - theWindow - NSWindow - - - to + locationField NSTextField - IBUserSource - + IBProjectSource + ./Classes/AppController.h @@ -3605,7 +1489,6 @@ YES - ../adsfsdf.xcodeproj 3 YES @@ -3614,10 +1497,10 @@ NSMenuCheckmark NSMenuMixedState - + YES - {9, 8} - {7, 2} + {11, 11} + {10, 3} diff --git a/Tools/Jakefile b/Tools/Jakefile index a32dfbd3b..40a8a1fb9 100644 --- a/Tools/Jakefile +++ b/Tools/Jakefile @@ -1,7 +1,7 @@ require("../common.jake"); -// nib2cib uses fontinfo and capp uses nib2cib -subtasks(["fontinfo", "nib2cib", "capp", "dump_theme", "NativeHost", "XcodeCapp"], ["build"/*, "clean", "clobber"*/]); +// nib2cib uses fontinfo and imagesize and capp uses nib2cib +subtasks(["fontinfo", "imagesize", "nib2cib", "capp", "dump_theme", "NativeHost", "XcodeCapp"], ["build"/*, "clean", "clobber"*/]); -subtasks(["fontinfo"], ["clean", "clobber"]); +subtasks(["fontinfo", "imagesize"], ["clean", "clobber"]); diff --git a/Tools/XcodeCapp/FSEventCallback.m b/Tools/XcodeCapp/FSEventCallback.m index 9df1fd56a..e050e8d8b 100644 --- a/Tools/XcodeCapp/FSEventCallback.m +++ b/Tools/XcodeCapp/FSEventCallback.m @@ -79,7 +79,7 @@ void fsevents_callback(ConstFSEventStreamRef streamRef, flags & kFSEventStreamEventFlagItemXattrMod || flags & kFSEventStreamEventFlagItemChangeOwner)) { - DLog(@"event type: %@ for path %@", flags, path); + DLog(@"event type: %u for path %@", flags, path); [xcc handleFileModification:path notify:YES]; } diff --git a/Tools/capp/Resources/Templates/ThemeDescriptor/Jakefile b/Tools/capp/Resources/Templates/ThemeDescriptor/Jakefile index 80c7d5dbe..9ff2308c6 100644 --- a/Tools/capp/Resources/Templates/ThemeDescriptor/Jakefile +++ b/Tools/capp/Resources/Templates/ThemeDescriptor/Jakefile @@ -106,7 +106,7 @@ task ("test-release", ["release"], function() }); CLEAN.include(buildPath); -CLOBBER.include(buildDir); +CLOBBER.include(buildPath); task ("help", function() { diff --git a/Tools/fontinfo/Jakefile b/Tools/fontinfo/Jakefile index 38d02b91c..04d2a5a97 100644 --- a/Tools/fontinfo/Jakefile +++ b/Tools/fontinfo/Jakefile @@ -8,7 +8,7 @@ task ("build", function() { if (executableExists("xcodebuild")) { - var args = "-alltargets -configuration " + $CONFIGURATION; + var args = "-alltargets -configuration Release"; if (xcodebuildHasTenPointFiveSDK()) args = "-sdk macosx10.5 " + args; diff --git a/Tools/fontinfo/fontinfo.xcodeproj/project.pbxproj b/Tools/fontinfo/fontinfo.xcodeproj/project.pbxproj index 9e523b2ac..87275d658 100644 --- a/Tools/fontinfo/fontinfo.xcodeproj/project.pbxproj +++ b/Tools/fontinfo/fontinfo.xcodeproj/project.pbxproj @@ -14,7 +14,6 @@ /* Begin PBXFileReference section */ 08FB7796FE84155DC02AAC07 /* fontinfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = fontinfo.m; sourceTree = ""; }; 08FB779EFE84155DC02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; - 32A70AAB03705E1F00C91783 /* fontinfo_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fontinfo_Prefix.pch; sourceTree = ""; }; E11C89CC1277CECE0012609B /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; }; E18587D81279B93100FB6A47 /* README */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = README; sourceTree = ""; }; E1C392BB133D513B0092D7CA /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; @@ -47,7 +46,6 @@ 08FB7795FE84155DC02AAC07 /* Source */ = { isa = PBXGroup; children = ( - 32A70AAB03705E1F00C91783 /* fontinfo_Prefix.pch */, 08FB7796FE84155DC02AAC07 /* fontinfo.m */, ); name = Source; @@ -88,6 +86,7 @@ buildPhases = ( E1D3CF6812AFEE3800CBB79E /* Sources */, E1D3CF6912AFEE3800CBB79E /* Frameworks */, + E180EE6415AB52D500757AC7 /* ShellScript */, ); buildRules = ( ); @@ -122,6 +121,23 @@ }; /* End PBXProject section */ +/* Begin PBXShellScriptBuildPhase section */ + E180EE6415AB52D500757AC7 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/bash; + shellScript = "if [[ -d \"$CAPP_BUILD\"/Debug/CommonJS/cappuccino/bin ]]; then\n\tcp \"$SYMROOT/$CONFIGURATION/$PRODUCT_NAME\" \"$CAPP_BUILD\"/Debug/CommonJS/cappuccino/bin\nfi\n\nif [[ -d \"$CAPP_BUILD\"/Release/CommonJS/cappuccino/bin ]]; then\n\tcp \"$SYMROOT/$CONFIGURATION/$PRODUCT_NAME\" \"$CAPP_BUILD\"/Release/CommonJS/cappuccino/bin\nfi\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + /* Begin PBXSourcesBuildPhase section */ E1D3CF6812AFEE3800CBB79E /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -142,8 +158,8 @@ CONFIGURATION_TEMP_DIR = "$(CAPP_BUILD)"; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_OPTIMIZATION_LEVEL = 0; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = fontinfo_Prefix.pch; + GCC_PRECOMPILE_PREFIX_HEADER = NO; + GCC_PREFIX_HEADER = ""; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; OBJROOT = "$(CAPP_BUILD)"; @@ -165,21 +181,12 @@ isa = XCBuildConfiguration; buildSettings = { ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)"; - CONFIGURATION_TEMP_DIR = "$(CAPP_BUILD)"; - DEPLOYMENT_LOCATION = NO; - DEPLOYMENT_POSTPROCESSING = NO; - DSTROOT = "/tmp/$(PROJECT_NAME).dst"; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; - INSTALL_PATH = ""; - OBJROOT = "$(CAPP_BUILD)"; ONLY_ACTIVE_ARCH = NO; - PREBINDING = NO; PRODUCT_NAME = fontinfo; SDKROOT = macosx10.5; - SYMROOT = "$(CAPP_BUILD)/Release/CommonJS/cappuccino/bin"; }; name = Release; }; diff --git a/Tools/fontinfo/fontinfo_Prefix.pch b/Tools/fontinfo/fontinfo_Prefix.pch deleted file mode 100644 index 8a571c50e..000000000 --- a/Tools/fontinfo/fontinfo_Prefix.pch +++ /dev/null @@ -1,8 +0,0 @@ -// -// Prefix header for all source files of the 'font_info' target in the 'font_info' project. -// - -#ifdef __OBJC__ - #import - #import -#endif diff --git a/Tools/imagesize/.gitignore b/Tools/imagesize/.gitignore new file mode 100644 index 000000000..567609b12 --- /dev/null +++ b/Tools/imagesize/.gitignore @@ -0,0 +1 @@ +build/ diff --git a/Tools/imagesize/Jakefile b/Tools/imagesize/Jakefile new file mode 100644 index 000000000..e4e7d721d --- /dev/null +++ b/Tools/imagesize/Jakefile @@ -0,0 +1,40 @@ + +require ("../../common.jake"); + +var OS = require("os"), + task = require("jake").task; + +task ("build", function() +{ + if (executableExists("xcodebuild")) + { + var args = "-alltargets -configuration Release"; + + if (xcodebuildHasTenPointFiveSDK()) + args = "-sdk macosx10.5 " + args; + + else + args = "-sdk macosx " + args; + + if (OS.system("xcodebuild " + args)) + OS.exit(1); + } + else + { + print("Building imagesize requires Xcode."); + } +}); + +task ("clean", function() +{ + if (executableExists("xcodebuild") && OS.system("xcodebuild clean")) + OS.exit(1); +}); + +task ("clobber", function() +{ + if (executableExists("xcodebuild") && OS.system("xcodebuild clean")) + OS.exit(1); +}); + +task ("default", ["build"]); diff --git a/Tools/imagesize/README b/Tools/imagesize/README new file mode 100644 index 000000000..38695f664 --- /dev/null +++ b/Tools/imagesize/README @@ -0,0 +1,30 @@ +NAME + imagesize -- retrieve size information for an image + +SYNOPSIS + imagesize [-n] path + +DESCRIPTION + imagesize is a tiny utility that returns the size of an image. + The path may be either an absolute path or a path relative to the current directory. + + If the -n option is passed, the output will not be terminated with a linefeed. + +EXIT STATUS + imagesize exits with a return status of zero if there are no errors. + imagesize exits with a return status of 1 if any arguments are invalid, or a status of 2 if the image + cannot be found or the file at the given path is not a valid image. + +OUTPUT + imagesize outputs a stringified JSON object with the following structure: + + { + width:, + height: + } + + If -n is not passed, the JSON is terminated with a linefeed. The fields of the object are as follows: + +AUTHORS + Aparajita Fishman, Victory-Heart Productions + http://www.aparajita.com diff --git a/Tools/imagesize/imagesize.m b/Tools/imagesize/imagesize.m new file mode 100644 index 000000000..fed8edb9d --- /dev/null +++ b/Tools/imagesize/imagesize.m @@ -0,0 +1,71 @@ +/* + imagesize + + Copyright 2012 Aparajita Fishman +*/ + +#import +#import + + +enum { + kErrInvalidArguments = 1, + kErrInvalidPath +}; + + +int getImageSize(const char* utf8Path, BOOL appendLineFeed) +{ + NSString* path = [NSString stringWithUTF8String:utf8Path]; + NSImage* image = [[NSImage alloc] initWithContentsOfFile:path]; + + if (!image) + return kErrInvalidPath; + + NSSize size = [image size]; + + NSMutableString* result = [NSMutableString stringWithFormat:@"{\"width\":%g, \"height\":%g}", size.width, size.height]; + + if (appendLineFeed) + [result appendString:@"\n"]; + + printf("%s", [result UTF8String]); + return 0; +} + + +int main(int argc, const char* argv[]) +{ + NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; + int exitCode = 0; + + // usage: imagesize [-n] path + + if (argc >= 2) + { + BOOL appendLineFeed = YES; + int nextArgument = 1; + + if (argv[1][0] == '-') + { + if (argv[1][1] == 'n') + { + appendLineFeed = NO; + ++nextArgument; + } + else + exitCode = kErrInvalidArguments; + } + + if (exitCode == 0) + exitCode = getImageSize(argv[nextArgument], appendLineFeed); + } + else + { + exitCode = kErrInvalidArguments; + } + + [pool drain]; + return exitCode; +} + diff --git a/Tools/imagesize/imagesize.xcodeproj/project.pbxproj b/Tools/imagesize/imagesize.xcodeproj/project.pbxproj new file mode 100644 index 000000000..6aaea8579 --- /dev/null +++ b/Tools/imagesize/imagesize.xcodeproj/project.pbxproj @@ -0,0 +1,233 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 45; + objects = { + +/* Begin PBXBuildFile section */ + E14061B7159D449000D99541 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E14061B6159D449000D99541 /* AppKit.framework */; }; + E1D3CFAA12AFFB7F00CBB79E /* imagesize.m in Sources */ = {isa = PBXBuildFile; fileRef = 08FB7796FE84155DC02AAC07 /* imagesize.m */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + 08FB7796FE84155DC02AAC07 /* imagesize.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = imagesize.m; sourceTree = ""; }; + 08FB779EFE84155DC02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; + E14061B6159D449000D99541 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; }; + E18587D81279B93100FB6A47 /* README */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = README; sourceTree = ""; }; + E1E20D0B12B09283005A6A64 /* imagesize */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = imagesize; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + E1D3CF6912AFEE3800CBB79E /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + E14061B7159D449000D99541 /* AppKit.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 08FB7794FE84155DC02AAC07 /* font_info */ = { + isa = PBXGroup; + children = ( + 08FB7795FE84155DC02AAC07 /* Source */, + E18587DD1279B93600FB6A47 /* Documentation */, + 08FB779DFE84155DC02AAC07 /* External Frameworks and Libraries */, + 1AB674ADFE9D54B511CA2CBB /* Products */, + ); + name = font_info; + sourceTree = ""; + }; + 08FB7795FE84155DC02AAC07 /* Source */ = { + isa = PBXGroup; + children = ( + 08FB7796FE84155DC02AAC07 /* imagesize.m */, + ); + name = Source; + sourceTree = ""; + }; + 08FB779DFE84155DC02AAC07 /* External Frameworks and Libraries */ = { + isa = PBXGroup; + children = ( + 08FB779EFE84155DC02AAC07 /* Foundation.framework */, + E14061B6159D449000D99541 /* AppKit.framework */, + ); + name = "External Frameworks and Libraries"; + sourceTree = ""; + }; + 1AB674ADFE9D54B511CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + E1E20D0B12B09283005A6A64 /* imagesize */, + ); + name = Products; + sourceTree = ""; + }; + E18587DD1279B93600FB6A47 /* Documentation */ = { + isa = PBXGroup; + children = ( + E18587D81279B93100FB6A47 /* README */, + ); + name = Documentation; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + E1D3CF6A12AFEE3800CBB79E /* imagesize */ = { + isa = PBXNativeTarget; + buildConfigurationList = E1D3CF6F12AFEE3B00CBB79E /* Build configuration list for PBXNativeTarget "imagesize" */; + buildPhases = ( + E1D3CF6812AFEE3800CBB79E /* Sources */, + E1D3CF6912AFEE3800CBB79E /* Frameworks */, + E180EE7A15AB561300757AC7 /* ShellScript */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = imagesize; + productName = font_info; + productReference = E1E20D0B12B09283005A6A64 /* imagesize */; + productType = "com.apple.product-type.tool"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 08FB7793FE84155DC02AAC07 /* Project object */ = { + isa = PBXProject; + buildConfigurationList = 1DEB927808733DD40010E9CD /* Build configuration list for PBXProject "imagesize" */; + compatibilityVersion = "Xcode 3.1"; + developmentRegion = English; + hasScannedForEncodings = 1; + knownRegions = ( + English, + Japanese, + French, + German, + ); + mainGroup = 08FB7794FE84155DC02AAC07 /* font_info */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + E1D3CF6A12AFEE3800CBB79E /* imagesize */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXShellScriptBuildPhase section */ + E180EE7A15AB561300757AC7 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 12; + files = ( + ); + inputPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/bash; + shellScript = "if [[ -d \"$CAPP_BUILD\"/Debug/CommonJS/cappuccino/bin ]]; then\n\tcp \"$SYMROOT/$CONFIGURATION/$PRODUCT_NAME\" \"$CAPP_BUILD\"/Debug/CommonJS/cappuccino/bin\nfi\n\nif [[ -d \"$CAPP_BUILD\"/Release/CommonJS/cappuccino/bin ]]; then\n\tcp \"$SYMROOT/$CONFIGURATION/$PRODUCT_NAME\" \"$CAPP_BUILD\"/Release/CommonJS/cappuccino/bin\nfi\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + E1D3CF6812AFEE3800CBB79E /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + E1D3CFAA12AFFB7F00CBB79E /* imagesize.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 1DEB927908733DD40010E9CD /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(NATIVE_ARCH_ACTUAL)"; + CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)"; + CONFIGURATION_TEMP_DIR = "$(CAPP_BUILD)"; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PRECOMPILE_PREFIX_HEADER = NO; + GCC_PREFIX_HEADER = ""; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + OBJROOT = "$(CAPP_BUILD)"; + ONLY_ACTIVE_ARCH = YES; + OTHER_LDFLAGS = ( + "-framework", + Foundation, + "-framework", + AppKit, + ); + PREBINDING = NO; + PRODUCT_NAME = imagesize; + SDKROOT = macosx10.5; + SYMROOT = "$(CAPP_BUILD)/Debug/CommonJS/cappuccino/bin"; + }; + name = Debug; + }; + 1DEB927A08733DD40010E9CD /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(NATIVE_ARCH_ACTUAL)"; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_PRECOMPILE_PREFIX_HEADER = NO; + GCC_PREFIX_HEADER = ""; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + ONLY_ACTIVE_ARCH = NO; + PREBINDING = NO; + PRODUCT_NAME = imagesize; + SDKROOT = macosx10.5; + }; + name = Release; + }; + E1D3CF6D12AFEE3900CBB79E /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = imagesize; + }; + name = Debug; + }; + E1D3CF6E12AFEE3900CBB79E /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + MACOSX_DEPLOYMENT_TARGET = 10.5; + PRODUCT_NAME = imagesize; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 1DEB927808733DD40010E9CD /* Build configuration list for PBXProject "imagesize" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1DEB927908733DD40010E9CD /* Debug */, + 1DEB927A08733DD40010E9CD /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + E1D3CF6F12AFEE3B00CBB79E /* Build configuration list for PBXNativeTarget "imagesize" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + E1D3CF6D12AFEE3900CBB79E /* Debug */, + E1D3CF6E12AFEE3900CBB79E /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 08FB7793FE84155DC02AAC07 /* Project object */; +} diff --git a/Tools/imagesize/imagesize.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/Tools/imagesize/imagesize.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..562d5df16 --- /dev/null +++ b/Tools/imagesize/imagesize.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/Tools/nib2cib/Converter+Mac.j b/Tools/nib2cib/Converter+Mac.j index 41b1b22fc..7c48b77c4 100644 --- a/Tools/nib2cib/Converter+Mac.j +++ b/Tools/nib2cib/Converter+Mac.j @@ -118,10 +118,10 @@ { var cibFont = nil; - if ([object respondsToSelector:@selector(cibFontForNibFont)]) - cibFont = [object cibFontForNibFont]; + if ([object respondsToSelector:@selector(cibFontForNibFont:)]) + cibFont = [object cibFontForNibFont:[object font]]; else - cibFont = [NSFont cibFontForNibFont:[object font]]; + cibFont = [[object font] cibFontForNibFont]; if (!cibFont || ![cibFont isEqual:nibFont]) { @@ -143,22 +143,24 @@ } } - // Substitute legacy theme fonts for the current system font - if (!cibFont || [cibFont familyName] === CPFontDefaultSystemFontFace) + if (!cibFont || [cibFont isSystem]) { - var size = [cibFont size] || CPFontDefaultSystemFontSize, - bold = cibFont ? [cibFont isBold] : bold; + var size = [cibFont size] || CPFontDefaultSystemFontSize; + + bold = cibFont ? [cibFont isBold] : bold; if (size === CPFontDefaultSystemFontSize) - size = [CPFont systemFontSize]; + size = CPFontCurrentSystemSize; cibFont = bold ? [CPFont boldSystemFontOfSize:size] : [CPFont systemFontOfSize:size]; } } + var replacement = "System " + (bold ? "bold " : "") + ([cibFont isSystemSize] ? "(current size)" : [cibFont size]); + [object setFont:cibFont]; - CPLog.debug("%s: substituted <%s>%s for <%fpx %s>", [object className], cibFont ? [cibFont cssString] : "theme default", source, [nibFont size], [nibFont familyName]); + CPLog.debug("%s: substituted <%s>%s for <%s>", [object className], replacement || [NSFont descriptorForFont:cibFont], source, [NSFont descriptorForFont:nibFont]); } } diff --git a/Tools/nib2cib/NSAppKit.j b/Tools/nib2cib/NSAppKit.j index f26db332a..227d47fbd 100644 --- a/Tools/nib2cib/NSAppKit.j +++ b/Tools/nib2cib/NSAppKit.j @@ -31,6 +31,7 @@ @import "NSColorWell.j" @import "NSCollectionView.j" @import "NSCollectionViewItem.j" +@import "NSComboBox.j" @import "NSControl.j" @import "NSCustomObject.j" @import "NSCustomResource.j" diff --git a/Tools/nib2cib/NSButton.j b/Tools/nib2cib/NSButton.j index da8fc3518..59437de96 100644 --- a/Tools/nib2cib/NSButton.j +++ b/Tools/nib2cib/NSButton.j @@ -31,12 +31,6 @@ @import "NSControl.j" -var _CPButtonBezelStyleHeights = {}; - -_CPButtonBezelStyleHeights[CPRoundedBezelStyle] = 18; -_CPButtonBezelStyleHeights[CPTexturedRoundedBezelStyle] = 20; -_CPButtonBezelStyleHeights[CPHUDBezelStyle] = 20; - var NSButtonIsBorderedMask = 0x00800000, NSButtonAllowsMixedStateMask = 0x1000000, @@ -112,71 +106,92 @@ var NSButtonIsBorderedMask = 0x00800000, } _themeClass = [[self class] defaultThemeClass]; + alternateImage = nil; } NIB_CONNECTION_EQUIVALENCY_TABLE[[cell UID]] = self; _title = [cell title]; + _alternateTitle = [cell alternateTitle]; _controlSize = CPRegularControlSize; [self setBordered:[cell isBordered]]; _bezelStyle = [cell bezelStyle]; + var fixedHeight; - // clean up: + // Map Cocoa bezel styles to Cappuccino bezel styles and adjust frame switch (_bezelStyle) { // implemented: - case CPRoundedBezelStyle: + case CPRoundedBezelStyle: // Push IB style positionOffsetOriginY = 6; positionOffsetOriginX = 4; positionOffsetSizeWidth = -12; + fixedHeight = YES; break; - case CPTexturedRoundedBezelStyle: + + case CPTexturedRoundedBezelStyle: // Round Textured IB style positionOffsetOriginY = 2; positionOffsetOriginX = -2; positionOffsetSizeWidth = 0; + fixedHeight = YES; break; + case CPHUDBezelStyle: + fixedHeight = YES; break; + // approximations: - case CPRoundRectBezelStyle: + case CPRoundRectBezelStyle: // Round Rect IB style positionOffsetOriginY = -3; positionOffsetOriginX = -2; positionOffsetSizeWidth = 0; _bezelStyle = CPRoundedBezelStyle; + fixedHeight = YES; break; - case CPSmallSquareBezelStyle: + + case CPSmallSquareBezelStyle: // Gradient IB style positionOffsetOriginX = -2; positionOffsetSizeWidth = 0; _bezelStyle = CPTexturedRoundedBezelStyle; + fixedHeight = NO; break; - case CPThickSquareBezelStyle: + + case CPThickSquareBezelStyle: // Bevel IB style case CPThickerSquareBezelStyle: case CPRegularSquareBezelStyle: positionOffsetOriginY = 3; positionOffsetOriginX = 0; positionOffsetSizeWidth = -4; _bezelStyle = CPTexturedRoundedBezelStyle; + fixedHeight = NO; break; - case CPTexturedSquareBezelStyle: + + case CPTexturedSquareBezelStyle: // Textured IB style positionOffsetOriginY = 4; positionOffsetOriginX = -1; positionOffsetSizeWidth = -2; _bezelStyle = CPTexturedRoundedBezelStyle; + fixedHeight = NO; break; - case CPShadowlessSquareBezelStyle: + + case CPShadowlessSquareBezelStyle: // Square IB style positionOffsetOriginY = 5; positionOffsetOriginX = -2; positionOffsetSizeWidth = 0; _bezelStyle = CPTexturedRoundedBezelStyle; + fixedHeight = NO; break; - case CPRecessedBezelStyle: + + case CPRecessedBezelStyle: // Recessed IB style positionOffsetOriginY = -3; positionOffsetOriginX = -2; positionOffsetSizeWidth = 0; _bezelStyle = CPHUDBezelStyle; + fixedHeight = YES; break; + // unsupported case CPRoundedDisclosureBezelStyle: case CPHelpButtonBezelStyle: @@ -184,25 +199,60 @@ var NSButtonIsBorderedMask = 0x00800000, case CPDisclosureBezelStyle: CPLog.warn("NSButton [%s]: unsupported bezel style: %d", _title == null ? "" : '"' + _title + '"', _bezelStyle); _bezelStyle = CPHUDBezelStyle; + fixedHeight = YES; break; + // error: default: CPLog.warn("NSButton [%s]: unknown bezel style: %d", _title == null ? "" : '"' + _title + '"', _bezelStyle); _bezelStyle = CPHUDBezelStyle; + fixedHeight = YES; } if ([cell isBordered]) { - CPLog.debug("NSButton [%s]: adjusting height from %d to %d", _title == null ? "" : '"' + _title + '"', _frame.size.height, CPButtonDefaultHeight); - _frame.size.height = CPButtonDefaultHeight; + /* + Try to figure out the intention of the theme in regards to fixed height buttons. + + - If there is a min height and a max height and they are the same, the theme must + not support variable button heights. In that case all buttons are considered fixed height. + - If there is just a max height, use that for only for fixed height buttons. + - If there is no max height either, don't do any height adjustments. + */ + var theme = [[Converter sharedConverter] themes][0], + minSize = [theme valueForAttributeWithName:@"min-size" forClass:[CPButton class]], + maxSize = [theme valueForAttributeWithName:@"max-size" forClass:[CPButton class]], + adjustHeight = NO; + + if (minSize.height > 0 && maxSize.height > 0 && minSize.height === maxSize.height) + { + adjustHeight = YES; + fixedHeight = minSize.height === maxSize.height; + } + else if (minSize.height < 0 && maxSize.height > 0) + adjustHeight = fixedHeight; + else + adjustHeight = minSize.height > 0 || maxSize.height > 0; + + if (adjustHeight) + { + var oldHeight = _frame.size.height; + + if (minSize.height > 0) + _frame.size.height = _bounds.size.height = MAX(_frame.size.height, minSize.height); + + if (maxSize.height > 0) + _frame.size.height = _bounds.size.height = MIN(_frame.size.height, maxSize.height); + + if (_frame.size.height !== oldHeight) + CPLog.debug("NSButton [%s]: adjusted height from %d to %d", _title == null ? "" : '"' + _title + '"', oldHeight, _frame.size.height); + } // Reposition the buttons according to its particular offsets _frame.origin.x += positionOffsetOriginX; _frame.origin.y += positionOffsetOriginY; _frame.size.width += positionOffsetSizeWidth; _bounds.size.width += positionOffsetSizeWidth; - - _bounds.size.height = CPButtonDefaultHeight; } _keyEquivalent = [cell keyEquivalent]; @@ -211,6 +261,7 @@ var NSButtonIsBorderedMask = 0x00800000, _allowsMixedState = [cell allowsMixedState]; [self setImage:[cell normalImage]]; + [self setAlternateImage:alternateImage]; [self setImagePosition:[cell imagePosition]]; [self setEnabled:[cell isEnabled]]; @@ -218,6 +269,8 @@ var NSButtonIsBorderedMask = 0x00800000, _highlightsBy = [cell highlightsBy]; _showsStateBy = [cell showsStateBy]; + [self setTag:[cell tag]]; + return self; } @@ -243,6 +296,7 @@ var NSButtonIsBorderedMask = 0x00800000, int _bezelStyle @accessors(readonly, getter=bezelStyle); CPString _title @accessors(readonly, getter=title); + CPString _alternateTitle @accessors(readonly, getter=alternateTitle); CPImage _normalImage @accessors(readonly, getter=normalImage); CPImage _alternateImage @accessors(readonly, getter=alternateImage); @@ -270,8 +324,9 @@ var NSButtonIsBorderedMask = 0x00800000, _isBordered = (buttonFlags & NSButtonIsBorderedMask) ? YES : NO; _bezelStyle = (buttonFlags2 & 0x7) | ((buttonFlags2 & 0x20) >> 2); - // NSContents for NSButton is actually the title + // NSContents/NSAlternateContents for NSButton is actually the title/alternate title _title = [aCoder decodeObjectForKey:@"NSContents"]; + _alternateTitle = [aCoder decodeObjectForKey:@"NSAlternateContents"]; // ... and _objectValue is _state _objectValue = [self state]; @@ -298,6 +353,7 @@ var NSButtonIsBorderedMask = 0x00800000, _imagePosition = CPNoImage; _highlightsBy = CPNoCellMask; + if (buttonFlags & NSHighlightsByPushInCellMask) _highlightsBy |= CPPushInCellMask; if (buttonFlags & NSHighlightsByContentsCellMask) @@ -308,6 +364,7 @@ var NSButtonIsBorderedMask = 0x00800000, _highlightsBy |= CPChangeBackgroundCellMask; _showsStateBy = CPNoCellMask; + if (buttonFlags & NSShowsStateByContentsCellMask) _showsStateBy |= CPContentsCellMask; if (buttonFlags & NSShowsStateByChangeGrayCellMask) diff --git a/Tools/nib2cib/NSCell.j b/Tools/nib2cib/NSCell.j index ae8b2709f..23ba1264f 100644 --- a/Tools/nib2cib/NSCell.j +++ b/Tools/nib2cib/NSCell.j @@ -49,6 +49,7 @@ CPFont _font @accessors(readonly, getter=font); int _lineBreakMode @accessors(readonly, getter=lineBreakMode); CPFormatter _formatter @accessors(readonly, getter=formatter); + int _tag @accessors(readonly, getter=tag); } - (id)initWithCoder:(CPCoder)aCoder @@ -81,6 +82,8 @@ _font = [aCoder decodeObjectForKey:@"NSSupport"]; _formatter = [aCoder decodeObjectForKey:@"NSFormatter"]; + + _tag = [aCoder decodeIntForKey:@"NSTag"]; } return self; diff --git a/Tools/nib2cib/NSClipView.j b/Tools/nib2cib/NSClipView.j index a60e3c82f..eb7ed5c88 100644 --- a/Tools/nib2cib/NSClipView.j +++ b/Tools/nib2cib/NSClipView.j @@ -23,18 +23,21 @@ @import +var NSClipViewDrawBackgroundFlag = 0x04; + + @implementation CPClipView (CPCoding) - (id)NS_initWithCoder:(CPCoder)aCoder { if (self = [super NS_initWithCoder:aCoder]) { - _documentView = [aCoder decodeObjectForKey:"NSDocView"]; + _documentView = [aCoder decodeObjectForKey:@"NSDocView"]; - if ([aCoder containsValueForKey:"NSBGColor"]) - [self setBackgroundColor:[aCoder decodeObjectForKey:"NSBGColor"]]; + var flags = [aCoder decodeIntForKey:@"NScvFlags"]; - //var flags = [aCoder decodeIntForKey:"NScvFlags"]; + if ((flags & NSClipViewDrawBackgroundFlag) && [aCoder containsValueForKey:@"NSBGColor"]) + [self setBackgroundColor:[aCoder decodeObjectForKey:@"NSBGColor"]]; } return self; diff --git a/Tools/nib2cib/NSColor.j b/Tools/nib2cib/NSColor.j index 78d44ff6e..c4d3c830c 100644 --- a/Tools/nib2cib/NSColor.j +++ b/Tools/nib2cib/NSColor.j @@ -74,6 +74,7 @@ var NSUnknownColorSpaceModel = -1, result = [CPColor colorWithCalibratedWhite:values[0] alpha:values[1]]; break; + /* case 5: var cmyk = [aCoder decodeBytesForKey:@"NSCMYK"], @@ -87,37 +88,37 @@ var NSUnknownColorSpaceModel = -1, result = [CPColor colorWithDeviceCyan:values[0] magenta:values[1] yellow:values[2] black:values[3] alpha:values[4]]; break; */ - case 6: + + case 6: // named color var catalogName = [aCoder decodeObjectForKey:@"NSCatalogName"], colorName = [aCoder decodeObjectForKey:@"NSColorName"], - color = [aCoder decodeObjectForKey:@"NSColor"]; - - // We don't having color mappings implemented, so just use the cached NSColor + color = [aCoder decodeObjectForKey:@"NSColor"], + result = nil; if (catalogName === @"System") { - var //display = [NSDisplay currentDisplay], - result = null;//[display colorWithName: colorName]; - - if (colorName === @"controlColor") - result = nil; - - else if (colorName === @"controlBackgroundColor") - result = [CPColor whiteColor]; - - else if (!result) + switch (colorName) { - result = color; - //[display _addSystemColor: result forName: colorName]; + case "controlColor": + result = [CPColor colorWithCalibratedWhite:175.0 / 255.0 alpha:1.0]; + break; + + case "controlBackgroundColor": + result = [CPColor whiteColor]; + break; + + case "gridColor": + result = [CPColor colorWithCalibratedWhite:204.0 / 255.0 alpha:1.0]; + break; + + default: + result = color; } } else - { - result = null;//[CPColor colorWithCatalogName: catalogName colorName: colorName]; - if (!result) - result = color; - } + result = color; break; + default: CPLog.warn(@"-[%@ %s] unknown color space %d", isa, _cmd, colorSpace); result = [CPColor blackColor]; diff --git a/Tools/nib2cib/NSColorWell.j b/Tools/nib2cib/NSColorWell.j index 161d7b80c..dbb0a0042 100644 --- a/Tools/nib2cib/NSColorWell.j +++ b/Tools/nib2cib/NSColorWell.j @@ -38,6 +38,14 @@ [self setEnabled:[aCoder decodeBoolForKey:@"NSEnabled"]]; [self setBordered:[aCoder decodeBoolForKey:@"NSIsBordered"]]; [self setColor:[aCoder decodeObjectForKey:@"NSColor"]]; + + if ([self isBordered]) + { + var frameSize = [self frameSize]; + CPLog.debug("NSColorWell: adjusting height from %d to %d", frameSize.height, 24.0); + frameSize.height = 24.0; + [self setFrameSize:frameSize]; + } } return self; diff --git a/Tools/nib2cib/NSComboBox.j b/Tools/nib2cib/NSComboBox.j new file mode 100644 index 000000000..16ed5ba49 --- /dev/null +++ b/Tools/nib2cib/NSComboBox.j @@ -0,0 +1,105 @@ +/* + * NSComboBox.j + * nib2cib + * + * Created by Aparajita Fishman. + * Copyright (c) 2012, The Cappuccino Foundation + * + * 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 +@import + +@import "NSTextField.j" + + +@implementation CPComboBox (NSCoding) + +- (id)NS_initWithCoder:(CPCoder)aCoder +{ + self = [super NS_initWithCoder:aCoder]; + + if (self) + { + 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]; + + [self setFrameSize:CGSizeMake(size.width, MIN(size.height, maxSize.height))]; + } + + return self; +} + +@end + +@implementation NSComboBox : CPComboBox + +- (id)initWithCoder:(CPCoder)aCoder +{ + return [self NS_initWithCoder:aCoder]; +} + +- (Class)classForKeyedArchiver +{ + return [CPComboBox class]; +} + +@end + +@implementation NSComboBoxCell : NSTextFieldCell +{ + int _visibleItemCount @accessors(readonly, getter=visibleItemCount); + BOOL _hasVerticalScroller @accessors(readonly, getter=hasVerticalScroller); + BOOL _usesDataSource @accessors(readonly, getter=usesDataSource); + BOOL _completes @accessors(readonly, getter=completes); + CPArray _itemList @accessors(readonly, getter=itemList); + BOOL _borderedButton @accessors(readonly, getter=borderedButton); +} + +- (id)initWithCoder:(CPCoder)aCoder +{ + self = [super initWithCoder:aCoder]; + + if (self) + { + _visibleItemCount = [aCoder decodeIntForKey:@"NSVisibleItemCount"]; + _hasVerticalScroller = [aCoder decodeBoolForKey:@"NSHasVerticalScroller"]; + _usesDataSource = [aCoder decodeBoolForKey:@"NSUsesDataSource"]; + _completes = [aCoder decodeBoolForKey:@"NSCompletes"]; + + if (!_usesDataSource) + _itemList = [aCoder decodeObjectForKey:@"NSPopUpListData"] || []; + else + _itemList = []; + + // NSButtonBordered key is present only if the value is NO, go figure + _borderedButton = [aCoder containsValueForKey:@"NSButtonBordered"] ? [aCoder decodeBoolForKey:@"NSButtonBordered"] : YES; + } + + return self; +} + +@end diff --git a/Tools/nib2cib/NSCustomResource.j b/Tools/nib2cib/NSCustomResource.j index 6d716f36b..3c1370f08 100644 --- a/Tools/nib2cib/NSCustomResource.j +++ b/Tools/nib2cib/NSCustomResource.j @@ -25,7 +25,8 @@ @import -var FILE = require("file"); +var FILE = require("file"), + imageSize = require("cappuccino/imagesize").imagesize; @implementation _CPCibCustomResource (NSCoding) @@ -58,11 +59,13 @@ var FILE = require("file"); if (!resourcePath) CPLog.warn("Resource \"" + _resourceName + "\" not found in the resources path: " + [aCoder resourcesPath]); else - size = imageSize(FILE.canonical(resourcePath)); + size = imageSize(FILE.canonical(resourcePath)) || CGSizeMakeZero(); // Account for the fact that an extension may have been inferred. if (resourcePath && FILE.extension(resourcePath) !== FILE.extension(_resourceName)) _resourceName += FILE.extension(resourcePath); + + CPLog.debug(" Path: %s\n Size: %dx%d", FILE.canonical(resourcePath), size.width, size.height); } _properties = [CPDictionary dictionaryWithObject:size forKey:@"size"]; @@ -73,8 +76,6 @@ var FILE = require("file"); @end -var ImageUtility = require("cappuccino/image-utility"), - imageSize = ImageUtility.sizeOfImageAtPath; @implementation NSCustomResource : _CPCibCustomResource { diff --git a/Tools/nib2cib/NSFont.j b/Tools/nib2cib/NSFont.j index cb336dc74..eda3caac2 100644 --- a/Tools/nib2cib/NSFont.j +++ b/Tools/nib2cib/NSFont.j @@ -22,12 +22,12 @@ @import +IBDefaultFontFace = @"Lucida Grande"; +IBDefaultFontSize = 13.0; + var OS = require("os"), fontinfo = require("cappuccino/fontinfo").fontinfo; -var IBDefaultFontFace = @"Lucida Grande", - IBDefaultFontSize = 13.0; - @implementation CPFont (NSCoding) - (id)NS_initWithCoder:(CPCoder)aCoder @@ -45,7 +45,33 @@ var IBDefaultFontFace = @"Lucida Grande", isItalic = info.italic; } - return [self _initWithName:name size:size bold:isBold italic:isItalic]; + // NOTE: We save the nib fonts as is, and determine system status later + var font = [self _initWithName:name + size:size + bold:isBold + italic:isItalic + system:NO]; + + CPLog.debug("NSFont: %s", [NSFont descriptorForFont:font]); + + return font; +} + +- (id)cibFontForNibFont +{ + if (_name === IBDefaultFontFace) + { + if (_size === IBDefaultFontSize && !_isBold && !_isItalic) + return nil; + else + return [[CPFont alloc] _initWithName:_CPFontSystemFacePlaceholder + size:_size == IBDefaultFontSize ? CPFontCurrentSystemSize : _size + bold:_isBold + italic:_isItalic + system:YES]; + } + + return self; } @end @@ -60,23 +86,31 @@ var IBDefaultFontFace = @"Lucida Grande", CPLog.debug("NSFont: default IB font: %s %f", IBDefaultFontFace, IBDefaultFontSize); } -+ (id)cibFontForNibFont:(CPFont)aFont ++ (CPString)descriptorForFont:(CPFont)aFont { - var name = [aFont familyName]; + var styleAttributes = []; - if (name === IBDefaultFontFace) + if ([aFont isBold]) + styleAttributes.push("bold"); + + if ([aFont isItalic]) + styleAttributes.push("italic"); + + styleAttributes = styleAttributes.join(" "); + + var systemAttributes = []; + + if ([aFont isSystem]) { - var size = [aFont size], - bold = [aFont isBold], - italic = [aFont isItalic]; + systemAttributes.push("system face"); - if (size === IBDefaultFontSize && !bold && !italic) - return nil; - else - return [[CPFont alloc] _initWithName:[CPFont systemFontFace] size:(size == IBDefaultFontSize ? CPFontDefaultSystemFontSize : size) bold:bold italic:italic]; + if ([aFont size] === IBDefaultFontSize) + systemAttributes.push("system size"); } - return [aFont copy]; + systemAttributes = systemAttributes.join(", "); + + return [CPString stringWithFormat:@"%s%s %d%s", [aFont familyName], styleAttributes ? " " + styleAttributes : "", [aFont size], systemAttributes ? " (" + systemAttributes + ")" : ""]; } - (id)initWithCoder:(CPCoder)aCoder diff --git a/Tools/nib2cib/NSMatrix.j b/Tools/nib2cib/NSMatrix.j index a71e3ef98..4f061a52e 100644 --- a/Tools/nib2cib/NSMatrix.j +++ b/Tools/nib2cib/NSMatrix.j @@ -115,6 +115,7 @@ var NSMatrixRadioModeMask = 0x40000000, [self setAllowsMixedState:[aCell allowsMixedState]]; [self setObjectValue:[aCell objectValue]]; [self setEnabled:[aCell isEnabled]]; + [self setTag:[aCell tag]]; } return self; diff --git a/Tools/nib2cib/NSRuleEditor.j b/Tools/nib2cib/NSRuleEditor.j index fb7be960d..aa2db53ae 100644 --- a/Tools/nib2cib/NSRuleEditor.j +++ b/Tools/nib2cib/NSRuleEditor.j @@ -35,23 +35,23 @@ if (self) { - _alignmentGridWidth = [aCoder decodeFloatForKey:@"NSRuleEditorAlignmentGridWidth"]; - _sliceHeight = [aCoder decodeDoubleForKey:@"NSRuleEditorSliceHeight"]; - _stringsFilename = [aCoder decodeObjectForKey:@"NSRuleEditorStringsFileName"]; + _alignmentGridWidth = [aCoder decodeFloatForKey:@"NSRuleEditorAlignmentGridWidth"]; + _sliceHeight = [aCoder decodeDoubleForKey:@"NSRuleEditorSliceHeight"]; + _stringsFilename = [aCoder decodeObjectForKey:@"NSRuleEditorStringsFileName"]; _editable = [aCoder decodeBoolForKey:@"NSRuleEditorEditable"]; _allowsEmptyCompoundRows = [aCoder decodeBoolForKey:@"NSRuleEditorAllowsEmptyCompoundRows"]; _disallowEmpty = [aCoder decodeBoolForKey:@"NSRuleEditorDisallowEmpty"]; - _nestingMode = [aCoder decodeIntForKey:@"NSRuleEditorNestingMode"]; - _typeKeyPath = [aCoder decodeObjectForKey:@"NSRuleEditorRowTypeKeyPath"]; - _itemsKeyPath = [aCoder decodeObjectForKey:@"NSRuleEditorItemsKeyPath"]; - _valuesKeyPath = [aCoder decodeObjectForKey:@"NSRuleEditorValuesKeyPath"]; - _subrowsArrayKeyPath = [aCoder decodeObjectForKey:@"NSRuleEditorSubrowsArrayKeyPath"]; - _boundArrayKeyPath = [aCoder decodeObjectForKey:@"NSRuleEditorBoundArrayKeyPath"]; + _nestingMode = [aCoder decodeIntForKey:@"NSRuleEditorNestingMode"]; + _typeKeyPath = [aCoder decodeObjectForKey:@"NSRuleEditorRowTypeKeyPath"]; + _itemsKeyPath = [aCoder decodeObjectForKey:@"NSRuleEditorItemsKeyPath"]; + _valuesKeyPath = [aCoder decodeObjectForKey:@"NSRuleEditorValuesKeyPath"]; + _subrowsArrayKeyPath = [aCoder decodeObjectForKey:@"NSRuleEditorSubrowsArrayKeyPath"]; + _boundArrayKeyPath = [aCoder decodeObjectForKey:@"NSRuleEditorBoundArrayKeyPath"]; - //_slicesHolder = [aCoder decodeObjectForKey:@"NSRuleEditorViewSliceHolder"]; - _boundArrayOwner = [aCoder decodeObjectForKey:@"NSRuleEditorBoundArrayOwner"]; - _slices = [aCoder decodeObjectForKey:@"NSRuleEditorSlices"]; - _ruleDelegate = [aCoder decodeObjectForKey:@"NSRuleEditorDelegate"]; + //_slicesHolder = [aCoder decodeObjectForKey:@"NSRuleEditorViewSliceHolder"]; + _boundArrayOwner = [aCoder decodeObjectForKey:@"NSRuleEditorBoundArrayOwner"]; + _slices = [aCoder decodeObjectForKey:@"NSRuleEditorSlices"]; + _ruleDelegate = [aCoder decodeObjectForKey:@"NSRuleEditorDelegate"]; } return self; diff --git a/Tools/nib2cib/NSSplitView.j b/Tools/nib2cib/NSSplitView.j index 6079cbd7b..741b970af 100644 --- a/Tools/nib2cib/NSSplitView.j +++ b/Tools/nib2cib/NSSplitView.j @@ -22,6 +22,7 @@ @import +var NSThinDividerStyle = 2; @implementation CPSplitView (CPCoding) @@ -30,7 +31,11 @@ if (self = [super NS_initWithCoder:aCoder]) { _isVertical = [aCoder decodeBoolForKey:@"NSIsVertical"]; - _isPaneSplitter = [aCoder decodeIntForKey:@"NSDividerStyle"] == 3; + + // The possible values appear to be: no value (thick divider), 2 (thin divider) and 3 (pane splitter). For + // Cappuccino's purposes we treat thick divider and pane splitter as the same thing since the only difference + // seems to be graphical. + _isPaneSplitter = [aCoder decodeIntForKey:@"NSDividerStyle"] != NSThinDividerStyle; _autosaveName = [aCoder decodeObjectForKey:@"NSAutosaveName"]; } diff --git a/Tools/nib2cib/NSTableColumn.j b/Tools/nib2cib/NSTableColumn.j index f573c29f8..10ef6dcea 100644 --- a/Tools/nib2cib/NSTableColumn.j +++ b/Tools/nib2cib/NSTableColumn.j @@ -51,7 +51,7 @@ selectedFont = nil; if (font) - font = [NSFont cibFontForNibFont:font]; + font = [font cibFontForNibFont]; if (!font) font = [CPFont systemFontOfSize:[CPFont systemFontSize]]; diff --git a/Tools/nib2cib/NSTableView.j b/Tools/nib2cib/NSTableView.j index b54ebb1a8..a41342a45 100644 --- a/Tools/nib2cib/NSTableView.j +++ b/Tools/nib2cib/NSTableView.j @@ -59,11 +59,7 @@ _intercellSpacing = CGSizeMake([aCoder decodeFloatForKey:@"NSIntercellSpacingWidth"], [aCoder decodeFloatForKey:@"NSIntercellSpacingHeight"]); - var gridColor = [aCoder decodeObjectForKey:@"NSGridColor"]; - - if (![gridColor isEqual:[CPColor colorWithRed:127.0 / 255.0 green:127.0 / 255.0 blue:127.0 / 255.0 alpha:1.0]]) - [self setValue:gridColor forThemeAttribute:@"grid-color"]; - + [self setValue:[aCoder decodeObjectForKey:@"NSGridColor"] forThemeAttribute:@"grid-color"]; _gridStyleMask = [aCoder decodeIntForKey:@"NSGridStyleMask"]; _usesAlternatingRowBackgroundColors = (flags & 0x00800000) ? YES : NO; diff --git a/Tools/nib2cib/NSTextField.j b/Tools/nib2cib/NSTextField.j index 41b30c9d2..8c6d1241d 100644 --- a/Tools/nib2cib/NSTextField.j +++ b/Tools/nib2cib/NSTextField.j @@ -36,9 +36,6 @@ { var cell = [aCoder decodeObjectForKey:@"NSCell"]; - if ([cell isEditable] && [[cell font] isEqual:[CPFont boldSystemFontOfSize:12.0]]) - [self setFont:[CPFont systemFontOfSize:12.0]]; - [self sendActionOn:CPKeyUpMask | CPKeyDownMask]; [self setEditable:[cell isEditable]]; @@ -64,19 +61,20 @@ // 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 frame = [self frame]; - [self setFrameOrigin:CGPointMake(frame.origin.x - 6.0, frame.origin.y - 3.0)]; [self setFrameSize:CGSizeMake(frame.size.width + 8.0, frame.size.height + 7.0)]; } - else if ([[self font] isBold]) + else { - var frame = [self frame]; + // Adjust frame for difference between layout->bounds rect in IB + [self setFrame:CGRectInset(frame, 3.0, 0.0)]; + // Hack to get baselines to align [self setFrameOrigin:CGPointMake(frame.origin.x, frame.origin.y - 1.0)]; - [self setFrameSize:CGSizeMake(frame.size.width, frame.size.height + 2.0)]; } CPLog.debug("NSTextField: title=\"" + [self stringValue] + "\", placeholder=" + ([cell placeholderString] == null ? "" : '"' + [cell placeholderString] + '"') + ", isBordered=" + [self isBordered] + ", isBezeled=" + [self isBezeled] + ", bezelStyle=" + [self bezelStyle]); diff --git a/Tools/nib2cib/Nib2Cib.j b/Tools/nib2cib/Nib2Cib.j index 20a9942e9..76f79db66 100644 --- a/Tools/nib2cib/Nib2Cib.j +++ b/Tools/nib2cib/Nib2Cib.j @@ -80,6 +80,7 @@ var FILE = require("file"), var options = [self parseOptionsFromArgs:commandLineArgs]; [self setLogLevel:options.quiet ? -1 : options.verbosity]; + [self checkPrerequisites]; if (options.watch) [self watchWithOptions:options]; @@ -93,6 +94,15 @@ var FILE = require("file"), } } +- (void)checkPrerequisites +{ + var fontinfo = require("cappuccino/fontinfo").fontinfo, + info = fontinfo("LucidaGrande", 13); + + if (!info) + [self failWithMessage:@"fontinfo does not appear to be installed"]; +} + - (BOOL)convertWithOptions:(JSObject)options inputFile:(CPString)inputFile { try