Commits

Ronald Oussoren committed 07ff22c

- Added simple tests for pyobjc_instanceMethods and pyobjc_classMethods
attributes of classes and instances. Also fixed the bugs indicated by these
tests.
- Worked my way through the output of Scripts/find-raw-pointers.py and
added stubs for the difficult methods to Modules/{AppKit,Foundation}, most
of these have not been implemented. Also added text related to this to
Doc/api-notes-macosx.txt
- Removed mapping of reverseObjectEnumerator on __iter__, that isn't a very
usefull mapping because ``for i in anNSArray:`` would enumerate the array
in the reverse order (or not, depending on the order in which
``reverseObjectEnumerator`` and ``objectEnumerator`` are returned by
dict.keys).
- Found the bug that made test_splitsig crash, the test is now enabled by
default.
- Added tests for the difficult methods of NSArray, the same thing should
be done for other difficult methods. There should also be tests for calling
difficult methods from Objective-C.
- Added custom wrapper for NSNetService.addresses. This methods used to
return an NSArray containing NSData objects that contained the raw
struct socketaddr information. It now returns a tuple with decoded
sockaddr structs (the same information as returned by socket.getpeername)

Comments (0)

Files changed (35)

 
 The test suite needs to be enhanced.
 
+* tests for ``pyobjc_instanceMethods``, ``pyobjc_classMethods``
+
+* tests for all functions in ``Modules/*/*Mapping*.m``
+
 
 Less important items
 --------------------
 
    #include PyObjC_PLAT_FILE("_Fnd_Var", ".inc")
 
+Another option would be to make the generator script slightly smarter: have
+it emit #if version guards based on the guards found in the header files.
+
 Convenience functions
 .....................
 
 
 Design and implement a set of performance tests for the bridge. Use this to 
 invistigate and fix any possible performance problems.
+

pyobjc/Doc/api-notes-macosx.txt

 AppKit framework
 ----------------
 
-NSPoint is a tuple of 2 floats, or use ``AppKit.NSMakePoint()``.
+``NSPoint`` is a tuple of 2 floats, or use ``AppKit.NSMakePoint(x, y)``.
 
-NSSize is a tuple of 2 floats, or use ``AppKit.NSMakeSize()``.
+``NSSize`` is a tuple of 2 floats, or use ``AppKit.NSMakeSize(h, w)``.
 
-NSRect is a tuple of an NSPoint and an NSSize, or use ``AppKit.NSMakeRect()``.
+``NSRect`` is a tuple of an ``NSPoint`` and an ``NSSize``, or 
+use ``AppKit.NSMakeRect(x, y, h, w)``.
 
-The methods that are used as callbacks for sheet related operations should
-be methods that have explicit selector wrappers using ``NSEndSheetMethod``. 
-(XXX: I don't think I would understand this myself, need to rephrase)
+The callback methods for the NSSheet API's have a non-default signature
+and no fixed name. You should therefore explicitly specify the signature. This
+is done by calling the ``NSEndSheetMethod`` function after defining your
+callback::
+	
+	class MYClass (NSObject):
+		def mysheetDidEnd(self, panel, returnCode, contextInfo):
+			""" Actual implementation goes here """
+			pass
+
+		mysheetDidEnd = NSEndSheetMethod(mysheetDidEnd)
 
 Class NSBezierPath
 ..................
 * ``setAssociatedPoints:atIndex:``
   Implementing this method in Python is not yet supported.
 
-* All other methods are supported (MacOS X 10.2)
+Class ``NSGraphicsContext``
+...........................
 
+* ``focusStack``
+  This method is not supported.
+
+* ``setFocusStack``
+  This method is not supported.
+
+* ``graphicsPort``
+  This method is not yet supported.
+
+Class ``NSMatrix``
+..................
+
+* ``sortUsingFunction:context``
+  Calling this method from Python is supported, overriding it in Python
+  is not. The ``context`` can be an arbitrary python object.
+
+Class ``NSView``
+
+* ``sortSubviewsUsingFunction:context:``
+  Calling this method from Python is supported, overriding it in Python
+  is not. The ``context`` can be an arbitrary python object.
 
 Foundation framework
 --------------------
 using the python function ``apply``. The ``performv::`` method is also not
 supported, with a simular work-around.
 
-Class NSArray
-.............
+Class ``NSArray``
+.................
 
 * ``initWithObjects:``, ``arrayWithObjects:``
   These methods are not supported, use ``initWithArray:`` instead.
   These methods can be called from Python, but you cannot override them
   from Python. This limitation will be lifted in a future version of PyObjC.
 
-Class NSBundle
-..............
+  The ``context`` can be an arbitrary python object.
+
+Class ``NSBundle``
+..................
 
 * ``bundleForClass:``
   This method does not work correctly for classes defined in Python, these
   the function ``objc.pluginBundle(name)`` to find the NSBundle for your
   Python based bundle. See Examples/PrefPane for an example of its usage.
 
-Class NSData
-............
+Class ``NSCoder``
+.................
+
+The following methods are not supported in the current version of PyObjC.
+This limitation will be lifted in a future version of the bridge.
+
+* ``encodeBytes:length:``
+
+* ``decodeBytesWithReturnedLength:``
+
+* ``encodeValuesOfObjCType:``
+
+* ``decodeValuesOfObjCType:``
+
+* ``decodeBytesForKey:returnedLength:``
+
+* ``decodeBytesWithoutReturnedLength:``
+
+
+Class ``NSData``
+................
 
 * ``initWithBytesNoCopy:length:``
   This method is not supported, use ``initWithBytes:length:`` instead.
 
 
 
-Class NSDictionary
-..................
+Class ``NSDictionary``
+......................
 
 The (undocumented) methods ``getKeys:``, ``getObjects:`` and 
 ``getObjects:andKeys:`` are not supported.
 
-Class NSFault
-.............
+Class ``NSFault``
+.................
 
 The ``extraData`` argument/return value for ``-extraData`` and 
 ``setTargetClassextraData:`` is represented as an integer.
 
-Class NSMutableArray
-....................
+Class ``NSMutableArray``
+........................
 
 * ``sortUsingFunction:context:``, ``sortUsingFunction:context:range:``
   Calling this method from Python is supported, overriding it in a subclass
   is not. This limitation will be fixed in a later version of PyObjC.
 
-Class NSScriptObjectSpecifier
-.............................
+  The ``context`` can be an arbitrary python object.
+
+Class ``NSNetService``
+......................
+
+* ``addresses``
+  When calling this from Python this methods returns a tuple of adress-info
+  tuples, like the values returned by ``socket.getpeeraddr()``. 
+
+Class ``NSScriptObjectSpecifier``
+.................................
 
 * ``indicesOfObjectsByEvaluatingWithContainer:count:``
   Implementing this in Python is not supported yet. We're looking for a way
   to avoid leaking the returned buffer, as we cannot return a pointer to an
   internal datastructure.
 
-Class NSSet
-...........
+Class ``NSSet``
+...............
 
 * ``initWithObjects:``, ``setWithObjects:``
   This method is not supported, use ``initWithArray:`` instead.
 Class NSString
 ..............
 
+Objective-C strings are usually represented as instances of a subclass of
+the Python type ``unicode``. It is possible to access the "real" Objective-C
+string by using the method ``NSString``. This should only be necessary when
+dealing with mutable strings, or when you want to access methods that don't
+have a Python equivalent.
+
 * ``initWithCharactersNoCopy:length:freeWhenDone:`` 
   This method is unsupported because we cannot guarantee that the buffer wil
   be available as long as the string is. Use ``initWithCharacters:`` instead.
 
+* ``getCharacters:`` and ``getCharacters:range:``
+  These methods are not supported at the moment. This limitation will be liften
+  in a future version of the bridge.
+
+* ``getCString:maxLength:range:remainingRange:`` and ``getCString:maxLength:``
+  Calling these methods from Python is supported, overriding them from 
+  Python is not. This limitation will be liften in a future version of the
+  bridge.
+
+* ``getCString:``
+  This method is not supported. Use ``getCString:maxLength:`` instead (using
+  the length of the string as the maximum length). This limitation will be
+  liften in a future version of the bridge.
+
 InterfaceBuilder framework
 --------------------------
 
-T.B.D.
+I (Ronald) have not found documentation for this framework, therefore the
+following methods with a "difficult" signature are not supported.
+
+Please let me know if there is documentation for this framework.
+
+Class IBObjCSourceParser
+........................
+
+* ``parseClass:``
+
+Class NSView
+............
+* ``objectAtPoint:rect:``
+  Defined in a catagory on ``NSView``.
+
+Class ``NSIBObjectData``
+........................
+
+* ``restoreFromObjectDataInfo:``
+
+* ``snapshotIntoObjectDataInfo:``
+
+Class ``IBObjectContainer``
+...........................
+
+* ``decodeObjectToIntMapTableForKey:fromCoder:alwaysCreate:``
+
+* ``decodeObjectToObjectMapTableForKey:fromCoder:alwaysCreate:``
+
+Class ``IBXMLDecoder``
+......................
+
+* ``allocObjectWithClassName:``
+
+Class ``IBSplitScrollView``
+...........................
+
+* ``getMinimumX:maximumX:``
+
 
 PreferencePanes framework
 -------------------------
 
-T.B.D.
+This framework seems to define usefull classes like ``NSAuthorization`` and
+``NSKeychain``, but these are not documented and some usefull methods have
+a hard signature.
+
+The only documented class, ``NSPreferencePane`` is fully supported.
+
+ScreenSaver framework
+---------------------
+
+Class ``ScreenSaverDefaults``
+.............................
+
+This class is fully supported.
+
+Class ``ScreenSaverView``
+.........................
+
+This class is fully supported.

pyobjc/Doc/intro.txt

 -------
 
 PyObjC is a bridge between Python and Objective-C. It allows you to write 
-Python scripts that reuse and extend existing Objective-C class libraries, 
-most importantly the `Cocoa library`_ by `Apple`_.
+Python scripts that use and extend existing Objective-C class libraries, 
+most importantly the `Cocoa libraries`_ by `Apple`_.
 
 This document describes how to use Objective-C class libraries from Python
 scripts and how to interpret the documentation of those libraries, from the 
 
 * `The Objective-C Programming Language`_ at `Apple`_.
 
+.. _`The Objective-C Programming Language`: http://developer.apple.com/techpubs/macosx/Cocoa/ObjectiveC/index.html
 
-.. _`The Objective-C Programming Language`: http://developer.apple.com/techpubs/macosx/Cocoa/ObjectiveC/index.html
 
 Overview of the bridge
 ----------------------
 
 * Your local bookstore or library
 
-..  _`Cocoa library`: http://developer.apple.com/techpubs/macosx/Cocoa/CocoaTopics.html
+..  _`Cocoa libraries`: http://developer.apple.com/techpubs/macosx/Cocoa/CocoaTopics.html
 
 ..  _`Cocoa documentation at the Apple developer website`: http://developer.apple.com/techpubs/macosx/Cocoa/CocoaTopics.html
 

pyobjc/Lib/AppKit/AppKit.byref

-,NSAKDeserializerStream,initFromMemoryNoCopy:length:freeWhenDone:,@13@4:8r^v12I16c20,
-,NSAKDeserializerStream,readData:length:,v12@4:8^v12I16,
-,NSAKSerializerStream,copySerializationInto:,v8@4:8^v12,
-,NSAKSerializerStream,writeData:length:,I12@4:8r^v12I16,
-,NSAKSerializerStream,writeRoomForInt:,I8@4:8^i12,
-,NSActionCell,_delegateValidation:object:uiHandled:,c16@4:8@12@16^c20,
-,NSAffineTransform,_fillFloatArray:,v8@4:8^f12,
-,NSAlert,didEndSheet:returnCode:contextInfo:,v16@4:8@12i16^v20,v16@4:8@12i16i20
-,NSApplication,_commonBeginModalSessionForWindow:relativeToWindow:modalDelegate:didEndSelector:contextInfo:,^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}24@4:8@12@16@20:24^v28,^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}24@4:8@12@16@20:24i28
-,NSApplication,_createDockMenu:,^{__CFArray=}5@4:8c12,
-,NSApplication,_doModalLoop:peek:,v9@4:8^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}12c16,
-,NSApplication,_doOpenFile:ok:tryTemp:,v13@4:8@12^i16c20,
-,NSApplication,_doPostedModalLoopMsg:,v8@4:8^{?=^{_NSModalSession}c@}12,
-,NSApplication,_doPrintFile:ok:,v12@4:8@12^i16,
-,NSApplication,_flattenMenu:,^{__CFArray=}8@4:8@12,
-,NSApplication,_flattenMenuItem:,^{__CFDictionary=}8@4:8@12,
-,NSApplication,_realDoModalLoop:peek:,v9@4:8^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}12c16,
-,NSApplication,beginModalSessionForWindow:,^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}8@4:8@12,
-,NSApplication,beginModalSessionForWindow:relativeToWindow:,^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}12@4:8@12@16,
-,NSApplication,beginSheet:modalForWindow:modalDelegate:didEndSelector:contextInfo:,v24@4:8@12@16@20:24^v28,v@:@@@:i
-,NSApplication,contextID,^v4@4:8,i4@4:8
-,NSApplication,endModalSession:,v8@4:8^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}12,
-,NSApplication,msgPrint:ok:,i12@4:8r*12^i16,
-,NSApplication,openFile:ok:,i12@4:8@12^i16,i12@4:8@12o^i16
-,NSApplication,openTempFile:ok:,i12@4:8@12^i16,i12@4:8@12o^i16
-,NSApplication,runModalSession:,i8@4:8^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}12,i8@4:8^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}12
-,NSBMPImageReader,palette,r^S4@4:8,
-,NSBezierPath,appendBezierPathWithGlyphs:count:inFont:,v16@4:8^I12i16@20,
-,NSBezierPath,appendBezierPathWithPoints:count:,v12@4:8^{_NSPoint=ff}12i16,
-,NSBezierPath,elementAtIndex:associatedPoints:,i12@4:8i12^{_NSPoint=ff}16,
-,NSBezierPath,getLineDash:count:phase:,v16@4:8^f12^i16^f20,
-,NSBezierPath,setAssociatedPoints:atIndex:,v12@4:8^{_NSPoint=ff}12i16,
-,NSBezierPath,setLineDash:count:phase:,v32@4:8r^f12i16f36,
-,NSBitmapImageRep,_imagesFromIcon:inApp:zone:,@16@4:8@12@16^{_NSZone=}20,
-,NSBitmapImageRep,_imagesWithData:hfsFileType:extension:zone:,@20@4:8@12@16@20^{_NSZone=}24,
-,NSBitmapImageRep,_initWithData:tiff:imageNumber:,@14@4:8@12^{tiff=*^{_NXStream}sccsll{?=IIIIIISSSSSSSSSSIIIffSSffII[2S]ISSSSI^S^S^S^S[3^S]*********[2I]II^I^I[2S]^f[2S]S^f^f^f[4^S]S[2S]**I^v}{?=SSL}^i^i[10i]liillil^?^?^?^?^?^?^?^?^?^?^?^?*ii*l*llii}16s20,
-,NSBitmapImageRep,_initWithSharedBitmap:rect:,@24@4:8^v12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16,
-,NSBitmapImageRep,_loadImageFromTIFF:imageNumber:,c12@4:8^{tiff=*^{_NXStream}sccsll{?=IIIIIISSSSSSSSSSIIIffSSffII[2S]ISSSSI^S^S^S^S[3^S]*********[2I]II^I^I[2S]^f[2S]S^f^f^f[4^S]S[2S]**I^v}{?=SSL}^i^i[10i]liillil^?^?^?^?^?^?^?^?^?^?^?^?*ii*l*llii}12i16,
-,NSBitmapImageRep,_loadImageInfoFromTIFF:,v8@4:8^{tiff=*^{_NXStream}sccsll{?=IIIIIISSSSSSSSSSIIIffSSffII[2S]ISSSSI^S^S^S^S[3^S]*********[2I]II^I^I[2S]^f[2S]S^f^f^f[4^S]S[2S]**I^v}{?=SSL}^i^i[10i]liillil^?^?^?^?^?^?^?^?^?^?^?^?*ii*l*llii}12,
-,NSBitmapImageRep,_writeTIFF:usingCompression:factor:,v32@4:8^{_NXStream=I**iilii^{stream_functions}^v}12i16f36,
-,NSBitmapImageRep,getBitmapDataPlanes:,v8@4:8^*12,
-,NSBitmapImageRep,getCompression:factor:,v12@4:8^i12^f16,v@:o^io^f
-,NSBitmapImageRep,getTIFFCompressionTypes:count:,v12@4:8r^^i12^i16,
-,NSBitmapImageRep,initWithBitmapDataPlanes:pixelsWide:pixelsHigh:bitsPerSample:samplesPerPixel:hasAlpha:isPlanar:colorSpaceName:bytesPerRow:bitsPerPixel:,@48@4:8^*12i16i20i24i28c32c43@44i48i52,
-,NSBrowser,_getMatchingRow:forString:inMatrix:startingAtRow:prefixMatch:caseSensitive:,c25@4:8^i12@16@20i24c28c32,
-,NSBrowserCell,_checkLoaded:rect:highlight:,c16@4:8@12r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16i20,
-,NSButton,getPeriodicDelay:interval:,v12@4:8^f12^f16,v@:o^fo^f
-,NSCGSContext,windowID,^v4@4:8,
-,NSCGSFont,_atsFontID,^v4@4:8,
-,NSCGSFont,_backingCGSFont,^{CGFont=^{CGFontVTable}Ii^{CGEncoding}^{CGCMap}^{CGAdvanceSet}^{CGAdvanceSet}i^{CGFontCache}^vb1b1b1b1}4@4:8,
-,NSCGSFont,_nominalChars,^S4@4:8,
-,NSCGSFont,_nominalGlyphs,^S4@4:8,
-,NSCalibratedRGBColor,newWithCoder:zone:,@12@4:8@12^{_NSZone=}16,
-,NSCalibratedWhiteColor,newWithCoder:zone:,@12@4:8@12^{_NSZone=}16,
-,NSCarbonWindow,handleMouseDownEvent:at:inPart:withMods:,i20@4:8^{OpaqueEventRef=}12{Point=ss}16s20I24,
-,NSCarbonWindow,initWithCarbonWindowRef:takingOwnership:,@9@4:8^{OpaqueWindowPtr=}12c16,
-,NSCarbonWindow,sendCarbonUpdateHICommandStatusEvent:withMenuRef:andMenuItemIndex:,C14@4:8I12^{OpaqueMenuHandle=}16S20,
-,NSCarbonWindow,windowRef,^{OpaqueWindowPtr=}4@4:8,
-,NSCatalogColor,newWithCoder:zone:,@12@4:8@12^{_NSZone=}16,
-,NSCell,_objectValue:forString:,c12@4:8^@12@16,
-,NSCell,_selectOrEdit:inView:target:editor:event:start:end:,@36@4:8r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@16@20@24@28i32i40,
-,NSCell,_validateEntryString:uiHandled:,c12@4:8@12^c16,
-,NSCell,getPeriodicDelay:interval:,v12@4:8^f12^f16,
-,NSCharacterProperty,initWithRulebookSet:,@8@4:8^{_NSRulebookSetHeader=i[4L]iiii[1i]}12,
-,NSClipView,_scrollTo:,c8@4:8r^{_NSPoint=ff}12,
-,NSCollatorElement,entryState:,v8@4:8^{_NSSortState=iIIII[4@]}12,
-,NSCollatorElement,stepKey:elements:number:state:,i20@4:8@12^S16^i20^{_NSSortState=iIIII[4@]}24,
-,NSColor,getCyan:magenta:yellow:black:alpha:,v24@4:8^f12^f16^f20^f24^f28,v@:o^fo^fo^fo^f
-,NSColor,getHue:saturation:brightness:alpha:,v20@4:8^f12^f16^f20^f24,v@:o^fo^fo^fo^f
-,NSColor,getRed:green:blue:alpha:,v20@4:8^f12^f16^f20^f24,v@:o^fo^fo^fo^f
-,NSColor,getWhite:alpha:,v12@4:8^f12^f16,v@:o^fo^f
-,NSColorHolder,initFromSize:andColor:,@12@4:8r^{_NSSize=ff}12@16,
-,NSColorPanel,_makeNewSizeLegal:,@8@4:8^{_NSSize=ff}12,
-,NSColorPickerList,_attachColorList:systemList:,@9@4:8^@12c16,
-,NSColorPickerList,_attachColorList:systemList:makeSelected:,@13@4:8^@12c16c20,
-,NSColorPickerUserView,_pointInPicker:,c8@4:8^{_NSPoint=ff}12,
-,NSColorPickerWheelView,_pointInPicker:,c8@4:8^{_NSPoint=ff}12,
-,NSConcretePrintOperation,_operationInfo,^{_PrivatePrintOperationInfo={_NSRect={_NSPoint=ff}{_NSSize=ff}}{_NSRect={_NSPoint=ff}{_NSSize=ff}}cccccccciiiiiii@@{_NSRect={_NSPoint=ff}{_NSSize=ff}}ccciffffii{_NSPoint=ff}I^{_NSModalSession}@iiciii@c@ic@@i@}4@4:8,
-,NSConcretePrintOperation,_printPanel:didEndAndReturn:contextInfo:,v16@4:8@12i16^v20,v16@4:8@12i16i20
-,NSConcretePrintOperation,_progressPanel:didEndAndReturn:contextInfo:,v16@4:8@12i16^v20,v16@4:8@12i16i20
-,NSConcretePrintOperation,_progressPanelWasCancelled:contextInfo:,v12@4:8@12^v16,v12@4:8@12i16
-,NSCoreDragManager,_dragUntilMouseUp:accepted:,v12@4:8@12^c16,
-,NSDefaultEnglishSpellServerDelegate,spellServer:findMisspelledWordInString:language:wordCount:countOnly:,{_NSRange=II}25@8:12@16@20@24^i28c32,
-,NSDeviceCMYKColor,newWithCoder:zone:,@12@4:8@12^{_NSZone=}16,
-,NSDocInfo,initFromInfo:,@8@4:8^{stat=iISSIIi{timespec=ii}{timespec=ii}{timespec=ii}qqIIIi[2q]}12,
-,NSDocument,_changeAlertDidEnd:returnCode:contextInfo:,v16@4:8@12i16^v20,v16@4:8@12i16i20
-,NSDocument,_compatibility_canCloseDocumentWithDelegate:shouldCloseSelector:contextInfo:,v16@4:8@12:16^v20,v16@4:8@12:16i20
-,NSDocument,_compatibility_doSavePanelSave:delegate:didSaveSelector:contextInfo:,v20@4:8i12@16:20^v24,v20@4:8i12@16:20i24
-,NSDocument,_compatibility_shouldCloseWindowController:delegate:shouldCloseSelector:contextInfo:,v20@4:8@12@16:20^v24,v20@4:8@12@16:20i24
-,NSDocument,_createTemporaryDirectoryOn:orHiddenIn:andReturnRef:,c16@4:8s12r^{FSRef=[80C]}16^{FSRef=[80C]}20,
-,NSDocument,_didEndCloseSheet:returnCode:closeContext:,v16@4:8@12i16^v20,v16@4:8@12i16i20
-,NSDocument,_document:pageLayoutDidReturn:contextInfo:,v16@4:8@12c16^v20,v16@4:8@12c16i20
-,NSDocument,_finishSaveDocumentTo:withType:forSaveOperation:withDelegate:didSaveSelector:contextInfo:,v28@4:8@12@16i20@24:28^v32,v28@4:8@12@16i20@24:28i32
-,NSDocument,_finishWritingFileNamed:in:byExchangingWithFileIn:,c16@4:8@12r^{FSRef=[80C]}16r^{FSRef=[80C]}20,
-,NSDocument,_pageLayout:didEndAndReturn:contextInfo:,v16@4:8@12i16^v20,v16@4:8@12i16i20
-,NSDocument,_pathToFileNamed:in:,@12@4:8@12r^{FSRef=[80C]}16,
-,NSDocument,_printOperation:didReturn:contextInfo:,v16@4:8@12c16^v20,v16@4:8@12c16i20
-,NSDocument,_revertPanel:didConfirm:contextInfo:,v16@4:8@12i16^v20,v16@4:8@12i16i20
-,NSDocument,_runAlertPanelForDocumentMoved:orDocumentRenamed:orDocumentInTrash:orDocumentUnavailable:thenSaveDocumentWithDelegate:didSaveSelector:contextInfo:,v36@4:8c12c16c20c24@28:32^v40,v36@4:8c12c16c20c24@28:32i40
-,NSDocument,_savePanelDidEnd:returnCode:contextInfo:,v16@4:8@12i16^v20,v16@4:8@12i16i20
-,NSDocument,_writeItemAt:in:makingTemporaryCopyIn:withType:forSaveOperation:,c24@4:8@12r^{FSRef=[80C]}16r^{FSRef=[80C]}20@24i28,
-,NSDocument,canCloseDocumentWithDelegate:shouldCloseSelector:contextInfo:,v16@4:8@12:16^v20,v16@4:8@12:16i20
-,NSDocument,runModalPageLayoutWithPrintInfo:delegate:didRunSelector:contextInfo:,v20@4:8@12@16:20^v24,v20@4:8@12@16:20i24
-,NSDocument,runModalPrintOperation:delegate:didRunSelector:contextInfo:,v20@4:8@12@16:20^v24,v20@4:8@12@16:20i24
-,NSDocument,runModalSavePanelForSaveOperation:delegate:didSaveSelector:contextInfo:,v20@4:8i12@16:20^v24,v20@4:8i12@16:20i24
-,NSDocument,saveDocumentWithDelegate:didSaveSelector:contextInfo:,v16@4:8@12:16^v20,v16@4:8@12:16i20
-,NSDocument,saveToFile:saveOperation:delegate:didSaveSelector:contextInfo:,v24@4:8@12i16@20:24^v28,v24@4:8@12i16@20:24i28
-,NSDocument,shouldCloseWindowController:delegate:shouldCloseSelector:contextInfo:,v20@4:8@12@16:20^v24,v20@4:8@12@16:20i24
-,NSDocumentController,_closeDocumentsStartingWith:shouldClose:closeAllContext:,v16@4:8@12c16^v20,
-,NSDocumentController,_document:didSave:contextInfo:,v16@4:8@12c16^v20,v16@4:8@12c16i20
-,NSDocumentController,_installOpenRecentMenuOpeningEventHandler:,v8@4:8^{OpaqueMenuHandle=}12,
-,NSDocumentController,closeAllDocumentsWithDelegate:didCloseAllSelector:contextInfo:,v16@4:8@12:16^v20,v16@4:8@12:16i20
-,NSDocumentController,reviewUnsavedDocumentsWithAlertTitle:cancellable:delegate:didReviewAllSelector:contextInfo:,v24@4:8@12c16@20:24^v28,v24@4:8@12c16@20:24i28
-,NSDragDestination,_receiveHandlerRef,^{OpaqueCoreDragHandler=}4@4:8,
-,NSDragDestination,_setDragRef:,v8@4:8^{OpaqueCoreDrag=}12,
-,NSDragDestination,_setReceiveHandlerRef:,v8@4:8^{OpaqueCoreDragHandler=}12,
-,NSDragDestination,_setTrackingHandlerRef:,v8@4:8^{OpaqueCoreDragHandler=}12,
-,NSDragDestination,_trackingHandlerRef,^{OpaqueCoreDragHandler=}4@4:8,
-,NSEPSImageRep,_imagesFromIcon:inApp:zone:,@16@4:8@12@16^{_NSZone=}20,
-,NSEvent,_cgsEventRecord,{_CGSEventRecord=SSII{CGPoint=ff}{CGPoint=ff}QI^v^v(?={?=CCsiCcCCss(?={_CGSTabletPointData=iiiSS{?=ss}SsSsss}{_CGSTabletProximityData=SSSSSSIQICCs})[4i]}{?=CCsiCcCCss(?={_CGSTabletPointData=iiiSS{?=ss}SsSsss}{_CGSTabletProximityData=SSSSSSIQICCs})[4i]}{?=ssSSSsssI[11i]}{?=ssii[13i]}{?=SSIIi[12i]}{?=ssssi[13i]}{?=iiiSS{?=ss}SsSsss[8i]}{?=SSSSSSIQICCs[8i]}{?=ss(?=[15f][15i][30s][60c])})}8@8:12,
-,NSEvent,_cgsevent,{_CGSEvent=I{CGPoint=ff}II^v(?={?=ssiCcs}{?=ssSSSs}{?=ssii}{?=SSLL}{?=ssssl}{?=ss(?=[2f][2l][4s][8c])})^v}8@8:12,
-,NSEvent,_eventRef,^v4@4:8,
-,NSEvent,_eventWithCGSEvent:,@120@4:8{_CGSEventRecord=SSII{CGPoint=ff}{CGPoint=ff}QI^v^v(?={?=CCsiCcCCss(?={_CGSTabletPointData=iiiSS{?=ss}SsSsss}{_CGSTabletProximityData=SSSSSSIQICCs})[4i]}{?=CCsiCcCCss(?={_CGSTabletPointData=iiiSS{?=ss}SsSsss}{_CGSTabletProximityData=SSSSSSIQICCs})[4i]}{?=ssSSSsssI[11i]}{?=ssii[13i]}{?=SSIIi[12i]}{?=ssssi[13i]}{?=iiiSS{?=ss}SsSsss[8i]}{?=SSSSSSIQICCs[8i]}{?=ss(?=[15f][15i][30s][60c])})}16,
-,NSEvent,_initWithCGSEvent:eventRef:,@124@4:8{_CGSEventRecord=SSII{CGPoint=ff}{CGPoint=ff}QI^v^v(?={?=CCsiCcCCss(?={_CGSTabletPointData=iiiSS{?=ss}SsSsss}{_CGSTabletProximityData=SSSSSSIQICCs})[4i]}{?=CCsiCcCCss(?={_CGSTabletPointData=iiiSS{?=ss}SsSsss}{_CGSTabletProximityData=SSSSSSIQICCs})[4i]}{?=ssSSSsssI[11i]}{?=ssii[13i]}{?=SSIIi[12i]}{?=ssssi[13i]}{?=iiiSS{?=ss}SsSsss[8i]}{?=SSSSSSIQICCs[8i]}{?=ss(?=[15f][15i][30s][60c])})}16^v128,
-,NSEvent,_setEventRef:,v8@4:8^v12,
-,NSEvent,enterExitEventWithType:location:modifierFlags:timestamp:windowNumber:context:eventNumber:trackingNumber:userData:,@52@4:8i12{_NSPoint=ff}16I24d36i40@44i48i52^v56,@52@4:8i12{_NSPoint=ff}16I24d36i40@44i48i52i56
-,NSEvent,userData,^v4@4:8,i@:
-,NSFileLocator,_shouldUseAliasToLocate:,c8@4:8r^{FSRef=[80C]}12,
-,NSFileSpecifier,asRef,r^{FSRef=[80C]}4@4:8,
-,NSFileSpecifier,initWithRef:,@8@4:8r^{FSRef=[80C]}12,
-,NSFileSpecifier,initWithRefNoCopy:,@8@4:8^{FSRef=[80C]}12,
-,NSFocusState,clip:,@8@4:8r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,@@:i^{_NSRect={_NSPoint=ff}{_NSSize=ff}}
-,NSFont,__matrix,r^f4@4:8,
-,NSFont,_concreteFontInit:,^{_NSFaceInfo=i^{_NSFaceInfo}@i{_NSFont_faceFlags=b1b1b1b1b1b1b1b1b1b1b22}^{_NSFontMetrics}^{_NSCGSFontMetrics}}8@4:8^{_NSFaceInfo=i^{_NSFaceInfo}@i{_NSFont_faceFlags=b1b1b1b1b1b1b1b1b1b1b22}^{_NSFontMetrics}^{_NSCGSFontMetrics}}12,
-,NSFont,_decodeMatrixWithCoder:,r^f8@4:8@12,
-,NSFont,_findFont:size:matrix:flag:,@32@4:8@12f36r^f20i24,
-,NSFont,_fontWithName:size:matrix:,@32@4:8@12f36r^f20,
-,NSFont,_makeSpecialFontName:size:matrix:bit:,@32@4:8@12f36r^f20I24,
-,NSFont,_preInitSetMatrix:fontSize:,v32@4:8r^f12f36,
-,NSFont,fontWithName:matrix:,@12@4:8@12r^f16,
-,NSFont,matrix,r^f4@4:8,
-,NSFont,metrics,^v4@4:8,
-,NSFont,positionOfGlyph:precededByGlyph:isNominal:,{_NSPoint=ff}20@8:12I16I20^c24,
-,NSFont,positionOfGlyph:struckOverGlyph:metricsExist:,{_NSPoint=ff}20@8:12I16I20^c24,
-,NSFont,positionOfGlyph:struckOverRect:metricsExist:,{_NSPoint=ff}36@8:12I16{_NSRect={_NSPoint=ff}{_NSSize=ff}}20^c40,
-,NSFont,positionOfGlyph:withRelation:toBaseGlyph:totalAdvancement:metricsExist:,{_NSPoint=ff}28@8:12I16i20I24^{_NSSize=ff}28^c32,
-,NSFont,positionsForCompositeSequence:numberOfGlyphs:pointArray:,i16@4:8^I12i16^{_NSPoint=ff}20,
-,NSGlyphGenerator,_callImplementor:context:chars:glyphs:stringBuffer:font:,v28@4:8i12^{_NSGlyphGenContext=iiiiiiiiiii@[32i][32i][32i][64i]{_NSRange=II}{_NSRange=II}ii^{_NSGlyphInsertBuffer}}16@20@24^{_NSRAStringBuffer=@IIIIII[100S]}28@32,
-,NSGlyphGenerator,_recurWithContext:chars:glyphs:stringBuffer:font:,v24@4:8^{_NSGlyphGenContext=iiiiiiiiiii@[32i][32i][32i][64i]{_NSRange=II}{_NSRange=II}ii^{_NSGlyphInsertBuffer}}12@16@20^{_NSRAStringBuffer=@IIIIII[100S]}24@28,
-,NSGlyphGenerator,generateGlyphsForLayoutManager:range:desiredNumberOfCharacters:startingAtGlyphIndex:completedRange:nextGlyphIndex:,v36@4:8@12{_NSRange=II}16I24I28^{_NSRange=II}32^I40,
-,NSGraphicsContext,focusStack,^v4@4:8,
-,NSGraphicsContext,graphicsPort,^v4@4:8,
-,NSGraphicsContext,setFocusStack:,v8@4:8^v12,
-,NSHFSBrowserCell,setIconRef:label:,v10@4:8^{OpaqueIconRef=}12s16,
-,NSHFSContainer,getRef:forObjectName:,c12@4:8^{FSRef=[80C]}12@16,
-,NSHFSContainer,iconRef:label:forObjectName:,v16@4:8^^{OpaqueIconRef}12^s16@20,
-,NSHFSContainer,initWithRef:,@8@4:8^{FSRef=[80C]}12,
-,NSHFSContainer,initWithRef:containerType:,@12@4:8^{FSRef=[80C]}12i16,
-,NSHFSContainer,ref,^{FSRef=[80C]}4@4:8,
-,NSHFSIndirectObject,initWithRef:hidden:iDisk:,@13@4:8^{FSRef=[80C]}12c16c20,
-,NSHFSObject,iconRef:label:,v12@4:8^^{OpaqueIconRef}12^s16,
-,NSHFSObject,initWithRawCatalogInfo:name:parentRef:hidden:,@17@4:8^{FSCatalogInfo=SsIICCCC{UTCDateTime=SIS}{UTCDateTime=SIS}{UTCDateTime=SIS}{UTCDateTime=SIS}{UTCDateTime=SIS}[4I][16C][16C]QQQQII}12@16^{FSRef=[80C]}20c24,
-,NSHFSObject,ref,^{FSRef=[80C]}4@4:8,
-,NSHFSObject,updateInfo:parent:rootObject:resolve:,c17@4:8@12^{FSRef=[80C]}16c20c24,
-,NSHyphenator,getHyphenLocations:inString:,I12@4:8^I12@16,
-,NSHyphenator,getHyphenLocations:inString:wordAtIndex:,I16@4:8^I12@16I20,
-,NSIBObjectData,_encodeMapTable:forTypes:withCoder:,v16@4:8^{_NSMapTable=}12r*16@20,
-,NSImage,_addOneRepFrom:toRep:,c12@4:8@12^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}16,
-,NSImage,_addRepsFrom:toRep:,c12@4:8@12^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}16,
-,NSImage,_bestRepresentation:device:bestWidth:checkFlag:,^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}32@4:8c12@16f36c24,
-,NSImage,_cacheRepresentation:,c8@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
-,NSImage,_cacheRepresentation:stayFocused:,c9@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12c16,
-,NSImage,_composite:delta:fromRect:toPoint:,c32@4:8i12f36r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}20r^{_NSPoint=ff}24,
-,NSImage,_createPattern,^v4@4:8,
-,NSImage,_createPatternFromRect:,^v20@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,
-,NSImage,_drawDone:success:,@9@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12c16,
-,NSImage,_drawRepresentation:,c8@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
-,NSImage,_expandRep:,c8@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
-,NSImage,_focusOnCache:,c8@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
-,NSImage,_forgetData:,@8@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
-,NSImage,_freeCache:,@8@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
-,NSImage,_freeRepresentation:,@8@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
-,NSImage,_getCacheWindow:andRect:forRep:,@16@4:8^@12^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}20,
-,NSImage,_getGlobalWindowNumber:andRect:forRepresentation:,c16@4:8^I12^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16@20,
-,NSImage,_handleError:delta:fromRect:toPoint:,@32@4:8i12f36r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}20r^{_NSPoint=ff}24,
-,NSImage,_initWithIconRef:includeThumbnail:,@9@4:8^v12c16,
-,NSImage,_lockFocusOnRep:,c8@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
-,NSImage,_newLazyIconRefRepresentation:ofSize:,^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12@4:8^{OpaqueIconRef=}12i16,
-,NSImage,_newLazyRepresentation:::,^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}16@4:8i12@16@20,
-,NSImage,_newRepresentation:,^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}8@4:8@12,
-,NSImage,_requiresCacheWithAlpha:,c8@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
-,NSImage,_useCacheGState:rect:,@12@4:8@12r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16,
-,NSImage,_useSharedKitWindow:rect:,@12@4:8i12r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16,
-,NSImage,_whenDrawn:fills:,c12@4:8@12r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16,
-,NSImage,getImage:rect:,v12@4:8^@12^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16,
-,NSImageReader,bitmapDataPlanes,^*4@4:8,
-,NSImageReader,loadImage:,c8@4:8^*12,
-,NSImageRep,_createPatternFromRect:,^v20@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,
-,NSImageWriter,initWithBitmapDataPlanes:pixelsWide:pixelsHigh:bitsPerSample:samplesPerPixel:hasAlpha:isPlanar:colorSpaceName:bytesPerRow:bitsPerPixel:size:,@56@4:8^*12i16i20i24i28c32c43@44i48i52{_NSSize=ff}56,
-,NSInputContext,keyBindingState,^v4@4:8,
-,NSInputManager,getMarkedText:selectedRange:,v12@4:8^@12^{_NSRange=II}16,v@:o^@o^{_NSRange=II}
-,NSLayoutManager,_invalidateGlyphsForCharacterRange:editedCharacterRange:changeInLength:actualCharacterRange:,v28@4:8{_NSRange=II}12{_NSRange=II}20i28^{_NSRange=II}32,
-,NSLayoutManager,_temporaryAttribute:atCharacterIndex:effectiveRange:,@16@4:8@12I16^{_NSRange=II}20,
-,NSLayoutManager,_temporaryAttribute:atCharacterIndex:longestEffectiveRange:inRange:,@24@4:8@12I16^{_NSRange=II}20{_NSRange=II}24,
-,NSLayoutManager,_temporaryAttributesAtCharacterIndex:longestEffectiveRange:inRange:,@20@4:8I12^{_NSRange=II}16{_NSRange=II}20,
-,NSLayoutManager,characterRangeForGlyphRange:actualGlyphRange:,{_NSRange=II}20@8:12{_NSRange=II}16^{_NSRange=II}24,
-,NSLayoutManager,getFirstUnlaidCharacterIndex:glyphIndex:,v12@4:8^I12^I16,
-,NSLayoutManager,getGlyphs:range:,I16@4:8^I12{_NSRange=II}16,
-,NSLayoutManager,getGlyphsInRange:glyphs:characterIndexes:glyphInscriptions:elasticBits:,I28@4:8{_NSRange=II}12^I20^I24^i28^c32,
-,NSLayoutManager,glyphAtIndex:isValidIndex:,I12@4:8I12^c16,
-,NSLayoutManager,glyphIndexForPoint:inTextContainer:fractionOfDistanceThroughGlyph:,I20@4:8{_NSPoint=ff}12@20^f24,
-,NSLayoutManager,glyphRangeForCharacterRange:actualCharacterRange:,{_NSRange=II}20@8:12{_NSRange=II}16^{_NSRange=II}24,
-,NSLayoutManager,invalidateGlyphsForCharacterRange:changeInLength:actualCharacterRange:,v20@4:8{_NSRange=II}12i20^{_NSRange=II}24,
-,NSLayoutManager,invalidateLayoutForCharacterRange:isSoft:actualCharacterRange:,v20@4:8{_NSRange=II}12c20^{_NSRange=II}24,
-,NSLayoutManager,lineFragmentRectForGlyphAtIndex:effectiveRange:,{_NSRect={_NSPoint=ff}{_NSSize=ff}}16@8:12I16^{_NSRange=II}20,
-,NSLayoutManager,lineFragmentUsedRectForGlyphAtIndex:effectiveRange:,{_NSRect={_NSPoint=ff}{_NSSize=ff}}16@8:12I16^{_NSRange=II}20,
-,NSLayoutManager,rectArrayForCharacterRange:withinSelectedCharacterRange:inTextContainer:rectCount:,^{_NSRect={_NSPoint=ff}{_NSSize=ff}}28@4:8{_NSRange=II}12{_NSRange=II}20@28^I32,
-,NSLayoutManager,rectArrayForGlyphRange:withinSelectedGlyphRange:inTextContainer:rectCount:,^{_NSRect={_NSPoint=ff}{_NSSize=ff}}28@4:8{_NSRange=II}12{_NSRange=II}20@28^I32,
-,NSLayoutManager,temporaryAttributesAtCharacterIndex:effectiveRange:,@12@4:8I12^{_NSRange=II}16,
-,NSLayoutManager,textContainerForGlyphAtIndex:effectiveRange:,@12@4:8I12^{_NSRange=II}16,
-,NSLeafProxy,allocWithZone:,@8@4:8^{_NSZone=}12,
-,NSLeafProxy,copyWithZone:,@8@4:8^{_NSZone=}12,
-,NSLeafProxy,forward::,@12@4:8:12^v16,
-,NSMatrix,_addToolTipRect:displayDelegate:userData:,i28@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@28^v32,
-,NSMatrix,_findFirstOne::,@12@4:8^i12^i16,
-,NSMatrix,_getBrowser:browserColumn:,v12@4:8^@12^i16,
-,NSMatrix,_getDrawingRow:andCol:,@12@4:8^i12^i16,
-,NSMatrix,_getRow:andCol:ofCell:atRect:,c20@4:8^i12^i16@20r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}24,
-,NSMatrix,_getRow:column:nearPoint:,v20@4:8^i12^i16{_NSPoint=ff}20,
-,NSMatrix,_loopHit:row:col:,c20@4:8{_NSPoint=ff}12^i20^i24,
-,NSMatrix,_mouseHit:row:col:,c20@4:8{_NSPoint=ff}12^i20^i24,
-,NSMatrix,_mouseLoop::::::,@25@4:8@12@16i20i24^{_SelectionAnchor=iii}28c32,
-,NSMatrix,_radioHit:row:col:,c20@4:8{_NSPoint=ff}12^i20^i24,
-,NSMatrix,_selectRange::::,@17@4:8^{_SelectionAnchor=iii}12^{_SelectionAnchor=iii}16c20c24,
-,NSMatrix,_selectRectRange::,@9@4:8^{_SelectionAnchor=iii}12c16,
-,NSMatrix,_selectRowRange::,@9@4:8^{_SelectionAnchor=iii}12c16,
-,NSMatrix,_setSelectionRange::,@9@4:8^{_SelectionAnchor=iii}12c16,
-,NSMatrix,getNumberOfRows:columns:,v12@4:8^i12^i16,v@:o^io^i
-,NSMatrix,getRow:column:forPoint:,c20@4:8^i12^i16{_NSPoint=ff}20,c@:o^io^i{_NSPoint=ff}
-,NSMatrix,getRow:column:ofCell:,c16@4:8^i12^i16@20,c@:o^io^i@
-,NSMatrix,sortUsingFunction:context:,v12@4:8^?12^v16,
-,NSMatrix,view:frameForToolTip:point:userData:,{_NSRect={_NSPoint=ff}{_NSSize=ff}}28@8:12@16i20{_NSPoint=ff}24^v32,{_NSRect={_NSPoint=ff}{_NSSize=ff}}28@8:12@16i20{_NSPoint=ff}24i32
-,NSMatrix,view:stringForToolTip:point:userData:,@24@4:8@12i16{_NSPoint=ff}20^v28,@24@4:8@12i16{_NSPoint=ff}20i28
-,NSMenu,menuZone,^{_NSZone=}4@4:8,
-,NSMenu,setMenuZone:,v8@4:8^{_NSZone=}12,
-,NSMenuItem,_iconRef,^{OpaqueIconRef=}4@4:8,
-,NSMenuItem,_setIconRef:,v8@4:8^{OpaqueIconRef=}12,
-,NSMenuItemCell,_rectsForBounds:,^{_NSRect={_NSPoint=ff}{_NSSize=ff}}20@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,
-,NSMovie,QTMovie,^v4@4:8,
-,NSMovie,initWithMovie:,@8@4:8^v12,
-,NSMovieView,movieController,^v4@4:8,
-,NSNextStepFrame,_calcTextRect:,@8@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,
-,NSNextStepFrame,_inResize:,i8@4:8r^{_NSPoint=ff}12,
-,NSOpenGLContext,getValues:forParameter:,v12@4:8^l12i16,
-,NSOpenGLContext,setOffScreen:width:height:rowbytes:,v20@4:8^v12l16l20l24,
-,NSOpenGLContext,setValues:forParameter:,v12@4:8r^i12i16,
-,NSOpenGLPixelFormat,getValues:forAttribute:forVirtualScreen:,v16@4:8^l12i16i20,
-,NSOpenGLPixelFormat,initWithAttributes:,@8@4:8^i12,
-,NSOpenPanel,beginSheetForDirectory:file:types:modalForWindow:modalDelegate:didEndSelector:contextInfo:,v36@4:8@12@16@20@24@28:32^v40,v36@4:8@12@16@20@24@28:32i40
-,NSOutlineView,_adjustSelectionForItemEntry:numberOfRows:,v12@4:8^{_RowEntry=^{_RowEntry}^{_RowEntry}@sscccc}12i16,
-,NSOutlineView,_collapseItemEntry:collapseChildren:clearExpandState:recursionLevel:,^{_RowEntry=^{_RowEntry}^{_RowEntry}@sscccc}20@4:8^{_RowEntry=^{_RowEntry}^{_RowEntry}@sscccc}12c16c20i24,
-,NSOutlineView,_expandItemEntry:addIntoExpandSet:expandChildren:,^{_RowEntry=^{_RowEntry}^{_RowEntry}@sscccc}13@4:8^{_RowEntry=^{_RowEntry}^{_RowEntry}@sscccc}12@16c20,
-,NSOutlineView,_findParentWithLevel:beginingAtItem:childEncountered:,@16@4:8i12@16^i20,
-,NSOutlineView,_rowEntryForChild:ofParent:,^{_RowEntry=^{_RowEntry}^{_RowEntry}@sscccc}12@4:8i12^{_RowEntry=^{_RowEntry}^{_RowEntry}@sscccc}16,
-,NSOutlineView,_rowEntryForItem:,^{_RowEntry=^{_RowEntry}^{_RowEntry}@sscccc}8@4:8@12,
-,NSOutlineView,_rowEntryForRow:,^{_RowEntry=^{_RowEntry}^{_RowEntry}@sscccc}8@4:8i12,
-,NSPICTImageRep,_verifyDataIsPICT:withFrame:fromFile:,c16@4:8@12^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16^c20,
-,NSPPDParse,growBuffer:current:end:factor:,@32@4:8^{?=*i}12^*16^*20f36,
-,NSPPDParse,openInclude:,^v8@4:8@12,
-,NSPPDParse,readFromStream:,@8@4:8^v12,
-,NSPPDParse,startInputStream:closeOnEnd:,@9@4:8^v12c16,
-,NSPSMatrix,invTransform:,@8@4:8^{_NSPoint=ff}12,@@:N^{_NSPoint=ff}
-,NSPSMatrix,invTransformRect:,@8@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,@@:N^{_NSRect={_NSPoint=ff}{_NSSize=ff}}
-,NSPSMatrix,transform:,@8@4:8^{_NSPoint=ff}12,@@:N^{_NSPoint=ff}
-,NSPSMatrix,transformRect:,@8@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,@@:N^{_NSRect={_NSPoint=ff}{_NSSize=ff}}
-,NSPageData,stream,^{_NXStream=I**iilii^{stream_functions}^v}4@4:8,
-,NSPageLayout,_sheetDidEnd:returnCode:contextInfo:,v16@4:8@12i16^v20,v16@4:8@12i16i20
-,NSPageLayout,beginSheetWithPrintInfo:modalForWindow:delegate:didEndSelector:contextInfo:,v24@4:8@12@16@20:24^v28,v24@4:8@12@16@20:24i28
-,NSPageLayout,convertOldFactor:newFactor:,v12@4:8^f12^f16,v@:i^fo^f
-,NSPanel,_doSetAccessoryView:topView:bottomView:oldView:,@20@4:8@12@16@20^@24,
-,NSPasteboard,_cfPasteboard,^{__CFPasteboard=}4@4:8,
-,NSPatternColor,newWithCoder:zone:,@12@4:8@12^{_NSZone=}16,
-,NSPrintInfo,_initPrivData,^{?=^{OpaquePMPrintSession}^{OpaquePMPrintSettings}^{OpaquePMPageFormat}}4@4:8,
-,NSPrintInfo,_initWithDictionary:pageFormat:printSettings:,@16@4:8@12^{OpaquePMPageFormat=}16^{OpaquePMPrintSettings=}20,
-,NSPrintInfo,_pmPrintSession,^{OpaquePMPrintSession=}4@4:8,
-,NSPrintInfo,pmPageFormat,^{OpaquePMPageFormat=}4@4:8,
-,NSPrintInfo,pmPrintSettings,^{OpaquePMPrintSettings=}4@4:8,
-,NSPrintInfo,setPMPageFormat:,v8@4:8^{OpaquePMPageFormat=}12,
-,NSPrintInfo,setPMPrintSettings:,v8@4:8^{OpaquePMPrintSettings=}12,
-,NSPrintOperation,runOperationModalForWindow:delegate:didRunSelector:contextInfo:,v20@4:8@12@16:20^v24,v20@4:8@12@16:20i24
-,NSPrintPanel,_sheetDidEnd:returnCode:contextInfo:,v16@4:8@12i16^v20,v16@4:8@12i16i20
-,NSPrintPanel,beginSheetWithPrintInfo:modalForWindow:delegate:didEndSelector:contextInfo:,v24@4:8@12@16@20:24^v28,v24@4:8@12@16@20:24i28
-,NSPrinter,_appendKey:option:value:inKeyNode:,@20@4:8r*12r*16r*20^{?=b4b1b24(?=*^{?}^{__CFDictionary})}24,
-,NSPrinter,_appendStringInKeyNode:key:value:,@16@4:8^{?=b4b1b24(?=*^{?}^{__CFDictionary})}12r*16r*20,
-,NSPrinter,_freeNode:,@8@4:8^{?=b4b1b24(?=*^{?}^{__CFDictionary})}12,
-,NSPrinter,_getNodeForKey:inTable:,^{?=b4b1b24(?=*^{?}^{__CFDictionary})}12@4:8r*12r*16,
-,NSPrinter,_keyListForKeyNode:,@8@4:8^{?=b4b1b24(?=*^{?}^{__CFDictionary})}12,
-,NSPrinter,_makeKeyNode:inKeyNode:,^{?=b4b1b24(?=*^{?}^{__CFDictionary})}12@4:8r*12^{?=b4b1b24(?=*^{?}^{__CFDictionary})}16,
-,NSPrinter,_makeTable:inNode:,^{?=b4b1b24(?=*^{?}^{__CFDictionary})}12@4:8r*12^{?=b4b1b24(?=*^{?}^{__CFDictionary})}16,
-,NSPrinter,_newNode:,^{?=b4b1b24(?=*^{?}^{__CFDictionary})}8@4:8i12,
-,NSPrinter,_setStringInKeyNode:key:value:,@16@4:8^{?=b4b1b24(?=*^{?}^{__CFDictionary})}12r*16*20,
-,NSPrinter,_setStringListInKeyNode:key:list:len:,@20@4:8^{?=b4b1b24(?=*^{?}^{__CFDictionary})}12r*16^*20i24,
-,NSPrinterFeatures,_calcRowsAndColumnsInView:boxSize:numBoxes:rows:columns:,v28@4:8@12{_NSSize=ff}16i24^i28^i32,
-,NSPrinterFeatures,_createOptionBoxes:andButtons:,v12@4:8^@12^@16,
-,NSProgressIndicator,_fillGrayRect:with:,v12@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12i16,
-,NSProgressPanel,setCancellationDelegate:wasCancelledSelector:contextInfo:,v16@4:8@12:16^v20,v16@4:8@12:16i20
-,NSQuickDrawPort,port,^{OpaqueGrafPtr=}4@4:8,
-,NSQuickDrawView,qdPort,^v4@4:8,
-,NSRTFD,addCommon:docInfo:value:zone:,@20@4:8@12@16@20^{_NSZone=}24,
-,NSRulebook,codeSegment,^i4@4:8,
-,NSRulebook,findEntryListFor:,^i6@4:8S12,
-,NSRulebook,propertyTableAtIndex:,^{_NSRulebookSetHeader=i[4L]iiii[1i]}8@4:8I12,
-,NSRulebook,testStructArrayAtIndex:,^{_NSRulebookTestStruct=iii[12i]}8@4:8I12,
-,NSRulebookCharacterSet,_initWithSet:,@8@4:8^v12,
-,NSRulebookSetObject,initWithSetHeader:,@8@4:8^{_NSRulebookSetHeader=i[4L]iiii[1i]}12,
-,NSRulebookSetObject,setHeader,^{_NSRulebookSetHeader=i[4L]iiii[1i]}4@4:8,
-,NSRunStorage,elementAtIndex:effectiveRange:,^v12@4:8I12^{_NSRange=II}16,
-,NSRunStorage,insertElement:range:coalesceRuns:,v17@4:8^v12{_NSRange=II}16c24,
-,NSRunStorage,replaceElementsInRange:withElement:coalesceRuns:,v17@4:8{_NSRange=II}12^v20c24,
-,NSSavePanel,_completeName:,i8@4:8^@12,
-,NSSavePanel,_infoForFile:inColumn:isDir:isAutomount:info:,c24@4:8@12i16^c20^c24^@28,
-,NSSavePanel,_runModalForDirectory:file:relativeToWindow:modalDelegate:didEndSelector:contextInfo:,v28@4:8@12@16@20@24:28^v32,v28@4:8@12@16@20@24:28i32
-,NSSavePanel,beginSheetForDirectory:file:modalForWindow:modalDelegate:didEndSelector:contextInfo:,v28@4:8@12@16@20@24:28^v32,v28@4:8@12@16@20@24:28i32
-,NSSavePanel,didEndSheet:returnCode:contextInfo:,v16@4:8@12i16^v20,v16@4:8@12i16i20
-,NSScreen,supportedWindowDepths,r^i4@4:8,
-,NSScroller,_getPartStruct:numberOfParts:withInnerBounds:,v28@4:8^{_PartStruct=if}12^I16{_NSRect={_NSPoint=ff}{_NSSize=ff}}20,
-,NSServiceListener,_doInvokeServiceIn:msg:pb:userData:error:unhide:,@25@4:8@12@16@20@24^@28c32,
-,NSServiceListener,invokeServiceIn:msg:pb:userData:error:,i24@4:8@12@16@20@24^@28,
-,NSSimpleHorizontalTypesetter,_glyphInfoAtIndex:,^{_NSTypesetterGlyphInfo={_NSPoint=ff}fffI@{_NSSize=ff}{?=b1b1b1}}8@4:8i12,
-,NSSimpleHorizontalTypesetter,baseOfTypesetterGlyphInfo,^{_NSTypesetterGlyphInfo={_NSPoint=ff}fffI@{_NSSize=ff}{?=b1b1b1}}4@4:8,
-,NSSimpleHorizontalTypesetter,layoutGlyphsInHorizontalLineFragment:baseline:,i12@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12^f16,
-,NSSliderCell,_calcTrackRect:andAdjustRect:,c9@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12c16,
-,NSSpellChecker,_chunkAndFindMisspelledWordInString:language:learnedDictionaries:wordCount:usingSpellServer:,{_NSRange=II}28@8:12@16@20@24^i28@32,
-,NSSpellChecker,checkSpellingOfString:startingAt:language:wrap:inSpellDocumentWithTag:wordCount:,{_NSRange=II}36@8:12@16i20@24c28i32^i40,
-,NSSpellChecker,checkSpellingOfString:startingAt:language:wrap:inSpellDocumentWithTag:wordCount:reconnectOnError:,{_NSRange=II}40@8:12@16i20@24c28i32^i40c47,
-,NSStorage,addElement:,v8@4:8^v12,
-,NSStorage,elementAtIndex:,^v8@4:8I12,
-,NSStorage,insertElement:atIndex:,v12@4:8^v12I16,
-,NSStorage,insertElements:count:atIndex:,v16@4:8^v12I16I20,
-,NSStorage,pointerToElement:directlyAccessibleElements:,^v12@4:8I12^{_NSRange=II}16,
-,NSStorage,replaceElementAtIndex:withElement:,v12@4:8I12^v16,
-,NSSurface,surfaceID,^v4@4:8,i@:
-,NSSystemStatusBar,drawBackgroundInRect:inView:highlight:,v13@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@16c20,
-,NSTabViewItem,_validateViewIsInViewHeirarchy:,v8@4:8^@12,
-,NSTableView,dragImageForRows:event:dragImageOffset:,@16@4:8@12@16^{_NSPoint=ff}20,
-,NSTabletEvent,_initWithCGSEvent:,@120@4:8{_CGSEventRecord=SSII{CGPoint=ff}{CGPoint=ff}QI^v^v(?={?=CCsiCcCCss(?={_CGSTabletPointData=iiiSS{?=ss}SsSsss}{_CGSTabletProximityData=SSSSSSIQICCs})[4i]}{?=CCsiCcCCss(?={_CGSTabletPointData=iiiSS{?=ss}SsSsss}{_CGSTabletProximityData=SSSSSSIQICCs})[4i]}{?=ssSSSsssI[11i]}{?=ssii[13i]}{?=SSIIi[12i]}{?=ssssi[13i]}{?=iiiSS{?=ss}SsSsss[8i]}{?=SSSSSSIQICCs[8i]}{?=ss(?=[15f][15i][30s][60c])})}16,
-,NSTextContainer,lineFragmentRectForProposedRect:sweepDirection:movementDirection:remainingRect:,{_NSRect={_NSPoint=ff}{_NSSize=ff}}40@8:12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16i32i40^{_NSRect={_NSPoint=ff}{_NSSize=ff}}44,
-,NSTextFieldCell,_getTextColor:backgroundColor:,v12@4:8^@12^@16,
-,NSTextView,getMarkedText:selectedRange:,v12@4:8^@12^{_NSRange=II}16,
-,NSThemeDocumentButton,setIconForFileName:,v8@4:8^{FSRef=[80C]}12,
-,NSTitledFrame,_drawFrameInterior:clip:,v24@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16,
-,NSTitledFrame,constrainResizeEdge:withDelta:elapsedTime:,c32@4:8^i12{_NSSize=ff}16f36,
-,NSToolTipManager,_setToolTip:forView:cell:rect:owner:ownerIsDisplayDelegate:userData:,i48@4:8@12@16@20{_NSRect={_NSPoint=ff}{_NSSize=ff}}28@44c51^v52,i48@4:8@12@16@20{_NSRect={_NSPoint=ff}{_NSSize=ff}}28@44c51i52
-,NSToolTipManager,setToolTipForView:rect:displayDelegate:userData:,i36@4:8@12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16@32^v40,i36@4:8@12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16@32i40
-,NSToolTipManager,setToolTipForView:rect:owner:userData:,i36@4:8@12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16@32^v40,i36@4:8@12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16@32i40
-,NSToolbar,_configSheetDidEnd:returnCode:contextInfo:,v16@4:8@12i16^v20,v16@4:8@12i16i20
-,NSToolbarItemViewer,_computeLayoutInfoForIconViewSize:frameSize:iconFrame:labelFrame:,v24@4:8{_NSSize=ff}12^{_NSSize=ff}20^{_NSRect={_NSPoint=ff}{_NSSize=ff}}24^{_NSRect={_NSPoint=ff}{_NSSize=ff}}28,
-,NSTypesetter,layoutGlyphsInLayoutManager:startingAtGlyphIndex:maxNumberOfLineFragments:nextGlyphIndex:,v20@4:8@12I16I20^I24,
-,NSView,_autoSizeView:::::,v24@4:8c12I16r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}20r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}24^{_NSRect={_NSPoint=ff}{_NSSize=ff}}28,
-,NSView,_convertPointFromSuperview:test:,c9@4:8^{_NSPoint=ff}12c16,
-,NSView,_crackPoint:,@8@4:8^{_NSPoint=ff}12,
-,NSView,_crackRect:,@8@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,
-,NSView,_isAncestorOfViewIdenticalTo:,c8@4:8^v12,
-,NSView,_optimizedRectFill:gray:,c32@4:8r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12f36,
-,NSView,_regionForOpaqueDescendants:,^v20@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,
-,NSView,_scrollPoint:fromView:,v12@4:8r^{_NSPoint=ff}12@16,
-,NSView,_scrollRectToVisible:fromView:,c12@4:8r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@16,
-,NSView,addToolTipRect:owner:userData:,i28@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@28^v32,i28@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@28i32
-,NSView,addTrackingRect:owner:userData:assumeInside:,i36@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@28^v32c43,i@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}@ic
-,NSView,heartBeat:,v8@4:8^{?=ddd}12,
-,NSView,scrollPoint:fromView:,v12@4:8r^{_NSPoint=ff}12@16,
-,NSView,scrollRectToVisible:fromView:,c12@4:8r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@16,
-,NSView,sortSubviewsUsingFunction:context:,v12@4:8^?12^v16,
-,NSWindow,_auxStorage,^v4@4:8,
-,NSWindow,_confirmSize:force:,c9@4:8^{_NSSize=ff}12c16,
-,NSWindow,_document:shouldClose:contextInfo:,v16@4:8@12c16^v20,v16@4:8@12c16i20
-,NSWindow,_initContent:styleMask:backing:defer:contentView:,@24@4:8r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12I16i20c24@28,
-,NSWindow,_initContent:styleMask:backing:defer:counterpart:,@24@4:8r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12I16i20c24@28,
-,NSWindow,_initContent:styleMask:backing:defer:screen:contentView:,@28@4:8r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12I16i20c24@28@32,
-,NSWindow,_initFromGlobalWindow:inRect:,@12@4:8i12r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16,
-,NSWindow,_initFromGlobalWindow:inRect:styleMask:,@16@4:8i12r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16I20,
-,NSWindow,_setTrackingRect:inside:owner:userData:,i36@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12c28@32^v40,i36@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12c28@32i40
-,NSWindow,_validSize:force:,v9@4:8^{_NSSize=ff}12c16,
-,NSWindow,graphicsPort,^v4@4:8,
-,NSWorkspace,_willUnmountDeviceAtPath:ok:,v12@4:8@12^i16,
-,NSWorkspace,getFileSystemInfoForPath:isRemovable:isWritable:isUnmountable:description:type:,c28@4:8@12^c16^c20^c24^@28^@32,c28@4:8@12o^c16o^c20o^c24o^@28o^@32
-,NSWorkspace,getInfoForFile:application:type:,c16@4:8@12^@16^@20,c16@4:8@12o^@16o^@20
-,NSWorkspace,performFileOperation:source:destination:files:tag:,c24@4:8@12@16@20@24^i28,
-,_NSFilenamePboardTypeConverter,_setConvertedData:pboard:generation:inItem:,v20@4:8@12^{__CFPasteboard=}16i20^v24,
-,_NSPDFDocument,adjustCTM:,v8@4:8^{CGContext=}12,
-,_NSPDFDocument,document,^{CGPDFDocument=}4@4:8,
-,_NSPDFPboardTypeConverter,_setConvertedData:pboard:generation:inItem:,v20@4:8@12^{__CFPasteboard=}16i20^v24,
-,_NSPICTPboardTypeConverter,_setConvertedData:pboard:generation:inItem:,v20@4:8@12^{__CFPasteboard=}16i20^v24,
-,_NSRTFPboardTypeConverter,_setConvertedData:pboard:generation:inItem:,v20@4:8@12^{__CFPasteboard=}16i20^v24,
-,_NSTIFFPboardTypeConverter,_setConvertedData:pboard:generation:inItem:,v20@4:8@12^{__CFPasteboard=}16i20^v24,
-,_NSURLPboardTypeConverter,_setConvertedData:pboard:generation:inItem:,v20@4:8@12^{__CFPasteboard=}16i20^v24,
+,NSPPDParse,growBuffer:current:end:factor:,@0@4:8^{?=*i}12^*16^*20f40,
+,NSPPDParse,openInclude:,^v0@4:8@12,
+,NSPPDParse,readFromStream:,@0@4:8^v12,
+,NSPPDParse,startInputStream:closeOnEnd:,@0@4:8^v12c16,
+,NSImageWriter,initWithBitmapDataPlanes:pixelsWide:pixelsHigh:bitsPerSample:samplesPerPixel:hasAlpha:isPlanar:colorSpaceName:bytesPerRow:bitsPerPixel:size:,@56@4:8^*12i16i20i24i28c32c35@36i40i44{_NSSize=ff}48,
+,NSMenu,menuZone,^{_NSZone=}0@4:8,
+,NSMenu,setMenuZone:,v0@4:8^{_NSZone=}12,
+,NSFocusState,clip:,@0@4:8r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,@@:i^{_NSRect={_NSPoint=ff}{_NSSize=ff}}
+,NSFocusState,setInitialGState:,v0@4:8^v12,
+,NSSurface,surfaceID,^v0@4:8,i@:
+,NSInputManager,getMarkedText:selectedRange:,v0@4:8^@12^{_NSRange=II}16,v@:o^@o^{_NSRange=II}
+,NSStorage,addElement:,v0@4:8^v12,
+,NSStorage,elementAtIndex:,^v0@4:8I12,
+,NSStorage,insertElement:atIndex:,v0@4:8^v12I16,
+,NSStorage,insertElements:count:atIndex:,v0@4:8^v12I16I20,
+,NSStorage,pointerToElement:directlyAccessibleElements:,^v0@4:8I12^{_NSRange=II}16,
+,NSStorage,replaceElementAtIndex:withElement:,v0@4:8I12^v16,
+,NSFileLocator,_shouldUseAliasToLocate:,c0@4:8r^{FSRef=[80C]}12,
+,NSToolbar,_configSheetDidEnd:returnCode:contextInfo:,v0@4:8@12i16^v20,v16@4:8@12i16i20
+,NSJPEGImageReader,extractHeaderInfo:,v0@4:8^{jpeg_decompress_struct=^{jpeg_error_mgr}^{jpeg_memory_mgr}^{jpeg_progress_mgr}^vii^{jpeg_source_mgr}IIiiiIIdiiiiiiiiiiiiIIiiii^*IiIiI^[64i][4^{?}][4^{?}][4^{?}]i^{?}ii[16C][16C][16C]IiCCCSSiCi^{jpeg_marker_struct}iiiI*i[4^{?}]IIi[10i]iiiii^{jpeg_decomp_master}^{jpeg_d_main_controller}^{jpeg_d_coef_controller}^{jpeg_d_post_controller}^{jpeg_input_controller}^{jpeg_marker_reader}^{jpeg_entropy_decoder}^{jpeg_inverse_dct}^{jpeg_upsampler}^{jpeg_color_deconverter}^{jpeg_color_quantizer}}12,
+,NSOutlineView,_adjustSelectionForItemEntry:numberOfRows:adjustFieldEditorIfNecessary:,v0@4:8^{_RowEntry=^{_RowEntry}^{_RowEntry}@is{__REFlags=b1b1b1b1b28}}12i16c20,
+,NSOutlineView,_collapseItemEntry:collapseChildren:clearExpandState:recursionLevel:,^{_RowEntry=^{_RowEntry}^{_RowEntry}@is{__REFlags=b1b1b1b1b28}}0@4:8^{_RowEntry=^{_RowEntry}^{_RowEntry}@is{__REFlags=b1b1b1b1b28}}12c16c20i24,
+,NSOutlineView,_collapseItemsWithItemEntries:collapseChildren:,v0@4:8^{__CFArray=}12c16,
+,NSOutlineView,_createSelectedRowEntriesArrayIncludingExpandable:includingUnexpandable:,^{__CFArray=}0@4:8c12c16,
+,NSOutlineView,_endEditingIfEditedCellIsChildOfItemEntry:,v0@4:8^{_RowEntry=^{_RowEntry}^{_RowEntry}@is{__REFlags=b1b1b1b1b28}}12,
+,NSOutlineView,_expandItemEntry:expandChildren:,^{_RowEntry=^{_RowEntry}^{_RowEntry}@is{__REFlags=b1b1b1b1b28}}0@4:8^{_RowEntry=^{_RowEntry}^{_RowEntry}@is{__REFlags=b1b1b1b1b28}}12c16,
+,NSOutlineView,_expandItemsWithItemEntries:expandChildren:,v0@4:8^{__CFArray=}12c16,
+,NSOutlineView,_findParentWithLevel:beginingAtItem:childEncountered:,@0@4:8i12@16^i20,
+,NSOutlineView,_rowEntryForChild:ofParent:,^{_RowEntry=^{_RowEntry}^{_RowEntry}@is{__REFlags=b1b1b1b1b28}}0@4:8i12^{_RowEntry=^{_RowEntry}^{_RowEntry}@is{__REFlags=b1b1b1b1b28}}16,
+,NSOutlineView,_rowEntryForItem:,^{_RowEntry=^{_RowEntry}^{_RowEntry}@is{__REFlags=b1b1b1b1b28}}0@4:8@12,
+,NSOutlineView,_rowEntryForRow:,^{_RowEntry=^{_RowEntry}^{_RowEntry}@is{__REFlags=b1b1b1b1b28}}0@4:8i12,
+,NSPageData,stream,^{_NXStream=I**iilii^{stream_functions}^v}0@4:8,
+,NSRulebookSetObject,initWithSetHeader:,@0@4:8^{_NSRulebookSetHeader=i[4L]iiii[1i]}12,
+,NSRulebookSetObject,setHeader,^{_NSRulebookSetHeader=i[4L]iiii[1i]}0@4:8,
+,NSInputContext,keyBindingState,^v0@4:8,
+,NSEvent,_cgsEventRecord,{_CGSEventRecord=SSII{CGPoint=ff}{CGPoint=ff}QI^v^v(?={?=CCsiCcCCss(?={_CGSTabletPointData=iiiSS{?=ss}SsSsss}{_CGSTabletProximityData=SSSSSSIQICCs})b1b31[3i]}{?=CCsiCcCCss(?={_CGSTabletPointData=iiiSS{?=ss}SsSsss}{_CGSTabletProximityData=SSSSSSIQICCs})b1b31[3i]}{?=ssSSSsssI[11i]}{?=ssii[13i]}{?=SSIIiiiiii[7i]}{?=ssssi[9i]b1b31[3i]}{?=iiiSS{?=ss}SsSsss[8i]}{?=SSSSSSIQICCs[8i]}{?=ss(?=[15f][15i][30s][60c])})}0@8:12,
+,NSEvent,_cgsevent,{_CGSEvent=I{CGPoint=ff}II^v(?={?=ssiCcs}{?=ssSSSs}{?=ssii}{?=SSLL}{?=ssssl}{?=ss(?=[2f][2l][4s][8c])})^v}0@8:12,
+,NSEvent,_eventRef,^v0@4:8,
+,NSEvent,_eventWithCGSEvent:,@120@4:8{_CGSEventRecord=SSII{CGPoint=ff}{CGPoint=ff}QI^v^v(?={?=CCsiCcCCss(?={_CGSTabletPointData=iiiSS{?=ss}SsSsss}{_CGSTabletProximityData=SSSSSSIQICCs})b1b31[3i]}{?=CCsiCcCCss(?={_CGSTabletPointData=iiiSS{?=ss}SsSsss}{_CGSTabletProximityData=SSSSSSIQICCs})b1b31[3i]}{?=ssSSSsssI[11i]}{?=ssii[13i]}{?=SSIIiiiiii[7i]}{?=ssssi[9i]b1b31[3i]}{?=iiiSS{?=ss}SsSsss[8i]}{?=SSSSSSIQICCs[8i]}{?=ss(?=[15f][15i][30s][60c])})}8,
+,NSEvent,_initWithCGSEvent:eventRef:,@124@4:8{_CGSEventRecord=SSII{CGPoint=ff}{CGPoint=ff}QI^v^v(?={?=CCsiCcCCss(?={_CGSTabletPointData=iiiSS{?=ss}SsSsss}{_CGSTabletProximityData=SSSSSSIQICCs})b1b31[3i]}{?=CCsiCcCCss(?={_CGSTabletPointData=iiiSS{?=ss}SsSsss}{_CGSTabletProximityData=SSSSSSIQICCs})b1b31[3i]}{?=ssSSSsssI[11i]}{?=ssii[13i]}{?=SSIIiiiiii[7i]}{?=ssssi[9i]b1b31[3i]}{?=iiiSS{?=ss}SsSsss[8i]}{?=SSSSSSIQICCs[8i]}{?=ss(?=[15f][15i][30s][60c])})}8^v120,
+,NSEvent,_postFromSubthread:,v0@4:8^{__CFBoolean=}12,
+,NSEvent,_setEventRef:,v0@4:8^v12,
+,NSEvent,enterExitEventWithType:location:modifierFlags:timestamp:windowNumber:context:eventNumber:trackingNumber:userData:,@52@4:8i12{_NSPoint=ff}16I24d40i32@36i40i44^v48,@52@4:8i12{_NSPoint=ff}16I24d36i40@44i48i52i56
+,NSEvent,userData,^v0@4:8,i@:
+,NSSliderCell,_calcTrackRect:andAdjustRect:,c0@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12c16,
+,NSCarbonWindow,handleMouseDownEvent:at:inPart:withMods:,i0@4:8^{OpaqueEventRef=}12{Point=ss}16s20I24,
+,NSCarbonWindow,initWithCarbonWindowRef:takingOwnership:,@0@4:8^{OpaqueWindowPtr=}12c16,
+,NSCarbonWindow,initWithCarbonWindowRef:takingOwnership:disableOrdering:,@0@4:8^{OpaqueWindowPtr=}12c16c20,
+,NSCarbonWindow,sendCarbonUpdateHICommandStatusEvent:withMenuRef:andMenuItemIndex:,C0@4:8I12^{OpaqueMenuRef=}16S20,
+,NSCarbonWindow,windowRef,^{OpaqueWindowPtr=}0@4:8,
+,NSPSMatrix,invTransformRect:,@0@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,@@:N^{_NSRect={_NSPoint=ff}{_NSSize=ff}}
+,NSPSMatrix,invTransform:,@0@4:8^{_NSPoint=ff}12,@@:N^{_NSPoint=ff}
+,NSPSMatrix,transformRect:,@0@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,@@:N^{_NSRect={_NSPoint=ff}{_NSSize=ff}}
+,NSPSMatrix,transform:,@0@4:8^{_NSPoint=ff}12,@@:N^{_NSPoint=ff}
+,NSHFSObject,iconRef:label:,v0@4:8^^{OpaqueIconRef}12^s16,
+,NSHFSObject,initWithRawCatalogInfo:name:parentRef:ref:hfsName:hidden:,@0@4:8^{FSCatalogInfo=SsIICCCC{UTCDateTime=SIS}{UTCDateTime=SIS}{UTCDateTime=SIS}{UTCDateTime=SIS}{UTCDateTime=SIS}[4I][16C][16C]QQQQII}12@16^{FSRef=[80C]}20^{FSRef=[80C]}24^{HFSUniStr255=S[255S]}28c32,
+,NSHFSObject,ref,^{FSRef=[80C]}0@4:8,
+,NSHFSObject,updateInfo:parent:rootObject:resolve:,c0@4:8@12^{FSRef=[80C]}16c20c24,
+,NSHFSBrowserCell,setIconRef:label:,v0@4:8^{OpaqueIconRef=}12s16,
+,NSImageRep,_createPatternFromRect:,^v0@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,
+,NSCoreDragManager,_dragUntilMouseUp:accepted:,v0@4:8@12^c16,
+,NSProgressIndicator,_fillGrayRect:with:,v0@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12i16,
+,NSHyphenator,getHyphenLocations:inString:,I0@4:8^I12@16,
+,NSHyphenator,getHyphenLocations:inString:wordAtIndex:,I0@4:8^I12@16I20,
+,NSButton,getPeriodicDelay:interval:,v0@4:8^f12^f16,v@:o^fo^f
+,NSDefaultSpellServerDelegate,spellServer:findMisspelledWordInString:language:wordCount:countOnly:,{_NSRange=II}0@8:12@16@20@24^i28c32,
+,NSRulebook,codeSegment,^i0@4:8,
+,NSRulebook,findEntryListFor:,^i0@4:8S12,
+,NSRulebook,propertyTableAtIndex:,^{_NSRulebookSetHeader=i[4L]iiii[1i]}0@4:8I12,
+,NSRulebook,testStructArrayAtIndex:,^{_NSRulebookTestStruct=iii[12i]}0@4:8I12,
+,NSPrinter,_initWithName:printer:,@0@4:8@12^{OpaquePMPrinter=}16,
+,NSOpenGLPixelFormat,getValues:forAttribute:forVirtualScreen:,v0@4:8^l12i16i20,
+,NSOpenGLPixelFormat,initWithAttributes:,@0@4:8^i12,
+,NSBrowserCell,_checkLoaded:rect:highlight:,c0@4:8@12r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16i20,
+,NSButtonCell,_buttonBezelColors,^@0@4:8,
+,NSButtonCell,_imageRectWithRect:,{_NSRect={_NSPoint=ff}{_NSSize=ff}}0@8:12^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16,
+,NSColorPickerUserView,_pointInPicker:,c0@4:8^{_NSPoint=ff}12,
+,NSFrameView,drawWindowBackgroundRegion:,v0@4:8^v12,
+,NSAKSerializerStream,copySerializationInto:,v0@4:8^v12,
+,NSAKSerializerStream,writeData:length:,I0@4:8r^v12I16,
+,NSAKSerializerStream,writeRoomForInt:,I0@4:8^i12,
+,NSServiceListener,_doInvokeServiceIn:msg:pb:userData:error:unhide:,@0@4:8@12@16@20@24^@28c32,
+,NSServiceListener,invokeServiceIn:msg:pb:userData:error:,i0@4:8@12@16@20@24^@28,
+,NSMenuItemCell,_rectsForBounds:,^{_NSRect={_NSPoint=ff}{_NSSize=ff}}0@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,
+,NSGraphicsContext,focusStack,^v0@4:8,
+,NSGraphicsContext,graphicsPort,^v0@4:8,
+,NSGraphicsContext,setFocusStack:,v0@4:8^v12,
+,NSQuickDrawView,qdPort,^v0@4:8,
+,NSMenuItem,_iconRef,^{OpaqueIconRef=}0@4:8,
+,NSMenuItem,_setIconRef:,v0@4:8^{OpaqueIconRef=}12,
+,NSView,_autoSizeView:::::,v0@4:8c12I16r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}20r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}24^{_NSRect={_NSPoint=ff}{_NSSize=ff}}28,
+,NSView,_convertPointFromSuperview:test:,c0@4:8^{_NSPoint=ff}12c16,
+,NSView,_crackPoint:,@0@4:8^{_NSPoint=ff}12,
+,NSView,_crackRect:,@0@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,
+,NSView,_isAncestorOfViewIdenticalTo:,c0@4:8^v12,
+,NSView,_optimizedRectFill:gray:,c0@4:8r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12f40,
+,NSView,_regionForOpaqueDescendants:forMove:,^v0@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12c28,
+,NSView,_scrollPoint:fromView:,v0@4:8r^{_NSPoint=ff}12@16,
+,NSView,_scrollRectToVisible:fromView:,c0@4:8r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@16,
+,NSView,addToolTipRect:owner:userData:,i0@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@28^v32,i28@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@28i32
+,NSView,addTrackingRect:owner:userData:assumeInside:,i36@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@28^v32c35,i@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}@ic
+,NSView,heartBeat:,v0@4:8^{?=ddd}12,
+,NSView,scrollPoint:fromView:,v0@4:8r^{_NSPoint=ff}12@16,
+,NSView,scrollRectToVisible:fromView:,c0@4:8r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@16,
+,NSView,sortSubviewsUsingFunction:context:,v0@4:8^?12^v16,
+,NSBezierPath,appendBezierPathWithGlyphs:count:inFont:,v0@4:8^I12i16@20,
+,NSBezierPath,appendBezierPathWithPoints:count:,v0@4:8^{_NSPoint=ff}12i16,
+,NSBezierPath,elementAtIndex:associatedPoints:,i0@4:8i12^{_NSPoint=ff}16,
+,NSBezierPath,getLineDash:count:phase:,v0@4:8^f12^i16^f20,
+,NSBezierPath,setAssociatedPoints:atIndex:,v0@4:8^{_NSPoint=ff}12i16,
+,NSBezierPath,setLineDash:count:phase:,v0@4:8r^f12i16f40,
+,NSAlert,didEndSheet:returnCode:contextInfo:,v0@4:8@12i16^v20,v16@4:8@12i16i20
+,NSFileSpecifier,asRef,r^{FSRef=[80C]}0@4:8,
+,NSFileSpecifier,initWithRefNoCopy:,@0@4:8^{FSRef=[80C]}12,
+,NSFileSpecifier,initWithRef:,@0@4:8r^{FSRef=[80C]}12,
+,NSPrintInfo,_createPageFormatFromFlattenedData:,^{OpaquePMPageFormat=}0@4:8@12,
+,NSPrintInfo,_createPrintSettingsFromFlattenedData:,^{OpaquePMPrintSettings=}0@4:8@12,
+,NSPrintInfo,_initWithAttributesNoCopy:pageFormatNoCopy:printSettingsNoCopy:,@0@4:8@12^{OpaquePMPageFormat=}16^{OpaquePMPrintSettings=}20,
+,NSCatalogColor,newWithCoder:zone:,@0@4:8@12^{_NSZone=}16,
+,NSCollatorElement,entryState:,v0@4:8^{_NSSortState=iIIII[4@]}12,
+,NSCollatorElement,stepKey:elements:number:state:,i0@4:8@12^S16^i20^{_NSSortState=iIIII[4@]}24,
+,NSCalibratedRGBColor,newWithCoder:zone:,@0@4:8@12^{_NSZone=}16,
+,NSSavePanel,_completeName:,i0@4:8^@12,
+,NSSavePanel,_infoForFile:inColumn:isDir:isAutomount:info:,c0@4:8@12i16^c20^c24^@28,
+,NSSavePanel,_runModalForDirectory:file:relativeToWindow:modalDelegate:didEndSelector:contextInfo:,v0@4:8@12@16@20@24:28^v32,v28@4:8@12@16@20@24:28i32
+,NSSavePanel,beginSheetForDirectory:file:modalForWindow:modalDelegate:didEndSelector:contextInfo:,v0@4:8@12@16@20@24:28^v32,v28@4:8@12@16@20@24:28i32
+,NSSavePanel,didEndSheet:returnCode:contextInfo:,v0@4:8@12i16^v20,v16@4:8@12i16i20
+,NSBMPImageReader,palette,r^S0@4:8,
+,NSPageLayout,_sheetDidEnd:returnCode:contextInfo:,v0@4:8@12i16^v20,v16@4:8@12i16i20
+,NSPageLayout,beginSheetWithPrintInfo:modalForWindow:delegate:didEndSelector:contextInfo:,v0@4:8@12@16@20:24^v28,v24@4:8@12@16@20:24i28
+,NSPageLayout,convertOldFactor:newFactor:,v0@4:8^f12^f16,v@:i^fo^f
+,NSBitmapImageRep,_imagesFromIcon:inApp:zone:,@0@4:8@12@16^{_NSZone=}20,
+,NSBitmapImageRep,_imagesWithData:hfsFileType:extension:zone:,@0@4:8@12@16@20^{_NSZone=}24,
+,NSBitmapImageRep,_initWithData:tiff:imageNumber:,@0@4:8@12^{tiff=*^{_NXStream}sccsll{?=IIIIIISSSSSSSSSSIIIffSSffII[2S]ISSSSI^S^S^S^S[3^S]*********[2I]II^I^I[2S]^f[2S]S^f^f^f[4^S]S[2S]**I^v}{?=SSL}^i^i[10i]liillil^?^?^?^?^?^?^?^?^?^?^?^?*ii*l*llii}16s20,
+,NSBitmapImageRep,_initWithSharedBitmap:rect:,@0@4:8^v12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16,
+,NSBitmapImageRep,_loadImageFromTIFF:imageNumber:,c0@4:8^{tiff=*^{_NXStream}sccsll{?=IIIIIISSSSSSSSSSIIIffSSffII[2S]ISSSSI^S^S^S^S[3^S]*********[2I]II^I^I[2S]^f[2S]S^f^f^f[4^S]S[2S]**I^v}{?=SSL}^i^i[10i]liillil^?^?^?^?^?^?^?^?^?^?^?^?*ii*l*llii}12i16,
+,NSBitmapImageRep,_loadImageInfoFromTIFF:,v0@4:8^{tiff=*^{_NXStream}sccsll{?=IIIIIISSSSSSSSSSIIIffSSffII[2S]ISSSSI^S^S^S^S[3^S]*********[2I]II^I^I[2S]^f[2S]S^f^f^f[4^S]S[2S]**I^v}{?=SSL}^i^i[10i]liillil^?^?^?^?^?^?^?^?^?^?^?^?*ii*l*llii}12,
+,NSBitmapImageRep,_writeTIFF:usingCompression:factor:,v0@4:8^{_NXStream=I**iilii^{stream_functions}^v}12i16f40,
+,NSBitmapImageRep,getBitmapDataPlanes:,v0@4:8^*12,
+,NSBitmapImageRep,getCompression:factor:,v0@4:8^i12^f16,v@:o^io^f
+,NSBitmapImageRep,getTIFFCompressionTypes:count:,v0@4:8r^^i12^i16,
+,NSBitmapImageRep,initWithBitmapDataPlanes:pixelsWide:pixelsHigh:bitsPerSample:samplesPerPixel:hasAlpha:isPlanar:colorSpaceName:bytesPerRow:bitsPerPixel:,@48@4:8^*12i16i20i24i28c32c35@36i40i44,
+,NSColor,getCyan:magenta:yellow:black:alpha:,v0@4:8^f12^f16^f20^f24^f28,v@:o^fo^fo^fo^f
+,NSColor,getHue:saturation:brightness:alpha:,v0@4:8^f12^f16^f20^f24,v@:o^fo^fo^fo^f
+,NSColor,getRed:green:blue:alpha:,v0@4:8^f12^f16^f20^f24,v@:o^fo^fo^fo^f
+,NSColor,getWhite:alpha:,v0@4:8^f12^f16,v@:o^fo^f
+,NSFont,__matrix,r^f0@4:8,
+,NSFont,_concreteFontInit:,^{_NSFaceInfo=i^{_NSFaceInfo}@i{_NSFont_faceFlags=b1b1b1b1b1b1b1b1b1b1b1b1b20}^{_NSFontMetrics}^{_NSCGSFontMetrics}}0@4:8^{_NSFaceInfo=i^{_NSFaceInfo}@i{_NSFont_faceFlags=b1b1b1b1b1b1b1b1b1b1b1b1b20}^{_NSFontMetrics}^{_NSCGSFontMetrics}}12,
+,NSFont,_decodeMatrixWithCoder:,r^f0@4:8@12,
+,NSFont,_findFont:size:matrix:flag:,@0@4:8@12f40r^f20i24,
+,NSFont,_fontWithName:size:matrix:,@0@4:8@12f40r^f20,
+,NSFont,_makeSpecialFontName:size:matrix:bit:,@0@4:8@12f40r^f20I24,
+,NSFont,_preInitSetMatrix:fontSize:,v0@4:8r^f12f40,
+,NSFont,fontWithName:matrix:,@0@4:8@12r^f16,
+,NSFont,matrix,r^f0@4:8,
+,NSFont,metrics,^v0@4:8,
+,NSFont,positionOfGlyph:precededByGlyph:isNominal:,{_NSPoint=ff}0@8:12I16I20^c24,{_NSPoint=ff}@:IIo^c
+,NSFont,positionOfGlyph:struckOverGlyph:metricsExist:,{_NSPoint=ff}0@8:12I16I20^c24,{_NSPoint=ff}@:IIo^c
+,NSFont,positionOfGlyph:struckOverRect:metricsExist:,{_NSPoint=ff}36@8:12I16{_NSRect={_NSPoint=ff}{_NSSize=ff}}20^c32,{_NSPoint=ff}@:I{_NSRect={_NSPoint=ff}{_NSSize=ff}}o^c
+,NSFont,positionOfGlyph:withRelation:toBaseGlyph:totalAdvancement:metricsExist:,{_NSPoint=ff}0@8:12I16i20I24^{_NSSize=ff}28^c32,{_NSPoint=ff}@:IiI^{_NSSize=ff}o^c
+,NSFont,positionsForCompositeSequence:numberOfGlyphs:pointArray:,i0@4:8^I12i16^{_NSPoint=ff}20,
+,NSTextView,getMarkedText:selectedRange:,v0@4:8^@12^{_NSRange=II}16,
+,NSColorPickerWheelView,_pointInPicker:,c0@4:8^{_NSPoint=ff}12,
+,NSWorkspace,_dictionaryForSerialNumber:remove:clear:,@0@4:8^{CPSProcessSerNum=II}12c16c20,
+,NSWorkspace,_willUnmountDeviceAtPath:ok:,v0@4:8@12^i16,
+,NSWorkspace,getFileSystemInfoForPath:isRemovable:isWritable:isUnmountable:description:type:,c0@4:8@12^c16^c20^c24^@28^@32,c28@4:8@12o^c16o^c20o^c24o^@28o^@32
+,NSWorkspace,getInfoForFile:application:type:,c0@4:8@12^@16^@20,c16@4:8@12o^@16o^@20
+,NSWorkspace,performFileOperation:source:destination:files:tag:,c0@4:8@12@16@20@24^i28,c@:@@@@o^i
+,NSStringDrawingTextStorage,_fastDrawGlyphs:length:font:color:containerSize:usedRect:startingLocation:inRect:onView:context:pinToTop:,c84@4:8^S12I16@20@24{_NSSize=ff}28{_NSRect={_NSPoint=ff}{_NSSize=ff}}32{_NSPoint=ff}48{_NSRect={_NSPoint=ff}{_NSSize=ff}}56@72@76c83,
+,NSStringDrawingTextStorage,_fastDrawString:alignment:lineBreakMode:font:color:containerSize:padding:inRect:onView:context:pinToTop:sizeOnly:size:,c76@4:8@12i16i20@24@28{_NSSize=ff}28f40{_NSRect={_NSPoint=ff}{_NSSize=ff}}40@56@60c67c71^{_NSSize=ff}72,
+,NSStringDrawingTextStorage,_informationForFont:glyphTable:positionTable:,c0@4:8@12^^S16^^f20,
+,NSStringDrawingTextStorage,fastDrawAttributedString:containerSize:padding:inRect:onView:pinToTop:sizeOnly:size:,c56@4:8@12{_NSSize=ff}16f40{_NSRect={_NSPoint=ff}{_NSSize=ff}}24@40c47c51^{_NSSize=ff}52,
+,NSStringDrawingTextStorage,fastDrawString:attributes:containerSize:padding:inRect:onView:pinToTop:sizeOnly:size:,c60@4:8@12@16{_NSSize=ff}20f40{_NSRect={_NSPoint=ff}{_NSSize=ff}}28@44c51c55^{_NSSize=ff}56,
+,NSDocument,_changeAlertDidEnd:returnCode:contextInfo:,v0@4:8@12i16^v20,v16@4:8@12i16i20
+,NSDocument,_compatibility_canCloseDocumentWithDelegate:shouldCloseSelector:contextInfo:,v0@4:8@12:16^v20,v16@4:8@12:16i20
+,NSDocument,_compatibility_doSavePanelSave:delegate:didSaveSelector:contextInfo:,v0@4:8i12@16:20^v24,v20@4:8i12@16:20i24
+,NSDocument,_compatibility_shouldCloseWindowController:delegate:shouldCloseSelector:contextInfo:,v0@4:8@12@16:20^v24,v20@4:8@12@16:20i24
+,NSDocument,_createTemporaryDirectoryOn:orHiddenIn:andReturnRef:,c0@4:8s12r^{FSRef=[80C]}16^{FSRef=[80C]}20,
+,NSDocument,_didEndCloseSheet:returnCode:closeContext:,v0@4:8@12i16^v20,v16@4:8@12i16i20
+,NSDocument,_document:pageLayoutDidReturn:contextInfo:,v0@4:8@12c16^v20,v16@4:8@12c16i20
+,NSDocument,_finishSaveDocumentTo:withType:forSaveOperation:withDelegate:didSaveSelector:contextInfo:,v0@4:8@12@16i20@24:28^v32,v28@4:8@12@16i20@24:28i32
+,NSDocument,_finishWritingFileNamed:in:byExchangingWithFileIn:,c0@4:8@12r^{FSRef=[80C]}16r^{FSRef=[80C]}20,
+,NSDocument,_pageLayout:didEndAndReturn:contextInfo:,v0@4:8@12i16^v20,v16@4:8@12i16i20
+,NSDocument,_pathToFileNamed:in:,@0@4:8@12r^{FSRef=[80C]}16,
+,NSDocument,_printOperation:didReturn:contextInfo:,v0@4:8@12c16^v20,v16@4:8@12c16i20
+,NSDocument,_revertPanel:didConfirm:contextInfo:,v0@4:8@12i16^v20,v16@4:8@12i16i20
+,NSDocument,_runAlertPanelForDocumentMoved:orDocumentRenamed:orDocumentInTrash:orDocumentUnavailable:thenSaveDocumentWithDelegate:didSaveSelector:contextInfo:,v36@4:8c12c16c20c24@28:32^v32,v36@4:8c12c16c20c24@28:32i40
+,NSDocument,_savePanelDidEnd:returnCode:contextInfo:,v0@4:8@12i16^v20,v16@4:8@12i16i20
+,NSDocument,_writeItemAt:in:makingTemporaryCopyIn:withType:forSaveOperation:,c0@4:8@12r^{FSRef=[80C]}16r^{FSRef=[80C]}20@24i28,
+,NSDocument,canCloseDocumentWithDelegate:shouldCloseSelector:contextInfo:,v0@4:8@12:16^v20,v16@4:8@12:16i20
+,NSDocument,runModalPageLayoutWithPrintInfo:delegate:didRunSelector:contextInfo:,v0@4:8@12@16:20^v24,v20@4:8@12@16:20i24
+,NSDocument,runModalPrintOperation:delegate:didRunSelector:contextInfo:,v0@4:8@12@16:20^v24,v20@4:8@12@16:20i24
+,NSDocument,runModalSavePanelForSaveOperation:delegate:didSaveSelector:contextInfo:,v0@4:8i12@16:20^v24,v20@4:8i12@16:20i24
+,NSDocument,saveDocumentWithDelegate:didSaveSelector:contextInfo:,v0@4:8@12:16^v20,v16@4:8@12:16i20
+,NSDocument,saveToFile:saveOperation:delegate:didSaveSelector:contextInfo:,v0@4:8@12i16@20:24^v28,v24@4:8@12i16@20:24i28
+,NSDocument,shouldCloseWindowController:delegate:shouldCloseSelector:contextInfo:,v0@4:8@12@16:20^v24,v20@4:8@12@16:20i24
+,NSFilePromiseDragSource,copyDropDirectory,^{__CFURL=}0@4:8,
+,NSFilePromiseDragSource,fileSpecForName:atDestination:,@0@4:8@12^{__CFURL=}16,
+,NSAffineTransform,_fillFloatArray:,v0@4:8^f12,
+,NSLeafProxy,allocWithZone:,@0@4:8^{_NSZone=}12,
+,NSLeafProxy,copyWithZone:,@0@4:8^{_NSZone=}12,
+,NSLeafProxy,forward::,@0@4:8:12^v16,
+,NSTitledFrame,_drawFrameInterior:clip:,v0@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16,
+,NSTitledFrame,constrainResizeEdge:withDelta:elapsedTime:,c0@4:8^i12{_NSSize=ff}16f40,
+,NSPasteboard,_cfPasteboard,^{__CFPasteboard=}0@4:8,
+,NSPasteboard,_tmpPasteboardWithCFPasteboard:,@0@4:8^{__CFPasteboard=}12,
+,NSWindow,_auxStorage,^v0@4:8,
+,NSWindow,_confirmSize:force:,c0@4:8^{_NSSize=ff}12c16,
+,NSWindow,_document:shouldClose:contextInfo:,v0@4:8@12c16^v20,v16@4:8@12c16i20
+,NSWindow,_initContent:styleMask:backing:defer:contentView:,@0@4:8r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12I16i20c24@28,
+,NSWindow,_initContent:styleMask:backing:defer:counterpart:,@0@4:8r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12I16i20c24@28,
+,NSWindow,_initContent:styleMask:backing:defer:screen:contentView:,@0@4:8r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12I16i20c24@28@32,
+,NSWindow,_initFromGlobalWindow:inRect:,@0@4:8i12r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16,
+,NSWindow,_initFromGlobalWindow:inRect:styleMask:,@0@4:8i12r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16I20,
+,NSWindow,_setTrackingRect:inside:owner:userData:,i36@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12c28@32^v32,i36@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12c28@32i40
+,NSWindow,_validSize:force:,v0@4:8^{_NSSize=ff}12c16,
+,NSWindow,graphicsPort,^v0@4:8,
+,NSMovieView,movieController,^v0@4:8,
+,NSTypesetter,layoutGlyphsInLayoutManager:startingAtGlyphIndex:maxNumberOfLineFragments:nextGlyphIndex:,v0@4:8@12I16I20^I24,v@:@IIo^I
+,NSATSTypesetter,_calculateBlankLineRects:usedRect:atGlyphIndex:origin:extraFragment:,v0@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16I20{_NSPoint=ff}24c32,
+,NSATSTypesetter,_calculateLineHeightInGlyphVector:forGlyphRange:usesLeading:lineheight:glyphOffset:,c0@4:8^{ATSGlyphVector=III^v*I^v^{ATSStyleSetting}SsiiI{FixedRect=iiii}IiiiSS^S^s^s^i^i}12{_NSRange=II}16c24^f28^f32,
+,NSATSTypesetter,_copyStyleSettingsFromGlyphVector:toSubVector:subVectorIndex:,v0@4:8r^{ATSGlyphVector=III^v*I^v^{ATSStyleSetting}SsiiI{FixedRect=iiii}IiiiSS^S^s^s^i^i}12^{ATSGlyphVector=III^v*I^v^{ATSStyleSetting}SsiiI{FixedRect=iiii}IiiiSS^S^s^s^i^i}16I20,
+,NSATSTypesetter,_doJustifyGlyphVector:withGlyphRange:delta:,c0@4:8^{ATSGlyphVector=III^v*I^v^{ATSStyleSetting}SsiiI{FixedRect=iiii}IiiiSS^S^s^s^i^i}12{_NSRange=II}16f40,
+,NSATSTypesetter,_doTabsInGlyphVector:glyphOrigin:lineWidth:,v0@4:8^{ATSGlyphVector=III^v*I^v^{ATSStyleSetting}SsiiI{FixedRect=iiii}IiiiSS^S^s^s^i^i}12f40i20,
+,NSATSTypesetter,_processSpecialGlyphs:inRect:glyphOffset:,v0@4:8^{ATSGlyphVector=III^v*I^v^{ATSStyleSetting}SsiiI{FixedRect=iiii}IiiiSS^S^s^s^i^i}12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16I32,
+,NSATSTypesetter,_recalculateDelta:,v0@4:8^{ATSGlyphVector=III^v*I^v^{ATSStyleSetting}SsiiI{FixedRect=iiii}IiiiSS^S^s^s^i^i}12,
+,NSATSTypesetter,_recalculateInscriptionLineHeightInGlyphVector:forGlyphRange:usesLeading:lineheight:glyphOffset:,c0@4:8^{ATSGlyphVector=III^v*I^v^{ATSStyleSetting}SsiiI{FixedRect=iiii}IiiiSS^S^s^s^i^i}12{_NSRange=II}16c24^f28^f32,
+,NSATSTypesetter,_saveLineFragmentWithGlyphRange:glyphVector:glyphOrigin:drawsOutside:lineFragmentRect:isElasticRange:,v52@4:8{_NSRange=II}12r^{ATSGlyphVector=III^v*I^v^{ATSStyleSetting}SsiiI{FixedRect=iiii}IiiiSS^S^s^s^i^i}20{_NSPoint=ff}24c32{_NSRect={_NSPoint=ff}{_NSSize=ff}}32c51,
+,NSATSTypesetter,_setUpPlatformLineLayoutContext:forGlyphRange:fillStyles:hasExplicitDelta::,v0@4:8^{ATSGlyphVector=III^v*I^v^{ATSStyleSetting}SsiiI{FixedRect=iiii}IiiiSS^S^s^s^i^i}12{_NSRange=II}16c24^c28^c32,
+,NSATSTypesetter,charIndexToBreakLineByWordWrappingAtIndex:inRange:hyphenate:glyphVector:,I0@4:8I12{_NSRange=II}16^c24^{ATSGlyphVector=III^v*I^v^{ATSStyleSetting}SsiiI{FixedRect=iiii}IiiiSS^S^s^s^i^i}28,
+,NSATSTypesetter,fillPlatformTextStyle:forLayoutManager:withAttributes:,v0@4:8^v12@16@20,
+,NSComboBoxCell,_computeBezelRectWithTextCellFrame:inView:topLeft:bottomLeft:left:right:top:bottom:,v52@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@28^{_NSRect={_NSPoint=ff}{_NSSize=ff}}32^{_NSRect={_NSPoint=ff}{_NSSize=ff}}32^{_NSRect={_NSPoint=ff}{_NSSize=ff}}36^{_NSRect={_NSPoint=ff}{_NSSize=ff}}40^{_NSRect={_NSPoint=ff}{_NSSize=ff}}44^{_NSRect={_NSPoint=ff}{_NSSize=ff}}48,
+,NSRTFD,addCommon:docInfo:value:zone:,@0@4:8@12@16@20^{_NSZone=}24,
+,NSTableView,dragImageForRows:event:dragImageOffset:,@0@4:8@12@16^{_NSPoint=ff}20,
+,NSCharacterProperty,initWithRulebookSet:,@0@4:8^{_NSRulebookSetHeader=i[4L]iiii[1i]}12,
+,NSImage,_addOneRepFrom:toRep:,c0@4:8@12^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}16,
+,NSImage,_addRepsFrom:toRep:,c0@4:8@12^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}16,
+,NSImage,_bestRepresentation:device:bestWidth:checkFlag:,^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}0@4:8c12@16f40c24,
+,NSImage,_cacheRepresentation:,c0@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
+,NSImage,_cacheRepresentation:stayFocused:,c0@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12c16,
+,NSImage,_composite:delta:fromRect:toPoint:,c0@4:8i12f40r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}20r^{_NSPoint=ff}24,
+,NSImage,_createPattern,^v0@4:8,
+,NSImage,_createPatternFromRect:,^v0@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,
+,NSImage,_drawDone:success:,@0@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12c16,
+,NSImage,_drawRepresentation:,c0@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
+,NSImage,_expandRep:,c0@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
+,NSImage,_focusOnCache:,c0@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
+,NSImage,_forgetData:,@0@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
+,NSImage,_freeCache:,@0@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
+,NSImage,_freeRepresentation:,@0@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
+,NSImage,_getCacheWindow:andRect:forRep:,c0@4:8^@12^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}20,
+,NSImage,_getGlobalWindowNumber:andRect:forRepresentation:,c0@4:8^I12^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16@20,
+,NSImage,_handleError:delta:fromRect:toPoint:,@0@4:8i12f40r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}20r^{_NSPoint=ff}24,
+,NSImage,_initWithIconRef:includeThumbnail:,@0@4:8^v12c16,
+,NSImage,_lockFocusOnRep:,c0@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
+,NSImage,_newLazyIconRefRepresentation:ofSize:,^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}0@4:8^{OpaqueIconRef=}12i16,
+,NSImage,_newLazyRepresentation:::,^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}0@4:8i12@16@20,
+,NSImage,_newRepresentation:,^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}0@4:8@12,
+,NSImage,_requiresCacheWithAlpha:,c0@4:8^{_RepresentationInfo=^{_RepresentationInfo}^{_CacheWindowInfo}{_CacheRect=SSSS}@{_RepresentationInfoFlags=b1b1b1b4b1b24}@@^vi}12,
+,NSImage,_useSharedKitWindow:rect:,@0@4:8i12r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16,
+,NSImage,_whenDrawn:fills:,c0@4:8@12r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16,
+,NSImage,getImage:rect:,v0@4:8^@12^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16,
+,NSImageReader,bitmapDataPlanes,^*0@4:8,
+,NSImageReader,loadImage:,c0@4:8^*12,
+,NSImageReader,loadImage:forImageRep:,c0@4:8^*12@16,
+,NSTabViewItem,_validateViewIsInViewHeirarchy:,v0@4:8^@12,
+,NSEPSImageRep,_imagesFromIcon:inApp:zone:,@0@4:8@12@16^{_NSZone=}20,
+,NSScreen,supportedWindowDepths,r^i0@4:8,
+,NSCell,_objectValue:forString:,c0@4:8^@12@16,
+,NSCell,_selectOrEdit:inView:target:editor:event:start:end:,@36@4:8r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@16@20@24@28i32i32,
+,NSCell,_validateEntryString:uiHandled:,c0@4:8@12^c16,
+,NSCell,getPeriodicDelay:interval:,v0@4:8^f12^f16,v@:o^fo^f
+,NSCell,heartBeat:,v0@4:8^{?=ddd}12,
+,NSRulebookCharacterSet,_initWithSet:,@0@4:8^v12,
+,NSProgressPanel,setCancellationDelegate:wasCancelledSelector:contextInfo:,v0@4:8@12:16^v20,v16@4:8@12:16i20
+,NSTabView,_getThemeImageTabBarRect:backgroundRect:fillBackgroundRect:,v0@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16^{_NSRect={_NSPoint=ff}{_NSSize=ff}}20,
+,NSSystemStatusBar,drawBackgroundInRect:inView:highlight:,v0@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@16c20,
+,NSQuickDrawPort,port,^{OpaqueGrafPtr=}0@4:8,
+,_NSPDFDocument,adjustCTM:,v0@4:8^{CGContext=}12,
+,_NSPDFDocument,documentRef,^{CGPDFDocument=}0@4:8,
+,NSPreferences,confirmCloseSheetIsDone:returnCode:contextInfo:,v0@4:8@12i16^v20,
+,NSLayoutManager,_invalidateGlyphsForCharacterRange:editedCharacterRange:changeInLength:actualCharacterRange:,v0@4:8{_NSRange=II}12{_NSRange=II}20i28^{_NSRange=II}32,
+,NSLayoutManager,_temporaryAttribute:atCharacterIndex:effectiveRange:,@0@4:8@12I16^{_NSRange=II}20,
+,NSLayoutManager,_temporaryAttribute:atCharacterIndex:longestEffectiveRange:inRange:,@0@4:8@12I16^{_NSRange=II}20{_NSRange=II}24,
+,NSLayoutManager,_temporaryAttributesAtCharacterIndex:longestEffectiveRange:inRange:,@0@4:8I12^{_NSRange=II}16{_NSRange=II}20,
+,NSLayoutManager,characterRangeForGlyphRange:actualGlyphRange:,{_NSRange=II}0@8:12{_NSRange=II}16^{_NSRange=II}24,{_NSRange=II}@:{_NSRange=II}o^{_NSRange=II}
+,NSLayoutManager,getFirstUnlaidCharacterIndex:glyphIndex:,v0@4:8^I12^I16,v@:o^Io^I
+,NSLayoutManager,getGlyphsInRange:glyphs:characterIndexes:glyphInscriptions:elasticBits:,I0@4:8{_NSRange=II}12^I20^I24^i28^c32,
+,NSLayoutManager,getGlyphsInRange:glyphs:characterIndexes:glyphInscriptions:elasticBits:bidiLevels:,I36@4:8{_NSRange=II}12^I20^I24^i28^c32*32,
+,NSLayoutManager,getGlyphs:range:,I0@4:8^I12{_NSRange=II}16,
+,NSLayoutManager,glyphAtIndex:isValidIndex:,I0@4:8I12^c16,I@:Io^c
+,NSLayoutManager,glyphIndexForPoint:inTextContainer:fractionOfDistanceThroughGlyph:,I0@4:8{_NSPoint=ff}12@20^f24,I@:{_NSPoint=ff}@o^f
+,NSLayoutManager,glyphRangeForCharacterRange:actualCharacterRange:,{_NSRange=II}0@8:12{_NSRange=II}16^{_NSRange=II}24,{_NSRange=II}@:{_NSRange=II}o^{_NSRange=II}
+,NSLayoutManager,invalidateGlyphsForCharacterRange:changeInLength:actualCharacterRange:,v0@4:8{_NSRange=II}12i20^{_NSRange=II}24,v@:{_NSRange=II}io^{_NSRange=II}
+,NSLayoutManager,invalidateLayoutForCharacterRange:isSoft:actualCharacterRange:,v0@4:8{_NSRange=II}12c20^{_NSRange=II}24,v@:{_NSRange=II}co^{_NSRange=II}
+,NSLayoutManager,lineFragmentRectForGlyphAtIndex:effectiveRange:,{_NSRect={_NSPoint=ff}{_NSSize=ff}}0@8:12I16^{_NSRange=II}20,{_NSRect={_NSPoint=ff}{_NSSize=ff}}@:Io^{_NSRange=II}
+,NSLayoutManager,lineFragmentUsedRectForGlyphAtIndex:effectiveRange:,{_NSRect={_NSPoint=ff}{_NSSize=ff}}0@8:12I16^{_NSRange=II}20,{_NSRect={_NSPoint=ff}{_NSSize=ff}}@:Io^{_NSRange=II}
+,NSLayoutManager,lineFragmentUsedRectForGlyphAtIndex:effectiveRange:allowLayout:,{_NSRect={_NSPoint=ff}{_NSSize=ff}}0@8:12I16^{_NSRange=II}20c24,{_NSRect={_NSPoint=ff}{_NSSize=ff}}@:Io^{_NSRange=II}c
+,NSLayoutManager,rectArrayForCharacterRange:withinSelectedCharacterRange:inTextContainer:rectCount:,^{_NSRect={_NSPoint=ff}{_NSSize=ff}}0@4:8{_NSRange=II}12{_NSRange=II}20@28^I32,
+,NSLayoutManager,rectArrayForGlyphRange:withinSelectedGlyphRange:inTextContainer:rectCount:,^{_NSRect={_NSPoint=ff}{_NSSize=ff}}0@4:8{_NSRange=II}12{_NSRange=II}20@28^I32,
+,NSLayoutManager,temporaryAttributesAtCharacterIndex:effectiveRange:,@0@4:8I12^{_NSRange=II}16,@@:Io^{_NSRange=II}
+,NSLayoutManager,textContainerForGlyphAtIndex:effectiveRange:,@0@4:8I12^{_NSRange=II}16,@@:Io^{_NSRange=II}
+,NSOpenPanel,beginSheetForDirectory:file:types:modalForWindow:modalDelegate:didEndSelector:contextInfo:,v36@4:8@12@16@20@24@28:32^v32,v36@4:8@12@16@20@24@28:32i40
+,_NSQDCGSContext,clipToQDRegion:,v0@4:8^{OpaqueRgnHandle=}12,
+,NSPICTImageRep,_verifyDataIsPICT:withFrame:fromFile:,c0@4:8@12^{_NSRect={_NSPoint=ff}{_NSSize=ff}}16^c20,
+,NSPrintOperation,runOperationModalForWindow:delegate:didRunSelector:contextInfo:,v0@4:8@12@16:20^v24,v20@4:8@12@16:20i24
+,NSRunStorage,elementAtIndex:effectiveRange:,^v0@4:8I12^{_NSRange=II}16,
+,NSRunStorage,insertElement:range:coalesceRuns:,v0@4:8^v12{_NSRange=II}16c24,
+,NSRunStorage,replaceElementsInRange:withElement:coalesceRuns:,v0@4:8{_NSRange=II}12^v20c24,
+,NSColorPickerList,_attachColorList:systemList:,@0@4:8^@12c16,
+,NSColorPickerList,_attachColorList:systemList:makeSelected:,@0@4:8^@12c16c20,
+,NSPanel,_doSetAccessoryView:topView:bottomView:oldView:,@0@4:8@12@16@20^@24,
+,NSPanel,_doSetAccessoryView:topView:bottomView:previousKeyView:oldView:,@0@4:8@12@16@20@24^@28,
+,NSSimpleHorizontalTypesetter,_glyphInfoAtIndex:,^{_NSTypesetterGlyphInfo={_NSPoint=ff}fffI@{_NSSize=ff}{?=b1b1b1}}0@4:8i12,
+,NSSimpleHorizontalTypesetter,_setupBoundsForLineFragment:,v0@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,
+,NSSimpleHorizontalTypesetter,baseOfTypesetterGlyphInfo,^{_NSTypesetterGlyphInfo={_NSPoint=ff}fffI@{_NSSize=ff}{?=b1b1b1}}0@4:8,
+,NSSimpleHorizontalTypesetter,layoutGlyphsInHorizontalLineFragment:baseline:,i0@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12^f16,
+,NSHFSContainer,getRef:forObjectName:,c0@4:8^{FSRef=[80C]}12@16,
+,NSHFSContainer,iconRef:label:forObjectName:,v0@4:8^^{OpaqueIconRef}12^s16@20,
+,NSHFSContainer,initWithRef:,@0@4:8^{FSRef=[80C]}12,
+,NSHFSContainer,initWithRef:containerType:,@0@4:8^{FSRef=[80C]}12i16,
+,NSHFSContainer,ref,^{FSRef=[80C]}0@4:8,
+,NSOpenGLContext,getValues:forParameter:,v0@4:8^l12i16,
+,NSOpenGLContext,setOffScreen:width:height:rowbytes:,v0@4:8^v12l16l20l24,
+,NSOpenGLContext,setValues:forParameter:,v0@4:8r^i12i16,
+,NSToolbarItemViewer,_computeLayoutInfoForIconViewSize:frameSize:iconFrame:labelFrame:,v0@4:8{_NSSize=ff}12^{_NSSize=ff}20^{_NSRect={_NSPoint=ff}{_NSSize=ff}}24^{_NSRect={_NSPoint=ff}{_NSSize=ff}}28,
+,NSSpellChecker,_chunkAndFindMisspelledWordInString:language:learnedDictionaries:wordCount:usingSpellServer:,{_NSRange=II}0@8:12@16@20@24^i28@32,
+,NSSpellChecker,checkSpellingOfString:startingAt:language:wrap:inSpellDocumentWithTag:wordCount:,{_NSRange=II}36@8:12@16i20@24c28i32^i32,{_NSRange=II}@:@i@cio^i
+,NSSpellChecker,checkSpellingOfString:startingAt:language:wrap:inSpellDocumentWithTag:wordCount:reconnectOnError:,{_NSRange=II}40@8:12@16i20@24c28i32^i32c39,{_NSRange=II}@:@i@cio^ic
+,NSActionCell,_delegateValidation:object:uiHandled:,c0@4:8@12@16^c20,
+,NSDocInfo,initFromInfo:,@0@4:8^{stat=iISSIIi{timespec=il}{timespec=il}{timespec=il}qqIIIi[2q]}12,
+,NSToolTipManager,_setToolTip:forView:cell:rect:owner:ownerIsDisplayDelegate:userData:,i48@4:8@12@16@20{_NSRect={_NSPoint=ff}{_NSSize=ff}}20@36c43^v44,i48@4:8@12@16@20{_NSRect={_NSPoint=ff}{_NSSize=ff}}28@44c51i52
+,NSToolTipManager,setToolTipForView:rect:displayDelegate:userData:,i36@4:8@12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16@32^v32,i36@4:8@12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16@32i40
+,NSToolTipManager,setToolTipForView:rect:owner:userData:,i36@4:8@12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16@32^v32,i36@4:8@12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16@32i40
+,NSMatrix,_addToolTipRect:displayDelegate:userData:,i0@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@28^v32,
+,NSMatrix,_findFirstOne::,@0@4:8^i12^i16,
+,NSMatrix,_getBrowser:browserColumn:,v0@4:8^@12^i16,
+,NSMatrix,_getDrawingRow:andCol:,@0@4:8^i12^i16,
+,NSMatrix,_getRow:andCol:ofCell:atRect:,c0@4:8^i12^i16@20r^{_NSRect={_NSPoint=ff}{_NSSize=ff}}24,
+,NSMatrix,_getRow:column:nearPoint:,v0@4:8^i12^i16{_NSPoint=ff}20,
+,NSMatrix,_loopHit:row:col:,c0@4:8{_NSPoint=ff}12^i20^i24,
+,NSMatrix,_mouseHit:row:col:,c0@4:8{_NSPoint=ff}12^i20^i24,
+,NSMatrix,_mouseLoop::::::,@0@4:8@12@16i20i24^{_SelectionAnchor=iii}28c32,
+,NSMatrix,_radioHit:row:col:,c0@4:8{_NSPoint=ff}12^i20^i24,
+,NSMatrix,_selectRange::::,@0@4:8^{_SelectionAnchor=iii}12^{_SelectionAnchor=iii}16c20c24,
+,NSMatrix,_selectRectRange::,@0@4:8^{_SelectionAnchor=iii}12c16,
+,NSMatrix,_selectRowRange::,@0@4:8^{_SelectionAnchor=iii}12c16,
+,NSMatrix,_setSelectionRange::,@0@4:8^{_SelectionAnchor=iii}12c16,
+,NSMatrix,getNumberOfRows:columns:,v0@4:8^i12^i16,v@:o^io^i
+,NSMatrix,getRow:column:forPoint:,c0@4:8^i12^i16{_NSPoint=ff}20,c@:o^io^i{_NSPoint=ff}
+,NSMatrix,getRow:column:ofCell:,c0@4:8^i12^i16@20,c@:o^io^i@
+,NSMatrix,sortUsingFunction:context:,v0@4:8^?12^v16,
+,NSMatrix,view:frameForToolTip:point:userData:,{_NSRect={_NSPoint=ff}{_NSSize=ff}}0@8:12@16i20{_NSPoint=ff}24^v32,{_NSRect={_NSPoint=ff}{_NSSize=ff}}28@8:12@16i20{_NSPoint=ff}24i32
+,NSMatrix,view:stringForToolTip:point:userData:,@0@4:8@12i16{_NSPoint=ff}20^v28,@24@4:8@12i16{_NSPoint=ff}20i28
+,NSDeviceCMYKColor,newWithCoder:zone:,@0@4:8@12^{_NSZone=}16,
+,NSColorHolder,initFromSize:andColor:,@0@4:8r^{_NSSize=ff}12@16,
+,NSClipView,_scrollTo:,c0@4:8r^{_NSPoint=ff}12,
+,NSColorSwatch,_constrainColorIndexToVisibleBounds:dirtyIfNeeded:,v0@4:8^i12c16,
+,NSColorSwatch,getSavedNumVisibleRows:,c0@4:8^i12,
+,NSDocumentController,_closeDocumentsStartingWith:shouldClose:closeAllContext:,v0@4:8@12c16^v20,
+,NSDocumentController,_document:didSave:contextInfo:,v0@4:8@12c16^v20,v16@4:8@12c16i20
+,NSDocumentController,_installOpenRecentMenuOpeningEventHandler:,v0@4:8^{OpaqueMenuRef=}12,
+,NSDocumentController,closeAllDocumentsWithDelegate:didCloseAllSelector:contextInfo:,v0@4:8@12:16^v20,v16@4:8@12:16i20
+,NSDocumentController,reviewUnsavedDocumentsWithAlertTitle:cancellable:delegate:didReviewAllSelector:contextInfo:,v0@4:8@12c16@20:24^v28,v24@4:8@12c16@20:24i28
+,NSHFSIndirectObject,initWithRef:hidden:iDisk:,@0@4:8^{FSRef=[80C]}12c16c20,
+,NSPatternColor,newWithCoder:zone:,@0@4:8@12^{_NSZone=}16,
+,NSScroller,_getPartStruct:numberOfParts:withInnerBounds:,v0@4:8^{_PartStruct=if}12^I16{_NSRect={_NSPoint=ff}{_NSSize=ff}}20,
+,NSConcretePrintOperation,_operationInfo,^{_PrivatePrintOperationInfo={_NSRect={_NSPoint=ff}{_NSSize=ff}}{_NSRect={_NSPoint=ff}{_NSSize=ff}}cccccccciiiiiii@@{_NSRect={_NSPoint=ff}{_NSSize=ff}}ccciffffii{_NSPoint=ff}I^{_NSModalSession}iiciii@c@ic@@i@}0@4:8,
+,NSConcretePrintOperation,_printPanel:didEndAndReturn:contextInfo:,v0@4:8@12i16^v20,v16@4:8@12i16i20
+,NSConcretePrintOperation,_progressPanelWasCancelled:contextInfo:,v0@4:8@12^v16,v12@4:8@12i16
+,NSConcretePrintOperation,_progressPanel:didEndAndReturn:contextInfo:,v0@4:8@12i16^v20,v16@4:8@12i16i20
+,NSAKDeserializerStream,initFromMemoryNoCopy:length:freeWhenDone:,@0@4:8r^v12I16c20,
+,NSAKDeserializerStream,readData:length:,v0@4:8^v12I16,
+,NSTextFieldCell,_getTextColor:backgroundColor:,v0@4:8^@12^@16,
+,NSNextStepFrame,_calcTextRect:,@0@4:8^{_NSRect={_NSPoint=ff}{_NSSize=ff}}12,
+,NSNextStepFrame,_inResize:,i0@4:8r^{_NSPoint=ff}12,
+,NSThemeDocumentButton,setIconForFileName:,v0@4:8^{FSRef=[80C]}12,
+,NSPrintPanel,_sheetDidEnd:returnCode:contextInfo:,v0@4:8@12i16^v20,v16@4:8@12i16i20
+,NSPrintPanel,beginSheetWithPrintInfo:modalForWindow:delegate:didEndSelector:contextInfo:,v0@4:8@12@16@20:24^v28,v24@4:8@12@16@20:24i28
+,NSDragDestination,_receiveHandlerRef,^{OpaqueCoreDragHandler=}0@4:8,
+,NSDragDestination,_setDragRef:,v0@4:8^{OpaqueCoreDrag=}12,
+,NSDragDestination,_setReceiveHandlerRef:,v0@4:8^{OpaqueCoreDragHandler=}12,
+,NSDragDestination,_setTrackingHandlerRef:,v0@4:8^{OpaqueCoreDragHandler=}12,
+,NSDragDestination,_trackingHandlerRef,^{OpaqueCoreDragHandler=}0@4:8,
+,NSBrowser,_getMatchingRow:forString:inMatrix:startingAtRow:prefixMatch:caseSensitive:,c0@4:8^i12@16@20i24c28c32,
+,NSTextContainer,lineFragmentRectForProposedRect:sweepDirection:movementDirection:remainingRect:,{_NSRect={_NSPoint=ff}{_NSSize=ff}}40@8:12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16i32i32^{_NSRect={_NSPoint=ff}{_NSSize=ff}}36,{_NSRect={_NSPoint=ff}{_NSSize=ff}}@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}iio^{_NSRect={_NSPoint=ff}{_NSSize=ff}}
+,NSMovie,QTMovie,^v0@4:8,
+,NSMovie,initWithMovie:,@0@4:8^v12,
+,NSApplication,_commonBeginModalSessionForWindow:relativeToWindow:modalDelegate:didEndSelector:contextInfo:,^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}0@4:8@12@16@20:24^v28,^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}24@4:8@12@16@20:24i28
+,NSApplication,_createDockMenu:,^{__CFArray=}0@4:8c12,
+,NSApplication,_doModalLoop:peek:,v0@4:8^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}12c16,
+,NSApplication,_doOpenFile:ok:tryTemp:,v0@4:8@12^i16c20,
+,NSApplication,_doPostedModalLoopMsg:,v0@4:8^{?=^{_NSModalSession}c@}12,
+,NSApplication,_doPrintFile:ok:,v0@4:8@12^i16,
+,NSApplication,_flattenMenuItem:,^{__CFDictionary=}0@4:8@12,
+,NSApplication,_flattenMenu:,^{__CFArray=}0@4:8@12,
+,NSApplication,_modalSession:sendEvent:,v0@4:8^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}12@16,
+,NSApplication,_realDoModalLoop:peek:,v0@4:8^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}12c16,
+,NSApplication,beginModalSessionForWindow:,^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}0@4:8@12,
+,NSApplication,beginModalSessionForWindow:relativeToWindow:,^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}0@4:8@12@16,
+,NSApplication,beginSheet:modalForWindow:modalDelegate:didEndSelector:contextInfo:,v0@4:8@12@16@20:24^v28,v@:@@@:i
+,NSApplication,contextID,^v0@4:8,i4@4:8
+,NSApplication,endModalSession:,v0@4:8^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}12,
+,NSApplication,msgPrint:ok:,i0@4:8r*12^i16,
+,NSApplication,openFile:ok:,i0@4:8@12^i16,i12@4:8@12o^i16
+,NSApplication,openTempFile:ok:,i0@4:8@12^i16,i12@4:8@12o^i16
+,NSApplication,runModalSession:,i0@4:8^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}12,i8@4:8^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}12
+,NSCalibratedWhiteColor,newWithCoder:zone:,@0@4:8@12^{_NSZone=}16,
+,NSCGSFont,_atsFontID,^v0@4:8,
+,NSCGSFont,_backingCGSFont,^{CGFont={__CFRuntimeBase=^vSS}^{CGFontVTable}i^{CGEncoding}^{CGCMap}^{CGFontIndexMap}^{CGAdvanceSet}i^{CGFontCache}^{CGFontInfo}^{CGFontHMetrics}^{CGFontVMetrics}S^{CGFontIndexSet}{CGRect={CGPoint=ff}{CGSize=ff}}^vb1b1b1}0@4:8,
+,NSCGSFont,_nominalChars,^S0@4:8,
+,NSCGSFont,_nominalGlyphs,^S0@4:8,
+,NSTabletEvent,_initWithCGSEvent:,@120@4:8{_CGSEventRecord=SSII{CGPoint=ff}{CGPoint=ff}QI^v^v(?={?=CCsiCcCCss(?={_CGSTabletPointData=iiiSS{?=ss}SsSsss}{_CGSTabletProximityData=SSSSSSIQICCs})b1b31[3i]}{?=CCsiCcCCss(?={_CGSTabletPointData=iiiSS{?=ss}SsSsss}{_CGSTabletProximityData=SSSSSSIQICCs})b1b31[3i]}{?=ssSSSsssI[11i]}{?=ssii[13i]}{?=SSIIiiiiii[7i]}{?=ssssi[9i]b1b31[3i]}{?=iiiSS{?=ss}SsSsss[8i]}{?=SSSSSSIQICCs[8i]}{?=ss(?=[15f][15i][30s][60c])})}8,
+,NSGlyphGenerator,_callImplementor:context:chars:glyphs:stringBuffer:font:,v0@4:8i12^{_NSGlyphGenContext=iiiiiiiiiii@[32i][32i][32i][64i]{_NSRange=II}{_NSRange=II}ii^{_NSGlyphInsertBuffer}}16@20@24^{_NSRAStringBuffer=@IIIIII[100S]}28@32,
+,NSGlyphGenerator,_recurWithContext:chars:glyphs:stringBuffer:font:,v0@4:8^{_NSGlyphGenContext=iiiiiiiiiii@[32i][32i][32i][64i]{_NSRange=II}{_NSRange=II}ii^{_NSGlyphInsertBuffer}}12@16@20^{_NSRAStringBuffer=@IIIIII[100S]}24@28,
+,NSGlyphGenerator,generateGlyphsForLayoutManager:range:desiredNumberOfCharacters:startingAtGlyphIndex:completedRange:nextGlyphIndex:,v36@4:8@12{_NSRange=II}16I24I28^{_NSRange=II}32^I32,
+,NSCGSContext,windowID,^v0@4:8,
+,NSView,adjustPageHeightNew:top:bottom:limit:,v@:^ffff,v@:o^ffff
+,NSView,adjustPageWidthNew:left:right:limit:,v@:^ffff,v@:o^ffff
+,NSView,knowsPageRange:,c@:^{_NSRange=II},v@:N^{_NSRange=II}

pyobjc/Lib/AppKit/_AppKitSignatures.py

 #
 from objc import set_signature_for_selector
 
+set_signature_for_selector("NSFocusState", "clip:", "@@:i^{_NSRect={_NSPoint=ff}{_NSSize=ff}}")
+set_signature_for_selector("NSSurface", "surfaceID", "i@:")
+set_signature_for_selector("NSInputManager", "getMarkedText:selectedRange:", "v@:o^@o^{_NSRange=II}")
+set_signature_for_selector("NSToolbar", "_configSheetDidEnd:returnCode:contextInfo:", "v16@4:8@12i16i20")
+set_signature_for_selector("NSEvent", "enterExitEventWithType:location:modifierFlags:timestamp:windowNumber:context:eventNumber:trackingNumber:userData:", "@52@4:8i12{_NSPoint=ff}16I24d36i40@44i48i52i56")
+set_signature_for_selector("NSEvent", "userData", "i@:")
+set_signature_for_selector("NSPSMatrix", "invTransformRect:", "@@:N^{_NSRect={_NSPoint=ff}{_NSSize=ff}}")
+set_signature_for_selector("NSPSMatrix", "invTransform:", "@@:N^{_NSPoint=ff}")
+set_signature_for_selector("NSPSMatrix", "transformRect:", "@@:N^{_NSRect={_NSPoint=ff}{_NSSize=ff}}")
+set_signature_for_selector("NSPSMatrix", "transform:", "@@:N^{_NSPoint=ff}")
+set_signature_for_selector("NSButton", "getPeriodicDelay:interval:", "v@:o^fo^f")
+set_signature_for_selector("NSView", "addToolTipRect:owner:userData:", "i28@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@28i32")
+set_signature_for_selector("NSView", "addTrackingRect:owner:userData:assumeInside:", "i@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}@ic")
 set_signature_for_selector("NSAlert", "didEndSheet:returnCode:contextInfo:", "v16@4:8@12i16i20")
-set_signature_for_selector("NSApplication", "_commonBeginModalSessionForWindow:relativeToWindow:modalDelegate:didEndSelector:contextInfo:", "^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}24@4:8@12@16@20:24i28")
-set_signature_for_selector("NSApplication", "beginSheet:modalForWindow:modalDelegate:didEndSelector:contextInfo:", "v@:@@@:i")
-set_signature_for_selector("NSApplication", "contextID", "i4@4:8")
-set_signature_for_selector("NSApplication", "openFile:ok:", "i12@4:8@12o^i16")
-set_signature_for_selector("NSApplication", "openTempFile:ok:", "i12@4:8@12o^i16")
-set_signature_for_selector("NSApplication", "runModalSession:", "i8@4:8^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}12")
+set_signature_for_selector("NSSavePanel", "_runModalForDirectory:file:relativeToWindow:modalDelegate:didEndSelector:contextInfo:", "v28@4:8@12@16@20@24:28i32")
+set_signature_for_selector("NSSavePanel", "beginSheetForDirectory:file:modalForWindow:modalDelegate:didEndSelector:contextInfo:", "v28@4:8@12@16@20@24:28i32")
+set_signature_for_selector("NSSavePanel", "didEndSheet:returnCode:contextInfo:", "v16@4:8@12i16i20")
+set_signature_for_selector("NSPageLayout", "_sheetDidEnd:returnCode:contextInfo:", "v16@4:8@12i16i20")
+set_signature_for_selector("NSPageLayout", "beginSheetWithPrintInfo:modalForWindow:delegate:didEndSelector:contextInfo:", "v24@4:8@12@16@20:24i28")
+set_signature_for_selector("NSPageLayout", "convertOldFactor:newFactor:", "v@:i^fo^f")
 set_signature_for_selector("NSBitmapImageRep", "getCompression:factor:", "v@:o^io^f")
-set_signature_for_selector("NSButton", "getPeriodicDelay:interval:", "v@:o^fo^f")
 set_signature_for_selector("NSColor", "getCyan:magenta:yellow:black:alpha:", "v@:o^fo^fo^fo^f")
 set_signature_for_selector("NSColor", "getHue:saturation:brightness:alpha:", "v@:o^fo^fo^fo^f")
 set_signature_for_selector("NSColor", "getRed:green:blue:alpha:", "v@:o^fo^fo^fo^f")
 set_signature_for_selector("NSColor", "getWhite:alpha:", "v@:o^fo^f")
-set_signature_for_selector("NSConcretePrintOperation", "_printPanel:didEndAndReturn:contextInfo:", "v16@4:8@12i16i20")
-set_signature_for_selector("NSConcretePrintOperation", "_progressPanel:didEndAndReturn:contextInfo:", "v16@4:8@12i16i20")
-set_signature_for_selector("NSConcretePrintOperation", "_progressPanelWasCancelled:contextInfo:", "v12@4:8@12i16")
+set_signature_for_selector("NSFont", "positionOfGlyph:precededByGlyph:isNominal:", "{_NSPoint=ff}@:IIo^c")
+set_signature_for_selector("NSFont", "positionOfGlyph:struckOverGlyph:metricsExist:", "{_NSPoint=ff}@:IIo^c")
+set_signature_for_selector("NSFont", "positionOfGlyph:struckOverRect:metricsExist:", "{_NSPoint=ff}@:I{_NSRect={_NSPoint=ff}{_NSSize=ff}}o^c")
+set_signature_for_selector("NSFont", "positionOfGlyph:withRelation:toBaseGlyph:totalAdvancement:metricsExist:", "{_NSPoint=ff}@:IiI^{_NSSize=ff}o^c")
+set_signature_for_selector("NSWorkspace", "getFileSystemInfoForPath:isRemovable:isWritable:isUnmountable:description:type:", "c28@4:8@12o^c16o^c20o^c24o^@28o^@32")
+set_signature_for_selector("NSWorkspace", "getInfoForFile:application:type:", "c16@4:8@12o^@16o^@20")
+set_signature_for_selector("NSWorkspace", "performFileOperation:source:destination:files:tag:", "c@:@@@@o^i")
 set_signature_for_selector("NSDocument", "_changeAlertDidEnd:returnCode:contextInfo:", "v16@4:8@12i16i20")
 set_signature_for_selector("NSDocument", "_compatibility_canCloseDocumentWithDelegate:shouldCloseSelector:contextInfo:", "v16@4:8@12:16i20")
 set_signature_for_selector("NSDocument", "_compatibility_doSavePanelSave:delegate:didSaveSelector:contextInfo:", "v20@4:8i12@16:20i24")
 set_signature_for_selector("NSDocument", "saveDocumentWithDelegate:didSaveSelector:contextInfo:", "v16@4:8@12:16i20")
 set_signature_for_selector("NSDocument", "saveToFile:saveOperation:delegate:didSaveSelector:contextInfo:", "v24@4:8@12i16@20:24i28")
 set_signature_for_selector("NSDocument", "shouldCloseWindowController:delegate:shouldCloseSelector:contextInfo:", "v20@4:8@12@16:20i24")
-set_signature_for_selector("NSDocumentController", "_document:didSave:contextInfo:", "v16@4:8@12c16i20")
-set_signature_for_selector("NSDocumentController", "closeAllDocumentsWithDelegate:didCloseAllSelector:contextInfo:", "v16@4:8@12:16i20")
-set_signature_for_selector("NSDocumentController", "reviewUnsavedDocumentsWithAlertTitle:cancellable:delegate:didReviewAllSelector:contextInfo:", "v24@4:8@12c16@20:24i28")
-set_signature_for_selector("NSEvent", "enterExitEventWithType:location:modifierFlags:timestamp:windowNumber:context:eventNumber:trackingNumber:userData:", "@52@4:8i12{_NSPoint=ff}16I24d36i40@44i48i52i56")
-set_signature_for_selector("NSEvent", "userData", "i@:")
-set_signature_for_selector("NSFocusState", "clip:", "@@:i^{_NSRect={_NSPoint=ff}{_NSSize=ff}}")
-set_signature_for_selector("NSInputManager", "getMarkedText:selectedRange:", "v@:o^@o^{_NSRange=II}")
+set_signature_for_selector("NSWindow", "_document:shouldClose:contextInfo:", "v16@4:8@12c16i20")
+set_signature_for_selector("NSWindow", "_setTrackingRect:inside:owner:userData:", "i36@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12c28@32i40")
+set_signature_for_selector("NSTypesetter", "layoutGlyphsInLayoutManager:startingAtGlyphIndex:maxNumberOfLineFragments:nextGlyphIndex:", "v@:@IIo^I")
+set_signature_for_selector("NSCell", "getPeriodicDelay:interval:", "v@:o^fo^f")
+set_signature_for_selector("NSProgressPanel", "setCancellationDelegate:wasCancelledSelector:contextInfo:", "v16@4:8@12:16i20")
+set_signature_for_selector("NSLayoutManager", "characterRangeForGlyphRange:actualGlyphRange:", "{_NSRange=II}@:{_NSRange=II}o^{_NSRange=II}")
+set_signature_for_selector("NSLayoutManager", "getFirstUnlaidCharacterIndex:glyphIndex:", "v@:o^Io^I")
+set_signature_for_selector("NSLayoutManager", "glyphAtIndex:isValidIndex:", "I@:Io^c")
+set_signature_for_selector("NSLayoutManager", "glyphIndexForPoint:inTextContainer:fractionOfDistanceThroughGlyph:", "I@:{_NSPoint=ff}@o^f")
+set_signature_for_selector("NSLayoutManager", "glyphRangeForCharacterRange:actualCharacterRange:", "{_NSRange=II}@:{_NSRange=II}o^{_NSRange=II}")
+set_signature_for_selector("NSLayoutManager", "invalidateGlyphsForCharacterRange:changeInLength:actualCharacterRange:", "v@:{_NSRange=II}io^{_NSRange=II}")
+set_signature_for_selector("NSLayoutManager", "invalidateLayoutForCharacterRange:isSoft:actualCharacterRange:", "v@:{_NSRange=II}co^{_NSRange=II}")
+set_signature_for_selector("NSLayoutManager", "lineFragmentRectForGlyphAtIndex:effectiveRange:", "{_NSRect={_NSPoint=ff}{_NSSize=ff}}@:Io^{_NSRange=II}")
+set_signature_for_selector("NSLayoutManager", "lineFragmentUsedRectForGlyphAtIndex:effectiveRange:", "{_NSRect={_NSPoint=ff}{_NSSize=ff}}@:Io^{_NSRange=II}")
+set_signature_for_selector("NSLayoutManager", "lineFragmentUsedRectForGlyphAtIndex:effectiveRange:allowLayout:", "{_NSRect={_NSPoint=ff}{_NSSize=ff}}@:Io^{_NSRange=II}c")
+set_signature_for_selector("NSLayoutManager", "temporaryAttributesAtCharacterIndex:effectiveRange:", "@@:Io^{_NSRange=II}")
+set_signature_for_selector("NSLayoutManager", "textContainerForGlyphAtIndex:effectiveRange:", "@@:Io^{_NSRange=II}")
+set_signature_for_selector("NSOpenPanel", "beginSheetForDirectory:file:types:modalForWindow:modalDelegate:didEndSelector:contextInfo:", "v36@4:8@12@16@20@24@28:32i40")
+set_signature_for_selector("NSPrintOperation", "runOperationModalForWindow:delegate:didRunSelector:contextInfo:", "v20@4:8@12@16:20i24")
+set_signature_for_selector("NSSpellChecker", "checkSpellingOfString:startingAt:language:wrap:inSpellDocumentWithTag:wordCount:", "{_NSRange=II}@:@i@cio^i")
+set_signature_for_selector("NSSpellChecker", "checkSpellingOfString:startingAt:language:wrap:inSpellDocumentWithTag:wordCount:reconnectOnError:", "{_NSRange=II}@:@i@cio^ic")
+set_signature_for_selector("NSToolTipManager", "_setToolTip:forView:cell:rect:owner:ownerIsDisplayDelegate:userData:", "i48@4:8@12@16@20{_NSRect={_NSPoint=ff}{_NSSize=ff}}28@44c51i52")
+set_signature_for_selector("NSToolTipManager", "setToolTipForView:rect:displayDelegate:userData:", "i36@4:8@12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16@32i40")
+set_signature_for_selector("NSToolTipManager", "setToolTipForView:rect:owner:userData:", "i36@4:8@12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16@32i40")
 set_signature_for_selector("NSMatrix", "getNumberOfRows:columns:", "v@:o^io^i")
 set_signature_for_selector("NSMatrix", "getRow:column:forPoint:", "c@:o^io^i{_NSPoint=ff}")
 set_signature_for_selector("NSMatrix", "getRow:column:ofCell:", "c@:o^io^i@")
 set_signature_for_selector("NSMatrix", "view:frameForToolTip:point:userData:", "{_NSRect={_NSPoint=ff}{_NSSize=ff}}28@8:12@16i20{_NSPoint=ff}24i32")
 set_signature_for_selector("NSMatrix", "view:stringForToolTip:point:userData:", "@24@4:8@12i16{_NSPoint=ff}20i28")
-set_signature_for_selector("NSOpenPanel", "beginSheetForDirectory:file:types:modalForWindow:modalDelegate:didEndSelector:contextInfo:", "v36@4:8@12@16@20@24@28:32i40")
-set_signature_for_selector("NSPSMatrix", "invTransform:", "@@:N^{_NSPoint=ff}")
-set_signature_for_selector("NSPSMatrix", "invTransformRect:", "@@:N^{_NSRect={_NSPoint=ff}{_NSSize=ff}}")
-set_signature_for_selector("NSPSMatrix", "transform:", "@@:N^{_NSPoint=ff}")
-set_signature_for_selector("NSPSMatrix", "transformRect:", "@@:N^{_NSRect={_NSPoint=ff}{_NSSize=ff}}")
-set_signature_for_selector("NSPageLayout", "_sheetDidEnd:returnCode:contextInfo:", "v16@4:8@12i16i20")
-set_signature_for_selector("NSPageLayout", "beginSheetWithPrintInfo:modalForWindow:delegate:didEndSelector:contextInfo:", "v24@4:8@12@16@20:24i28")
-set_signature_for_selector("NSPageLayout", "convertOldFactor:newFactor:", "v@:i^fo^f")
-set_signature_for_selector("NSPrintOperation", "runOperationModalForWindow:delegate:didRunSelector:contextInfo:", "v20@4:8@12@16:20i24")
+set_signature_for_selector("NSDocumentController", "_document:didSave:contextInfo:", "v16@4:8@12c16i20")
+set_signature_for_selector("NSDocumentController", "closeAllDocumentsWithDelegate:didCloseAllSelector:contextInfo:", "v16@4:8@12:16i20")
+set_signature_for_selector("NSDocumentController", "reviewUnsavedDocumentsWithAlertTitle:cancellable:delegate:didReviewAllSelector:contextInfo:", "v24@4:8@12c16@20:24i28")
+set_signature_for_selector("NSConcretePrintOperation", "_printPanel:didEndAndReturn:contextInfo:", "v16@4:8@12i16i20")
+set_signature_for_selector("NSConcretePrintOperation", "_progressPanelWasCancelled:contextInfo:", "v12@4:8@12i16")
+set_signature_for_selector("NSConcretePrintOperation", "_progressPanel:didEndAndReturn:contextInfo:", "v16@4:8@12i16i20")
 set_signature_for_selector("NSPrintPanel", "_sheetDidEnd:returnCode:contextInfo:", "v16@4:8@12i16i20")
 set_signature_for_selector("NSPrintPanel", "beginSheetWithPrintInfo:modalForWindow:delegate:didEndSelector:contextInfo:", "v24@4:8@12@16@20:24i28")
-set_signature_for_selector("NSProgressPanel", "setCancellationDelegate:wasCancelledSelector:contextInfo:", "v16@4:8@12:16i20")
-set_signature_for_selector("NSSavePanel", "_runModalForDirectory:file:relativeToWindow:modalDelegate:didEndSelector:contextInfo:", "v28@4:8@12@16@20@24:28i32")
-set_signature_for_selector("NSSavePanel", "beginSheetForDirectory:file:modalForWindow:modalDelegate:didEndSelector:contextInfo:", "v28@4:8@12@16@20@24:28i32")
-set_signature_for_selector("NSSavePanel", "didEndSheet:returnCode:contextInfo:", "v16@4:8@12i16i20")
-set_signature_for_selector("NSSurface", "surfaceID", "i@:")
-set_signature_for_selector("NSToolTipManager", "_setToolTip:forView:cell:rect:owner:ownerIsDisplayDelegate:userData:", "i48@4:8@12@16@20{_NSRect={_NSPoint=ff}{_NSSize=ff}}28@44c51i52")
-set_signature_for_selector("NSToolTipManager", "setToolTipForView:rect:displayDelegate:userData:", "i36@4:8@12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16@32i40")
-set_signature_for_selector("NSToolTipManager", "setToolTipForView:rect:owner:userData:", "i36@4:8@12{_NSRect={_NSPoint=ff}{_NSSize=ff}}16@32i40")
-set_signature_for_selector("NSToolbar", "_configSheetDidEnd:returnCode:contextInfo:", "v16@4:8@12i16i20")
-set_signature_for_selector("NSView", "addToolTipRect:owner:userData:", "i28@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12@28i32")
-set_signature_for_selector("NSView", "addTrackingRect:owner:userData:assumeInside:", "i@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}@ic")
-set_signature_for_selector("NSWindow", "_document:shouldClose:contextInfo:", "v16@4:8@12c16i20")
-set_signature_for_selector("NSWindow", "_setTrackingRect:inside:owner:userData:", "i36@4:8{_NSRect={_NSPoint=ff}{_NSSize=ff}}12c28@32i40")
-set_signature_for_selector("NSWorkspace", "getFileSystemInfoForPath:isRemovable:isWritable:isUnmountable:description:type:", "c28@4:8@12o^c16o^c20o^c24o^@28o^@32")
-set_signature_for_selector("NSWorkspace", "getInfoForFile:application:type:", "c16@4:8@12o^@16o^@20")
+set_signature_for_selector("NSTextContainer", "lineFragmentRectForProposedRect:sweepDirection:movementDirection:remainingRect:", "{_NSRect={_NSPoint=ff}{_NSSize=ff}}@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}iio^{_NSRect={_NSPoint=ff}{_NSSize=ff}}")
+set_signature_for_selector("NSApplication", "_commonBeginModalSessionForWindow:relativeToWindow:modalDelegate:didEndSelector:contextInfo:", "^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}24@4:8@12@16@20:24i28")
+set_signature_for_selector("NSApplication", "beginSheet:modalForWindow:modalDelegate:didEndSelector:contextInfo:", "v@:@@@:i")
+set_signature_for_selector("NSApplication", "contextID", "i4@4:8")
+set_signature_for_selector("NSApplication", "openFile:ok:", "i12@4:8@12o^i16")
+set_signature_for_selector("NSApplication", "openTempFile:ok:", "i12@4:8@12o^i16")
+set_signature_for_selector("NSApplication", "runModalSession:", "i8@4:8^{_NSModalSession=@@^{_NSModalSession}iciI^vi@@:^vi}12")
+set_signature_for_selector("NSView", "adjustPageHeightNew:top:bottom:limit:", "v@:o^ffff")
+set_signature_for_selector("NSView", "adjustPageWidthNew:left:right:limit:", "v@:o^ffff")
+set_signature_for_selector("NSView", "knowsPageRange:", "v@:N^{_NSRange=II}")

pyobjc/Lib/Foundation/Foundation.byref

 ,NSTimer,_cffireDate,^{__CFDate=}0@4:8,
 ,_NSSelectorSetBinding,initWithSetFunc:forImp:selector:,@0@4:8^?12^?16:20,
 ,NSWhoseSpecifier,_internalIndicesOfObjectsByEvaluatingWithContainer:count:,^i0@4:8@12^i16,
-,NSMutableAttributedString,readFromURL:options:documentAttributes:,c0@4:8@12@16^@20,
+,NSMutableAttributedString,readFromURL:options:documentAttributes:,c0@4:8@12@16^@20,c@:@@o^@
 ,NSData,bytes,r^v0@4:8,
 ,NSData,dataWithBytesNoCopy:length:,@0@4:8^v12I16,
 ,NSData,dataWithBytesNoCopy:length:freeWhenDone:,@0@4:8^v12I16c20,

pyobjc/Lib/Foundation/test/test_nsarray.py

         self.assertEquals( x, x[:] )
         self.assertEquals( y, y[:] )
         self.assertEquals( z, z[:] )
-        
+    
         self.assertEquals( x[25:75], y[25:75] )
         self.assertEquals( x[25:75], z[25:75] )
         self.assertEquals( y[25:75], z[25:75] )
         self.assert_(y[2] == 3)
         self.assert_(z[3] == 4)
 
+class TestNSArraySpecialMethods(unittest.TestCase):
+    """
+    Test calling 'difficult' methods from Python
+    """
+
+    def test_initWithObjects_count_(self):
+        a = NSArray.alloc().initWithObjects_count_(('a','b','c','d'), 3)
+        self.assertEquals(a, ['a','b','c'])
+
+        self.assertRaises(ValueError, NSArray.alloc().initWithObjects_count_, ('a','b'), 3)
+
+    def test_arrayWithObjects_count_(self):
+        a = NSArray.arrayWithObjects_count_(('a','b','c','d'), 3)
+        self.assertEquals(a, ['a','b','c'])
+        
+        self.assertRaises(ValueError, NSArray.arrayWithObjects_count_, ('a','b'), 3)
+
+    def test_arrayByAddingObjects_count_(self):
+        a = NSArray.arrayWithArray_(('a', 'b', 'c'))
+        self.assertEquals(a, ('a', 'b', 'c'))
+
+        b = a.arrayByAddingObjects_count_(('d', 'e', 'f'), 3)
+        self.assertEquals(a, ('a', 'b', 'c'))
+        self.assertEquals(b, ('a', 'b', 'c', 'd', 'e', 'f'))
+
+        self.assertRaises(ValueError, a.arrayByAddingObjects_count_, ('a','b'), 3)
+    def test_sortedArrayUsingFunction_context_(self):
+        a = NSArray.arrayWithArray_(('a', 'b', 'c'))
+        self.assertEquals(a, ('a', 'b', 'c'))
+
+        def cmpfunc(l, r, c):
+            return -cmp(l,r)
+
+        b = a.sortedArrayUsingFunction_context_(cmpfunc, 'hello')
+        self.assertEquals(a, ('a', 'b', 'c'))
+        self.assertEquals(b, ('c', 'b', 'a'))
+
+    def test_sortedArrayUsingFunction_context_hint_(self):
+        a = NSArray.arrayWithArray_(('a', 'b', 'c'))
+        self.assertEquals(a, ('a', 'b', 'c'))
+
+        def cmpfunc(l, r, c):
+            return -cmp(l,r)
+
+        b = a.sortedArrayUsingFunction_context_hint_(cmpfunc, 'hello', a.sortedArrayHint())
+        self.assertEquals(a, ('a', 'b', 'c'))
+        self.assertEquals(b, ('c', 'b', 'a'))
+
+
+
+
 if __name__ == '__main__':
     unittest.main( )

pyobjc/Lib/PyObjCTools/__init__.py

 Conversion      -- Tools for converting between Python and Objective-C objects.
 NibClassBuilder -- Tools for working with class definitions in 
     "Next Interface Builder" files ("nibs")
+Signals         -- Signal handling functions that are usefull during development
+pluginbuilder   -- bundlebuilder extension for build plugin bundles in Python
 """

pyobjc/Lib/ScreenSaver/__init__.py

 # Load the ScreenSaver framework, and gather all classes defined there
 import objc
 
+# Custom method signature (undocumented class, this is a guess)
+objc.set_signature_for_selector("ScreenSaverUserInfo", "loginUserName:andID:", "v@:o^@o^I")
+
 objc.loadBundle("ScreenSaver", globals(), bundle_path="/System/Library/Frameworks/ScreenSaver.framework")
 
 del objc

pyobjc/Lib/objc/_FoundationSignatures.py

 set_signature_for_selector("NSScanner", "scanUpToString:intoString:", "c@:@o^@")
 set_signature_for_selector("NSString", "completePathIntoString:caseSensitive:matchesIntoArray:filterTypes:", "Io^@co^@@")
 set_signature_for_selector("NSString", "getLineStart:end:contentsEnd:forRange:", "v@:o^Io^Io^I{_NSRange=II}")
+set_signature_for_selector("NSMutableAttributedString", "readFromURL:options:documentAttributes:", "c@:@@o^@")
 set_signature_for_selector("NSAttributedString", "attribute:atIndex:effectiveRange:", "@0@4:8@12I16o^{_NSRange=II}20")
 set_signature_for_selector("NSAttributedString", "attribute:atIndex:longestEffectiveRange:inRange:", "@0@4:8@12I16o^{_NSRange=II}20{_NSRange=II}24")
 set_signature_for_selector("NSAttributedString", "attributesAtIndex:effectiveRange:", "@0@4:8I12o^{_NSRange=II}16")

pyobjc/Lib/objc/_convenience.py

         return []
     if (r - x) > l:
         r = l - x
-    return self.subarrayWithRange_( (x, r) )
+    res =  self.subarrayWithRange_( (x, r) )
+    return res
 
 def __getitem__objectAtIndex(self, idx):
     if idx < 0:
     ('itervalues', lambda self: enumeratorGenerator( self.objectEnumerator())),
 )
 
-CONVENIENCE_METHODS['reverseObjectEnumerator'] = (
-    ('__iter__', lambda self: enumeratorGenerator(self.reverseObjectEnumerator())),
-    ('itervalues', lambda self: enumeratorGenerator(self.reverseObjectEnumerator()))
-)
+# Ronald: I don't think you want this!
+#CONVENIENCE_METHODS['reverseObjectEnumerator'] = (
+#    ('__iter__', lambda self: enumeratorGenerator(self.reverseObjectEnumerator())),
+#    ('itervalues', lambda self: enumeratorGenerator(self.reverseObjectEnumerator()))
+#)
 
 CONVENIENCE_METHODS['removeAllObjects'] = (
     ('clear', lambda self: self.removeAllObjects()),
     ('arrayWithObjects_', selector(arrayWithObjects_, signature='@@:@', isClassMethod=1)),
 )
 
-def arrayWithObjects_count_(self, args, count):
-    return self.arrayWithArray_(args[:count])
-
-CONVENIENCE_METHODS['arrayWithObjects:count:'] = (
-    ('arrayWithObjects_count_', selector(arrayWithObjects_count_, signature='@@:^@i', isClassMethod=1)),
-)
-
-def initWithObjects_count_(self, args, count):
-    return self.initWithArray_(args[:count])
-
-CONVENIENCE_METHODS['initWithObjects:count:'] = (
-    ('initWithObjects_count_', initWithObjects_count_),
-)
 
 def setWithObjects_(self, *args):
     if args[-1] is not None:

pyobjc/Lib/objc/test/test_methodaccess.py

+import unittest
+import objc
+import sys
+
+
+class MethodAccessTest (unittest.TestCase):
+
+    def testDir(self):
+        o = objc.runtime.NSObject.new()
+
+        d = dir(o.pyobjc_instanceMethods)
+        self.assert_(len(d) > 10)
+        self.assert_("init" in d)
+
+        d = dir(o.pyobjc_classMethods)
+        self.assert_(len(d) > 10)
+        self.assert_("alloc" in d)
+
+        d = dir(objc.runtime.NSObject.pyobjc_classMethods)
+        self.assert_(len(d) > 10)
+        self.assert_("alloc" in d)
+
+    def testDict(self):
+        o = objc.runtime.NSObject.new()
+
+        d = o.pyobjc_instanceMethods.__dict__.keys()
+        self.assert_(len(d) > 10)
+        self.assert_("init" in d)
+
+        d = objc.runtime.NSObject.pyobjc_classMethods.__dict__.keys()
+        self.assert_(len(d) > 10)
+        self.assert_("alloc" in d)
+
+        d = o.pyobjc_classMethods.__dict__.keys()
+        self.assert_(len(d) > 10)
+        self.assert_("alloc" in d)
+
+    def testAttributes(self):
+        o = objc.runtime.NSObject.new()
+
+        self.assert_(hasattr(o.pyobjc_instanceMethods, "init"))
+        self.assert_(hasattr(o.pyobjc_classMethods, "alloc"))
+
+        self.assert_(hasattr(objc.runtime.NSObject.pyobjc_classMethods, "alloc"))
+
+if __name__ == "__main__":
+    unittest.main()

pyobjc/Lib/objc/test/test_splitsig.py

 import Foundation
 import AppKit
 import PreferencePanes
-#import ScreenSaver
+import ScreenSaver
 import InterfaceBuilder
+import sys
+
 
 class SplitSignatureTest (unittest.TestCase):
 
-    # Test is disabled, causes core dump.
-    def xxtestSplitSignature(self):
+    def testSplitSignature(self):
         # This is a very expensive test, with 1 goal: Verify that all method
         # signatures, and therefore all signatures changed by PyObjC, are
         # valid.
 
                 elems = objc.splitSignature(sel.signature)
 
+    def testSimple(self):
+        self.assertEquals(objc.splitSignature("@:@"), ('@',':','@'))
+        self.assertEquals(objc.splitSignature("@:10{NSRect=ff}"), ('@',':','{NSRect=ff}'))
+        self.assertEquals(objc.splitSignature("@:o^@"), ('@',':','o^@'))
+
 if __name__ == "__main__":
     unittest.main()

pyobjc/Modules/AppKit/_AppKitMapping.m

 
 void init_AppKitMapping(void);
 
+#include "_AppKitMapping_NSApplication.m"
+#include "_AppKitMapping_NSBezierPath.m"
+#include "_AppKitMapping_NSFont.m"
+#include "_AppKitMapping_NSMatrix.m"
+#include "_AppKitMapping_NSLayoutManager.m"
 #include "_AppKitMapping_NSMovie.m"
-#include "_AppKitMapping_NSBezierPath.m"
+#include "_AppKitMapping_NSOpenGLContext.m"
+#include "_AppKitMapping_NSOpenGLPixelFormat.m"
+#include "_AppKitMapping_NSQuickDrawView.m"
+#include "_AppKitMapping_NSSimpleHorizontalTypesetter.m"
+#include "_AppKitMapping_NSView.m"
+#include "_AppKitMapping_NSWindow.m"
 
 void init_AppKitMapping(void)
 {
 	}
 
 	/* register other specials */
+	_pyobjc_install_NSApplication();
+	_pyobjc_install_NSBezierPath();
+	_pyobjc_install_NSFont();
+	_pyobjc_install_NSLayoutManager();
+	_pyobjc_install_NSMatrix();
 	_pyobjc_install_NSMovie();
-	_pyobjc_install_NSBezierPath();
+	_pyobjc_install_NSOpenGLContext();
+	_pyobjc_install_NSOpenGLPixelFormat();
+	_pyobjc_install_NSQuickDrawView();
+	_pyobjc_install_NSSimpleHorizontalTypesetter();
+	_pyobjc_install_NSView();
+	_pyobjc_install_NSWindow();
 
 }

pyobjc/Modules/AppKit/_AppKitMapping_NSApplication.m

+/*
+ * NSModalSession support
+ *
+ * NSModalSession are opaque values, the 'pointer' attribute is provided to be 
+ * able to check if two NSModalSessions are actually the same.
+ */
+
+typedef struct SessionWrapper {
+	PyObject_HEAD
+	NSModalSession* ptr;
+} SessionWrapper;
+
+static PyObject* 
+Session_pointer_get(SessionWrapper* self, void* closure __attribute__((__unused__)))
+{
+	return PyInt_FromLong((long)self->ptr);
+}
+
+static PyObject* 
+Session_new(PyTypeObject* type __attribute__((__unused__)),
+	PyObject* args __attribute__((__unused__)), 
+	PyObject* kwds __attribute__((__unused__)))
+{
+	PyErr_SetString(PyExc_TypeError, "Cannot create NSModalSession objects");
+	return NULL;
+}
+
+static void
+Session_dealloc(PyObject* self)
+{
+	PyObject_Del(self);
+}
+
+
+
+static PyGetSetDef Session_getset[] = {
+	{
+		"pointer",
+		(getter)Session_pointer_get,
+		NULL,
+		NULL,
+		NULL
+	},
+	{
+		NULL,
+		NULL,
+		NULL,
+		NULL,
+		NULL
+	}
+};
+
+PyTypeObject SessionWrapper_Type = {
+	PyObject_HEAD_INIT(&PyType_Type)
+	0,					/* ob_size */
+	"NSModalSession",			/* tp_name */
+	sizeof(SessionWrapper),			/* tp_basicsize */
+	0,					/* tp_itemsize */
+	/* methods */
+	Session_dealloc, 			/* tp_dealloc */
+	0,					/* tp_print */
+	0,					/* tp_getattr */
+	0,					/* tp_setattr */
+	0,					/* tp_compare */
+	0,					/* tp_repr */
+	0,					/* tp_as_number */
+	0,					/* tp_as_sequence */
+	0,		       			/* tp_as_mapping */
+	0,					/* tp_hash */
+	0,					/* tp_call */
+	0,					/* tp_str */
+	PyObject_GenericGetAttr,		/* tp_getattro */
+	0,					/* tp_setattro */
+	0,					/* tp_as_buffer */
+	Py_TPFLAGS_DEFAULT,			/* tp_flags */
+ 	0,					/* tp_doc */
+ 	0,					/* tp_traverse */
+ 	0,					/* tp_clear */
+	0,					/* tp_richcompare */
+	0,					/* tp_weaklistoffset */
+	0,					/* tp_iter */
+	0,					/* tp_iternext */
+	0,					/* tp_methods */
+	0,					/* tp_members */
+	Session_getset,				/* tp_getset */
+	0,					/* tp_base */
+	0,					/* tp_dict */
+	0,					/* tp_descr_get */
+	0,					/* tp_descr_set */
+	0,					/* tp_dictoffset */
+	0,					/* tp_init */
+	0,					/* tp_alloc */
+	Session_new,				/* tp_new */
+	0,		        		/* tp_free */
+	0,					/* tp_is_gc */
+        0,                                      /* tp_bases */
+        0,                                      /* tp_mro */
+        0,                                      /* tp_cache */
+        0,                                      /* tp_subclasses */
+        0                                       /* tp_weaklist */
+#if PY_VERSION_HEX >= 0x020300A2
+        , 0                                     /* tp_del */
+#endif
+};
+
+#define SessionWrapper_Check(obj) PyObject_TypeCheck((obj), &SessionWrapper_Type)
+
+
+/* This should do for now, although we should generate a new type for this */
+static PyObject* 
+NSModalSession_New(void* ptr __attribute__((__unused__)))
+{
+	SessionWrapper* res;
+
+	res  = PyObject_New(SessionWrapper, &SessionWrapper_Type);
+	if (res == NULL) {
+		return NULL;
+	}
+	res->ptr = ptr;
+	return (PyObject*)res;
+}
+
+static int 
+NSModalSession_Convert(PyObject* value, void* pSessionPtr)
+{
+	if (SessionWrapper_Check(value)) {
+		*(void**)pSessionPtr = ((SessionWrapper*)value)->ptr;
+		return 0;
+	}
+	PyErr_SetString(PyExc_ValueError, "Require NSModalSession object");
+	return -1;
+}
+
+static int 
+_pyobjc_install_NSApplication(void)
+{
+	int r = 0;
+
+	r = PyObjCPointerWrapper_Register(@encode(NSModalSession*), 
+		NSModalSession_New, NSModalSession_Convert);
+	if (r == -1) return -1;
+
+	return 0;
+}

pyobjc/Modules/AppKit/_AppKitMapping_NSBitmapImageRep.m

+/*
+ * NSBitmapImageRep mappings for difficult methods:
+ *
+ * TODO:
+ * -getBitMapDataPlanes:
+ * -getTIFFCompressionTypes:count:
+ * -initWithBitmapDataPlanes:pixelsWide:pixelsHigh:bitsPerSample:samplesPerPixel:hasAlpha:isPlanar:colorSpaceName:bytesPerRow:bitsPerPixel:
+ */
+#include <Python.h>
+#include <Foundation/Foundation.h>
+#include "pyobjc-api.h"
+
+static int 
+_pyobjc_install_NSBitmapImageRep(void)
+{
+	if (PyObjC_RegisterMethodMapping(objc_lookUpClass("NSBitMapImageRep"), 
+		@selector(getBitMapDataPlanes:),
+		PyObjCUnsupportedMethod_Caller,
+		PyObjCUnsupportedMethod_IMP) < 0 ) {
+
+		return -1;
+	}
+
+	if (PyObjC_RegisterMethodMapping(objc_lookUpClass("NSBitMapImageRep"), 
+		@selector(getTIFFCompressionTypes:count:),
+		PyObjCUnsupportedMethod_Caller,
+		PyObjCUnsupportedMethod_IMP) < 0 ) {
+
+		return -1;
+	}
+
+	if (PyObjC_RegisterMethodMapping(objc_lookUpClass("NSBitMapImageRep"), 
+		@selector(initWithBitmapDataPlanes:pixelsWide:pixelsHigh:bitsPerSample:samplesPerPixel:hasAlpha:isPlanar:colorSpaceName:bytesPerRow:bitsPerPixel:),
+		PyObjCUnsupportedMethod_Caller,
+		PyObjCUnsupportedMethod_IMP) < 0 ) {
+
+		return -1;
+	}
+
+	return 0;
+}

pyobjc/Modules/AppKit/_AppKitMapping_NSFont.m

+/*
+ * NSFont mappings for difficult methods:
+ *
+ * TODO:
+ * -positionsForCompositeSequence:numberOfGlyphs:pointArray:
+ */
+#include <Python.h>
+#include <Foundation/Foundation.h>
+#include "pyobjc-api.h"
+
+static int 
+_pyobjc_install_NSFont(void)
+{
+	if (PyObjC_RegisterMethodMapping(objc_lookUpClass("NSFont"), 
+		@selector(positionsForCompositeSequence:numberOfGlyphs:pointArray:),
+		PyObjCUnsupportedMethod_Caller,
+		PyObjCUnsupportedMethod_IMP) < 0 ) {
+
+		return -1;
+	}
+
+	return 0;
+}

pyobjc/Modules/AppKit/_AppKitMapping_NSGraphicsContext.m

+/*
+ * NSGraphicsContext mappings for difficult methods:
+ *
+ * TODO:
+ * -graphicsPort
+ *
+ * Unsupported:
+ * -focusStack
+ * -setFocusStack
+ */
+#include <Python.h>
+#include <Foundation/Foundation.h>
+#include "pyobjc-api.h"
+
+static int 
+_pyobjc_install_NSGraphicsContext(void)
+{
+	if (PyObjC_RegisterMethodMapping(objc_lookUpClass("NSGraphicsContext"), 
+		@selector(focusStack),
+		PyObjCUnsupportedMethod_Caller,
+		PyObjCUnsupportedMethod_IMP) < 0 ) {
+
+		return -1;
+	}
+
+	if (PyObjC_RegisterMethodMapping(objc_lookUpClass("NSGraphicsContext"), 
+		@selector(setFocusStack),
+		PyObjCUnsupportedMethod_Caller,
+		PyObjCUnsupportedMethod_IMP) < 0 ) {
+
+		return -1;
+	}
+
+	if (PyObjC_RegisterMethodMapping(objc_lookUpClass("NSGraphicsContext"), 
+		@selector(graphicsPort),
+		PyObjCUnsupportedMethod_Caller,
+		PyObjCUnsupportedMethod_IMP) < 0 ) {
+
+		return -1;
+	}
+
+	return 0;
+}

pyobjc/Modules/AppKit/_AppKitMapping_NSLayoutManager.m

+/*
+ * Special wrappers for NSLayoutManager methods with 'difficult' arguments.
+ *
+ * TODO 
+ *
+ * -getGlyphs:range:
+ * -getGlyphsInRange:glyphs:characterIndexes:glyphInscriptions:elasticBits:
+ * -getGlyphsInRange:glyphs:characterIndexes:glyphInscriptions:elasticBits:bidiLevels:
+ * -rectArrayForCharacterRange:withinSelectedCharacterRange:inTextContainer:rectCount:
+ * -rectArrayForGlyphRange:withinSelectedGlyphRange:inTextContainer:rectCount:
+ */
+#include <Python.h>
+#include <AppKit/AppKit.h>
+#include "pyobjc-api.h"
+
+
+
+static int 
+_pyobjc_install_NSLayoutManager(void)
+{
+	Class classNSLayoutManager = objc_lookUpClass("NSLayoutManager");
+
+	if (PyObjC_RegisterMethodMapping(
+		classNSLayoutManager,
+		@selector(getGlyphs:range:),
+		PyObjCUnsupportedMethod_Caller,
+		PyObjCUnsupportedMethod_IMP) < 0) {
+
+		return -1;
+	}
+
+	return 0;
+}

pyobjc/Modules/AppKit/_AppKitMapping_NSMatrix.m

+/*
+ * Special wrappers for NSMatrix methods with 'difficult' arguments.
+ *
+ * -sortUsingFunction:context:			[call]
+ */
+#include <Python.h>
+#include <AppKit/AppKit.h>
+#include "pyobjc-api.h"
+
+/*
+ * Helper function for sortUsingFunction:context:
+ */
+static int
+SortHelperFunc(id arg1, id arg2, void* opaque)
+{
+	PyObject* func = PyTuple_GetItem((PyObject*)opaque, 0);
+	PyObject* context = PyTuple_GetItem((PyObject*)opaque, 1);
+	PyObject* a1;
+	PyObject* a2;
+	PyObject* r;
+	int res;
+