'''
          THIS IS A GENERATED FILE DO NOT EDIT

This file tests method calling to and from Objective-C. See testbndl.m for
the Objective-C helper classes used in theses tests.

'''
import unittest
import objc
from objc import YES, NO, nil
from Foundation import NSPriorDayDesignations
import sys

NSArray = objc.runtime.NSArray

# First make sure that the pass-by-reference methods have the correct signature
setSignature = objc.setSignatureForSelector
setSignature("PyObjC_TestClass1", "BOOLInOutArg:", "@@:N^c")
setSignature("PyObjC_TestClass1", "BOOLOutArg:", "v@:o^c")
setSignature("PyObjC_TestClass1", "BOOLInArg:", "@@:n^c")
setSignature("PyObjC_TestClass2", "callBOOLInOutArg:of:", "@@:N^c@")
setSignature("PyObjC_TestClass2", "callBOOLOutArg:of:", "v@:o^c@")
setSignature("PyObjC_TestClass2", "callBOOLInArg:of:", "@@:n^c@")
setSignature("PyObjC_TestClass2", "invokeBOOLInOutArg:of:", "@@:N^c@")
setSignature("PyObjC_TestClass2", "invokeBOOLOutArg:of:", "v@:o^c@")
setSignature("PyObjC_TestClass2", "invokeBOOLInArg:of:", "@@:n^c@")
setSignature("PyObjC_TestClass1", "charInOutArg:", "@@:N^c")
setSignature("PyObjC_TestClass1", "charOutArg:", "v@:o^c")
setSignature("PyObjC_TestClass1", "charInArg:", "@@:n^c")
setSignature("PyObjC_TestClass2", "callcharInOutArg:of:", "@@:N^c@")
setSignature("PyObjC_TestClass2", "callcharOutArg:of:", "v@:o^c@")
setSignature("PyObjC_TestClass2", "callcharInArg:of:", "@@:n^c@")
setSignature("PyObjC_TestClass2", "invokecharInOutArg:of:", "@@:N^c@")
setSignature("PyObjC_TestClass2", "invokecharOutArg:of:", "v@:o^c@")
setSignature("PyObjC_TestClass2", "invokecharInArg:of:", "@@:n^c@")
setSignature("PyObjC_TestClass1", "signedshortInOutArg:", "@@:N^s")
setSignature("PyObjC_TestClass1", "signedshortOutArg:", "v@:o^s")
setSignature("PyObjC_TestClass1", "signedshortInArg:", "@@:n^s")
setSignature("PyObjC_TestClass2", "callsignedshortInOutArg:of:", "@@:N^s@")
setSignature("PyObjC_TestClass2", "callsignedshortOutArg:of:", "v@:o^s@")
setSignature("PyObjC_TestClass2", "callsignedshortInArg:of:", "@@:n^s@")
setSignature("PyObjC_TestClass2", "invokesignedshortInOutArg:of:", "@@:N^s@")
setSignature("PyObjC_TestClass2", "invokesignedshortOutArg:of:", "v@:o^s@")
setSignature("PyObjC_TestClass2", "invokesignedshortInArg:of:", "@@:n^s@")
setSignature("PyObjC_TestClass1", "signedintInOutArg:", "@@:N^i")
setSignature("PyObjC_TestClass1", "signedintOutArg:", "v@:o^i")
setSignature("PyObjC_TestClass1", "signedintInArg:", "@@:n^i")
setSignature("PyObjC_TestClass2", "callsignedintInOutArg:of:", "@@:N^i@")
setSignature("PyObjC_TestClass2", "callsignedintOutArg:of:", "v@:o^i@")
setSignature("PyObjC_TestClass2", "callsignedintInArg:of:", "@@:n^i@")
setSignature("PyObjC_TestClass2", "invokesignedintInOutArg:of:", "@@:N^i@")
setSignature("PyObjC_TestClass2", "invokesignedintOutArg:of:", "v@:o^i@")
setSignature("PyObjC_TestClass2", "invokesignedintInArg:of:", "@@:n^i@")
setSignature("PyObjC_TestClass1", "signedlongInOutArg:", "@@:N^l")
setSignature("PyObjC_TestClass1", "signedlongOutArg:", "v@:o^l")
setSignature("PyObjC_TestClass1", "signedlongInArg:", "@@:n^l")
setSignature("PyObjC_TestClass2", "callsignedlongInOutArg:of:", "@@:N^l@")
setSignature("PyObjC_TestClass2", "callsignedlongOutArg:of:", "v@:o^l@")
setSignature("PyObjC_TestClass2", "callsignedlongInArg:of:", "@@:n^l@")
setSignature("PyObjC_TestClass2", "invokesignedlongInOutArg:of:", "@@:N^l@")
setSignature("PyObjC_TestClass2", "invokesignedlongOutArg:of:", "v@:o^l@")
setSignature("PyObjC_TestClass2", "invokesignedlongInArg:of:", "@@:n^l@")
setSignature("PyObjC_TestClass1", "signedlonglongInOutArg:", "@@:N^q")
setSignature("PyObjC_TestClass1", "signedlonglongOutArg:", "v@:o^q")
setSignature("PyObjC_TestClass1", "signedlonglongInArg:", "@@:n^q")
setSignature("PyObjC_TestClass2", "callsignedlonglongInOutArg:of:", "@@:N^q@")
setSignature("PyObjC_TestClass2", "callsignedlonglongOutArg:of:", "v@:o^q@")
setSignature("PyObjC_TestClass2", "callsignedlonglongInArg:of:", "@@:n^q@")
setSignature("PyObjC_TestClass2", "invokesignedlonglongInOutArg:of:", "@@:N^q@")
setSignature("PyObjC_TestClass2", "invokesignedlonglongOutArg:of:", "v@:o^q@")
setSignature("PyObjC_TestClass2", "invokesignedlonglongInArg:of:", "@@:n^q@")
setSignature("PyObjC_TestClass1", "unsignedcharInOutArg:", "@@:N^C")
setSignature("PyObjC_TestClass1", "unsignedcharOutArg:", "v@:o^C")
setSignature("PyObjC_TestClass1", "unsignedcharInArg:", "@@:n^C")
setSignature("PyObjC_TestClass2", "callunsignedcharInOutArg:of:", "@@:N^C@")
setSignature("PyObjC_TestClass2", "callunsignedcharOutArg:of:", "v@:o^C@")
setSignature("PyObjC_TestClass2", "callunsignedcharInArg:of:", "@@:n^C@")
setSignature("PyObjC_TestClass2", "invokeunsignedcharInOutArg:of:", "@@:N^C@")
setSignature("PyObjC_TestClass2", "invokeunsignedcharOutArg:of:", "v@:o^C@")
setSignature("PyObjC_TestClass2", "invokeunsignedcharInArg:of:", "@@:n^C@")
setSignature("PyObjC_TestClass1", "unsignedshortInOutArg:", "@@:N^S")
setSignature("PyObjC_TestClass1", "unsignedshortOutArg:", "v@:o^S")
setSignature("PyObjC_TestClass1", "unsignedshortInArg:", "@@:n^S")
setSignature("PyObjC_TestClass2", "callunsignedshortInOutArg:of:", "@@:N^S@")
setSignature("PyObjC_TestClass2", "callunsignedshortOutArg:of:", "v@:o^S@")
setSignature("PyObjC_TestClass2", "callunsignedshortInArg:of:", "@@:n^S@")
setSignature("PyObjC_TestClass2", "invokeunsignedshortInOutArg:of:", "@@:N^S@")
setSignature("PyObjC_TestClass2", "invokeunsignedshortOutArg:of:", "v@:o^S@")
setSignature("PyObjC_TestClass2", "invokeunsignedshortInArg:of:", "@@:n^S@")
setSignature("PyObjC_TestClass1", "unsignedintInOutArg:", "@@:N^I")
setSignature("PyObjC_TestClass1", "unsignedintOutArg:", "v@:o^I")
setSignature("PyObjC_TestClass1", "unsignedintInArg:", "@@:n^I")
setSignature("PyObjC_TestClass2", "callunsignedintInOutArg:of:", "@@:N^I@")
setSignature("PyObjC_TestClass2", "callunsignedintOutArg:of:", "v@:o^I@")
setSignature("PyObjC_TestClass2", "callunsignedintInArg:of:", "@@:n^I@")
setSignature("PyObjC_TestClass2", "invokeunsignedintInOutArg:of:", "@@:N^I@")
setSignature("PyObjC_TestClass2", "invokeunsignedintOutArg:of:", "v@:o^I@")
setSignature("PyObjC_TestClass2", "invokeunsignedintInArg:of:", "@@:n^I@")
setSignature("PyObjC_TestClass1", "unsignedlongInOutArg:", "@@:N^L")
setSignature("PyObjC_TestClass1", "unsignedlongOutArg:", "v@:o^L")
setSignature("PyObjC_TestClass1", "unsignedlongInArg:", "@@:n^L")
setSignature("PyObjC_TestClass2", "callunsignedlongInOutArg:of:", "@@:N^L@")
setSignature("PyObjC_TestClass2", "callunsignedlongOutArg:of:", "v@:o^L@")
setSignature("PyObjC_TestClass2", "callunsignedlongInArg:of:", "@@:n^L@")
setSignature("PyObjC_TestClass2", "invokeunsignedlongInOutArg:of:", "@@:N^L@")
setSignature("PyObjC_TestClass2", "invokeunsignedlongOutArg:of:", "v@:o^L@")
setSignature("PyObjC_TestClass2", "invokeunsignedlongInArg:of:", "@@:n^L@")
setSignature("PyObjC_TestClass1", "unsignedlonglongInOutArg:", "@@:N^Q")
setSignature("PyObjC_TestClass1", "unsignedlonglongOutArg:", "v@:o^Q")
setSignature("PyObjC_TestClass1", "unsignedlonglongInArg:", "@@:n^Q")
setSignature("PyObjC_TestClass2", "callunsignedlonglongInOutArg:of:", "@@:N^Q@")
setSignature("PyObjC_TestClass2", "callunsignedlonglongOutArg:of:", "v@:o^Q@")
setSignature("PyObjC_TestClass2", "callunsignedlonglongInArg:of:", "@@:n^Q@")
setSignature("PyObjC_TestClass2", "invokeunsignedlonglongInOutArg:of:", "@@:N^Q@")
setSignature("PyObjC_TestClass2", "invokeunsignedlonglongOutArg:of:", "v@:o^Q@")
setSignature("PyObjC_TestClass2", "invokeunsignedlonglongInArg:of:", "@@:n^Q@")
setSignature("PyObjC_TestClass1", "floatInOutArg:", "@@:N^f")
setSignature("PyObjC_TestClass1", "floatOutArg:", "v@:o^f")
setSignature("PyObjC_TestClass1", "floatInArg:", "@@:n^f")
setSignature("PyObjC_TestClass2", "callfloatInOutArg:of:", "@@:N^f@")
setSignature("PyObjC_TestClass2", "callfloatOutArg:of:", "v@:o^f@")
setSignature("PyObjC_TestClass2", "callfloatInArg:of:", "@@:n^f@")
setSignature("PyObjC_TestClass2", "invokefloatInOutArg:of:", "@@:N^f@")
setSignature("PyObjC_TestClass2", "invokefloatOutArg:of:", "v@:o^f@")
setSignature("PyObjC_TestClass2", "invokefloatInArg:of:", "@@:n^f@")
setSignature("PyObjC_TestClass1", "doubleInOutArg:", "@@:N^d")
setSignature("PyObjC_TestClass1", "doubleOutArg:", "v@:o^d")
setSignature("PyObjC_TestClass1", "doubleInArg:", "@@:n^d")
setSignature("PyObjC_TestClass2", "calldoubleInOutArg:of:", "@@:N^d@")
setSignature("PyObjC_TestClass2", "calldoubleOutArg:of:", "v@:o^d@")
setSignature("PyObjC_TestClass2", "calldoubleInArg:of:", "@@:n^d@")
setSignature("PyObjC_TestClass2", "invokedoubleInOutArg:of:", "@@:N^d@")
setSignature("PyObjC_TestClass2", "invokedoubleOutArg:of:", "v@:o^d@")
setSignature("PyObjC_TestClass2", "invokedoubleInArg:of:", "@@:n^d@")
setSignature("PyObjC_TestClass1", "idInOutArg:", "@@:N^@")
setSignature("PyObjC_TestClass1", "idOutArg:", "v@:o^@")
setSignature("PyObjC_TestClass1", "idInArg:", "@@:n^@")
setSignature("PyObjC_TestClass2", "callidInOutArg:of:", "@@:N^@@")
setSignature("PyObjC_TestClass2", "callidOutArg:of:", "v@:o^@@")
setSignature("PyObjC_TestClass2", "callidInArg:of:", "@@:n^@@")
setSignature("PyObjC_TestClass2", "invokeidInOutArg:of:", "@@:N^@@")
setSignature("PyObjC_TestClass2", "invokeidOutArg:of:", "v@:o^@@")
setSignature("PyObjC_TestClass2", "invokeidInArg:of:", "@@:n^@@")
setSignature("PyObjC_TestClass1", "charPtrInOutArg:", "@@:N^*")
setSignature("PyObjC_TestClass1", "charPtrOutArg:", "v@:o^*")
setSignature("PyObjC_TestClass1", "charPtrInArg:", "@@:n^*")
setSignature("PyObjC_TestClass2", "callcharPtrInOutArg:of:", "@@:N^*@")
setSignature("PyObjC_TestClass2", "callcharPtrOutArg:of:", "v@:o^*@")
setSignature("PyObjC_TestClass2", "callcharPtrInArg:of:", "@@:n^*@")
setSignature("PyObjC_TestClass2", "invokecharPtrInOutArg:of:", "@@:N^*@")
setSignature("PyObjC_TestClass2", "invokecharPtrOutArg:of:", "v@:o^*@")
setSignature("PyObjC_TestClass2", "invokecharPtrInArg:of:", "@@:n^*@")
setSignature("PyObjC_TestClass1", "NSPointInOutArg:", "@@:N^{_NSPoint=ff}")
setSignature("PyObjC_TestClass1", "NSPointOutArg:", "v@:o^{_NSPoint=ff}")
setSignature("PyObjC_TestClass1", "NSPointInArg:", "@@:n^{_NSPoint=ff}")
setSignature("PyObjC_TestClass2", "callNSPointInOutArg:of:", "@@:N^{_NSPoint=ff}@")
setSignature("PyObjC_TestClass2", "callNSPointOutArg:of:", "v@:o^{_NSPoint=ff}@")
setSignature("PyObjC_TestClass2", "callNSPointInArg:of:", "@@:n^{_NSPoint=ff}@")
setSignature("PyObjC_TestClass2", "invokeNSPointInOutArg:of:", "@@:N^{_NSPoint=ff}@")
setSignature("PyObjC_TestClass2", "invokeNSPointOutArg:of:", "v@:o^{_NSPoint=ff}@")
setSignature("PyObjC_TestClass2", "invokeNSPointInArg:of:", "@@:n^{_NSPoint=ff}@")
setSignature("PyObjC_TestClass1", "NSRectInOutArg:", "@@:N^{_NSRect={_NSPoint=ff}{_NSSize=ff}}")
setSignature("PyObjC_TestClass1", "NSRectOutArg:", "v@:o^{_NSRect={_NSPoint=ff}{_NSSize=ff}}")
setSignature("PyObjC_TestClass1", "NSRectInArg:", "@@:n^{_NSRect={_NSPoint=ff}{_NSSize=ff}}")
setSignature("PyObjC_TestClass2", "callNSRectInOutArg:of:", "@@:N^{_NSRect={_NSPoint=ff}{_NSSize=ff}}@")
setSignature("PyObjC_TestClass2", "callNSRectOutArg:of:", "v@:o^{_NSRect={_NSPoint=ff}{_NSSize=ff}}@")
setSignature("PyObjC_TestClass2", "callNSRectInArg:of:", "@@:n^{_NSRect={_NSPoint=ff}{_NSSize=ff}}@")
setSignature("PyObjC_TestClass2", "invokeNSRectInOutArg:of:", "@@:N^{_NSRect={_NSPoint=ff}{_NSSize=ff}}@")
setSignature("PyObjC_TestClass2", "invokeNSRectOutArg:of:", "v@:o^{_NSRect={_NSPoint=ff}{_NSSize=ff}}@")
setSignature("PyObjC_TestClass2", "invokeNSRectInArg:of:", "@@:n^{_NSRect={_NSPoint=ff}{_NSSize=ff}}@")

from objc.test.testbndl2 import *

if hasattr(unittest.TestCase, 'assertAlmostEquals'):
    TestCase = unittest.TestCase
else:
    # We use assertAlmostEquals for comparing floats, python 2.2 doesn't
    # have this method in unittest.TestCase.

    class TestCase (unittest.TestCase):
        def assertAlmostEquals(self, val1, val2, message=None):
            self.assert_ (abs (val1 - val2) < 0.00001, message)

class PyToObjC (TestCase):
	# Test calling Objective-C from Python
	# Simple returns from class methods

	def testClsBOOLResult(self):
		PyObjC_TestClass1.clsReset()
		self.assertEquals(PyObjC_TestClass1.BOOLClsMethod(), YES)
		self.assertEquals(PyObjC_TestClass1.BOOLClsMethod(), NO)


	def testClscharResult(self):
		PyObjC_TestClass1.clsReset()
		self.assertEquals(PyObjC_TestClass1.charClsMethod(), -128)
		self.assertEquals(PyObjC_TestClass1.charClsMethod(), 0)
		self.assertEquals(PyObjC_TestClass1.charClsMethod(), 127)


	def testClssignedshortResult(self):
		PyObjC_TestClass1.clsReset()
		self.assertEquals(PyObjC_TestClass1.signedshortClsMethod(), -(1<<14))
		self.assertEquals(PyObjC_TestClass1.signedshortClsMethod(), -42)
		self.assertEquals(PyObjC_TestClass1.signedshortClsMethod(), 0)
		self.assertEquals(PyObjC_TestClass1.signedshortClsMethod(), 42)
		self.assertEquals(PyObjC_TestClass1.signedshortClsMethod(), 1 << 14)


	def testClssignedintResult(self):
		PyObjC_TestClass1.clsReset()
		self.assertEquals(PyObjC_TestClass1.signedintClsMethod(), -(1<<30))
		self.assertEquals(PyObjC_TestClass1.signedintClsMethod(), -42)
		self.assertEquals(PyObjC_TestClass1.signedintClsMethod(), 0)
		self.assertEquals(PyObjC_TestClass1.signedintClsMethod(), 42)
		self.assertEquals(PyObjC_TestClass1.signedintClsMethod(), 1 << 30)


	def testClssignedlongResult(self):
		PyObjC_TestClass1.clsReset()
		self.assertEquals(PyObjC_TestClass1.signedlongClsMethod(), -(1<<30))
		self.assertEquals(PyObjC_TestClass1.signedlongClsMethod(), -42)
		self.assertEquals(PyObjC_TestClass1.signedlongClsMethod(), 0)
		self.assertEquals(PyObjC_TestClass1.signedlongClsMethod(), 42)
		self.assertEquals(PyObjC_TestClass1.signedlongClsMethod(), 1 << 30)


	def testClssignedlonglongResult(self):
		PyObjC_TestClass1.clsReset()
		self.assertEquals(PyObjC_TestClass1.signedlonglongClsMethod(), -(1L << 60))
		self.assertEquals(PyObjC_TestClass1.signedlonglongClsMethod(), -42)
		self.assertEquals(PyObjC_TestClass1.signedlonglongClsMethod(), 0)
		self.assertEquals(PyObjC_TestClass1.signedlonglongClsMethod(), 42)
		self.assertEquals(PyObjC_TestClass1.signedlonglongClsMethod(), 1L << 60)


	def testClsunsignedcharResult(self):
		PyObjC_TestClass1.clsReset()
		self.assertEquals(PyObjC_TestClass1.unsignedcharClsMethod(), 0)
		self.assertEquals(PyObjC_TestClass1.unsignedcharClsMethod(), 128)
		self.assertEquals(PyObjC_TestClass1.unsignedcharClsMethod(), 255)


	def testClsunsignedshortResult(self):
		PyObjC_TestClass1.clsReset()
		self.assertEquals(PyObjC_TestClass1.unsignedshortClsMethod(), 0)
		self.assertEquals(PyObjC_TestClass1.unsignedshortClsMethod(), 42)
		self.assertEquals(PyObjC_TestClass1.unsignedshortClsMethod(), 1<<14)


	def testClsunsignedintResult(self):
		PyObjC_TestClass1.clsReset()
		self.assertEquals(PyObjC_TestClass1.unsignedintClsMethod(), 0)
		self.assertEquals(PyObjC_TestClass1.unsignedintClsMethod(), 42)
		self.assertEquals(PyObjC_TestClass1.unsignedintClsMethod(), 1 << 30)


	def testClsunsignedlongResult(self):
		PyObjC_TestClass1.clsReset()
		self.assertEquals(PyObjC_TestClass1.unsignedlongClsMethod(), 0)
		self.assertEquals(PyObjC_TestClass1.unsignedlongClsMethod(), 42)
		self.assertEquals(PyObjC_TestClass1.unsignedlongClsMethod(), 1L << 30)


	def testClsunsignedlonglongResult(self):
		PyObjC_TestClass1.clsReset()
		self.assertEquals(PyObjC_TestClass1.unsignedlonglongClsMethod(), 0)
		self.assertEquals(PyObjC_TestClass1.unsignedlonglongClsMethod(), 42)
		self.assertEquals(PyObjC_TestClass1.unsignedlonglongClsMethod(), 1L << 62)


	def testClsfloatResult(self):
		PyObjC_TestClass1.clsReset()
		self.assertAlmostEquals(PyObjC_TestClass1.floatClsMethod(), 0.128)
		self.assertAlmostEquals(PyObjC_TestClass1.floatClsMethod(), 1.0)
		self.assertAlmostEquals(PyObjC_TestClass1.floatClsMethod(), 42.0)
		self.assertAlmostEquals(PyObjC_TestClass1.floatClsMethod(), 1e10)


	def testClsdoubleResult(self):
		PyObjC_TestClass1.clsReset()
		self.assertAlmostEquals(PyObjC_TestClass1.doubleClsMethod(), 0.128)
		self.assertAlmostEquals(PyObjC_TestClass1.doubleClsMethod(), 1.0)
		self.assertAlmostEquals(PyObjC_TestClass1.doubleClsMethod(), 42.0)
		self.assertAlmostEquals(PyObjC_TestClass1.doubleClsMethod(), 1e10)


	def testClsidResult(self):
		PyObjC_TestClass1.clsReset()
		self.assertEquals(PyObjC_TestClass1.idClsMethod(), NSPriorDayDesignations)


	def testClscharPtrResult(self):
		PyObjC_TestClass1.clsReset()
		self.assertEquals(PyObjC_TestClass1.charPtrClsMethod(), "hello")
		self.assertEquals(PyObjC_TestClass1.charPtrClsMethod(), "world")
		self.assertEquals(PyObjC_TestClass1.charPtrClsMethod(), "foobar")


	def testClsNSPointResult(self):
		PyObjC_TestClass1.clsReset()
		self.assertEquals(PyObjC_TestClass1.NSPointClsMethod(), (1, 2))
		self.assertEquals(PyObjC_TestClass1.NSPointClsMethod(), (3, 4))


	def testClsNSRectResult(self):
		PyObjC_TestClass1.clsReset()
		self.assertEquals(PyObjC_TestClass1.NSRectClsMethod(), ((1, 2), (3, 4)))
		self.assertEquals(PyObjC_TestClass1.NSRectClsMethod(), ((7, 8), (9, 10)))


	# Simple returns from instance methods

	def testBOOLResult(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(o.BOOLMethod(), YES)
		self.assertEquals(o.BOOLMethod(), NO)


	def testcharResult(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(o.charMethod(), -128)
		self.assertEquals(o.charMethod(), 0)
		self.assertEquals(o.charMethod(), 127)


	def testsignedshortResult(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(o.signedshortMethod(), -(1<<14))
		self.assertEquals(o.signedshortMethod(), -42)
		self.assertEquals(o.signedshortMethod(), 0)
		self.assertEquals(o.signedshortMethod(), 42)
		self.assertEquals(o.signedshortMethod(), 1 << 14)


	def testsignedintResult(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(o.signedintMethod(), -(1<<30))
		self.assertEquals(o.signedintMethod(), -42)
		self.assertEquals(o.signedintMethod(), 0)
		self.assertEquals(o.signedintMethod(), 42)
		self.assertEquals(o.signedintMethod(), 1 << 30)


	def testsignedlongResult(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(o.signedlongMethod(), -(1<<30))
		self.assertEquals(o.signedlongMethod(), -42)
		self.assertEquals(o.signedlongMethod(), 0)
		self.assertEquals(o.signedlongMethod(), 42)
		self.assertEquals(o.signedlongMethod(), 1 << 30)


	def testsignedlonglongResult(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(o.signedlonglongMethod(), -(1L << 60))
		self.assertEquals(o.signedlonglongMethod(), -42)
		self.assertEquals(o.signedlonglongMethod(), 0)
		self.assertEquals(o.signedlonglongMethod(), 42)
		self.assertEquals(o.signedlonglongMethod(), 1L << 60)


	def testunsignedcharResult(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(o.unsignedcharMethod(), 0)
		self.assertEquals(o.unsignedcharMethod(), 128)
		self.assertEquals(o.unsignedcharMethod(), 255)


	def testunsignedshortResult(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(o.unsignedshortMethod(), 0)
		self.assertEquals(o.unsignedshortMethod(), 42)
		self.assertEquals(o.unsignedshortMethod(), 1<<14)


	def testunsignedintResult(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(o.unsignedintMethod(), 0)
		self.assertEquals(o.unsignedintMethod(), 42)
		self.assertEquals(o.unsignedintMethod(), 1 << 30)


	def testunsignedlongResult(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(o.unsignedlongMethod(), 0)
		self.assertEquals(o.unsignedlongMethod(), 42)
		self.assertEquals(o.unsignedlongMethod(), 1L << 30)


	def testunsignedlonglongResult(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(o.unsignedlonglongMethod(), 0)
		self.assertEquals(o.unsignedlonglongMethod(), 42)
		self.assertEquals(o.unsignedlonglongMethod(), 1L << 62)


	def testfloatResult(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertAlmostEquals(o.floatMethod(), 0.128)
		self.assertAlmostEquals(o.floatMethod(), 1.0)
		self.assertAlmostEquals(o.floatMethod(), 42.0)
		self.assertAlmostEquals(o.floatMethod(), 1e10)


	def testdoubleResult(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertAlmostEquals(o.doubleMethod(), 0.128)
		self.assertAlmostEquals(o.doubleMethod(), 1.0)
		self.assertAlmostEquals(o.doubleMethod(), 42.0)
		self.assertAlmostEquals(o.doubleMethod(), 1e10)


	def testidResult(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(o.idMethod(), NSPriorDayDesignations)


	def testcharPtrResult(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(o.charPtrMethod(), "hello")
		self.assertEquals(o.charPtrMethod(), "world")
		self.assertEquals(o.charPtrMethod(), "foobar")


	def testNSPointResult(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(o.NSPointMethod(), (1, 2))
		self.assertEquals(o.NSPointMethod(), (3, 4))


	def testNSRectResult(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(o.NSRectMethod(), ((1, 2), (3, 4)))
		self.assertEquals(o.NSRectMethod(), ((7, 8), (9, 10)))


	# One argument

	def testBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_(YES)
		self.assertEquals(r, YES)
		r = o.BOOLArg_(NO)
		self.assertEquals(r, NO)


	def testcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_(-128)
		self.assertEquals(r, -128)
		r = o.charArg_(0)
		self.assertEquals(r, 0)
		r = o.charArg_(127)
		self.assertEquals(r, 127)


	def testsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_(-(1<<14))
		self.assertEquals(r, -(1<<14))
		r = o.signedshortArg_(-42)
		self.assertEquals(r, -42)
		r = o.signedshortArg_(0)
		self.assertEquals(r, 0)
		r = o.signedshortArg_(42)
		self.assertEquals(r, 42)
		r = o.signedshortArg_(1 << 14)
		self.assertEquals(r, 1 << 14)


	def testsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_(-(1<<30))
		self.assertEquals(r, -(1<<30))
		r = o.signedintArg_(-42)
		self.assertEquals(r, -42)
		r = o.signedintArg_(0)
		self.assertEquals(r, 0)
		r = o.signedintArg_(42)
		self.assertEquals(r, 42)
		r = o.signedintArg_(1 << 30)
		self.assertEquals(r, 1 << 30)


	def testsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_(-(1<<30))
		self.assertEquals(r, -(1<<30))
		r = o.signedlongArg_(-42)
		self.assertEquals(r, -42)
		r = o.signedlongArg_(0)
		self.assertEquals(r, 0)
		r = o.signedlongArg_(42)
		self.assertEquals(r, 42)
		r = o.signedlongArg_(1 << 30)
		self.assertEquals(r, 1 << 30)


	def testsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_(-(1L << 60))
		self.assertEquals(r, -(1L << 60))
		r = o.signedlonglongArg_(-42)
		self.assertEquals(r, -42)
		r = o.signedlonglongArg_(0)
		self.assertEquals(r, 0)
		r = o.signedlonglongArg_(42)
		self.assertEquals(r, 42)
		r = o.signedlonglongArg_(1L << 60)
		self.assertEquals(r, 1L << 60)


	def testunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_(0)
		self.assertEquals(r, 0)
		r = o.unsignedcharArg_(128)
		self.assertEquals(r, 128)
		r = o.unsignedcharArg_(255)
		self.assertEquals(r, 255)


	def testunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_(0)
		self.assertEquals(r, 0)
		r = o.unsignedshortArg_(42)
		self.assertEquals(r, 42)
		r = o.unsignedshortArg_(1<<14)
		self.assertEquals(r, 1<<14)


	def testunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_(0)
		self.assertEquals(r, 0)
		r = o.unsignedintArg_(42)
		self.assertEquals(r, 42)
		r = o.unsignedintArg_(1 << 30)
		self.assertEquals(r, 1 << 30)


	def testunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_(0)
		self.assertEquals(r, 0)
		r = o.unsignedlongArg_(42)
		self.assertEquals(r, 42)
		r = o.unsignedlongArg_(1L << 30)
		self.assertEquals(r, 1L << 30)


	def testunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_(0)
		self.assertEquals(r, 0)
		r = o.unsignedlonglongArg_(42)
		self.assertEquals(r, 42)
		r = o.unsignedlonglongArg_(1L << 62)
		self.assertEquals(r, 1L << 62)


	def testfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_(0.128)
		self.assertAlmostEquals(r, 0.128)
		r = o.floatArg_(1.0)
		self.assertAlmostEquals(r, 1.0)
		r = o.floatArg_(42.0)
		self.assertAlmostEquals(r, 42.0)
		r = o.floatArg_(1e10)
		self.assertAlmostEquals(r, 1e10)


	def testdoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_(0.128)
		self.assertAlmostEquals(r, 0.128)
		r = o.doubleArg_(1.0)
		self.assertAlmostEquals(r, 1.0)
		r = o.doubleArg_(42.0)
		self.assertAlmostEquals(r, 42.0)
		r = o.doubleArg_(1e10)
		self.assertAlmostEquals(r, 1e10)


	def testidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_(NSPriorDayDesignations)
		self.assertEquals(r, NSPriorDayDesignations)


	def testcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_("hello")
		self.assertEquals(r, "hello")
		r = o.charPtrArg_("world")
		self.assertEquals(r, "world")
		r = o.charPtrArg_("foobar")
		self.assertEquals(r, "foobar")


	def testNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_((1, 2))
		self.assertEquals(r, (1, 2))
		r = o.NSPointArg_((3, 4))
		self.assertEquals(r, (3, 4))


	def testNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_(((1, 2), (3, 4)))
		self.assertEquals(r, ((1, 2), (3, 4)))
		r = o.NSRectArg_(((7, 8), (9, 10)))
		self.assertEquals(r, ((7, 8), (9, 10)))


	# Two arguments

	def testBOOLAndBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_andBOOLArg_(YES, YES)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], YES)
		r = o.BOOLArg_andBOOLArg_(YES, NO)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], NO)
		r = o.BOOLArg_andBOOLArg_(NO, YES)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], YES)
		r = o.BOOLArg_andBOOLArg_(NO, NO)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], NO)


	def testBOOLAndcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_andcharArg_(YES, -128)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -128)
		r = o.BOOLArg_andcharArg_(YES, 0)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andcharArg_(YES, 127)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 127)
		r = o.BOOLArg_andcharArg_(NO, -128)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -128)
		r = o.BOOLArg_andcharArg_(NO, 0)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andcharArg_(NO, 127)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 127)


	def testBOOLAndsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_andsignedshortArg_(YES, -(1<<14))
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -(1<<14))
		r = o.BOOLArg_andsignedshortArg_(YES, -42)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -42)
		r = o.BOOLArg_andsignedshortArg_(YES, 0)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andsignedshortArg_(YES, 42)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = o.BOOLArg_andsignedshortArg_(YES, 1 << 14)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1 << 14)
		r = o.BOOLArg_andsignedshortArg_(NO, -(1<<14))
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -(1<<14))
		r = o.BOOLArg_andsignedshortArg_(NO, -42)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -42)
		r = o.BOOLArg_andsignedshortArg_(NO, 0)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andsignedshortArg_(NO, 42)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = o.BOOLArg_andsignedshortArg_(NO, 1 << 14)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1 << 14)


	def testBOOLAndsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_andsignedintArg_(YES, -(1<<30))
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -(1<<30))
		r = o.BOOLArg_andsignedintArg_(YES, -42)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -42)
		r = o.BOOLArg_andsignedintArg_(YES, 0)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andsignedintArg_(YES, 42)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = o.BOOLArg_andsignedintArg_(YES, 1 << 30)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1 << 30)
		r = o.BOOLArg_andsignedintArg_(NO, -(1<<30))
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -(1<<30))
		r = o.BOOLArg_andsignedintArg_(NO, -42)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -42)
		r = o.BOOLArg_andsignedintArg_(NO, 0)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andsignedintArg_(NO, 42)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = o.BOOLArg_andsignedintArg_(NO, 1 << 30)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1 << 30)


	def testBOOLAndsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_andsignedlongArg_(YES, -(1<<30))
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -(1<<30))
		r = o.BOOLArg_andsignedlongArg_(YES, -42)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -42)
		r = o.BOOLArg_andsignedlongArg_(YES, 0)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andsignedlongArg_(YES, 42)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = o.BOOLArg_andsignedlongArg_(YES, 1 << 30)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1 << 30)
		r = o.BOOLArg_andsignedlongArg_(NO, -(1<<30))
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -(1<<30))
		r = o.BOOLArg_andsignedlongArg_(NO, -42)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -42)
		r = o.BOOLArg_andsignedlongArg_(NO, 0)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andsignedlongArg_(NO, 42)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = o.BOOLArg_andsignedlongArg_(NO, 1 << 30)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1 << 30)


	def testBOOLAndsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_andsignedlonglongArg_(YES, -(1L << 60))
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -(1L << 60))
		r = o.BOOLArg_andsignedlonglongArg_(YES, -42)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -42)
		r = o.BOOLArg_andsignedlonglongArg_(YES, 0)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andsignedlonglongArg_(YES, 42)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = o.BOOLArg_andsignedlonglongArg_(YES, 1L << 60)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1L << 60)
		r = o.BOOLArg_andsignedlonglongArg_(NO, -(1L << 60))
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -(1L << 60))
		r = o.BOOLArg_andsignedlonglongArg_(NO, -42)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -42)
		r = o.BOOLArg_andsignedlonglongArg_(NO, 0)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andsignedlonglongArg_(NO, 42)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = o.BOOLArg_andsignedlonglongArg_(NO, 1L << 60)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1L << 60)


	def testBOOLAndunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_andunsignedcharArg_(YES, 0)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andunsignedcharArg_(YES, 128)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 128)
		r = o.BOOLArg_andunsignedcharArg_(YES, 255)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 255)
		r = o.BOOLArg_andunsignedcharArg_(NO, 0)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andunsignedcharArg_(NO, 128)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 128)
		r = o.BOOLArg_andunsignedcharArg_(NO, 255)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 255)


	def testBOOLAndunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_andunsignedshortArg_(YES, 0)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andunsignedshortArg_(YES, 42)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = o.BOOLArg_andunsignedshortArg_(YES, 1<<14)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1<<14)
		r = o.BOOLArg_andunsignedshortArg_(NO, 0)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andunsignedshortArg_(NO, 42)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = o.BOOLArg_andunsignedshortArg_(NO, 1<<14)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1<<14)


	def testBOOLAndunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_andunsignedintArg_(YES, 0)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andunsignedintArg_(YES, 42)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = o.BOOLArg_andunsignedintArg_(YES, 1 << 30)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1 << 30)
		r = o.BOOLArg_andunsignedintArg_(NO, 0)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andunsignedintArg_(NO, 42)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = o.BOOLArg_andunsignedintArg_(NO, 1 << 30)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1 << 30)


	def testBOOLAndunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_andunsignedlongArg_(YES, 0)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andunsignedlongArg_(YES, 42)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = o.BOOLArg_andunsignedlongArg_(YES, 1L << 30)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1L << 30)
		r = o.BOOLArg_andunsignedlongArg_(NO, 0)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andunsignedlongArg_(NO, 42)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = o.BOOLArg_andunsignedlongArg_(NO, 1L << 30)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1L << 30)


	def testBOOLAndunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_andunsignedlonglongArg_(YES, 0)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andunsignedlonglongArg_(YES, 42)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = o.BOOLArg_andunsignedlonglongArg_(YES, 1L << 62)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1L << 62)
		r = o.BOOLArg_andunsignedlonglongArg_(NO, 0)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = o.BOOLArg_andunsignedlonglongArg_(NO, 42)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = o.BOOLArg_andunsignedlonglongArg_(NO, 1L << 62)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1L << 62)


	def testBOOLAndfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_andfloatArg_(YES, 0.128)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.BOOLArg_andfloatArg_(YES, 1.0)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.BOOLArg_andfloatArg_(YES, 42.0)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.BOOLArg_andfloatArg_(YES, 1e10)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.BOOLArg_andfloatArg_(NO, 0.128)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.BOOLArg_andfloatArg_(NO, 1.0)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.BOOLArg_andfloatArg_(NO, 42.0)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.BOOLArg_andfloatArg_(NO, 1e10)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 1e10)


	def testBOOLAnddoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_anddoubleArg_(YES, 0.128)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.BOOLArg_anddoubleArg_(YES, 1.0)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.BOOLArg_anddoubleArg_(YES, 42.0)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.BOOLArg_anddoubleArg_(YES, 1e10)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.BOOLArg_anddoubleArg_(NO, 0.128)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.BOOLArg_anddoubleArg_(NO, 1.0)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.BOOLArg_anddoubleArg_(NO, 42.0)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.BOOLArg_anddoubleArg_(NO, 1e10)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 1e10)


	def testBOOLAndidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_andidArg_(YES, NSPriorDayDesignations)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.BOOLArg_andidArg_(NO, NSPriorDayDesignations)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testBOOLAndcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_andcharPtrArg_(YES, "hello")
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], "hello")
		r = o.BOOLArg_andcharPtrArg_(YES, "world")
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], "world")
		r = o.BOOLArg_andcharPtrArg_(YES, "foobar")
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], "foobar")
		r = o.BOOLArg_andcharPtrArg_(NO, "hello")
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], "hello")
		r = o.BOOLArg_andcharPtrArg_(NO, "world")
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], "world")
		r = o.BOOLArg_andcharPtrArg_(NO, "foobar")
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], "foobar")


	def testBOOLAndNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_andNSPointArg_(YES, (1, 2))
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], (1, 2))
		r = o.BOOLArg_andNSPointArg_(YES, (3, 4))
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], (3, 4))
		r = o.BOOLArg_andNSPointArg_(NO, (1, 2))
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], (1, 2))
		r = o.BOOLArg_andNSPointArg_(NO, (3, 4))
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], (3, 4))


	def testBOOLAndNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLArg_andNSRectArg_(YES, ((1, 2), (3, 4)))
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.BOOLArg_andNSRectArg_(YES, ((7, 8), (9, 10)))
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.BOOLArg_andNSRectArg_(NO, ((1, 2), (3, 4)))
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.BOOLArg_andNSRectArg_(NO, ((7, 8), (9, 10)))
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcharAndBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_andBOOLArg_(-128, YES)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], YES)
		r = o.charArg_andBOOLArg_(-128, NO)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], NO)
		r = o.charArg_andBOOLArg_(0, YES)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = o.charArg_andBOOLArg_(0, NO)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = o.charArg_andBOOLArg_(127, YES)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], YES)
		r = o.charArg_andBOOLArg_(127, NO)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], NO)


	def testcharAndcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_andcharArg_(-128, -128)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -128)
		r = o.charArg_andcharArg_(-128, 0)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = o.charArg_andcharArg_(-128, 127)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 127)
		r = o.charArg_andcharArg_(0, -128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = o.charArg_andcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.charArg_andcharArg_(0, 127)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = o.charArg_andcharArg_(127, -128)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -128)
		r = o.charArg_andcharArg_(127, 0)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = o.charArg_andcharArg_(127, 127)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 127)


	def testcharAndsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_andsignedshortArg_(-128, -(1<<14))
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -(1<<14))
		r = o.charArg_andsignedshortArg_(-128, -42)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -42)
		r = o.charArg_andsignedshortArg_(-128, 0)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = o.charArg_andsignedshortArg_(-128, 42)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = o.charArg_andsignedshortArg_(-128, 1 << 14)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1 << 14)
		r = o.charArg_andsignedshortArg_(0, -(1<<14))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = o.charArg_andsignedshortArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.charArg_andsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.charArg_andsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.charArg_andsignedshortArg_(0, 1 << 14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = o.charArg_andsignedshortArg_(127, -(1<<14))
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -(1<<14))
		r = o.charArg_andsignedshortArg_(127, -42)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -42)
		r = o.charArg_andsignedshortArg_(127, 0)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = o.charArg_andsignedshortArg_(127, 42)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = o.charArg_andsignedshortArg_(127, 1 << 14)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1 << 14)


	def testcharAndsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_andsignedintArg_(-128, -(1<<30))
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -(1<<30))
		r = o.charArg_andsignedintArg_(-128, -42)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -42)
		r = o.charArg_andsignedintArg_(-128, 0)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = o.charArg_andsignedintArg_(-128, 42)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = o.charArg_andsignedintArg_(-128, 1 << 30)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1 << 30)
		r = o.charArg_andsignedintArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.charArg_andsignedintArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.charArg_andsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.charArg_andsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.charArg_andsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.charArg_andsignedintArg_(127, -(1<<30))
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -(1<<30))
		r = o.charArg_andsignedintArg_(127, -42)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -42)
		r = o.charArg_andsignedintArg_(127, 0)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = o.charArg_andsignedintArg_(127, 42)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = o.charArg_andsignedintArg_(127, 1 << 30)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1 << 30)


	def testcharAndsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_andsignedlongArg_(-128, -(1<<30))
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -(1<<30))
		r = o.charArg_andsignedlongArg_(-128, -42)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -42)
		r = o.charArg_andsignedlongArg_(-128, 0)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = o.charArg_andsignedlongArg_(-128, 42)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = o.charArg_andsignedlongArg_(-128, 1 << 30)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1 << 30)
		r = o.charArg_andsignedlongArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.charArg_andsignedlongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.charArg_andsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.charArg_andsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.charArg_andsignedlongArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.charArg_andsignedlongArg_(127, -(1<<30))
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -(1<<30))
		r = o.charArg_andsignedlongArg_(127, -42)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -42)
		r = o.charArg_andsignedlongArg_(127, 0)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = o.charArg_andsignedlongArg_(127, 42)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = o.charArg_andsignedlongArg_(127, 1 << 30)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1 << 30)


	def testcharAndsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_andsignedlonglongArg_(-128, -(1L << 60))
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -(1L << 60))
		r = o.charArg_andsignedlonglongArg_(-128, -42)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -42)
		r = o.charArg_andsignedlonglongArg_(-128, 0)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = o.charArg_andsignedlonglongArg_(-128, 42)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = o.charArg_andsignedlonglongArg_(-128, 1L << 60)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1L << 60)
		r = o.charArg_andsignedlonglongArg_(0, -(1L << 60))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = o.charArg_andsignedlonglongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.charArg_andsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.charArg_andsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.charArg_andsignedlonglongArg_(0, 1L << 60)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = o.charArg_andsignedlonglongArg_(127, -(1L << 60))
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -(1L << 60))
		r = o.charArg_andsignedlonglongArg_(127, -42)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -42)
		r = o.charArg_andsignedlonglongArg_(127, 0)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = o.charArg_andsignedlonglongArg_(127, 42)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = o.charArg_andsignedlonglongArg_(127, 1L << 60)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1L << 60)


	def testcharAndunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_andunsignedcharArg_(-128, 0)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = o.charArg_andunsignedcharArg_(-128, 128)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 128)
		r = o.charArg_andunsignedcharArg_(-128, 255)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 255)
		r = o.charArg_andunsignedcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.charArg_andunsignedcharArg_(0, 128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = o.charArg_andunsignedcharArg_(0, 255)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = o.charArg_andunsignedcharArg_(127, 0)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = o.charArg_andunsignedcharArg_(127, 128)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 128)
		r = o.charArg_andunsignedcharArg_(127, 255)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 255)


	def testcharAndunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_andunsignedshortArg_(-128, 0)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = o.charArg_andunsignedshortArg_(-128, 42)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = o.charArg_andunsignedshortArg_(-128, 1<<14)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1<<14)
		r = o.charArg_andunsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.charArg_andunsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.charArg_andunsignedshortArg_(0, 1<<14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = o.charArg_andunsignedshortArg_(127, 0)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = o.charArg_andunsignedshortArg_(127, 42)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = o.charArg_andunsignedshortArg_(127, 1<<14)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1<<14)


	def testcharAndunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_andunsignedintArg_(-128, 0)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = o.charArg_andunsignedintArg_(-128, 42)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = o.charArg_andunsignedintArg_(-128, 1 << 30)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1 << 30)
		r = o.charArg_andunsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.charArg_andunsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.charArg_andunsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.charArg_andunsignedintArg_(127, 0)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = o.charArg_andunsignedintArg_(127, 42)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = o.charArg_andunsignedintArg_(127, 1 << 30)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1 << 30)


	def testcharAndunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_andunsignedlongArg_(-128, 0)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = o.charArg_andunsignedlongArg_(-128, 42)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = o.charArg_andunsignedlongArg_(-128, 1L << 30)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1L << 30)
		r = o.charArg_andunsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.charArg_andunsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.charArg_andunsignedlongArg_(0, 1L << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = o.charArg_andunsignedlongArg_(127, 0)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = o.charArg_andunsignedlongArg_(127, 42)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = o.charArg_andunsignedlongArg_(127, 1L << 30)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1L << 30)


	def testcharAndunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_andunsignedlonglongArg_(-128, 0)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = o.charArg_andunsignedlonglongArg_(-128, 42)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = o.charArg_andunsignedlonglongArg_(-128, 1L << 62)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1L << 62)
		r = o.charArg_andunsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.charArg_andunsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.charArg_andunsignedlonglongArg_(0, 1L << 62)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = o.charArg_andunsignedlonglongArg_(127, 0)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = o.charArg_andunsignedlonglongArg_(127, 42)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = o.charArg_andunsignedlonglongArg_(127, 1L << 62)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1L << 62)


	def testcharAndfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_andfloatArg_(-128, 0.128)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.charArg_andfloatArg_(-128, 1.0)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.charArg_andfloatArg_(-128, 42.0)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.charArg_andfloatArg_(-128, 1e10)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.charArg_andfloatArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.charArg_andfloatArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.charArg_andfloatArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.charArg_andfloatArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.charArg_andfloatArg_(127, 0.128)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.charArg_andfloatArg_(127, 1.0)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.charArg_andfloatArg_(127, 42.0)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.charArg_andfloatArg_(127, 1e10)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 1e10)


	def testcharAnddoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_anddoubleArg_(-128, 0.128)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.charArg_anddoubleArg_(-128, 1.0)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.charArg_anddoubleArg_(-128, 42.0)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.charArg_anddoubleArg_(-128, 1e10)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.charArg_anddoubleArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.charArg_anddoubleArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.charArg_anddoubleArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.charArg_anddoubleArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.charArg_anddoubleArg_(127, 0.128)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.charArg_anddoubleArg_(127, 1.0)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.charArg_anddoubleArg_(127, 42.0)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.charArg_anddoubleArg_(127, 1e10)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 1e10)


	def testcharAndidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_andidArg_(-128, NSPriorDayDesignations)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.charArg_andidArg_(0, NSPriorDayDesignations)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.charArg_andidArg_(127, NSPriorDayDesignations)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcharAndcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_andcharPtrArg_(-128, "hello")
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], "hello")
		r = o.charArg_andcharPtrArg_(-128, "world")
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], "world")
		r = o.charArg_andcharPtrArg_(-128, "foobar")
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], "foobar")
		r = o.charArg_andcharPtrArg_(0, "hello")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = o.charArg_andcharPtrArg_(0, "world")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = o.charArg_andcharPtrArg_(0, "foobar")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = o.charArg_andcharPtrArg_(127, "hello")
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], "hello")
		r = o.charArg_andcharPtrArg_(127, "world")
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], "world")
		r = o.charArg_andcharPtrArg_(127, "foobar")
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], "foobar")


	def testcharAndNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_andNSPointArg_(-128, (1, 2))
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], (1, 2))
		r = o.charArg_andNSPointArg_(-128, (3, 4))
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], (3, 4))
		r = o.charArg_andNSPointArg_(0, (1, 2))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = o.charArg_andNSPointArg_(0, (3, 4))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = o.charArg_andNSPointArg_(127, (1, 2))
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], (1, 2))
		r = o.charArg_andNSPointArg_(127, (3, 4))
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], (3, 4))


	def testcharAndNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charArg_andNSRectArg_(-128, ((1, 2), (3, 4)))
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.charArg_andNSRectArg_(-128, ((7, 8), (9, 10)))
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.charArg_andNSRectArg_(0, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.charArg_andNSRectArg_(0, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.charArg_andNSRectArg_(127, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.charArg_andNSRectArg_(127, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testsignedshortAndBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_andBOOLArg_(-(1<<14), YES)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], YES)
		r = o.signedshortArg_andBOOLArg_(-(1<<14), NO)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], NO)
		r = o.signedshortArg_andBOOLArg_(-42, YES)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], YES)
		r = o.signedshortArg_andBOOLArg_(-42, NO)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NO)
		r = o.signedshortArg_andBOOLArg_(0, YES)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = o.signedshortArg_andBOOLArg_(0, NO)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = o.signedshortArg_andBOOLArg_(42, YES)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = o.signedshortArg_andBOOLArg_(42, NO)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = o.signedshortArg_andBOOLArg_(1 << 14, YES)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], YES)
		r = o.signedshortArg_andBOOLArg_(1 << 14, NO)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], NO)


	def testsignedshortAndcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_andcharArg_(-(1<<14), -128)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -128)
		r = o.signedshortArg_andcharArg_(-(1<<14), 0)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andcharArg_(-(1<<14), 127)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 127)
		r = o.signedshortArg_andcharArg_(-42, -128)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -128)
		r = o.signedshortArg_andcharArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andcharArg_(-42, 127)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 127)
		r = o.signedshortArg_andcharArg_(0, -128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = o.signedshortArg_andcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andcharArg_(0, 127)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = o.signedshortArg_andcharArg_(42, -128)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = o.signedshortArg_andcharArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andcharArg_(42, 127)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = o.signedshortArg_andcharArg_(1 << 14, -128)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -128)
		r = o.signedshortArg_andcharArg_(1 << 14, 0)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andcharArg_(1 << 14, 127)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 127)


	def testsignedshortAndsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_andsignedshortArg_(-(1<<14), -(1<<14))
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -(1<<14))
		r = o.signedshortArg_andsignedshortArg_(-(1<<14), -42)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedshortArg_(-(1<<14), 0)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedshortArg_(-(1<<14), 42)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedshortArg_(-(1<<14), 1 << 14)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1 << 14)
		r = o.signedshortArg_andsignedshortArg_(-42, -(1<<14))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<14))
		r = o.signedshortArg_andsignedshortArg_(-42, -42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedshortArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedshortArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedshortArg_(-42, 1 << 14)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 14)
		r = o.signedshortArg_andsignedshortArg_(0, -(1<<14))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = o.signedshortArg_andsignedshortArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedshortArg_(0, 1 << 14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = o.signedshortArg_andsignedshortArg_(42, -(1<<14))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = o.signedshortArg_andsignedshortArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedshortArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedshortArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedshortArg_(42, 1 << 14)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = o.signedshortArg_andsignedshortArg_(1 << 14, -(1<<14))
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -(1<<14))
		r = o.signedshortArg_andsignedshortArg_(1 << 14, -42)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedshortArg_(1 << 14, 0)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedshortArg_(1 << 14, 42)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedshortArg_(1 << 14, 1 << 14)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1 << 14)


	def testsignedshortAndsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_andsignedintArg_(-(1<<14), -(1<<30))
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -(1<<30))
		r = o.signedshortArg_andsignedintArg_(-(1<<14), -42)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedintArg_(-(1<<14), 0)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedintArg_(-(1<<14), 42)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedintArg_(-(1<<14), 1 << 30)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1 << 30)
		r = o.signedshortArg_andsignedintArg_(-42, -(1<<30))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedshortArg_andsignedintArg_(-42, -42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedintArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedintArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedintArg_(-42, 1 << 30)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedshortArg_andsignedintArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedshortArg_andsignedintArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedshortArg_andsignedintArg_(42, -(1<<30))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedshortArg_andsignedintArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedintArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedintArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedintArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedshortArg_andsignedintArg_(1 << 14, -(1<<30))
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedshortArg_andsignedintArg_(1 << 14, -42)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedintArg_(1 << 14, 0)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedintArg_(1 << 14, 42)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedintArg_(1 << 14, 1 << 30)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1 << 30)


	def testsignedshortAndsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_andsignedlongArg_(-(1<<14), -(1<<30))
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -(1<<30))
		r = o.signedshortArg_andsignedlongArg_(-(1<<14), -42)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedlongArg_(-(1<<14), 0)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedlongArg_(-(1<<14), 42)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedlongArg_(-(1<<14), 1 << 30)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1 << 30)
		r = o.signedshortArg_andsignedlongArg_(-42, -(1<<30))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedshortArg_andsignedlongArg_(-42, -42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedlongArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedlongArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedlongArg_(-42, 1 << 30)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedshortArg_andsignedlongArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedshortArg_andsignedlongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedlongArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedshortArg_andsignedlongArg_(42, -(1<<30))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedshortArg_andsignedlongArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedlongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedlongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedlongArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedshortArg_andsignedlongArg_(1 << 14, -(1<<30))
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedshortArg_andsignedlongArg_(1 << 14, -42)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedlongArg_(1 << 14, 0)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedlongArg_(1 << 14, 42)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedlongArg_(1 << 14, 1 << 30)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1 << 30)


	def testsignedshortAndsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_andsignedlonglongArg_(-(1<<14), -(1L << 60))
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedshortArg_andsignedlonglongArg_(-(1<<14), -42)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedlonglongArg_(-(1<<14), 0)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedlonglongArg_(-(1<<14), 42)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedlonglongArg_(-(1<<14), 1L << 60)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1L << 60)
		r = o.signedshortArg_andsignedlonglongArg_(-42, -(1L << 60))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedshortArg_andsignedlonglongArg_(-42, -42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedlonglongArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedlonglongArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedlonglongArg_(-42, 1L << 60)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 60)
		r = o.signedshortArg_andsignedlonglongArg_(0, -(1L << 60))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedshortArg_andsignedlonglongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedlonglongArg_(0, 1L << 60)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = o.signedshortArg_andsignedlonglongArg_(42, -(1L << 60))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedshortArg_andsignedlonglongArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedlonglongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedlonglongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedlonglongArg_(42, 1L << 60)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = o.signedshortArg_andsignedlonglongArg_(1 << 14, -(1L << 60))
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedshortArg_andsignedlonglongArg_(1 << 14, -42)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -42)
		r = o.signedshortArg_andsignedlonglongArg_(1 << 14, 0)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andsignedlonglongArg_(1 << 14, 42)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andsignedlonglongArg_(1 << 14, 1L << 60)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1L << 60)


	def testsignedshortAndunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_andunsignedcharArg_(-(1<<14), 0)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedcharArg_(-(1<<14), 128)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 128)
		r = o.signedshortArg_andunsignedcharArg_(-(1<<14), 255)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 255)
		r = o.signedshortArg_andunsignedcharArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedcharArg_(-42, 128)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 128)
		r = o.signedshortArg_andunsignedcharArg_(-42, 255)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 255)
		r = o.signedshortArg_andunsignedcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedcharArg_(0, 128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = o.signedshortArg_andunsignedcharArg_(0, 255)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = o.signedshortArg_andunsignedcharArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedcharArg_(42, 128)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = o.signedshortArg_andunsignedcharArg_(42, 255)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = o.signedshortArg_andunsignedcharArg_(1 << 14, 0)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedcharArg_(1 << 14, 128)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 128)
		r = o.signedshortArg_andunsignedcharArg_(1 << 14, 255)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 255)


	def testsignedshortAndunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_andunsignedshortArg_(-(1<<14), 0)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedshortArg_(-(1<<14), 42)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedshortArg_(-(1<<14), 1<<14)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1<<14)
		r = o.signedshortArg_andunsignedshortArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedshortArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedshortArg_(-42, 1<<14)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1<<14)
		r = o.signedshortArg_andunsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedshortArg_(0, 1<<14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = o.signedshortArg_andunsignedshortArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedshortArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedshortArg_(42, 1<<14)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = o.signedshortArg_andunsignedshortArg_(1 << 14, 0)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedshortArg_(1 << 14, 42)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedshortArg_(1 << 14, 1<<14)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1<<14)


	def testsignedshortAndunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_andunsignedintArg_(-(1<<14), 0)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedintArg_(-(1<<14), 42)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedintArg_(-(1<<14), 1 << 30)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1 << 30)
		r = o.signedshortArg_andunsignedintArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedintArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedintArg_(-42, 1 << 30)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedshortArg_andunsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedshortArg_andunsignedintArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedintArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedintArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedshortArg_andunsignedintArg_(1 << 14, 0)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedintArg_(1 << 14, 42)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedintArg_(1 << 14, 1 << 30)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1 << 30)


	def testsignedshortAndunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_andunsignedlongArg_(-(1<<14), 0)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedlongArg_(-(1<<14), 42)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedlongArg_(-(1<<14), 1L << 30)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1L << 30)
		r = o.signedshortArg_andunsignedlongArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedlongArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedlongArg_(-42, 1L << 30)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 30)
		r = o.signedshortArg_andunsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedlongArg_(0, 1L << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = o.signedshortArg_andunsignedlongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedlongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedlongArg_(42, 1L << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = o.signedshortArg_andunsignedlongArg_(1 << 14, 0)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedlongArg_(1 << 14, 42)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedlongArg_(1 << 14, 1L << 30)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1L << 30)


	def testsignedshortAndunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_andunsignedlonglongArg_(-(1<<14), 0)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedlonglongArg_(-(1<<14), 42)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedlonglongArg_(-(1<<14), 1L << 62)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1L << 62)
		r = o.signedshortArg_andunsignedlonglongArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedlonglongArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedlonglongArg_(-42, 1L << 62)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 62)
		r = o.signedshortArg_andunsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedlonglongArg_(0, 1L << 62)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = o.signedshortArg_andunsignedlonglongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedlonglongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedlonglongArg_(42, 1L << 62)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = o.signedshortArg_andunsignedlonglongArg_(1 << 14, 0)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = o.signedshortArg_andunsignedlonglongArg_(1 << 14, 42)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = o.signedshortArg_andunsignedlonglongArg_(1 << 14, 1L << 62)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1L << 62)


	def testsignedshortAndfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_andfloatArg_(-(1<<14), 0.128)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedshortArg_andfloatArg_(-(1<<14), 1.0)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedshortArg_andfloatArg_(-(1<<14), 42.0)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedshortArg_andfloatArg_(-(1<<14), 1e10)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedshortArg_andfloatArg_(-42, 0.128)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedshortArg_andfloatArg_(-42, 1.0)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedshortArg_andfloatArg_(-42, 42.0)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedshortArg_andfloatArg_(-42, 1e10)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedshortArg_andfloatArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedshortArg_andfloatArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedshortArg_andfloatArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedshortArg_andfloatArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedshortArg_andfloatArg_(42, 0.128)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedshortArg_andfloatArg_(42, 1.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedshortArg_andfloatArg_(42, 42.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedshortArg_andfloatArg_(42, 1e10)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedshortArg_andfloatArg_(1 << 14, 0.128)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedshortArg_andfloatArg_(1 << 14, 1.0)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedshortArg_andfloatArg_(1 << 14, 42.0)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedshortArg_andfloatArg_(1 << 14, 1e10)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 1e10)


	def testsignedshortAnddoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_anddoubleArg_(-(1<<14), 0.128)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedshortArg_anddoubleArg_(-(1<<14), 1.0)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedshortArg_anddoubleArg_(-(1<<14), 42.0)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedshortArg_anddoubleArg_(-(1<<14), 1e10)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedshortArg_anddoubleArg_(-42, 0.128)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedshortArg_anddoubleArg_(-42, 1.0)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedshortArg_anddoubleArg_(-42, 42.0)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedshortArg_anddoubleArg_(-42, 1e10)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedshortArg_anddoubleArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedshortArg_anddoubleArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedshortArg_anddoubleArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedshortArg_anddoubleArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedshortArg_anddoubleArg_(42, 0.128)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedshortArg_anddoubleArg_(42, 1.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedshortArg_anddoubleArg_(42, 42.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedshortArg_anddoubleArg_(42, 1e10)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedshortArg_anddoubleArg_(1 << 14, 0.128)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedshortArg_anddoubleArg_(1 << 14, 1.0)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedshortArg_anddoubleArg_(1 << 14, 42.0)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedshortArg_anddoubleArg_(1 << 14, 1e10)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 1e10)


	def testsignedshortAndidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_andidArg_(-(1<<14), NSPriorDayDesignations)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.signedshortArg_andidArg_(-42, NSPriorDayDesignations)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.signedshortArg_andidArg_(0, NSPriorDayDesignations)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.signedshortArg_andidArg_(42, NSPriorDayDesignations)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.signedshortArg_andidArg_(1 << 14, NSPriorDayDesignations)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testsignedshortAndcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_andcharPtrArg_(-(1<<14), "hello")
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], "hello")
		r = o.signedshortArg_andcharPtrArg_(-(1<<14), "world")
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], "world")
		r = o.signedshortArg_andcharPtrArg_(-(1<<14), "foobar")
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], "foobar")
		r = o.signedshortArg_andcharPtrArg_(-42, "hello")
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "hello")
		r = o.signedshortArg_andcharPtrArg_(-42, "world")
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "world")
		r = o.signedshortArg_andcharPtrArg_(-42, "foobar")
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "foobar")
		r = o.signedshortArg_andcharPtrArg_(0, "hello")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = o.signedshortArg_andcharPtrArg_(0, "world")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = o.signedshortArg_andcharPtrArg_(0, "foobar")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = o.signedshortArg_andcharPtrArg_(42, "hello")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = o.signedshortArg_andcharPtrArg_(42, "world")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = o.signedshortArg_andcharPtrArg_(42, "foobar")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = o.signedshortArg_andcharPtrArg_(1 << 14, "hello")
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], "hello")
		r = o.signedshortArg_andcharPtrArg_(1 << 14, "world")
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], "world")
		r = o.signedshortArg_andcharPtrArg_(1 << 14, "foobar")
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], "foobar")


	def testsignedshortAndNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_andNSPointArg_(-(1<<14), (1, 2))
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], (1, 2))
		r = o.signedshortArg_andNSPointArg_(-(1<<14), (3, 4))
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], (3, 4))
		r = o.signedshortArg_andNSPointArg_(-42, (1, 2))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (1, 2))
		r = o.signedshortArg_andNSPointArg_(-42, (3, 4))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (3, 4))
		r = o.signedshortArg_andNSPointArg_(0, (1, 2))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = o.signedshortArg_andNSPointArg_(0, (3, 4))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = o.signedshortArg_andNSPointArg_(42, (1, 2))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = o.signedshortArg_andNSPointArg_(42, (3, 4))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = o.signedshortArg_andNSPointArg_(1 << 14, (1, 2))
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], (1, 2))
		r = o.signedshortArg_andNSPointArg_(1 << 14, (3, 4))
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], (3, 4))


	def testsignedshortAndNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortArg_andNSRectArg_(-(1<<14), ((1, 2), (3, 4)))
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedshortArg_andNSRectArg_(-(1<<14), ((7, 8), (9, 10)))
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.signedshortArg_andNSRectArg_(-42, ((1, 2), (3, 4)))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedshortArg_andNSRectArg_(-42, ((7, 8), (9, 10)))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.signedshortArg_andNSRectArg_(0, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedshortArg_andNSRectArg_(0, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.signedshortArg_andNSRectArg_(42, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedshortArg_andNSRectArg_(42, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.signedshortArg_andNSRectArg_(1 << 14, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedshortArg_andNSRectArg_(1 << 14, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testsignedintAndBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_andBOOLArg_(-(1<<30), YES)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], YES)
		r = o.signedintArg_andBOOLArg_(-(1<<30), NO)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], NO)
		r = o.signedintArg_andBOOLArg_(-42, YES)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], YES)
		r = o.signedintArg_andBOOLArg_(-42, NO)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NO)
		r = o.signedintArg_andBOOLArg_(0, YES)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = o.signedintArg_andBOOLArg_(0, NO)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = o.signedintArg_andBOOLArg_(42, YES)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = o.signedintArg_andBOOLArg_(42, NO)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = o.signedintArg_andBOOLArg_(1 << 30, YES)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], YES)
		r = o.signedintArg_andBOOLArg_(1 << 30, NO)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NO)


	def testsignedintAndcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_andcharArg_(-(1<<30), -128)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -128)
		r = o.signedintArg_andcharArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andcharArg_(-(1<<30), 127)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 127)
		r = o.signedintArg_andcharArg_(-42, -128)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -128)
		r = o.signedintArg_andcharArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andcharArg_(-42, 127)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 127)
		r = o.signedintArg_andcharArg_(0, -128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = o.signedintArg_andcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andcharArg_(0, 127)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = o.signedintArg_andcharArg_(42, -128)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = o.signedintArg_andcharArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andcharArg_(42, 127)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = o.signedintArg_andcharArg_(1 << 30, -128)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -128)
		r = o.signedintArg_andcharArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andcharArg_(1 << 30, 127)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 127)


	def testsignedintAndsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_andsignedshortArg_(-(1<<30), -(1<<14))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<14))
		r = o.signedintArg_andsignedshortArg_(-(1<<30), -42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedshortArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedshortArg_(-(1<<30), 42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedshortArg_(-(1<<30), 1 << 14)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 14)
		r = o.signedintArg_andsignedshortArg_(-42, -(1<<14))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<14))
		r = o.signedintArg_andsignedshortArg_(-42, -42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedshortArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedshortArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedshortArg_(-42, 1 << 14)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 14)
		r = o.signedintArg_andsignedshortArg_(0, -(1<<14))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = o.signedintArg_andsignedshortArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedshortArg_(0, 1 << 14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = o.signedintArg_andsignedshortArg_(42, -(1<<14))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = o.signedintArg_andsignedshortArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedshortArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedshortArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedshortArg_(42, 1 << 14)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = o.signedintArg_andsignedshortArg_(1 << 30, -(1<<14))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<14))
		r = o.signedintArg_andsignedshortArg_(1 << 30, -42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedshortArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedshortArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedshortArg_(1 << 30, 1 << 14)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 14)


	def testsignedintAndsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_andsignedintArg_(-(1<<30), -(1<<30))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<30))
		r = o.signedintArg_andsignedintArg_(-(1<<30), -42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedintArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedintArg_(-(1<<30), 42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedintArg_(-(1<<30), 1 << 30)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = o.signedintArg_andsignedintArg_(-42, -(1<<30))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedintArg_andsignedintArg_(-42, -42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedintArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedintArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedintArg_(-42, 1 << 30)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedintArg_andsignedintArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedintArg_andsignedintArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedintArg_andsignedintArg_(42, -(1<<30))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedintArg_andsignedintArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedintArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedintArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedintArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedintArg_andsignedintArg_(1 << 30, -(1<<30))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedintArg_andsignedintArg_(1 << 30, -42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedintArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedintArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedintArg_(1 << 30, 1 << 30)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testsignedintAndsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_andsignedlongArg_(-(1<<30), -(1<<30))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<30))
		r = o.signedintArg_andsignedlongArg_(-(1<<30), -42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedlongArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedlongArg_(-(1<<30), 42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedlongArg_(-(1<<30), 1 << 30)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = o.signedintArg_andsignedlongArg_(-42, -(1<<30))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedintArg_andsignedlongArg_(-42, -42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedlongArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedlongArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedlongArg_(-42, 1 << 30)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedintArg_andsignedlongArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedintArg_andsignedlongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedlongArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedintArg_andsignedlongArg_(42, -(1<<30))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedintArg_andsignedlongArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedlongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedlongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedlongArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedintArg_andsignedlongArg_(1 << 30, -(1<<30))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedintArg_andsignedlongArg_(1 << 30, -42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedlongArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedlongArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedlongArg_(1 << 30, 1 << 30)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testsignedintAndsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_andsignedlonglongArg_(-(1<<30), -(1L << 60))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedintArg_andsignedlonglongArg_(-(1<<30), -42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedlonglongArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedlonglongArg_(-(1<<30), 42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedlonglongArg_(-(1<<30), 1L << 60)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 60)
		r = o.signedintArg_andsignedlonglongArg_(-42, -(1L << 60))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedintArg_andsignedlonglongArg_(-42, -42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedlonglongArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedlonglongArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedlonglongArg_(-42, 1L << 60)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 60)
		r = o.signedintArg_andsignedlonglongArg_(0, -(1L << 60))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedintArg_andsignedlonglongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedlonglongArg_(0, 1L << 60)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = o.signedintArg_andsignedlonglongArg_(42, -(1L << 60))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedintArg_andsignedlonglongArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedlonglongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedlonglongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedlonglongArg_(42, 1L << 60)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = o.signedintArg_andsignedlonglongArg_(1 << 30, -(1L << 60))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedintArg_andsignedlonglongArg_(1 << 30, -42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = o.signedintArg_andsignedlonglongArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andsignedlonglongArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andsignedlonglongArg_(1 << 30, 1L << 60)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 60)


	def testsignedintAndunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_andunsignedcharArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedcharArg_(-(1<<30), 128)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 128)
		r = o.signedintArg_andunsignedcharArg_(-(1<<30), 255)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 255)
		r = o.signedintArg_andunsignedcharArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedcharArg_(-42, 128)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 128)
		r = o.signedintArg_andunsignedcharArg_(-42, 255)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 255)
		r = o.signedintArg_andunsignedcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedcharArg_(0, 128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = o.signedintArg_andunsignedcharArg_(0, 255)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = o.signedintArg_andunsignedcharArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedcharArg_(42, 128)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = o.signedintArg_andunsignedcharArg_(42, 255)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = o.signedintArg_andunsignedcharArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedcharArg_(1 << 30, 128)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 128)
		r = o.signedintArg_andunsignedcharArg_(1 << 30, 255)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 255)


	def testsignedintAndunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_andunsignedshortArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedshortArg_(-(1<<30), 42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedshortArg_(-(1<<30), 1<<14)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1<<14)
		r = o.signedintArg_andunsignedshortArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedshortArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedshortArg_(-42, 1<<14)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1<<14)
		r = o.signedintArg_andunsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedshortArg_(0, 1<<14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = o.signedintArg_andunsignedshortArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedshortArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedshortArg_(42, 1<<14)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = o.signedintArg_andunsignedshortArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedshortArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedshortArg_(1 << 30, 1<<14)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1<<14)


	def testsignedintAndunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_andunsignedintArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedintArg_(-(1<<30), 42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedintArg_(-(1<<30), 1 << 30)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = o.signedintArg_andunsignedintArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedintArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedintArg_(-42, 1 << 30)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedintArg_andunsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedintArg_andunsignedintArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedintArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedintArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedintArg_andunsignedintArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedintArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedintArg_(1 << 30, 1 << 30)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testsignedintAndunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_andunsignedlongArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedlongArg_(-(1<<30), 42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedlongArg_(-(1<<30), 1L << 30)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 30)
		r = o.signedintArg_andunsignedlongArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedlongArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedlongArg_(-42, 1L << 30)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 30)
		r = o.signedintArg_andunsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedlongArg_(0, 1L << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = o.signedintArg_andunsignedlongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedlongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedlongArg_(42, 1L << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = o.signedintArg_andunsignedlongArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedlongArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedlongArg_(1 << 30, 1L << 30)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 30)


	def testsignedintAndunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_andunsignedlonglongArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedlonglongArg_(-(1<<30), 42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedlonglongArg_(-(1<<30), 1L << 62)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 62)
		r = o.signedintArg_andunsignedlonglongArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedlonglongArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedlonglongArg_(-42, 1L << 62)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 62)
		r = o.signedintArg_andunsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedlonglongArg_(0, 1L << 62)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = o.signedintArg_andunsignedlonglongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedlonglongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedlonglongArg_(42, 1L << 62)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = o.signedintArg_andunsignedlonglongArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedintArg_andunsignedlonglongArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.signedintArg_andunsignedlonglongArg_(1 << 30, 1L << 62)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 62)


	def testsignedintAndfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_andfloatArg_(-(1<<30), 0.128)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedintArg_andfloatArg_(-(1<<30), 1.0)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedintArg_andfloatArg_(-(1<<30), 42.0)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedintArg_andfloatArg_(-(1<<30), 1e10)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedintArg_andfloatArg_(-42, 0.128)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedintArg_andfloatArg_(-42, 1.0)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedintArg_andfloatArg_(-42, 42.0)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedintArg_andfloatArg_(-42, 1e10)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedintArg_andfloatArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedintArg_andfloatArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedintArg_andfloatArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedintArg_andfloatArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedintArg_andfloatArg_(42, 0.128)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedintArg_andfloatArg_(42, 1.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedintArg_andfloatArg_(42, 42.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedintArg_andfloatArg_(42, 1e10)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedintArg_andfloatArg_(1 << 30, 0.128)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedintArg_andfloatArg_(1 << 30, 1.0)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedintArg_andfloatArg_(1 << 30, 42.0)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedintArg_andfloatArg_(1 << 30, 1e10)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testsignedintAnddoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_anddoubleArg_(-(1<<30), 0.128)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedintArg_anddoubleArg_(-(1<<30), 1.0)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedintArg_anddoubleArg_(-(1<<30), 42.0)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedintArg_anddoubleArg_(-(1<<30), 1e10)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedintArg_anddoubleArg_(-42, 0.128)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedintArg_anddoubleArg_(-42, 1.0)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedintArg_anddoubleArg_(-42, 42.0)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedintArg_anddoubleArg_(-42, 1e10)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedintArg_anddoubleArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedintArg_anddoubleArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedintArg_anddoubleArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedintArg_anddoubleArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedintArg_anddoubleArg_(42, 0.128)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedintArg_anddoubleArg_(42, 1.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedintArg_anddoubleArg_(42, 42.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedintArg_anddoubleArg_(42, 1e10)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedintArg_anddoubleArg_(1 << 30, 0.128)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedintArg_anddoubleArg_(1 << 30, 1.0)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedintArg_anddoubleArg_(1 << 30, 42.0)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedintArg_anddoubleArg_(1 << 30, 1e10)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testsignedintAndidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_andidArg_(-(1<<30), NSPriorDayDesignations)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.signedintArg_andidArg_(-42, NSPriorDayDesignations)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.signedintArg_andidArg_(0, NSPriorDayDesignations)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.signedintArg_andidArg_(42, NSPriorDayDesignations)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.signedintArg_andidArg_(1 << 30, NSPriorDayDesignations)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testsignedintAndcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_andcharPtrArg_(-(1<<30), "hello")
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "hello")
		r = o.signedintArg_andcharPtrArg_(-(1<<30), "world")
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "world")
		r = o.signedintArg_andcharPtrArg_(-(1<<30), "foobar")
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "foobar")
		r = o.signedintArg_andcharPtrArg_(-42, "hello")
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "hello")
		r = o.signedintArg_andcharPtrArg_(-42, "world")
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "world")
		r = o.signedintArg_andcharPtrArg_(-42, "foobar")
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "foobar")
		r = o.signedintArg_andcharPtrArg_(0, "hello")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = o.signedintArg_andcharPtrArg_(0, "world")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = o.signedintArg_andcharPtrArg_(0, "foobar")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = o.signedintArg_andcharPtrArg_(42, "hello")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = o.signedintArg_andcharPtrArg_(42, "world")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = o.signedintArg_andcharPtrArg_(42, "foobar")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = o.signedintArg_andcharPtrArg_(1 << 30, "hello")
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "hello")
		r = o.signedintArg_andcharPtrArg_(1 << 30, "world")
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "world")
		r = o.signedintArg_andcharPtrArg_(1 << 30, "foobar")
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "foobar")


	def testsignedintAndNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_andNSPointArg_(-(1<<30), (1, 2))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], (1, 2))
		r = o.signedintArg_andNSPointArg_(-(1<<30), (3, 4))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], (3, 4))
		r = o.signedintArg_andNSPointArg_(-42, (1, 2))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (1, 2))
		r = o.signedintArg_andNSPointArg_(-42, (3, 4))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (3, 4))
		r = o.signedintArg_andNSPointArg_(0, (1, 2))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = o.signedintArg_andNSPointArg_(0, (3, 4))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = o.signedintArg_andNSPointArg_(42, (1, 2))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = o.signedintArg_andNSPointArg_(42, (3, 4))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = o.signedintArg_andNSPointArg_(1 << 30, (1, 2))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (1, 2))
		r = o.signedintArg_andNSPointArg_(1 << 30, (3, 4))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (3, 4))


	def testsignedintAndNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintArg_andNSRectArg_(-(1<<30), ((1, 2), (3, 4)))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedintArg_andNSRectArg_(-(1<<30), ((7, 8), (9, 10)))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.signedintArg_andNSRectArg_(-42, ((1, 2), (3, 4)))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedintArg_andNSRectArg_(-42, ((7, 8), (9, 10)))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.signedintArg_andNSRectArg_(0, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedintArg_andNSRectArg_(0, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.signedintArg_andNSRectArg_(42, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedintArg_andNSRectArg_(42, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.signedintArg_andNSRectArg_(1 << 30, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedintArg_andNSRectArg_(1 << 30, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testsignedlongAndBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_andBOOLArg_(-(1<<30), YES)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], YES)
		r = o.signedlongArg_andBOOLArg_(-(1<<30), NO)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], NO)
		r = o.signedlongArg_andBOOLArg_(-42, YES)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], YES)
		r = o.signedlongArg_andBOOLArg_(-42, NO)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NO)
		r = o.signedlongArg_andBOOLArg_(0, YES)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = o.signedlongArg_andBOOLArg_(0, NO)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = o.signedlongArg_andBOOLArg_(42, YES)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = o.signedlongArg_andBOOLArg_(42, NO)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = o.signedlongArg_andBOOLArg_(1 << 30, YES)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], YES)
		r = o.signedlongArg_andBOOLArg_(1 << 30, NO)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NO)


	def testsignedlongAndcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_andcharArg_(-(1<<30), -128)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -128)
		r = o.signedlongArg_andcharArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andcharArg_(-(1<<30), 127)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 127)
		r = o.signedlongArg_andcharArg_(-42, -128)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -128)
		r = o.signedlongArg_andcharArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andcharArg_(-42, 127)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 127)
		r = o.signedlongArg_andcharArg_(0, -128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = o.signedlongArg_andcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andcharArg_(0, 127)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = o.signedlongArg_andcharArg_(42, -128)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = o.signedlongArg_andcharArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andcharArg_(42, 127)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = o.signedlongArg_andcharArg_(1 << 30, -128)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -128)
		r = o.signedlongArg_andcharArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andcharArg_(1 << 30, 127)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 127)


	def testsignedlongAndsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_andsignedshortArg_(-(1<<30), -(1<<14))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<14))
		r = o.signedlongArg_andsignedshortArg_(-(1<<30), -42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedshortArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedshortArg_(-(1<<30), 42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedshortArg_(-(1<<30), 1 << 14)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 14)
		r = o.signedlongArg_andsignedshortArg_(-42, -(1<<14))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<14))
		r = o.signedlongArg_andsignedshortArg_(-42, -42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedshortArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedshortArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedshortArg_(-42, 1 << 14)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 14)
		r = o.signedlongArg_andsignedshortArg_(0, -(1<<14))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = o.signedlongArg_andsignedshortArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedshortArg_(0, 1 << 14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = o.signedlongArg_andsignedshortArg_(42, -(1<<14))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = o.signedlongArg_andsignedshortArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedshortArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedshortArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedshortArg_(42, 1 << 14)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = o.signedlongArg_andsignedshortArg_(1 << 30, -(1<<14))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<14))
		r = o.signedlongArg_andsignedshortArg_(1 << 30, -42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedshortArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedshortArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedshortArg_(1 << 30, 1 << 14)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 14)


	def testsignedlongAndsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_andsignedintArg_(-(1<<30), -(1<<30))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlongArg_andsignedintArg_(-(1<<30), -42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedintArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedintArg_(-(1<<30), 42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedintArg_(-(1<<30), 1 << 30)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlongArg_andsignedintArg_(-42, -(1<<30))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlongArg_andsignedintArg_(-42, -42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedintArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedintArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedintArg_(-42, 1 << 30)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlongArg_andsignedintArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlongArg_andsignedintArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlongArg_andsignedintArg_(42, -(1<<30))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlongArg_andsignedintArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedintArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedintArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedintArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlongArg_andsignedintArg_(1 << 30, -(1<<30))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlongArg_andsignedintArg_(1 << 30, -42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedintArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedintArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedintArg_(1 << 30, 1 << 30)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testsignedlongAndsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_andsignedlongArg_(-(1<<30), -(1<<30))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlongArg_andsignedlongArg_(-(1<<30), -42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedlongArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedlongArg_(-(1<<30), 42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedlongArg_(-(1<<30), 1 << 30)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlongArg_andsignedlongArg_(-42, -(1<<30))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlongArg_andsignedlongArg_(-42, -42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedlongArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedlongArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedlongArg_(-42, 1 << 30)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlongArg_andsignedlongArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlongArg_andsignedlongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedlongArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlongArg_andsignedlongArg_(42, -(1<<30))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlongArg_andsignedlongArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedlongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedlongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedlongArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlongArg_andsignedlongArg_(1 << 30, -(1<<30))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlongArg_andsignedlongArg_(1 << 30, -42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedlongArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedlongArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedlongArg_(1 << 30, 1 << 30)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testsignedlongAndsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_andsignedlonglongArg_(-(1<<30), -(1L << 60))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedlongArg_andsignedlonglongArg_(-(1<<30), -42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedlonglongArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedlonglongArg_(-(1<<30), 42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedlonglongArg_(-(1<<30), 1L << 60)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 60)
		r = o.signedlongArg_andsignedlonglongArg_(-42, -(1L << 60))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedlongArg_andsignedlonglongArg_(-42, -42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedlonglongArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedlonglongArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedlonglongArg_(-42, 1L << 60)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 60)
		r = o.signedlongArg_andsignedlonglongArg_(0, -(1L << 60))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedlongArg_andsignedlonglongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedlonglongArg_(0, 1L << 60)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = o.signedlongArg_andsignedlonglongArg_(42, -(1L << 60))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedlongArg_andsignedlonglongArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedlonglongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedlonglongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedlonglongArg_(42, 1L << 60)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = o.signedlongArg_andsignedlonglongArg_(1 << 30, -(1L << 60))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedlongArg_andsignedlonglongArg_(1 << 30, -42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = o.signedlongArg_andsignedlonglongArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andsignedlonglongArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andsignedlonglongArg_(1 << 30, 1L << 60)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 60)


	def testsignedlongAndunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_andunsignedcharArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedcharArg_(-(1<<30), 128)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 128)
		r = o.signedlongArg_andunsignedcharArg_(-(1<<30), 255)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 255)
		r = o.signedlongArg_andunsignedcharArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedcharArg_(-42, 128)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 128)
		r = o.signedlongArg_andunsignedcharArg_(-42, 255)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 255)
		r = o.signedlongArg_andunsignedcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedcharArg_(0, 128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = o.signedlongArg_andunsignedcharArg_(0, 255)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = o.signedlongArg_andunsignedcharArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedcharArg_(42, 128)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = o.signedlongArg_andunsignedcharArg_(42, 255)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = o.signedlongArg_andunsignedcharArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedcharArg_(1 << 30, 128)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 128)
		r = o.signedlongArg_andunsignedcharArg_(1 << 30, 255)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 255)


	def testsignedlongAndunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_andunsignedshortArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedshortArg_(-(1<<30), 42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedshortArg_(-(1<<30), 1<<14)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1<<14)
		r = o.signedlongArg_andunsignedshortArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedshortArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedshortArg_(-42, 1<<14)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1<<14)
		r = o.signedlongArg_andunsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedshortArg_(0, 1<<14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = o.signedlongArg_andunsignedshortArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedshortArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedshortArg_(42, 1<<14)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = o.signedlongArg_andunsignedshortArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedshortArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedshortArg_(1 << 30, 1<<14)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1<<14)


	def testsignedlongAndunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_andunsignedintArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedintArg_(-(1<<30), 42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedintArg_(-(1<<30), 1 << 30)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlongArg_andunsignedintArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedintArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedintArg_(-42, 1 << 30)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlongArg_andunsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlongArg_andunsignedintArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedintArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedintArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlongArg_andunsignedintArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedintArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedintArg_(1 << 30, 1 << 30)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testsignedlongAndunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_andunsignedlongArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedlongArg_(-(1<<30), 42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedlongArg_(-(1<<30), 1L << 30)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 30)
		r = o.signedlongArg_andunsignedlongArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedlongArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedlongArg_(-42, 1L << 30)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 30)
		r = o.signedlongArg_andunsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedlongArg_(0, 1L << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = o.signedlongArg_andunsignedlongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedlongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedlongArg_(42, 1L << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = o.signedlongArg_andunsignedlongArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedlongArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedlongArg_(1 << 30, 1L << 30)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 30)


	def testsignedlongAndunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_andunsignedlonglongArg_(-(1<<30), 0)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedlonglongArg_(-(1<<30), 42)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedlonglongArg_(-(1<<30), 1L << 62)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 62)
		r = o.signedlongArg_andunsignedlonglongArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedlonglongArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedlonglongArg_(-42, 1L << 62)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 62)
		r = o.signedlongArg_andunsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedlonglongArg_(0, 1L << 62)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = o.signedlongArg_andunsignedlonglongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedlonglongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedlonglongArg_(42, 1L << 62)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = o.signedlongArg_andunsignedlonglongArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.signedlongArg_andunsignedlonglongArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.signedlongArg_andunsignedlonglongArg_(1 << 30, 1L << 62)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 62)


	def testsignedlongAndfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_andfloatArg_(-(1<<30), 0.128)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlongArg_andfloatArg_(-(1<<30), 1.0)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlongArg_andfloatArg_(-(1<<30), 42.0)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlongArg_andfloatArg_(-(1<<30), 1e10)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedlongArg_andfloatArg_(-42, 0.128)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlongArg_andfloatArg_(-42, 1.0)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlongArg_andfloatArg_(-42, 42.0)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlongArg_andfloatArg_(-42, 1e10)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedlongArg_andfloatArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlongArg_andfloatArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlongArg_andfloatArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlongArg_andfloatArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedlongArg_andfloatArg_(42, 0.128)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlongArg_andfloatArg_(42, 1.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlongArg_andfloatArg_(42, 42.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlongArg_andfloatArg_(42, 1e10)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedlongArg_andfloatArg_(1 << 30, 0.128)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlongArg_andfloatArg_(1 << 30, 1.0)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlongArg_andfloatArg_(1 << 30, 42.0)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlongArg_andfloatArg_(1 << 30, 1e10)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testsignedlongAnddoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_anddoubleArg_(-(1<<30), 0.128)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlongArg_anddoubleArg_(-(1<<30), 1.0)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlongArg_anddoubleArg_(-(1<<30), 42.0)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlongArg_anddoubleArg_(-(1<<30), 1e10)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedlongArg_anddoubleArg_(-42, 0.128)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlongArg_anddoubleArg_(-42, 1.0)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlongArg_anddoubleArg_(-42, 42.0)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlongArg_anddoubleArg_(-42, 1e10)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedlongArg_anddoubleArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlongArg_anddoubleArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlongArg_anddoubleArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlongArg_anddoubleArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedlongArg_anddoubleArg_(42, 0.128)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlongArg_anddoubleArg_(42, 1.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlongArg_anddoubleArg_(42, 42.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlongArg_anddoubleArg_(42, 1e10)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedlongArg_anddoubleArg_(1 << 30, 0.128)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlongArg_anddoubleArg_(1 << 30, 1.0)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlongArg_anddoubleArg_(1 << 30, 42.0)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlongArg_anddoubleArg_(1 << 30, 1e10)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testsignedlongAndidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_andidArg_(-(1<<30), NSPriorDayDesignations)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.signedlongArg_andidArg_(-42, NSPriorDayDesignations)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.signedlongArg_andidArg_(0, NSPriorDayDesignations)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.signedlongArg_andidArg_(42, NSPriorDayDesignations)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.signedlongArg_andidArg_(1 << 30, NSPriorDayDesignations)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testsignedlongAndcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_andcharPtrArg_(-(1<<30), "hello")
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "hello")
		r = o.signedlongArg_andcharPtrArg_(-(1<<30), "world")
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "world")
		r = o.signedlongArg_andcharPtrArg_(-(1<<30), "foobar")
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "foobar")
		r = o.signedlongArg_andcharPtrArg_(-42, "hello")
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "hello")
		r = o.signedlongArg_andcharPtrArg_(-42, "world")
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "world")
		r = o.signedlongArg_andcharPtrArg_(-42, "foobar")
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "foobar")
		r = o.signedlongArg_andcharPtrArg_(0, "hello")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = o.signedlongArg_andcharPtrArg_(0, "world")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = o.signedlongArg_andcharPtrArg_(0, "foobar")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = o.signedlongArg_andcharPtrArg_(42, "hello")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = o.signedlongArg_andcharPtrArg_(42, "world")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = o.signedlongArg_andcharPtrArg_(42, "foobar")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = o.signedlongArg_andcharPtrArg_(1 << 30, "hello")
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "hello")
		r = o.signedlongArg_andcharPtrArg_(1 << 30, "world")
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "world")
		r = o.signedlongArg_andcharPtrArg_(1 << 30, "foobar")
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "foobar")


	def testsignedlongAndNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_andNSPointArg_(-(1<<30), (1, 2))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], (1, 2))
		r = o.signedlongArg_andNSPointArg_(-(1<<30), (3, 4))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], (3, 4))
		r = o.signedlongArg_andNSPointArg_(-42, (1, 2))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (1, 2))
		r = o.signedlongArg_andNSPointArg_(-42, (3, 4))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (3, 4))
		r = o.signedlongArg_andNSPointArg_(0, (1, 2))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = o.signedlongArg_andNSPointArg_(0, (3, 4))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = o.signedlongArg_andNSPointArg_(42, (1, 2))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = o.signedlongArg_andNSPointArg_(42, (3, 4))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = o.signedlongArg_andNSPointArg_(1 << 30, (1, 2))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (1, 2))
		r = o.signedlongArg_andNSPointArg_(1 << 30, (3, 4))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (3, 4))


	def testsignedlongAndNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongArg_andNSRectArg_(-(1<<30), ((1, 2), (3, 4)))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedlongArg_andNSRectArg_(-(1<<30), ((7, 8), (9, 10)))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.signedlongArg_andNSRectArg_(-42, ((1, 2), (3, 4)))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedlongArg_andNSRectArg_(-42, ((7, 8), (9, 10)))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.signedlongArg_andNSRectArg_(0, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedlongArg_andNSRectArg_(0, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.signedlongArg_andNSRectArg_(42, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedlongArg_andNSRectArg_(42, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.signedlongArg_andNSRectArg_(1 << 30, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedlongArg_andNSRectArg_(1 << 30, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testsignedlonglongAndBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_andBOOLArg_(-(1L << 60), YES)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], YES)
		r = o.signedlonglongArg_andBOOLArg_(-(1L << 60), NO)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], NO)
		r = o.signedlonglongArg_andBOOLArg_(-42, YES)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], YES)
		r = o.signedlonglongArg_andBOOLArg_(-42, NO)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NO)
		r = o.signedlonglongArg_andBOOLArg_(0, YES)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = o.signedlonglongArg_andBOOLArg_(0, NO)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = o.signedlonglongArg_andBOOLArg_(42, YES)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = o.signedlonglongArg_andBOOLArg_(42, NO)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = o.signedlonglongArg_andBOOLArg_(1L << 60, YES)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], YES)
		r = o.signedlonglongArg_andBOOLArg_(1L << 60, NO)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], NO)


	def testsignedlonglongAndcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_andcharArg_(-(1L << 60), -128)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -128)
		r = o.signedlonglongArg_andcharArg_(-(1L << 60), 0)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andcharArg_(-(1L << 60), 127)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 127)
		r = o.signedlonglongArg_andcharArg_(-42, -128)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -128)
		r = o.signedlonglongArg_andcharArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andcharArg_(-42, 127)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 127)
		r = o.signedlonglongArg_andcharArg_(0, -128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = o.signedlonglongArg_andcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andcharArg_(0, 127)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = o.signedlonglongArg_andcharArg_(42, -128)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = o.signedlonglongArg_andcharArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andcharArg_(42, 127)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = o.signedlonglongArg_andcharArg_(1L << 60, -128)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -128)
		r = o.signedlonglongArg_andcharArg_(1L << 60, 0)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andcharArg_(1L << 60, 127)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 127)


	def testsignedlonglongAndsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_andsignedshortArg_(-(1L << 60), -(1<<14))
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -(1<<14))
		r = o.signedlonglongArg_andsignedshortArg_(-(1L << 60), -42)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedshortArg_(-(1L << 60), 0)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedshortArg_(-(1L << 60), 42)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedshortArg_(-(1L << 60), 1 << 14)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1 << 14)
		r = o.signedlonglongArg_andsignedshortArg_(-42, -(1<<14))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<14))
		r = o.signedlonglongArg_andsignedshortArg_(-42, -42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedshortArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedshortArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedshortArg_(-42, 1 << 14)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 14)
		r = o.signedlonglongArg_andsignedshortArg_(0, -(1<<14))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = o.signedlonglongArg_andsignedshortArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedshortArg_(0, 1 << 14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = o.signedlonglongArg_andsignedshortArg_(42, -(1<<14))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = o.signedlonglongArg_andsignedshortArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedshortArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedshortArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedshortArg_(42, 1 << 14)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = o.signedlonglongArg_andsignedshortArg_(1L << 60, -(1<<14))
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -(1<<14))
		r = o.signedlonglongArg_andsignedshortArg_(1L << 60, -42)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedshortArg_(1L << 60, 0)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedshortArg_(1L << 60, 42)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedshortArg_(1L << 60, 1 << 14)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1 << 14)


	def testsignedlonglongAndsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_andsignedintArg_(-(1L << 60), -(1<<30))
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlonglongArg_andsignedintArg_(-(1L << 60), -42)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedintArg_(-(1L << 60), 0)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedintArg_(-(1L << 60), 42)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedintArg_(-(1L << 60), 1 << 30)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlonglongArg_andsignedintArg_(-42, -(1<<30))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlonglongArg_andsignedintArg_(-42, -42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedintArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedintArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedintArg_(-42, 1 << 30)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlonglongArg_andsignedintArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlonglongArg_andsignedintArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlonglongArg_andsignedintArg_(42, -(1<<30))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlonglongArg_andsignedintArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedintArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedintArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedintArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlonglongArg_andsignedintArg_(1L << 60, -(1<<30))
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlonglongArg_andsignedintArg_(1L << 60, -42)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedintArg_(1L << 60, 0)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedintArg_(1L << 60, 42)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedintArg_(1L << 60, 1 << 30)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1 << 30)


	def testsignedlonglongAndsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_andsignedlongArg_(-(1L << 60), -(1<<30))
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlonglongArg_andsignedlongArg_(-(1L << 60), -42)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedlongArg_(-(1L << 60), 0)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedlongArg_(-(1L << 60), 42)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedlongArg_(-(1L << 60), 1 << 30)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlonglongArg_andsignedlongArg_(-42, -(1<<30))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlonglongArg_andsignedlongArg_(-42, -42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedlongArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedlongArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedlongArg_(-42, 1 << 30)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlonglongArg_andsignedlongArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlonglongArg_andsignedlongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedlongArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlonglongArg_andsignedlongArg_(42, -(1<<30))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlonglongArg_andsignedlongArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedlongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedlongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedlongArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlonglongArg_andsignedlongArg_(1L << 60, -(1<<30))
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlonglongArg_andsignedlongArg_(1L << 60, -42)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedlongArg_(1L << 60, 0)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedlongArg_(1L << 60, 42)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedlongArg_(1L << 60, 1 << 30)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1 << 30)


	def testsignedlonglongAndsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_andsignedlonglongArg_(-(1L << 60), -(1L << 60))
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedlonglongArg_andsignedlonglongArg_(-(1L << 60), -42)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedlonglongArg_(-(1L << 60), 0)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedlonglongArg_(-(1L << 60), 42)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedlonglongArg_(-(1L << 60), 1L << 60)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1L << 60)
		r = o.signedlonglongArg_andsignedlonglongArg_(-42, -(1L << 60))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedlonglongArg_andsignedlonglongArg_(-42, -42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedlonglongArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedlonglongArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedlonglongArg_(-42, 1L << 60)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 60)
		r = o.signedlonglongArg_andsignedlonglongArg_(0, -(1L << 60))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedlonglongArg_andsignedlonglongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedlonglongArg_(0, 1L << 60)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = o.signedlonglongArg_andsignedlonglongArg_(42, -(1L << 60))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedlonglongArg_andsignedlonglongArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedlonglongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedlonglongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedlonglongArg_(42, 1L << 60)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = o.signedlonglongArg_andsignedlonglongArg_(1L << 60, -(1L << 60))
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedlonglongArg_andsignedlonglongArg_(1L << 60, -42)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -42)
		r = o.signedlonglongArg_andsignedlonglongArg_(1L << 60, 0)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andsignedlonglongArg_(1L << 60, 42)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andsignedlonglongArg_(1L << 60, 1L << 60)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1L << 60)


	def testsignedlonglongAndunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_andunsignedcharArg_(-(1L << 60), 0)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedcharArg_(-(1L << 60), 128)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 128)
		r = o.signedlonglongArg_andunsignedcharArg_(-(1L << 60), 255)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 255)
		r = o.signedlonglongArg_andunsignedcharArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedcharArg_(-42, 128)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 128)
		r = o.signedlonglongArg_andunsignedcharArg_(-42, 255)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 255)
		r = o.signedlonglongArg_andunsignedcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedcharArg_(0, 128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = o.signedlonglongArg_andunsignedcharArg_(0, 255)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = o.signedlonglongArg_andunsignedcharArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedcharArg_(42, 128)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = o.signedlonglongArg_andunsignedcharArg_(42, 255)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = o.signedlonglongArg_andunsignedcharArg_(1L << 60, 0)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedcharArg_(1L << 60, 128)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 128)
		r = o.signedlonglongArg_andunsignedcharArg_(1L << 60, 255)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 255)


	def testsignedlonglongAndunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_andunsignedshortArg_(-(1L << 60), 0)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedshortArg_(-(1L << 60), 42)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedshortArg_(-(1L << 60), 1<<14)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1<<14)
		r = o.signedlonglongArg_andunsignedshortArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedshortArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedshortArg_(-42, 1<<14)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1<<14)
		r = o.signedlonglongArg_andunsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedshortArg_(0, 1<<14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = o.signedlonglongArg_andunsignedshortArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedshortArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedshortArg_(42, 1<<14)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = o.signedlonglongArg_andunsignedshortArg_(1L << 60, 0)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedshortArg_(1L << 60, 42)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedshortArg_(1L << 60, 1<<14)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1<<14)


	def testsignedlonglongAndunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_andunsignedintArg_(-(1L << 60), 0)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedintArg_(-(1L << 60), 42)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedintArg_(-(1L << 60), 1 << 30)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlonglongArg_andunsignedintArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedintArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedintArg_(-42, 1 << 30)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlonglongArg_andunsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlonglongArg_andunsignedintArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedintArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedintArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.signedlonglongArg_andunsignedintArg_(1L << 60, 0)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedintArg_(1L << 60, 42)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedintArg_(1L << 60, 1 << 30)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1 << 30)


	def testsignedlonglongAndunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_andunsignedlongArg_(-(1L << 60), 0)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedlongArg_(-(1L << 60), 42)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedlongArg_(-(1L << 60), 1L << 30)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1L << 30)
		r = o.signedlonglongArg_andunsignedlongArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedlongArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedlongArg_(-42, 1L << 30)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 30)
		r = o.signedlonglongArg_andunsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedlongArg_(0, 1L << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = o.signedlonglongArg_andunsignedlongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedlongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedlongArg_(42, 1L << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = o.signedlonglongArg_andunsignedlongArg_(1L << 60, 0)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedlongArg_(1L << 60, 42)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedlongArg_(1L << 60, 1L << 30)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1L << 30)


	def testsignedlonglongAndunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_andunsignedlonglongArg_(-(1L << 60), 0)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedlonglongArg_(-(1L << 60), 42)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedlonglongArg_(-(1L << 60), 1L << 62)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1L << 62)
		r = o.signedlonglongArg_andunsignedlonglongArg_(-42, 0)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedlonglongArg_(-42, 42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedlonglongArg_(-42, 1L << 62)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 62)
		r = o.signedlonglongArg_andunsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedlonglongArg_(0, 1L << 62)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = o.signedlonglongArg_andunsignedlonglongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedlonglongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedlonglongArg_(42, 1L << 62)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = o.signedlonglongArg_andunsignedlonglongArg_(1L << 60, 0)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongArg_andunsignedlonglongArg_(1L << 60, 42)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongArg_andunsignedlonglongArg_(1L << 60, 1L << 62)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1L << 62)


	def testsignedlonglongAndfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_andfloatArg_(-(1L << 60), 0.128)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlonglongArg_andfloatArg_(-(1L << 60), 1.0)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlonglongArg_andfloatArg_(-(1L << 60), 42.0)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlonglongArg_andfloatArg_(-(1L << 60), 1e10)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedlonglongArg_andfloatArg_(-42, 0.128)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlonglongArg_andfloatArg_(-42, 1.0)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlonglongArg_andfloatArg_(-42, 42.0)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlonglongArg_andfloatArg_(-42, 1e10)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedlonglongArg_andfloatArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlonglongArg_andfloatArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlonglongArg_andfloatArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlonglongArg_andfloatArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedlonglongArg_andfloatArg_(42, 0.128)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlonglongArg_andfloatArg_(42, 1.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlonglongArg_andfloatArg_(42, 42.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlonglongArg_andfloatArg_(42, 1e10)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedlonglongArg_andfloatArg_(1L << 60, 0.128)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlonglongArg_andfloatArg_(1L << 60, 1.0)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlonglongArg_andfloatArg_(1L << 60, 42.0)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlonglongArg_andfloatArg_(1L << 60, 1e10)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 1e10)


	def testsignedlonglongAnddoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_anddoubleArg_(-(1L << 60), 0.128)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlonglongArg_anddoubleArg_(-(1L << 60), 1.0)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlonglongArg_anddoubleArg_(-(1L << 60), 42.0)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlonglongArg_anddoubleArg_(-(1L << 60), 1e10)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedlonglongArg_anddoubleArg_(-42, 0.128)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlonglongArg_anddoubleArg_(-42, 1.0)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlonglongArg_anddoubleArg_(-42, 42.0)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlonglongArg_anddoubleArg_(-42, 1e10)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedlonglongArg_anddoubleArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlonglongArg_anddoubleArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlonglongArg_anddoubleArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlonglongArg_anddoubleArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedlonglongArg_anddoubleArg_(42, 0.128)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlonglongArg_anddoubleArg_(42, 1.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlonglongArg_anddoubleArg_(42, 42.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlonglongArg_anddoubleArg_(42, 1e10)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.signedlonglongArg_anddoubleArg_(1L << 60, 0.128)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.signedlonglongArg_anddoubleArg_(1L << 60, 1.0)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.signedlonglongArg_anddoubleArg_(1L << 60, 42.0)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.signedlonglongArg_anddoubleArg_(1L << 60, 1e10)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 1e10)


	def testsignedlonglongAndidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_andidArg_(-(1L << 60), NSPriorDayDesignations)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.signedlonglongArg_andidArg_(-42, NSPriorDayDesignations)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.signedlonglongArg_andidArg_(0, NSPriorDayDesignations)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.signedlonglongArg_andidArg_(42, NSPriorDayDesignations)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.signedlonglongArg_andidArg_(1L << 60, NSPriorDayDesignations)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testsignedlonglongAndcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_andcharPtrArg_(-(1L << 60), "hello")
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], "hello")
		r = o.signedlonglongArg_andcharPtrArg_(-(1L << 60), "world")
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], "world")
		r = o.signedlonglongArg_andcharPtrArg_(-(1L << 60), "foobar")
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], "foobar")
		r = o.signedlonglongArg_andcharPtrArg_(-42, "hello")
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "hello")
		r = o.signedlonglongArg_andcharPtrArg_(-42, "world")
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "world")
		r = o.signedlonglongArg_andcharPtrArg_(-42, "foobar")
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "foobar")
		r = o.signedlonglongArg_andcharPtrArg_(0, "hello")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = o.signedlonglongArg_andcharPtrArg_(0, "world")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = o.signedlonglongArg_andcharPtrArg_(0, "foobar")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = o.signedlonglongArg_andcharPtrArg_(42, "hello")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = o.signedlonglongArg_andcharPtrArg_(42, "world")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = o.signedlonglongArg_andcharPtrArg_(42, "foobar")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = o.signedlonglongArg_andcharPtrArg_(1L << 60, "hello")
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], "hello")
		r = o.signedlonglongArg_andcharPtrArg_(1L << 60, "world")
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], "world")
		r = o.signedlonglongArg_andcharPtrArg_(1L << 60, "foobar")
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], "foobar")


	def testsignedlonglongAndNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_andNSPointArg_(-(1L << 60), (1, 2))
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], (1, 2))
		r = o.signedlonglongArg_andNSPointArg_(-(1L << 60), (3, 4))
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], (3, 4))
		r = o.signedlonglongArg_andNSPointArg_(-42, (1, 2))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (1, 2))
		r = o.signedlonglongArg_andNSPointArg_(-42, (3, 4))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (3, 4))
		r = o.signedlonglongArg_andNSPointArg_(0, (1, 2))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = o.signedlonglongArg_andNSPointArg_(0, (3, 4))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = o.signedlonglongArg_andNSPointArg_(42, (1, 2))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = o.signedlonglongArg_andNSPointArg_(42, (3, 4))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = o.signedlonglongArg_andNSPointArg_(1L << 60, (1, 2))
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], (1, 2))
		r = o.signedlonglongArg_andNSPointArg_(1L << 60, (3, 4))
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], (3, 4))


	def testsignedlonglongAndNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongArg_andNSRectArg_(-(1L << 60), ((1, 2), (3, 4)))
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedlonglongArg_andNSRectArg_(-(1L << 60), ((7, 8), (9, 10)))
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.signedlonglongArg_andNSRectArg_(-42, ((1, 2), (3, 4)))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedlonglongArg_andNSRectArg_(-42, ((7, 8), (9, 10)))
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.signedlonglongArg_andNSRectArg_(0, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedlonglongArg_andNSRectArg_(0, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.signedlonglongArg_andNSRectArg_(42, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedlonglongArg_andNSRectArg_(42, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.signedlonglongArg_andNSRectArg_(1L << 60, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.signedlonglongArg_andNSRectArg_(1L << 60, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testunsignedcharAndBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_andBOOLArg_(0, YES)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = o.unsignedcharArg_andBOOLArg_(0, NO)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = o.unsignedcharArg_andBOOLArg_(128, YES)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], YES)
		r = o.unsignedcharArg_andBOOLArg_(128, NO)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], NO)
		r = o.unsignedcharArg_andBOOLArg_(255, YES)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], YES)
		r = o.unsignedcharArg_andBOOLArg_(255, NO)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], NO)


	def testunsignedcharAndcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_andcharArg_(0, -128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = o.unsignedcharArg_andcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andcharArg_(0, 127)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = o.unsignedcharArg_andcharArg_(128, -128)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -128)
		r = o.unsignedcharArg_andcharArg_(128, 0)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andcharArg_(128, 127)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 127)
		r = o.unsignedcharArg_andcharArg_(255, -128)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -128)
		r = o.unsignedcharArg_andcharArg_(255, 0)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andcharArg_(255, 127)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 127)


	def testunsignedcharAndsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_andsignedshortArg_(0, -(1<<14))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = o.unsignedcharArg_andsignedshortArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedcharArg_andsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andsignedshortArg_(0, 1 << 14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = o.unsignedcharArg_andsignedshortArg_(128, -(1<<14))
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -(1<<14))
		r = o.unsignedcharArg_andsignedshortArg_(128, -42)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -42)
		r = o.unsignedcharArg_andsignedshortArg_(128, 0)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andsignedshortArg_(128, 42)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andsignedshortArg_(128, 1 << 14)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1 << 14)
		r = o.unsignedcharArg_andsignedshortArg_(255, -(1<<14))
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -(1<<14))
		r = o.unsignedcharArg_andsignedshortArg_(255, -42)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -42)
		r = o.unsignedcharArg_andsignedshortArg_(255, 0)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andsignedshortArg_(255, 42)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andsignedshortArg_(255, 1 << 14)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1 << 14)


	def testunsignedcharAndsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_andsignedintArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedcharArg_andsignedintArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedcharArg_andsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedcharArg_andsignedintArg_(128, -(1<<30))
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedcharArg_andsignedintArg_(128, -42)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -42)
		r = o.unsignedcharArg_andsignedintArg_(128, 0)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andsignedintArg_(128, 42)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andsignedintArg_(128, 1 << 30)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedcharArg_andsignedintArg_(255, -(1<<30))
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedcharArg_andsignedintArg_(255, -42)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -42)
		r = o.unsignedcharArg_andsignedintArg_(255, 0)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andsignedintArg_(255, 42)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andsignedintArg_(255, 1 << 30)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1 << 30)


	def testunsignedcharAndsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_andsignedlongArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedcharArg_andsignedlongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedcharArg_andsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andsignedlongArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedcharArg_andsignedlongArg_(128, -(1<<30))
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedcharArg_andsignedlongArg_(128, -42)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -42)
		r = o.unsignedcharArg_andsignedlongArg_(128, 0)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andsignedlongArg_(128, 42)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andsignedlongArg_(128, 1 << 30)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedcharArg_andsignedlongArg_(255, -(1<<30))
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedcharArg_andsignedlongArg_(255, -42)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -42)
		r = o.unsignedcharArg_andsignedlongArg_(255, 0)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andsignedlongArg_(255, 42)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andsignedlongArg_(255, 1 << 30)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1 << 30)


	def testunsignedcharAndsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_andsignedlonglongArg_(0, -(1L << 60))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = o.unsignedcharArg_andsignedlonglongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedcharArg_andsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andsignedlonglongArg_(0, 1L << 60)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = o.unsignedcharArg_andsignedlonglongArg_(128, -(1L << 60))
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -(1L << 60))
		r = o.unsignedcharArg_andsignedlonglongArg_(128, -42)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -42)
		r = o.unsignedcharArg_andsignedlonglongArg_(128, 0)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andsignedlonglongArg_(128, 42)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andsignedlonglongArg_(128, 1L << 60)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1L << 60)
		r = o.unsignedcharArg_andsignedlonglongArg_(255, -(1L << 60))
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -(1L << 60))
		r = o.unsignedcharArg_andsignedlonglongArg_(255, -42)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -42)
		r = o.unsignedcharArg_andsignedlonglongArg_(255, 0)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andsignedlonglongArg_(255, 42)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andsignedlonglongArg_(255, 1L << 60)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1L << 60)


	def testunsignedcharAndunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_andunsignedcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andunsignedcharArg_(0, 128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = o.unsignedcharArg_andunsignedcharArg_(0, 255)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = o.unsignedcharArg_andunsignedcharArg_(128, 0)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andunsignedcharArg_(128, 128)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 128)
		r = o.unsignedcharArg_andunsignedcharArg_(128, 255)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 255)
		r = o.unsignedcharArg_andunsignedcharArg_(255, 0)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andunsignedcharArg_(255, 128)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 128)
		r = o.unsignedcharArg_andunsignedcharArg_(255, 255)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 255)


	def testunsignedcharAndunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_andunsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andunsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andunsignedshortArg_(0, 1<<14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = o.unsignedcharArg_andunsignedshortArg_(128, 0)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andunsignedshortArg_(128, 42)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andunsignedshortArg_(128, 1<<14)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1<<14)
		r = o.unsignedcharArg_andunsignedshortArg_(255, 0)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andunsignedshortArg_(255, 42)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andunsignedshortArg_(255, 1<<14)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1<<14)


	def testunsignedcharAndunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_andunsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andunsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andunsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedcharArg_andunsignedintArg_(128, 0)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andunsignedintArg_(128, 42)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andunsignedintArg_(128, 1 << 30)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedcharArg_andunsignedintArg_(255, 0)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andunsignedintArg_(255, 42)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andunsignedintArg_(255, 1 << 30)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1 << 30)


	def testunsignedcharAndunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_andunsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andunsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andunsignedlongArg_(0, 1L << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = o.unsignedcharArg_andunsignedlongArg_(128, 0)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andunsignedlongArg_(128, 42)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andunsignedlongArg_(128, 1L << 30)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1L << 30)
		r = o.unsignedcharArg_andunsignedlongArg_(255, 0)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andunsignedlongArg_(255, 42)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andunsignedlongArg_(255, 1L << 30)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1L << 30)


	def testunsignedcharAndunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_andunsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andunsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andunsignedlonglongArg_(0, 1L << 62)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = o.unsignedcharArg_andunsignedlonglongArg_(128, 0)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andunsignedlonglongArg_(128, 42)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andunsignedlonglongArg_(128, 1L << 62)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1L << 62)
		r = o.unsignedcharArg_andunsignedlonglongArg_(255, 0)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharArg_andunsignedlonglongArg_(255, 42)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = o.unsignedcharArg_andunsignedlonglongArg_(255, 1L << 62)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1L << 62)


	def testunsignedcharAndfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_andfloatArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedcharArg_andfloatArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedcharArg_andfloatArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedcharArg_andfloatArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedcharArg_andfloatArg_(128, 0.128)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedcharArg_andfloatArg_(128, 1.0)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedcharArg_andfloatArg_(128, 42.0)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedcharArg_andfloatArg_(128, 1e10)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedcharArg_andfloatArg_(255, 0.128)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedcharArg_andfloatArg_(255, 1.0)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedcharArg_andfloatArg_(255, 42.0)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedcharArg_andfloatArg_(255, 1e10)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 1e10)


	def testunsignedcharAnddoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_anddoubleArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedcharArg_anddoubleArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedcharArg_anddoubleArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedcharArg_anddoubleArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedcharArg_anddoubleArg_(128, 0.128)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedcharArg_anddoubleArg_(128, 1.0)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedcharArg_anddoubleArg_(128, 42.0)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedcharArg_anddoubleArg_(128, 1e10)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedcharArg_anddoubleArg_(255, 0.128)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedcharArg_anddoubleArg_(255, 1.0)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedcharArg_anddoubleArg_(255, 42.0)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedcharArg_anddoubleArg_(255, 1e10)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 1e10)


	def testunsignedcharAndidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_andidArg_(0, NSPriorDayDesignations)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.unsignedcharArg_andidArg_(128, NSPriorDayDesignations)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.unsignedcharArg_andidArg_(255, NSPriorDayDesignations)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testunsignedcharAndcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_andcharPtrArg_(0, "hello")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = o.unsignedcharArg_andcharPtrArg_(0, "world")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = o.unsignedcharArg_andcharPtrArg_(0, "foobar")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = o.unsignedcharArg_andcharPtrArg_(128, "hello")
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], "hello")
		r = o.unsignedcharArg_andcharPtrArg_(128, "world")
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], "world")
		r = o.unsignedcharArg_andcharPtrArg_(128, "foobar")
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], "foobar")
		r = o.unsignedcharArg_andcharPtrArg_(255, "hello")
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], "hello")
		r = o.unsignedcharArg_andcharPtrArg_(255, "world")
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], "world")
		r = o.unsignedcharArg_andcharPtrArg_(255, "foobar")
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], "foobar")


	def testunsignedcharAndNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_andNSPointArg_(0, (1, 2))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = o.unsignedcharArg_andNSPointArg_(0, (3, 4))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = o.unsignedcharArg_andNSPointArg_(128, (1, 2))
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], (1, 2))
		r = o.unsignedcharArg_andNSPointArg_(128, (3, 4))
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], (3, 4))
		r = o.unsignedcharArg_andNSPointArg_(255, (1, 2))
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], (1, 2))
		r = o.unsignedcharArg_andNSPointArg_(255, (3, 4))
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], (3, 4))


	def testunsignedcharAndNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharArg_andNSRectArg_(0, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.unsignedcharArg_andNSRectArg_(0, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.unsignedcharArg_andNSRectArg_(128, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.unsignedcharArg_andNSRectArg_(128, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.unsignedcharArg_andNSRectArg_(255, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.unsignedcharArg_andNSRectArg_(255, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testunsignedshortAndBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_andBOOLArg_(0, YES)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = o.unsignedshortArg_andBOOLArg_(0, NO)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = o.unsignedshortArg_andBOOLArg_(42, YES)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = o.unsignedshortArg_andBOOLArg_(42, NO)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = o.unsignedshortArg_andBOOLArg_(1<<14, YES)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], YES)
		r = o.unsignedshortArg_andBOOLArg_(1<<14, NO)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], NO)


	def testunsignedshortAndcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_andcharArg_(0, -128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = o.unsignedshortArg_andcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andcharArg_(0, 127)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = o.unsignedshortArg_andcharArg_(42, -128)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = o.unsignedshortArg_andcharArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andcharArg_(42, 127)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = o.unsignedshortArg_andcharArg_(1<<14, -128)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -128)
		r = o.unsignedshortArg_andcharArg_(1<<14, 0)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andcharArg_(1<<14, 127)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 127)


	def testunsignedshortAndsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_andsignedshortArg_(0, -(1<<14))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = o.unsignedshortArg_andsignedshortArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedshortArg_andsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andsignedshortArg_(0, 1 << 14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = o.unsignedshortArg_andsignedshortArg_(42, -(1<<14))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = o.unsignedshortArg_andsignedshortArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.unsignedshortArg_andsignedshortArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andsignedshortArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andsignedshortArg_(42, 1 << 14)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = o.unsignedshortArg_andsignedshortArg_(1<<14, -(1<<14))
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -(1<<14))
		r = o.unsignedshortArg_andsignedshortArg_(1<<14, -42)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -42)
		r = o.unsignedshortArg_andsignedshortArg_(1<<14, 0)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andsignedshortArg_(1<<14, 42)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andsignedshortArg_(1<<14, 1 << 14)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1 << 14)


	def testunsignedshortAndsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_andsignedintArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedshortArg_andsignedintArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedshortArg_andsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedshortArg_andsignedintArg_(42, -(1<<30))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedshortArg_andsignedintArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.unsignedshortArg_andsignedintArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andsignedintArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andsignedintArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedshortArg_andsignedintArg_(1<<14, -(1<<30))
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedshortArg_andsignedintArg_(1<<14, -42)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -42)
		r = o.unsignedshortArg_andsignedintArg_(1<<14, 0)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andsignedintArg_(1<<14, 42)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andsignedintArg_(1<<14, 1 << 30)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1 << 30)


	def testunsignedshortAndsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_andsignedlongArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedshortArg_andsignedlongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedshortArg_andsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andsignedlongArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedshortArg_andsignedlongArg_(42, -(1<<30))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedshortArg_andsignedlongArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.unsignedshortArg_andsignedlongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andsignedlongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andsignedlongArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedshortArg_andsignedlongArg_(1<<14, -(1<<30))
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedshortArg_andsignedlongArg_(1<<14, -42)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -42)
		r = o.unsignedshortArg_andsignedlongArg_(1<<14, 0)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andsignedlongArg_(1<<14, 42)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andsignedlongArg_(1<<14, 1 << 30)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1 << 30)


	def testunsignedshortAndsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_andsignedlonglongArg_(0, -(1L << 60))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = o.unsignedshortArg_andsignedlonglongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedshortArg_andsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andsignedlonglongArg_(0, 1L << 60)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = o.unsignedshortArg_andsignedlonglongArg_(42, -(1L << 60))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = o.unsignedshortArg_andsignedlonglongArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.unsignedshortArg_andsignedlonglongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andsignedlonglongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andsignedlonglongArg_(42, 1L << 60)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = o.unsignedshortArg_andsignedlonglongArg_(1<<14, -(1L << 60))
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -(1L << 60))
		r = o.unsignedshortArg_andsignedlonglongArg_(1<<14, -42)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -42)
		r = o.unsignedshortArg_andsignedlonglongArg_(1<<14, 0)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andsignedlonglongArg_(1<<14, 42)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andsignedlonglongArg_(1<<14, 1L << 60)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1L << 60)


	def testunsignedshortAndunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_andunsignedcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andunsignedcharArg_(0, 128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = o.unsignedshortArg_andunsignedcharArg_(0, 255)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = o.unsignedshortArg_andunsignedcharArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andunsignedcharArg_(42, 128)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = o.unsignedshortArg_andunsignedcharArg_(42, 255)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = o.unsignedshortArg_andunsignedcharArg_(1<<14, 0)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andunsignedcharArg_(1<<14, 128)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 128)
		r = o.unsignedshortArg_andunsignedcharArg_(1<<14, 255)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 255)


	def testunsignedshortAndunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_andunsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andunsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andunsignedshortArg_(0, 1<<14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = o.unsignedshortArg_andunsignedshortArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andunsignedshortArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andunsignedshortArg_(42, 1<<14)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = o.unsignedshortArg_andunsignedshortArg_(1<<14, 0)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andunsignedshortArg_(1<<14, 42)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andunsignedshortArg_(1<<14, 1<<14)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1<<14)


	def testunsignedshortAndunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_andunsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andunsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andunsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedshortArg_andunsignedintArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andunsignedintArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andunsignedintArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedshortArg_andunsignedintArg_(1<<14, 0)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andunsignedintArg_(1<<14, 42)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andunsignedintArg_(1<<14, 1 << 30)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1 << 30)


	def testunsignedshortAndunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_andunsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andunsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andunsignedlongArg_(0, 1L << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = o.unsignedshortArg_andunsignedlongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andunsignedlongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andunsignedlongArg_(42, 1L << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = o.unsignedshortArg_andunsignedlongArg_(1<<14, 0)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andunsignedlongArg_(1<<14, 42)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andunsignedlongArg_(1<<14, 1L << 30)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1L << 30)


	def testunsignedshortAndunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_andunsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andunsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andunsignedlonglongArg_(0, 1L << 62)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = o.unsignedshortArg_andunsignedlonglongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andunsignedlonglongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andunsignedlonglongArg_(42, 1L << 62)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = o.unsignedshortArg_andunsignedlonglongArg_(1<<14, 0)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortArg_andunsignedlonglongArg_(1<<14, 42)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortArg_andunsignedlonglongArg_(1<<14, 1L << 62)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1L << 62)


	def testunsignedshortAndfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_andfloatArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedshortArg_andfloatArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedshortArg_andfloatArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedshortArg_andfloatArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedshortArg_andfloatArg_(42, 0.128)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedshortArg_andfloatArg_(42, 1.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedshortArg_andfloatArg_(42, 42.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedshortArg_andfloatArg_(42, 1e10)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedshortArg_andfloatArg_(1<<14, 0.128)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedshortArg_andfloatArg_(1<<14, 1.0)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedshortArg_andfloatArg_(1<<14, 42.0)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedshortArg_andfloatArg_(1<<14, 1e10)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 1e10)


	def testunsignedshortAnddoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_anddoubleArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedshortArg_anddoubleArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedshortArg_anddoubleArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedshortArg_anddoubleArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedshortArg_anddoubleArg_(42, 0.128)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedshortArg_anddoubleArg_(42, 1.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedshortArg_anddoubleArg_(42, 42.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedshortArg_anddoubleArg_(42, 1e10)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedshortArg_anddoubleArg_(1<<14, 0.128)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedshortArg_anddoubleArg_(1<<14, 1.0)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedshortArg_anddoubleArg_(1<<14, 42.0)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedshortArg_anddoubleArg_(1<<14, 1e10)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 1e10)


	def testunsignedshortAndidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_andidArg_(0, NSPriorDayDesignations)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.unsignedshortArg_andidArg_(42, NSPriorDayDesignations)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.unsignedshortArg_andidArg_(1<<14, NSPriorDayDesignations)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testunsignedshortAndcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_andcharPtrArg_(0, "hello")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = o.unsignedshortArg_andcharPtrArg_(0, "world")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = o.unsignedshortArg_andcharPtrArg_(0, "foobar")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = o.unsignedshortArg_andcharPtrArg_(42, "hello")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = o.unsignedshortArg_andcharPtrArg_(42, "world")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = o.unsignedshortArg_andcharPtrArg_(42, "foobar")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = o.unsignedshortArg_andcharPtrArg_(1<<14, "hello")
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], "hello")
		r = o.unsignedshortArg_andcharPtrArg_(1<<14, "world")
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], "world")
		r = o.unsignedshortArg_andcharPtrArg_(1<<14, "foobar")
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], "foobar")


	def testunsignedshortAndNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_andNSPointArg_(0, (1, 2))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = o.unsignedshortArg_andNSPointArg_(0, (3, 4))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = o.unsignedshortArg_andNSPointArg_(42, (1, 2))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = o.unsignedshortArg_andNSPointArg_(42, (3, 4))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = o.unsignedshortArg_andNSPointArg_(1<<14, (1, 2))
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], (1, 2))
		r = o.unsignedshortArg_andNSPointArg_(1<<14, (3, 4))
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], (3, 4))


	def testunsignedshortAndNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortArg_andNSRectArg_(0, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.unsignedshortArg_andNSRectArg_(0, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.unsignedshortArg_andNSRectArg_(42, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.unsignedshortArg_andNSRectArg_(42, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.unsignedshortArg_andNSRectArg_(1<<14, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.unsignedshortArg_andNSRectArg_(1<<14, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testunsignedintAndBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_andBOOLArg_(0, YES)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = o.unsignedintArg_andBOOLArg_(0, NO)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = o.unsignedintArg_andBOOLArg_(42, YES)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = o.unsignedintArg_andBOOLArg_(42, NO)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = o.unsignedintArg_andBOOLArg_(1 << 30, YES)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], YES)
		r = o.unsignedintArg_andBOOLArg_(1 << 30, NO)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NO)


	def testunsignedintAndcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_andcharArg_(0, -128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = o.unsignedintArg_andcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andcharArg_(0, 127)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = o.unsignedintArg_andcharArg_(42, -128)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = o.unsignedintArg_andcharArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andcharArg_(42, 127)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = o.unsignedintArg_andcharArg_(1 << 30, -128)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -128)
		r = o.unsignedintArg_andcharArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andcharArg_(1 << 30, 127)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 127)


	def testunsignedintAndsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_andsignedshortArg_(0, -(1<<14))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = o.unsignedintArg_andsignedshortArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedintArg_andsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andsignedshortArg_(0, 1 << 14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = o.unsignedintArg_andsignedshortArg_(42, -(1<<14))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = o.unsignedintArg_andsignedshortArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.unsignedintArg_andsignedshortArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andsignedshortArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andsignedshortArg_(42, 1 << 14)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = o.unsignedintArg_andsignedshortArg_(1 << 30, -(1<<14))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<14))
		r = o.unsignedintArg_andsignedshortArg_(1 << 30, -42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = o.unsignedintArg_andsignedshortArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andsignedshortArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andsignedshortArg_(1 << 30, 1 << 14)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 14)


	def testunsignedintAndsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_andsignedintArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedintArg_andsignedintArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedintArg_andsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedintArg_andsignedintArg_(42, -(1<<30))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedintArg_andsignedintArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.unsignedintArg_andsignedintArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andsignedintArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andsignedintArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedintArg_andsignedintArg_(1 << 30, -(1<<30))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedintArg_andsignedintArg_(1 << 30, -42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = o.unsignedintArg_andsignedintArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andsignedintArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andsignedintArg_(1 << 30, 1 << 30)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testunsignedintAndsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_andsignedlongArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedintArg_andsignedlongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedintArg_andsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andsignedlongArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedintArg_andsignedlongArg_(42, -(1<<30))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedintArg_andsignedlongArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.unsignedintArg_andsignedlongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andsignedlongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andsignedlongArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedintArg_andsignedlongArg_(1 << 30, -(1<<30))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedintArg_andsignedlongArg_(1 << 30, -42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = o.unsignedintArg_andsignedlongArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andsignedlongArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andsignedlongArg_(1 << 30, 1 << 30)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testunsignedintAndsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_andsignedlonglongArg_(0, -(1L << 60))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = o.unsignedintArg_andsignedlonglongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedintArg_andsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andsignedlonglongArg_(0, 1L << 60)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = o.unsignedintArg_andsignedlonglongArg_(42, -(1L << 60))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = o.unsignedintArg_andsignedlonglongArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.unsignedintArg_andsignedlonglongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andsignedlonglongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andsignedlonglongArg_(42, 1L << 60)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = o.unsignedintArg_andsignedlonglongArg_(1 << 30, -(1L << 60))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1L << 60))
		r = o.unsignedintArg_andsignedlonglongArg_(1 << 30, -42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = o.unsignedintArg_andsignedlonglongArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andsignedlonglongArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andsignedlonglongArg_(1 << 30, 1L << 60)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 60)


	def testunsignedintAndunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_andunsignedcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andunsignedcharArg_(0, 128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = o.unsignedintArg_andunsignedcharArg_(0, 255)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = o.unsignedintArg_andunsignedcharArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andunsignedcharArg_(42, 128)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = o.unsignedintArg_andunsignedcharArg_(42, 255)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = o.unsignedintArg_andunsignedcharArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andunsignedcharArg_(1 << 30, 128)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 128)
		r = o.unsignedintArg_andunsignedcharArg_(1 << 30, 255)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 255)


	def testunsignedintAndunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_andunsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andunsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andunsignedshortArg_(0, 1<<14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = o.unsignedintArg_andunsignedshortArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andunsignedshortArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andunsignedshortArg_(42, 1<<14)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = o.unsignedintArg_andunsignedshortArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andunsignedshortArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andunsignedshortArg_(1 << 30, 1<<14)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1<<14)


	def testunsignedintAndunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_andunsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andunsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andunsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedintArg_andunsignedintArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andunsignedintArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andunsignedintArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedintArg_andunsignedintArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andunsignedintArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andunsignedintArg_(1 << 30, 1 << 30)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testunsignedintAndunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_andunsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andunsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andunsignedlongArg_(0, 1L << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = o.unsignedintArg_andunsignedlongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andunsignedlongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andunsignedlongArg_(42, 1L << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = o.unsignedintArg_andunsignedlongArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andunsignedlongArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andunsignedlongArg_(1 << 30, 1L << 30)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 30)


	def testunsignedintAndunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_andunsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andunsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andunsignedlonglongArg_(0, 1L << 62)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = o.unsignedintArg_andunsignedlonglongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andunsignedlonglongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andunsignedlonglongArg_(42, 1L << 62)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = o.unsignedintArg_andunsignedlonglongArg_(1 << 30, 0)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedintArg_andunsignedlonglongArg_(1 << 30, 42)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = o.unsignedintArg_andunsignedlonglongArg_(1 << 30, 1L << 62)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 62)


	def testunsignedintAndfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_andfloatArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedintArg_andfloatArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedintArg_andfloatArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedintArg_andfloatArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedintArg_andfloatArg_(42, 0.128)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedintArg_andfloatArg_(42, 1.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedintArg_andfloatArg_(42, 42.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedintArg_andfloatArg_(42, 1e10)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedintArg_andfloatArg_(1 << 30, 0.128)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedintArg_andfloatArg_(1 << 30, 1.0)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedintArg_andfloatArg_(1 << 30, 42.0)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedintArg_andfloatArg_(1 << 30, 1e10)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testunsignedintAnddoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_anddoubleArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedintArg_anddoubleArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedintArg_anddoubleArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedintArg_anddoubleArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedintArg_anddoubleArg_(42, 0.128)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedintArg_anddoubleArg_(42, 1.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedintArg_anddoubleArg_(42, 42.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedintArg_anddoubleArg_(42, 1e10)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedintArg_anddoubleArg_(1 << 30, 0.128)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedintArg_anddoubleArg_(1 << 30, 1.0)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedintArg_anddoubleArg_(1 << 30, 42.0)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedintArg_anddoubleArg_(1 << 30, 1e10)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testunsignedintAndidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_andidArg_(0, NSPriorDayDesignations)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.unsignedintArg_andidArg_(42, NSPriorDayDesignations)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.unsignedintArg_andidArg_(1 << 30, NSPriorDayDesignations)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testunsignedintAndcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_andcharPtrArg_(0, "hello")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = o.unsignedintArg_andcharPtrArg_(0, "world")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = o.unsignedintArg_andcharPtrArg_(0, "foobar")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = o.unsignedintArg_andcharPtrArg_(42, "hello")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = o.unsignedintArg_andcharPtrArg_(42, "world")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = o.unsignedintArg_andcharPtrArg_(42, "foobar")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = o.unsignedintArg_andcharPtrArg_(1 << 30, "hello")
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "hello")
		r = o.unsignedintArg_andcharPtrArg_(1 << 30, "world")
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "world")
		r = o.unsignedintArg_andcharPtrArg_(1 << 30, "foobar")
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "foobar")


	def testunsignedintAndNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_andNSPointArg_(0, (1, 2))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = o.unsignedintArg_andNSPointArg_(0, (3, 4))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = o.unsignedintArg_andNSPointArg_(42, (1, 2))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = o.unsignedintArg_andNSPointArg_(42, (3, 4))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = o.unsignedintArg_andNSPointArg_(1 << 30, (1, 2))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (1, 2))
		r = o.unsignedintArg_andNSPointArg_(1 << 30, (3, 4))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (3, 4))


	def testunsignedintAndNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintArg_andNSRectArg_(0, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.unsignedintArg_andNSRectArg_(0, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.unsignedintArg_andNSRectArg_(42, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.unsignedintArg_andNSRectArg_(42, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.unsignedintArg_andNSRectArg_(1 << 30, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.unsignedintArg_andNSRectArg_(1 << 30, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testunsignedlongAndBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_andBOOLArg_(0, YES)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = o.unsignedlongArg_andBOOLArg_(0, NO)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = o.unsignedlongArg_andBOOLArg_(42, YES)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = o.unsignedlongArg_andBOOLArg_(42, NO)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = o.unsignedlongArg_andBOOLArg_(1L << 30, YES)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], YES)
		r = o.unsignedlongArg_andBOOLArg_(1L << 30, NO)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], NO)


	def testunsignedlongAndcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_andcharArg_(0, -128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = o.unsignedlongArg_andcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andcharArg_(0, 127)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = o.unsignedlongArg_andcharArg_(42, -128)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = o.unsignedlongArg_andcharArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andcharArg_(42, 127)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = o.unsignedlongArg_andcharArg_(1L << 30, -128)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -128)
		r = o.unsignedlongArg_andcharArg_(1L << 30, 0)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andcharArg_(1L << 30, 127)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 127)


	def testunsignedlongAndsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_andsignedshortArg_(0, -(1<<14))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = o.unsignedlongArg_andsignedshortArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedlongArg_andsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andsignedshortArg_(0, 1 << 14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = o.unsignedlongArg_andsignedshortArg_(42, -(1<<14))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = o.unsignedlongArg_andsignedshortArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.unsignedlongArg_andsignedshortArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andsignedshortArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andsignedshortArg_(42, 1 << 14)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = o.unsignedlongArg_andsignedshortArg_(1L << 30, -(1<<14))
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -(1<<14))
		r = o.unsignedlongArg_andsignedshortArg_(1L << 30, -42)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -42)
		r = o.unsignedlongArg_andsignedshortArg_(1L << 30, 0)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andsignedshortArg_(1L << 30, 42)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andsignedshortArg_(1L << 30, 1 << 14)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1 << 14)


	def testunsignedlongAndsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_andsignedintArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedlongArg_andsignedintArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedlongArg_andsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedlongArg_andsignedintArg_(42, -(1<<30))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedlongArg_andsignedintArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.unsignedlongArg_andsignedintArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andsignedintArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andsignedintArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedlongArg_andsignedintArg_(1L << 30, -(1<<30))
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedlongArg_andsignedintArg_(1L << 30, -42)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -42)
		r = o.unsignedlongArg_andsignedintArg_(1L << 30, 0)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andsignedintArg_(1L << 30, 42)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andsignedintArg_(1L << 30, 1 << 30)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1 << 30)


	def testunsignedlongAndsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_andsignedlongArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedlongArg_andsignedlongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedlongArg_andsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andsignedlongArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedlongArg_andsignedlongArg_(42, -(1<<30))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedlongArg_andsignedlongArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.unsignedlongArg_andsignedlongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andsignedlongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andsignedlongArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedlongArg_andsignedlongArg_(1L << 30, -(1<<30))
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedlongArg_andsignedlongArg_(1L << 30, -42)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -42)
		r = o.unsignedlongArg_andsignedlongArg_(1L << 30, 0)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andsignedlongArg_(1L << 30, 42)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andsignedlongArg_(1L << 30, 1 << 30)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1 << 30)


	def testunsignedlongAndsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_andsignedlonglongArg_(0, -(1L << 60))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = o.unsignedlongArg_andsignedlonglongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedlongArg_andsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andsignedlonglongArg_(0, 1L << 60)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = o.unsignedlongArg_andsignedlonglongArg_(42, -(1L << 60))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = o.unsignedlongArg_andsignedlonglongArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.unsignedlongArg_andsignedlonglongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andsignedlonglongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andsignedlonglongArg_(42, 1L << 60)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = o.unsignedlongArg_andsignedlonglongArg_(1L << 30, -(1L << 60))
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -(1L << 60))
		r = o.unsignedlongArg_andsignedlonglongArg_(1L << 30, -42)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -42)
		r = o.unsignedlongArg_andsignedlonglongArg_(1L << 30, 0)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andsignedlonglongArg_(1L << 30, 42)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andsignedlonglongArg_(1L << 30, 1L << 60)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1L << 60)


	def testunsignedlongAndunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_andunsignedcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andunsignedcharArg_(0, 128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = o.unsignedlongArg_andunsignedcharArg_(0, 255)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = o.unsignedlongArg_andunsignedcharArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andunsignedcharArg_(42, 128)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = o.unsignedlongArg_andunsignedcharArg_(42, 255)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = o.unsignedlongArg_andunsignedcharArg_(1L << 30, 0)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andunsignedcharArg_(1L << 30, 128)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 128)
		r = o.unsignedlongArg_andunsignedcharArg_(1L << 30, 255)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 255)


	def testunsignedlongAndunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_andunsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andunsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andunsignedshortArg_(0, 1<<14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = o.unsignedlongArg_andunsignedshortArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andunsignedshortArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andunsignedshortArg_(42, 1<<14)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = o.unsignedlongArg_andunsignedshortArg_(1L << 30, 0)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andunsignedshortArg_(1L << 30, 42)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andunsignedshortArg_(1L << 30, 1<<14)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1<<14)


	def testunsignedlongAndunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_andunsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andunsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andunsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedlongArg_andunsignedintArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andunsignedintArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andunsignedintArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedlongArg_andunsignedintArg_(1L << 30, 0)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andunsignedintArg_(1L << 30, 42)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andunsignedintArg_(1L << 30, 1 << 30)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1 << 30)


	def testunsignedlongAndunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_andunsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andunsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andunsignedlongArg_(0, 1L << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = o.unsignedlongArg_andunsignedlongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andunsignedlongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andunsignedlongArg_(42, 1L << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = o.unsignedlongArg_andunsignedlongArg_(1L << 30, 0)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andunsignedlongArg_(1L << 30, 42)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andunsignedlongArg_(1L << 30, 1L << 30)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1L << 30)


	def testunsignedlongAndunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_andunsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andunsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andunsignedlonglongArg_(0, 1L << 62)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = o.unsignedlongArg_andunsignedlonglongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andunsignedlonglongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andunsignedlonglongArg_(42, 1L << 62)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = o.unsignedlongArg_andunsignedlonglongArg_(1L << 30, 0)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongArg_andunsignedlonglongArg_(1L << 30, 42)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongArg_andunsignedlonglongArg_(1L << 30, 1L << 62)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1L << 62)


	def testunsignedlongAndfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_andfloatArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedlongArg_andfloatArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedlongArg_andfloatArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedlongArg_andfloatArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedlongArg_andfloatArg_(42, 0.128)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedlongArg_andfloatArg_(42, 1.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedlongArg_andfloatArg_(42, 42.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedlongArg_andfloatArg_(42, 1e10)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedlongArg_andfloatArg_(1L << 30, 0.128)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedlongArg_andfloatArg_(1L << 30, 1.0)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedlongArg_andfloatArg_(1L << 30, 42.0)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedlongArg_andfloatArg_(1L << 30, 1e10)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testunsignedlongAnddoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_anddoubleArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedlongArg_anddoubleArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedlongArg_anddoubleArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedlongArg_anddoubleArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedlongArg_anddoubleArg_(42, 0.128)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedlongArg_anddoubleArg_(42, 1.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedlongArg_anddoubleArg_(42, 42.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedlongArg_anddoubleArg_(42, 1e10)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedlongArg_anddoubleArg_(1L << 30, 0.128)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedlongArg_anddoubleArg_(1L << 30, 1.0)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedlongArg_anddoubleArg_(1L << 30, 42.0)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedlongArg_anddoubleArg_(1L << 30, 1e10)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testunsignedlongAndidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_andidArg_(0, NSPriorDayDesignations)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.unsignedlongArg_andidArg_(42, NSPriorDayDesignations)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.unsignedlongArg_andidArg_(1L << 30, NSPriorDayDesignations)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testunsignedlongAndcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_andcharPtrArg_(0, "hello")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = o.unsignedlongArg_andcharPtrArg_(0, "world")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = o.unsignedlongArg_andcharPtrArg_(0, "foobar")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = o.unsignedlongArg_andcharPtrArg_(42, "hello")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = o.unsignedlongArg_andcharPtrArg_(42, "world")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = o.unsignedlongArg_andcharPtrArg_(42, "foobar")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = o.unsignedlongArg_andcharPtrArg_(1L << 30, "hello")
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], "hello")
		r = o.unsignedlongArg_andcharPtrArg_(1L << 30, "world")
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], "world")
		r = o.unsignedlongArg_andcharPtrArg_(1L << 30, "foobar")
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], "foobar")


	def testunsignedlongAndNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_andNSPointArg_(0, (1, 2))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = o.unsignedlongArg_andNSPointArg_(0, (3, 4))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = o.unsignedlongArg_andNSPointArg_(42, (1, 2))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = o.unsignedlongArg_andNSPointArg_(42, (3, 4))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = o.unsignedlongArg_andNSPointArg_(1L << 30, (1, 2))
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], (1, 2))
		r = o.unsignedlongArg_andNSPointArg_(1L << 30, (3, 4))
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], (3, 4))


	def testunsignedlongAndNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongArg_andNSRectArg_(0, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.unsignedlongArg_andNSRectArg_(0, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.unsignedlongArg_andNSRectArg_(42, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.unsignedlongArg_andNSRectArg_(42, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.unsignedlongArg_andNSRectArg_(1L << 30, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.unsignedlongArg_andNSRectArg_(1L << 30, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testunsignedlonglongAndBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_andBOOLArg_(0, YES)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = o.unsignedlonglongArg_andBOOLArg_(0, NO)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = o.unsignedlonglongArg_andBOOLArg_(42, YES)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = o.unsignedlonglongArg_andBOOLArg_(42, NO)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = o.unsignedlonglongArg_andBOOLArg_(1L << 62, YES)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], YES)
		r = o.unsignedlonglongArg_andBOOLArg_(1L << 62, NO)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], NO)


	def testunsignedlonglongAndcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_andcharArg_(0, -128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = o.unsignedlonglongArg_andcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andcharArg_(0, 127)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = o.unsignedlonglongArg_andcharArg_(42, -128)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = o.unsignedlonglongArg_andcharArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andcharArg_(42, 127)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = o.unsignedlonglongArg_andcharArg_(1L << 62, -128)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -128)
		r = o.unsignedlonglongArg_andcharArg_(1L << 62, 0)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andcharArg_(1L << 62, 127)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 127)


	def testunsignedlonglongAndsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_andsignedshortArg_(0, -(1<<14))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = o.unsignedlonglongArg_andsignedshortArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedlonglongArg_andsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andsignedshortArg_(0, 1 << 14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = o.unsignedlonglongArg_andsignedshortArg_(42, -(1<<14))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = o.unsignedlonglongArg_andsignedshortArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.unsignedlonglongArg_andsignedshortArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andsignedshortArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andsignedshortArg_(42, 1 << 14)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = o.unsignedlonglongArg_andsignedshortArg_(1L << 62, -(1<<14))
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -(1<<14))
		r = o.unsignedlonglongArg_andsignedshortArg_(1L << 62, -42)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -42)
		r = o.unsignedlonglongArg_andsignedshortArg_(1L << 62, 0)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andsignedshortArg_(1L << 62, 42)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andsignedshortArg_(1L << 62, 1 << 14)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1 << 14)


	def testunsignedlonglongAndsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_andsignedintArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedlonglongArg_andsignedintArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedlonglongArg_andsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedlonglongArg_andsignedintArg_(42, -(1<<30))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedlonglongArg_andsignedintArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.unsignedlonglongArg_andsignedintArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andsignedintArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andsignedintArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedlonglongArg_andsignedintArg_(1L << 62, -(1<<30))
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedlonglongArg_andsignedintArg_(1L << 62, -42)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -42)
		r = o.unsignedlonglongArg_andsignedintArg_(1L << 62, 0)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andsignedintArg_(1L << 62, 42)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andsignedintArg_(1L << 62, 1 << 30)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1 << 30)


	def testunsignedlonglongAndsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_andsignedlongArg_(0, -(1<<30))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedlonglongArg_andsignedlongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedlonglongArg_andsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andsignedlongArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedlonglongArg_andsignedlongArg_(42, -(1<<30))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedlonglongArg_andsignedlongArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.unsignedlonglongArg_andsignedlongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andsignedlongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andsignedlongArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedlonglongArg_andsignedlongArg_(1L << 62, -(1<<30))
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -(1<<30))
		r = o.unsignedlonglongArg_andsignedlongArg_(1L << 62, -42)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -42)
		r = o.unsignedlonglongArg_andsignedlongArg_(1L << 62, 0)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andsignedlongArg_(1L << 62, 42)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andsignedlongArg_(1L << 62, 1 << 30)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1 << 30)


	def testunsignedlonglongAndsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_andsignedlonglongArg_(0, -(1L << 60))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = o.unsignedlonglongArg_andsignedlonglongArg_(0, -42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = o.unsignedlonglongArg_andsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andsignedlonglongArg_(0, 1L << 60)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = o.unsignedlonglongArg_andsignedlonglongArg_(42, -(1L << 60))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = o.unsignedlonglongArg_andsignedlonglongArg_(42, -42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.unsignedlonglongArg_andsignedlonglongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andsignedlonglongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andsignedlonglongArg_(42, 1L << 60)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = o.unsignedlonglongArg_andsignedlonglongArg_(1L << 62, -(1L << 60))
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -(1L << 60))
		r = o.unsignedlonglongArg_andsignedlonglongArg_(1L << 62, -42)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -42)
		r = o.unsignedlonglongArg_andsignedlonglongArg_(1L << 62, 0)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andsignedlonglongArg_(1L << 62, 42)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andsignedlonglongArg_(1L << 62, 1L << 60)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1L << 60)


	def testunsignedlonglongAndunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_andunsignedcharArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andunsignedcharArg_(0, 128)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = o.unsignedlonglongArg_andunsignedcharArg_(0, 255)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = o.unsignedlonglongArg_andunsignedcharArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andunsignedcharArg_(42, 128)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = o.unsignedlonglongArg_andunsignedcharArg_(42, 255)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = o.unsignedlonglongArg_andunsignedcharArg_(1L << 62, 0)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andunsignedcharArg_(1L << 62, 128)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 128)
		r = o.unsignedlonglongArg_andunsignedcharArg_(1L << 62, 255)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 255)


	def testunsignedlonglongAndunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_andunsignedshortArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andunsignedshortArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andunsignedshortArg_(0, 1<<14)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = o.unsignedlonglongArg_andunsignedshortArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andunsignedshortArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andunsignedshortArg_(42, 1<<14)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = o.unsignedlonglongArg_andunsignedshortArg_(1L << 62, 0)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andunsignedshortArg_(1L << 62, 42)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andunsignedshortArg_(1L << 62, 1<<14)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1<<14)


	def testunsignedlonglongAndunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_andunsignedintArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andunsignedintArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andunsignedintArg_(0, 1 << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedlonglongArg_andunsignedintArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andunsignedintArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andunsignedintArg_(42, 1 << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = o.unsignedlonglongArg_andunsignedintArg_(1L << 62, 0)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andunsignedintArg_(1L << 62, 42)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andunsignedintArg_(1L << 62, 1 << 30)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1 << 30)


	def testunsignedlonglongAndunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_andunsignedlongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andunsignedlongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andunsignedlongArg_(0, 1L << 30)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = o.unsignedlonglongArg_andunsignedlongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andunsignedlongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andunsignedlongArg_(42, 1L << 30)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = o.unsignedlonglongArg_andunsignedlongArg_(1L << 62, 0)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andunsignedlongArg_(1L << 62, 42)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andunsignedlongArg_(1L << 62, 1L << 30)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1L << 30)


	def testunsignedlonglongAndunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_andunsignedlonglongArg_(0, 0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andunsignedlonglongArg_(0, 42)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andunsignedlonglongArg_(0, 1L << 62)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = o.unsignedlonglongArg_andunsignedlonglongArg_(42, 0)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andunsignedlonglongArg_(42, 42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andunsignedlonglongArg_(42, 1L << 62)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = o.unsignedlonglongArg_andunsignedlonglongArg_(1L << 62, 0)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongArg_andunsignedlonglongArg_(1L << 62, 42)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongArg_andunsignedlonglongArg_(1L << 62, 1L << 62)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1L << 62)


	def testunsignedlonglongAndfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_andfloatArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedlonglongArg_andfloatArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedlonglongArg_andfloatArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedlonglongArg_andfloatArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedlonglongArg_andfloatArg_(42, 0.128)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedlonglongArg_andfloatArg_(42, 1.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedlonglongArg_andfloatArg_(42, 42.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedlonglongArg_andfloatArg_(42, 1e10)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedlonglongArg_andfloatArg_(1L << 62, 0.128)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedlonglongArg_andfloatArg_(1L << 62, 1.0)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedlonglongArg_andfloatArg_(1L << 62, 42.0)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedlonglongArg_andfloatArg_(1L << 62, 1e10)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 1e10)


	def testunsignedlonglongAnddoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_anddoubleArg_(0, 0.128)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedlonglongArg_anddoubleArg_(0, 1.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedlonglongArg_anddoubleArg_(0, 42.0)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedlonglongArg_anddoubleArg_(0, 1e10)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedlonglongArg_anddoubleArg_(42, 0.128)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedlonglongArg_anddoubleArg_(42, 1.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedlonglongArg_anddoubleArg_(42, 42.0)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedlonglongArg_anddoubleArg_(42, 1e10)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.unsignedlonglongArg_anddoubleArg_(1L << 62, 0.128)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.unsignedlonglongArg_anddoubleArg_(1L << 62, 1.0)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.unsignedlonglongArg_anddoubleArg_(1L << 62, 42.0)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.unsignedlonglongArg_anddoubleArg_(1L << 62, 1e10)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 1e10)


	def testunsignedlonglongAndidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_andidArg_(0, NSPriorDayDesignations)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.unsignedlonglongArg_andidArg_(42, NSPriorDayDesignations)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.unsignedlonglongArg_andidArg_(1L << 62, NSPriorDayDesignations)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testunsignedlonglongAndcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_andcharPtrArg_(0, "hello")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = o.unsignedlonglongArg_andcharPtrArg_(0, "world")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = o.unsignedlonglongArg_andcharPtrArg_(0, "foobar")
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = o.unsignedlonglongArg_andcharPtrArg_(42, "hello")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = o.unsignedlonglongArg_andcharPtrArg_(42, "world")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = o.unsignedlonglongArg_andcharPtrArg_(42, "foobar")
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = o.unsignedlonglongArg_andcharPtrArg_(1L << 62, "hello")
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], "hello")
		r = o.unsignedlonglongArg_andcharPtrArg_(1L << 62, "world")
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], "world")
		r = o.unsignedlonglongArg_andcharPtrArg_(1L << 62, "foobar")
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], "foobar")


	def testunsignedlonglongAndNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_andNSPointArg_(0, (1, 2))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = o.unsignedlonglongArg_andNSPointArg_(0, (3, 4))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = o.unsignedlonglongArg_andNSPointArg_(42, (1, 2))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = o.unsignedlonglongArg_andNSPointArg_(42, (3, 4))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = o.unsignedlonglongArg_andNSPointArg_(1L << 62, (1, 2))
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], (1, 2))
		r = o.unsignedlonglongArg_andNSPointArg_(1L << 62, (3, 4))
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], (3, 4))


	def testunsignedlonglongAndNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongArg_andNSRectArg_(0, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.unsignedlonglongArg_andNSRectArg_(0, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.unsignedlonglongArg_andNSRectArg_(42, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.unsignedlonglongArg_andNSRectArg_(42, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.unsignedlonglongArg_andNSRectArg_(1L << 62, ((1, 2), (3, 4)))
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.unsignedlonglongArg_andNSRectArg_(1L << 62, ((7, 8), (9, 10)))
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testfloatAndBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_andBOOLArg_(0.128, YES)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], YES)
		r = o.floatArg_andBOOLArg_(0.128, NO)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], NO)
		r = o.floatArg_andBOOLArg_(1.0, YES)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], YES)
		r = o.floatArg_andBOOLArg_(1.0, NO)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], NO)
		r = o.floatArg_andBOOLArg_(42.0, YES)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], YES)
		r = o.floatArg_andBOOLArg_(42.0, NO)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], NO)
		r = o.floatArg_andBOOLArg_(1e10, YES)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], YES)
		r = o.floatArg_andBOOLArg_(1e10, NO)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], NO)


	def testfloatAndcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_andcharArg_(0.128, -128)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -128)
		r = o.floatArg_andcharArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andcharArg_(0.128, 127)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 127)
		r = o.floatArg_andcharArg_(1.0, -128)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -128)
		r = o.floatArg_andcharArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andcharArg_(1.0, 127)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 127)
		r = o.floatArg_andcharArg_(42.0, -128)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -128)
		r = o.floatArg_andcharArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andcharArg_(42.0, 127)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 127)
		r = o.floatArg_andcharArg_(1e10, -128)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -128)
		r = o.floatArg_andcharArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andcharArg_(1e10, 127)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 127)


	def testfloatAndsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_andsignedshortArg_(0.128, -(1<<14))
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<14))
		r = o.floatArg_andsignedshortArg_(0.128, -42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = o.floatArg_andsignedshortArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andsignedshortArg_(0.128, 42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andsignedshortArg_(0.128, 1 << 14)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 14)
		r = o.floatArg_andsignedshortArg_(1.0, -(1<<14))
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<14))
		r = o.floatArg_andsignedshortArg_(1.0, -42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = o.floatArg_andsignedshortArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andsignedshortArg_(1.0, 42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andsignedshortArg_(1.0, 1 << 14)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 14)
		r = o.floatArg_andsignedshortArg_(42.0, -(1<<14))
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<14))
		r = o.floatArg_andsignedshortArg_(42.0, -42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = o.floatArg_andsignedshortArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andsignedshortArg_(42.0, 42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andsignedshortArg_(42.0, 1 << 14)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 14)
		r = o.floatArg_andsignedshortArg_(1e10, -(1<<14))
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<14))
		r = o.floatArg_andsignedshortArg_(1e10, -42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = o.floatArg_andsignedshortArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andsignedshortArg_(1e10, 42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andsignedshortArg_(1e10, 1 << 14)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 14)


	def testfloatAndsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_andsignedintArg_(0.128, -(1<<30))
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<30))
		r = o.floatArg_andsignedintArg_(0.128, -42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = o.floatArg_andsignedintArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andsignedintArg_(0.128, 42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andsignedintArg_(0.128, 1 << 30)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = o.floatArg_andsignedintArg_(1.0, -(1<<30))
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<30))
		r = o.floatArg_andsignedintArg_(1.0, -42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = o.floatArg_andsignedintArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andsignedintArg_(1.0, 42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andsignedintArg_(1.0, 1 << 30)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = o.floatArg_andsignedintArg_(42.0, -(1<<30))
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<30))
		r = o.floatArg_andsignedintArg_(42.0, -42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = o.floatArg_andsignedintArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andsignedintArg_(42.0, 42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andsignedintArg_(42.0, 1 << 30)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = o.floatArg_andsignedintArg_(1e10, -(1<<30))
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<30))
		r = o.floatArg_andsignedintArg_(1e10, -42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = o.floatArg_andsignedintArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andsignedintArg_(1e10, 42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andsignedintArg_(1e10, 1 << 30)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testfloatAndsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_andsignedlongArg_(0.128, -(1<<30))
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<30))
		r = o.floatArg_andsignedlongArg_(0.128, -42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = o.floatArg_andsignedlongArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andsignedlongArg_(0.128, 42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andsignedlongArg_(0.128, 1 << 30)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = o.floatArg_andsignedlongArg_(1.0, -(1<<30))
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<30))
		r = o.floatArg_andsignedlongArg_(1.0, -42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = o.floatArg_andsignedlongArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andsignedlongArg_(1.0, 42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andsignedlongArg_(1.0, 1 << 30)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = o.floatArg_andsignedlongArg_(42.0, -(1<<30))
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<30))
		r = o.floatArg_andsignedlongArg_(42.0, -42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = o.floatArg_andsignedlongArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andsignedlongArg_(42.0, 42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andsignedlongArg_(42.0, 1 << 30)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = o.floatArg_andsignedlongArg_(1e10, -(1<<30))
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<30))
		r = o.floatArg_andsignedlongArg_(1e10, -42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = o.floatArg_andsignedlongArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andsignedlongArg_(1e10, 42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andsignedlongArg_(1e10, 1 << 30)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testfloatAndsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_andsignedlonglongArg_(0.128, -(1L << 60))
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1L << 60))
		r = o.floatArg_andsignedlonglongArg_(0.128, -42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = o.floatArg_andsignedlonglongArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andsignedlonglongArg_(0.128, 42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andsignedlonglongArg_(0.128, 1L << 60)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 60)
		r = o.floatArg_andsignedlonglongArg_(1.0, -(1L << 60))
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1L << 60))
		r = o.floatArg_andsignedlonglongArg_(1.0, -42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = o.floatArg_andsignedlonglongArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andsignedlonglongArg_(1.0, 42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andsignedlonglongArg_(1.0, 1L << 60)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 60)
		r = o.floatArg_andsignedlonglongArg_(42.0, -(1L << 60))
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1L << 60))
		r = o.floatArg_andsignedlonglongArg_(42.0, -42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = o.floatArg_andsignedlonglongArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andsignedlonglongArg_(42.0, 42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andsignedlonglongArg_(42.0, 1L << 60)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 60)
		r = o.floatArg_andsignedlonglongArg_(1e10, -(1L << 60))
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1L << 60))
		r = o.floatArg_andsignedlonglongArg_(1e10, -42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = o.floatArg_andsignedlonglongArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andsignedlonglongArg_(1e10, 42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andsignedlonglongArg_(1e10, 1L << 60)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 60)


	def testfloatAndunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_andunsignedcharArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedcharArg_(0.128, 128)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 128)
		r = o.floatArg_andunsignedcharArg_(0.128, 255)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 255)
		r = o.floatArg_andunsignedcharArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedcharArg_(1.0, 128)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 128)
		r = o.floatArg_andunsignedcharArg_(1.0, 255)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 255)
		r = o.floatArg_andunsignedcharArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedcharArg_(42.0, 128)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 128)
		r = o.floatArg_andunsignedcharArg_(42.0, 255)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 255)
		r = o.floatArg_andunsignedcharArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedcharArg_(1e10, 128)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 128)
		r = o.floatArg_andunsignedcharArg_(1e10, 255)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 255)


	def testfloatAndunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_andunsignedshortArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedshortArg_(0.128, 42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andunsignedshortArg_(0.128, 1<<14)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1<<14)
		r = o.floatArg_andunsignedshortArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedshortArg_(1.0, 42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andunsignedshortArg_(1.0, 1<<14)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1<<14)
		r = o.floatArg_andunsignedshortArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedshortArg_(42.0, 42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andunsignedshortArg_(42.0, 1<<14)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1<<14)
		r = o.floatArg_andunsignedshortArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedshortArg_(1e10, 42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andunsignedshortArg_(1e10, 1<<14)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1<<14)


	def testfloatAndunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_andunsignedintArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedintArg_(0.128, 42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andunsignedintArg_(0.128, 1 << 30)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = o.floatArg_andunsignedintArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedintArg_(1.0, 42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andunsignedintArg_(1.0, 1 << 30)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = o.floatArg_andunsignedintArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedintArg_(42.0, 42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andunsignedintArg_(42.0, 1 << 30)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = o.floatArg_andunsignedintArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedintArg_(1e10, 42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andunsignedintArg_(1e10, 1 << 30)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testfloatAndunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_andunsignedlongArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedlongArg_(0.128, 42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andunsignedlongArg_(0.128, 1L << 30)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 30)
		r = o.floatArg_andunsignedlongArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedlongArg_(1.0, 42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andunsignedlongArg_(1.0, 1L << 30)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 30)
		r = o.floatArg_andunsignedlongArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedlongArg_(42.0, 42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andunsignedlongArg_(42.0, 1L << 30)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 30)
		r = o.floatArg_andunsignedlongArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedlongArg_(1e10, 42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andunsignedlongArg_(1e10, 1L << 30)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 30)


	def testfloatAndunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_andunsignedlonglongArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedlonglongArg_(0.128, 42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andunsignedlonglongArg_(0.128, 1L << 62)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 62)
		r = o.floatArg_andunsignedlonglongArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedlonglongArg_(1.0, 42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andunsignedlonglongArg_(1.0, 1L << 62)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 62)
		r = o.floatArg_andunsignedlonglongArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedlonglongArg_(42.0, 42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andunsignedlonglongArg_(42.0, 1L << 62)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 62)
		r = o.floatArg_andunsignedlonglongArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.floatArg_andunsignedlonglongArg_(1e10, 42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = o.floatArg_andunsignedlonglongArg_(1e10, 1L << 62)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 62)


	def testfloatAndfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_andfloatArg_(0.128, 0.128)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.floatArg_andfloatArg_(0.128, 1.0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.floatArg_andfloatArg_(0.128, 42.0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.floatArg_andfloatArg_(0.128, 1e10)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.floatArg_andfloatArg_(1.0, 0.128)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.floatArg_andfloatArg_(1.0, 1.0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.floatArg_andfloatArg_(1.0, 42.0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.floatArg_andfloatArg_(1.0, 1e10)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.floatArg_andfloatArg_(42.0, 0.128)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.floatArg_andfloatArg_(42.0, 1.0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.floatArg_andfloatArg_(42.0, 42.0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.floatArg_andfloatArg_(42.0, 1e10)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.floatArg_andfloatArg_(1e10, 0.128)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.floatArg_andfloatArg_(1e10, 1.0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.floatArg_andfloatArg_(1e10, 42.0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.floatArg_andfloatArg_(1e10, 1e10)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1e10)


	def testfloatAnddoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_anddoubleArg_(0.128, 0.128)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.floatArg_anddoubleArg_(0.128, 1.0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.floatArg_anddoubleArg_(0.128, 42.0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.floatArg_anddoubleArg_(0.128, 1e10)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.floatArg_anddoubleArg_(1.0, 0.128)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.floatArg_anddoubleArg_(1.0, 1.0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.floatArg_anddoubleArg_(1.0, 42.0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.floatArg_anddoubleArg_(1.0, 1e10)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.floatArg_anddoubleArg_(42.0, 0.128)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.floatArg_anddoubleArg_(42.0, 1.0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.floatArg_anddoubleArg_(42.0, 42.0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.floatArg_anddoubleArg_(42.0, 1e10)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.floatArg_anddoubleArg_(1e10, 0.128)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.floatArg_anddoubleArg_(1e10, 1.0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.floatArg_anddoubleArg_(1e10, 42.0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.floatArg_anddoubleArg_(1e10, 1e10)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1e10)


	def testfloatAndidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_andidArg_(0.128, NSPriorDayDesignations)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.floatArg_andidArg_(1.0, NSPriorDayDesignations)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.floatArg_andidArg_(42.0, NSPriorDayDesignations)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.floatArg_andidArg_(1e10, NSPriorDayDesignations)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testfloatAndcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_andcharPtrArg_(0.128, "hello")
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "hello")
		r = o.floatArg_andcharPtrArg_(0.128, "world")
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "world")
		r = o.floatArg_andcharPtrArg_(0.128, "foobar")
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "foobar")
		r = o.floatArg_andcharPtrArg_(1.0, "hello")
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "hello")
		r = o.floatArg_andcharPtrArg_(1.0, "world")
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "world")
		r = o.floatArg_andcharPtrArg_(1.0, "foobar")
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "foobar")
		r = o.floatArg_andcharPtrArg_(42.0, "hello")
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "hello")
		r = o.floatArg_andcharPtrArg_(42.0, "world")
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "world")
		r = o.floatArg_andcharPtrArg_(42.0, "foobar")
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "foobar")
		r = o.floatArg_andcharPtrArg_(1e10, "hello")
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "hello")
		r = o.floatArg_andcharPtrArg_(1e10, "world")
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "world")
		r = o.floatArg_andcharPtrArg_(1e10, "foobar")
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "foobar")


	def testfloatAndNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_andNSPointArg_(0.128, (1, 2))
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], (1, 2))
		r = o.floatArg_andNSPointArg_(0.128, (3, 4))
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], (3, 4))
		r = o.floatArg_andNSPointArg_(1.0, (1, 2))
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], (1, 2))
		r = o.floatArg_andNSPointArg_(1.0, (3, 4))
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], (3, 4))
		r = o.floatArg_andNSPointArg_(42.0, (1, 2))
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], (1, 2))
		r = o.floatArg_andNSPointArg_(42.0, (3, 4))
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], (3, 4))
		r = o.floatArg_andNSPointArg_(1e10, (1, 2))
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], (1, 2))
		r = o.floatArg_andNSPointArg_(1e10, (3, 4))
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], (3, 4))


	def testfloatAndNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatArg_andNSRectArg_(0.128, ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.floatArg_andNSRectArg_(0.128, ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.floatArg_andNSRectArg_(1.0, ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.floatArg_andNSRectArg_(1.0, ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.floatArg_andNSRectArg_(42.0, ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.floatArg_andNSRectArg_(42.0, ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.floatArg_andNSRectArg_(1e10, ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.floatArg_andNSRectArg_(1e10, ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testdoubleAndBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_andBOOLArg_(0.128, YES)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], YES)
		r = o.doubleArg_andBOOLArg_(0.128, NO)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], NO)
		r = o.doubleArg_andBOOLArg_(1.0, YES)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], YES)
		r = o.doubleArg_andBOOLArg_(1.0, NO)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], NO)
		r = o.doubleArg_andBOOLArg_(42.0, YES)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], YES)
		r = o.doubleArg_andBOOLArg_(42.0, NO)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], NO)
		r = o.doubleArg_andBOOLArg_(1e10, YES)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], YES)
		r = o.doubleArg_andBOOLArg_(1e10, NO)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], NO)


	def testdoubleAndcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_andcharArg_(0.128, -128)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -128)
		r = o.doubleArg_andcharArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andcharArg_(0.128, 127)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 127)
		r = o.doubleArg_andcharArg_(1.0, -128)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -128)
		r = o.doubleArg_andcharArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andcharArg_(1.0, 127)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 127)
		r = o.doubleArg_andcharArg_(42.0, -128)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -128)
		r = o.doubleArg_andcharArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andcharArg_(42.0, 127)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 127)
		r = o.doubleArg_andcharArg_(1e10, -128)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -128)
		r = o.doubleArg_andcharArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andcharArg_(1e10, 127)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 127)


	def testdoubleAndsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_andsignedshortArg_(0.128, -(1<<14))
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<14))
		r = o.doubleArg_andsignedshortArg_(0.128, -42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = o.doubleArg_andsignedshortArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andsignedshortArg_(0.128, 42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andsignedshortArg_(0.128, 1 << 14)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 14)
		r = o.doubleArg_andsignedshortArg_(1.0, -(1<<14))
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<14))
		r = o.doubleArg_andsignedshortArg_(1.0, -42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = o.doubleArg_andsignedshortArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andsignedshortArg_(1.0, 42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andsignedshortArg_(1.0, 1 << 14)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 14)
		r = o.doubleArg_andsignedshortArg_(42.0, -(1<<14))
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<14))
		r = o.doubleArg_andsignedshortArg_(42.0, -42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = o.doubleArg_andsignedshortArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andsignedshortArg_(42.0, 42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andsignedshortArg_(42.0, 1 << 14)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 14)
		r = o.doubleArg_andsignedshortArg_(1e10, -(1<<14))
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<14))
		r = o.doubleArg_andsignedshortArg_(1e10, -42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = o.doubleArg_andsignedshortArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andsignedshortArg_(1e10, 42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andsignedshortArg_(1e10, 1 << 14)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 14)


	def testdoubleAndsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_andsignedintArg_(0.128, -(1<<30))
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<30))
		r = o.doubleArg_andsignedintArg_(0.128, -42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = o.doubleArg_andsignedintArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andsignedintArg_(0.128, 42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andsignedintArg_(0.128, 1 << 30)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = o.doubleArg_andsignedintArg_(1.0, -(1<<30))
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<30))
		r = o.doubleArg_andsignedintArg_(1.0, -42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = o.doubleArg_andsignedintArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andsignedintArg_(1.0, 42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andsignedintArg_(1.0, 1 << 30)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = o.doubleArg_andsignedintArg_(42.0, -(1<<30))
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<30))
		r = o.doubleArg_andsignedintArg_(42.0, -42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = o.doubleArg_andsignedintArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andsignedintArg_(42.0, 42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andsignedintArg_(42.0, 1 << 30)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = o.doubleArg_andsignedintArg_(1e10, -(1<<30))
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<30))
		r = o.doubleArg_andsignedintArg_(1e10, -42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = o.doubleArg_andsignedintArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andsignedintArg_(1e10, 42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andsignedintArg_(1e10, 1 << 30)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testdoubleAndsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_andsignedlongArg_(0.128, -(1<<30))
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<30))
		r = o.doubleArg_andsignedlongArg_(0.128, -42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = o.doubleArg_andsignedlongArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andsignedlongArg_(0.128, 42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andsignedlongArg_(0.128, 1 << 30)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = o.doubleArg_andsignedlongArg_(1.0, -(1<<30))
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<30))
		r = o.doubleArg_andsignedlongArg_(1.0, -42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = o.doubleArg_andsignedlongArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andsignedlongArg_(1.0, 42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andsignedlongArg_(1.0, 1 << 30)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = o.doubleArg_andsignedlongArg_(42.0, -(1<<30))
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<30))
		r = o.doubleArg_andsignedlongArg_(42.0, -42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = o.doubleArg_andsignedlongArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andsignedlongArg_(42.0, 42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andsignedlongArg_(42.0, 1 << 30)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = o.doubleArg_andsignedlongArg_(1e10, -(1<<30))
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<30))
		r = o.doubleArg_andsignedlongArg_(1e10, -42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = o.doubleArg_andsignedlongArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andsignedlongArg_(1e10, 42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andsignedlongArg_(1e10, 1 << 30)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testdoubleAndsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_andsignedlonglongArg_(0.128, -(1L << 60))
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1L << 60))
		r = o.doubleArg_andsignedlonglongArg_(0.128, -42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = o.doubleArg_andsignedlonglongArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andsignedlonglongArg_(0.128, 42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andsignedlonglongArg_(0.128, 1L << 60)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 60)
		r = o.doubleArg_andsignedlonglongArg_(1.0, -(1L << 60))
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1L << 60))
		r = o.doubleArg_andsignedlonglongArg_(1.0, -42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = o.doubleArg_andsignedlonglongArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andsignedlonglongArg_(1.0, 42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andsignedlonglongArg_(1.0, 1L << 60)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 60)
		r = o.doubleArg_andsignedlonglongArg_(42.0, -(1L << 60))
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1L << 60))
		r = o.doubleArg_andsignedlonglongArg_(42.0, -42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = o.doubleArg_andsignedlonglongArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andsignedlonglongArg_(42.0, 42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andsignedlonglongArg_(42.0, 1L << 60)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 60)
		r = o.doubleArg_andsignedlonglongArg_(1e10, -(1L << 60))
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1L << 60))
		r = o.doubleArg_andsignedlonglongArg_(1e10, -42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = o.doubleArg_andsignedlonglongArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andsignedlonglongArg_(1e10, 42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andsignedlonglongArg_(1e10, 1L << 60)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 60)


	def testdoubleAndunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_andunsignedcharArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedcharArg_(0.128, 128)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 128)
		r = o.doubleArg_andunsignedcharArg_(0.128, 255)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 255)
		r = o.doubleArg_andunsignedcharArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedcharArg_(1.0, 128)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 128)
		r = o.doubleArg_andunsignedcharArg_(1.0, 255)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 255)
		r = o.doubleArg_andunsignedcharArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedcharArg_(42.0, 128)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 128)
		r = o.doubleArg_andunsignedcharArg_(42.0, 255)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 255)
		r = o.doubleArg_andunsignedcharArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedcharArg_(1e10, 128)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 128)
		r = o.doubleArg_andunsignedcharArg_(1e10, 255)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 255)


	def testdoubleAndunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_andunsignedshortArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedshortArg_(0.128, 42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andunsignedshortArg_(0.128, 1<<14)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1<<14)
		r = o.doubleArg_andunsignedshortArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedshortArg_(1.0, 42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andunsignedshortArg_(1.0, 1<<14)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1<<14)
		r = o.doubleArg_andunsignedshortArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedshortArg_(42.0, 42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andunsignedshortArg_(42.0, 1<<14)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1<<14)
		r = o.doubleArg_andunsignedshortArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedshortArg_(1e10, 42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andunsignedshortArg_(1e10, 1<<14)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1<<14)


	def testdoubleAndunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_andunsignedintArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedintArg_(0.128, 42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andunsignedintArg_(0.128, 1 << 30)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = o.doubleArg_andunsignedintArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedintArg_(1.0, 42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andunsignedintArg_(1.0, 1 << 30)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = o.doubleArg_andunsignedintArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedintArg_(42.0, 42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andunsignedintArg_(42.0, 1 << 30)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = o.doubleArg_andunsignedintArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedintArg_(1e10, 42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andunsignedintArg_(1e10, 1 << 30)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testdoubleAndunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_andunsignedlongArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedlongArg_(0.128, 42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andunsignedlongArg_(0.128, 1L << 30)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 30)
		r = o.doubleArg_andunsignedlongArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedlongArg_(1.0, 42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andunsignedlongArg_(1.0, 1L << 30)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 30)
		r = o.doubleArg_andunsignedlongArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedlongArg_(42.0, 42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andunsignedlongArg_(42.0, 1L << 30)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 30)
		r = o.doubleArg_andunsignedlongArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedlongArg_(1e10, 42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andunsignedlongArg_(1e10, 1L << 30)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 30)


	def testdoubleAndunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_andunsignedlonglongArg_(0.128, 0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedlonglongArg_(0.128, 42)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andunsignedlonglongArg_(0.128, 1L << 62)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 62)
		r = o.doubleArg_andunsignedlonglongArg_(1.0, 0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedlonglongArg_(1.0, 42)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andunsignedlonglongArg_(1.0, 1L << 62)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 62)
		r = o.doubleArg_andunsignedlonglongArg_(42.0, 0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedlonglongArg_(42.0, 42)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andunsignedlonglongArg_(42.0, 1L << 62)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 62)
		r = o.doubleArg_andunsignedlonglongArg_(1e10, 0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = o.doubleArg_andunsignedlonglongArg_(1e10, 42)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = o.doubleArg_andunsignedlonglongArg_(1e10, 1L << 62)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 62)


	def testdoubleAndfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_andfloatArg_(0.128, 0.128)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.doubleArg_andfloatArg_(0.128, 1.0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.doubleArg_andfloatArg_(0.128, 42.0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.doubleArg_andfloatArg_(0.128, 1e10)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.doubleArg_andfloatArg_(1.0, 0.128)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.doubleArg_andfloatArg_(1.0, 1.0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.doubleArg_andfloatArg_(1.0, 42.0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.doubleArg_andfloatArg_(1.0, 1e10)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.doubleArg_andfloatArg_(42.0, 0.128)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.doubleArg_andfloatArg_(42.0, 1.0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.doubleArg_andfloatArg_(42.0, 42.0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.doubleArg_andfloatArg_(42.0, 1e10)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.doubleArg_andfloatArg_(1e10, 0.128)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.doubleArg_andfloatArg_(1e10, 1.0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.doubleArg_andfloatArg_(1e10, 42.0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.doubleArg_andfloatArg_(1e10, 1e10)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1e10)


	def testdoubleAnddoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_anddoubleArg_(0.128, 0.128)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.doubleArg_anddoubleArg_(0.128, 1.0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.doubleArg_anddoubleArg_(0.128, 42.0)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.doubleArg_anddoubleArg_(0.128, 1e10)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.doubleArg_anddoubleArg_(1.0, 0.128)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.doubleArg_anddoubleArg_(1.0, 1.0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.doubleArg_anddoubleArg_(1.0, 42.0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.doubleArg_anddoubleArg_(1.0, 1e10)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.doubleArg_anddoubleArg_(42.0, 0.128)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.doubleArg_anddoubleArg_(42.0, 1.0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.doubleArg_anddoubleArg_(42.0, 42.0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.doubleArg_anddoubleArg_(42.0, 1e10)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = o.doubleArg_anddoubleArg_(1e10, 0.128)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.doubleArg_anddoubleArg_(1e10, 1.0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.doubleArg_anddoubleArg_(1e10, 42.0)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.doubleArg_anddoubleArg_(1e10, 1e10)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1e10)


	def testdoubleAndidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_andidArg_(0.128, NSPriorDayDesignations)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.doubleArg_andidArg_(1.0, NSPriorDayDesignations)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.doubleArg_andidArg_(42.0, NSPriorDayDesignations)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.doubleArg_andidArg_(1e10, NSPriorDayDesignations)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testdoubleAndcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_andcharPtrArg_(0.128, "hello")
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "hello")
		r = o.doubleArg_andcharPtrArg_(0.128, "world")
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "world")
		r = o.doubleArg_andcharPtrArg_(0.128, "foobar")
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "foobar")
		r = o.doubleArg_andcharPtrArg_(1.0, "hello")
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "hello")
		r = o.doubleArg_andcharPtrArg_(1.0, "world")
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "world")
		r = o.doubleArg_andcharPtrArg_(1.0, "foobar")
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "foobar")
		r = o.doubleArg_andcharPtrArg_(42.0, "hello")
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "hello")
		r = o.doubleArg_andcharPtrArg_(42.0, "world")
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "world")
		r = o.doubleArg_andcharPtrArg_(42.0, "foobar")
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "foobar")
		r = o.doubleArg_andcharPtrArg_(1e10, "hello")
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "hello")
		r = o.doubleArg_andcharPtrArg_(1e10, "world")
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "world")
		r = o.doubleArg_andcharPtrArg_(1e10, "foobar")
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "foobar")


	def testdoubleAndNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_andNSPointArg_(0.128, (1, 2))
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], (1, 2))
		r = o.doubleArg_andNSPointArg_(0.128, (3, 4))
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], (3, 4))
		r = o.doubleArg_andNSPointArg_(1.0, (1, 2))
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], (1, 2))
		r = o.doubleArg_andNSPointArg_(1.0, (3, 4))
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], (3, 4))
		r = o.doubleArg_andNSPointArg_(42.0, (1, 2))
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], (1, 2))
		r = o.doubleArg_andNSPointArg_(42.0, (3, 4))
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], (3, 4))
		r = o.doubleArg_andNSPointArg_(1e10, (1, 2))
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], (1, 2))
		r = o.doubleArg_andNSPointArg_(1e10, (3, 4))
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], (3, 4))


	def testdoubleAndNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleArg_andNSRectArg_(0.128, ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.doubleArg_andNSRectArg_(0.128, ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.doubleArg_andNSRectArg_(1.0, ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.doubleArg_andNSRectArg_(1.0, ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.doubleArg_andNSRectArg_(42.0, ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.doubleArg_andNSRectArg_(42.0, ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.doubleArg_andNSRectArg_(1e10, ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.doubleArg_andNSRectArg_(1e10, ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testidAndBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_andBOOLArg_(NSPriorDayDesignations, YES)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], YES)
		r = o.idArg_andBOOLArg_(NSPriorDayDesignations, NO)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], NO)


	def testidAndcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_andcharArg_(NSPriorDayDesignations, -128)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -128)
		r = o.idArg_andcharArg_(NSPriorDayDesignations, 0)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = o.idArg_andcharArg_(NSPriorDayDesignations, 127)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 127)


	def testidAndsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_andsignedshortArg_(NSPriorDayDesignations, -(1<<14))
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -(1<<14))
		r = o.idArg_andsignedshortArg_(NSPriorDayDesignations, -42)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -42)
		r = o.idArg_andsignedshortArg_(NSPriorDayDesignations, 0)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = o.idArg_andsignedshortArg_(NSPriorDayDesignations, 42)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = o.idArg_andsignedshortArg_(NSPriorDayDesignations, 1 << 14)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1 << 14)


	def testidAndsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_andsignedintArg_(NSPriorDayDesignations, -(1<<30))
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -(1<<30))
		r = o.idArg_andsignedintArg_(NSPriorDayDesignations, -42)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -42)
		r = o.idArg_andsignedintArg_(NSPriorDayDesignations, 0)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = o.idArg_andsignedintArg_(NSPriorDayDesignations, 42)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = o.idArg_andsignedintArg_(NSPriorDayDesignations, 1 << 30)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1 << 30)


	def testidAndsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_andsignedlongArg_(NSPriorDayDesignations, -(1<<30))
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -(1<<30))
		r = o.idArg_andsignedlongArg_(NSPriorDayDesignations, -42)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -42)
		r = o.idArg_andsignedlongArg_(NSPriorDayDesignations, 0)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = o.idArg_andsignedlongArg_(NSPriorDayDesignations, 42)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = o.idArg_andsignedlongArg_(NSPriorDayDesignations, 1 << 30)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1 << 30)


	def testidAndsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_andsignedlonglongArg_(NSPriorDayDesignations, -(1L << 60))
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -(1L << 60))
		r = o.idArg_andsignedlonglongArg_(NSPriorDayDesignations, -42)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -42)
		r = o.idArg_andsignedlonglongArg_(NSPriorDayDesignations, 0)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = o.idArg_andsignedlonglongArg_(NSPriorDayDesignations, 42)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = o.idArg_andsignedlonglongArg_(NSPriorDayDesignations, 1L << 60)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1L << 60)


	def testidAndunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_andunsignedcharArg_(NSPriorDayDesignations, 0)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = o.idArg_andunsignedcharArg_(NSPriorDayDesignations, 128)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 128)
		r = o.idArg_andunsignedcharArg_(NSPriorDayDesignations, 255)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 255)


	def testidAndunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_andunsignedshortArg_(NSPriorDayDesignations, 0)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = o.idArg_andunsignedshortArg_(NSPriorDayDesignations, 42)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = o.idArg_andunsignedshortArg_(NSPriorDayDesignations, 1<<14)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1<<14)


	def testidAndunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_andunsignedintArg_(NSPriorDayDesignations, 0)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = o.idArg_andunsignedintArg_(NSPriorDayDesignations, 42)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = o.idArg_andunsignedintArg_(NSPriorDayDesignations, 1 << 30)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1 << 30)


	def testidAndunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_andunsignedlongArg_(NSPriorDayDesignations, 0)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = o.idArg_andunsignedlongArg_(NSPriorDayDesignations, 42)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = o.idArg_andunsignedlongArg_(NSPriorDayDesignations, 1L << 30)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1L << 30)


	def testidAndunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_andunsignedlonglongArg_(NSPriorDayDesignations, 0)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = o.idArg_andunsignedlonglongArg_(NSPriorDayDesignations, 42)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = o.idArg_andunsignedlonglongArg_(NSPriorDayDesignations, 1L << 62)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1L << 62)


	def testidAndfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_andfloatArg_(NSPriorDayDesignations, 0.128)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.idArg_andfloatArg_(NSPriorDayDesignations, 1.0)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.idArg_andfloatArg_(NSPriorDayDesignations, 42.0)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.idArg_andfloatArg_(NSPriorDayDesignations, 1e10)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 1e10)


	def testidAnddoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_anddoubleArg_(NSPriorDayDesignations, 0.128)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.idArg_anddoubleArg_(NSPriorDayDesignations, 1.0)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.idArg_anddoubleArg_(NSPriorDayDesignations, 42.0)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.idArg_anddoubleArg_(NSPriorDayDesignations, 1e10)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 1e10)


	def testidAndidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_andidArg_(NSPriorDayDesignations, NSPriorDayDesignations)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testidAndcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_andcharPtrArg_(NSPriorDayDesignations, "hello")
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], "hello")
		r = o.idArg_andcharPtrArg_(NSPriorDayDesignations, "world")
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], "world")
		r = o.idArg_andcharPtrArg_(NSPriorDayDesignations, "foobar")
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], "foobar")


	def testidAndNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_andNSPointArg_(NSPriorDayDesignations, (1, 2))
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], (1, 2))
		r = o.idArg_andNSPointArg_(NSPriorDayDesignations, (3, 4))
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], (3, 4))


	def testidAndNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idArg_andNSRectArg_(NSPriorDayDesignations, ((1, 2), (3, 4)))
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.idArg_andNSRectArg_(NSPriorDayDesignations, ((7, 8), (9, 10)))
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcharPtrAndBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_andBOOLArg_("hello", YES)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], YES)
		r = o.charPtrArg_andBOOLArg_("hello", NO)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], NO)
		r = o.charPtrArg_andBOOLArg_("world", YES)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], YES)
		r = o.charPtrArg_andBOOLArg_("world", NO)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], NO)
		r = o.charPtrArg_andBOOLArg_("foobar", YES)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], YES)
		r = o.charPtrArg_andBOOLArg_("foobar", NO)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], NO)


	def testcharPtrAndcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_andcharArg_("hello", -128)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -128)
		r = o.charPtrArg_andcharArg_("hello", 0)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andcharArg_("hello", 127)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 127)
		r = o.charPtrArg_andcharArg_("world", -128)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -128)
		r = o.charPtrArg_andcharArg_("world", 0)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andcharArg_("world", 127)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 127)
		r = o.charPtrArg_andcharArg_("foobar", -128)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -128)
		r = o.charPtrArg_andcharArg_("foobar", 0)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andcharArg_("foobar", 127)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 127)


	def testcharPtrAndsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_andsignedshortArg_("hello", -(1<<14))
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -(1<<14))
		r = o.charPtrArg_andsignedshortArg_("hello", -42)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -42)
		r = o.charPtrArg_andsignedshortArg_("hello", 0)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andsignedshortArg_("hello", 42)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andsignedshortArg_("hello", 1 << 14)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1 << 14)
		r = o.charPtrArg_andsignedshortArg_("world", -(1<<14))
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -(1<<14))
		r = o.charPtrArg_andsignedshortArg_("world", -42)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -42)
		r = o.charPtrArg_andsignedshortArg_("world", 0)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andsignedshortArg_("world", 42)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andsignedshortArg_("world", 1 << 14)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1 << 14)
		r = o.charPtrArg_andsignedshortArg_("foobar", -(1<<14))
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -(1<<14))
		r = o.charPtrArg_andsignedshortArg_("foobar", -42)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -42)
		r = o.charPtrArg_andsignedshortArg_("foobar", 0)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andsignedshortArg_("foobar", 42)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andsignedshortArg_("foobar", 1 << 14)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1 << 14)


	def testcharPtrAndsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_andsignedintArg_("hello", -(1<<30))
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -(1<<30))
		r = o.charPtrArg_andsignedintArg_("hello", -42)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -42)
		r = o.charPtrArg_andsignedintArg_("hello", 0)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andsignedintArg_("hello", 42)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andsignedintArg_("hello", 1 << 30)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1 << 30)
		r = o.charPtrArg_andsignedintArg_("world", -(1<<30))
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -(1<<30))
		r = o.charPtrArg_andsignedintArg_("world", -42)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -42)
		r = o.charPtrArg_andsignedintArg_("world", 0)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andsignedintArg_("world", 42)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andsignedintArg_("world", 1 << 30)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1 << 30)
		r = o.charPtrArg_andsignedintArg_("foobar", -(1<<30))
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -(1<<30))
		r = o.charPtrArg_andsignedintArg_("foobar", -42)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -42)
		r = o.charPtrArg_andsignedintArg_("foobar", 0)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andsignedintArg_("foobar", 42)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andsignedintArg_("foobar", 1 << 30)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1 << 30)


	def testcharPtrAndsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_andsignedlongArg_("hello", -(1<<30))
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -(1<<30))
		r = o.charPtrArg_andsignedlongArg_("hello", -42)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -42)
		r = o.charPtrArg_andsignedlongArg_("hello", 0)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andsignedlongArg_("hello", 42)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andsignedlongArg_("hello", 1 << 30)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1 << 30)
		r = o.charPtrArg_andsignedlongArg_("world", -(1<<30))
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -(1<<30))
		r = o.charPtrArg_andsignedlongArg_("world", -42)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -42)
		r = o.charPtrArg_andsignedlongArg_("world", 0)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andsignedlongArg_("world", 42)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andsignedlongArg_("world", 1 << 30)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1 << 30)
		r = o.charPtrArg_andsignedlongArg_("foobar", -(1<<30))
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -(1<<30))
		r = o.charPtrArg_andsignedlongArg_("foobar", -42)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -42)
		r = o.charPtrArg_andsignedlongArg_("foobar", 0)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andsignedlongArg_("foobar", 42)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andsignedlongArg_("foobar", 1 << 30)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1 << 30)


	def testcharPtrAndsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_andsignedlonglongArg_("hello", -(1L << 60))
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -(1L << 60))
		r = o.charPtrArg_andsignedlonglongArg_("hello", -42)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -42)
		r = o.charPtrArg_andsignedlonglongArg_("hello", 0)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andsignedlonglongArg_("hello", 42)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andsignedlonglongArg_("hello", 1L << 60)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1L << 60)
		r = o.charPtrArg_andsignedlonglongArg_("world", -(1L << 60))
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -(1L << 60))
		r = o.charPtrArg_andsignedlonglongArg_("world", -42)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -42)
		r = o.charPtrArg_andsignedlonglongArg_("world", 0)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andsignedlonglongArg_("world", 42)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andsignedlonglongArg_("world", 1L << 60)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1L << 60)
		r = o.charPtrArg_andsignedlonglongArg_("foobar", -(1L << 60))
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -(1L << 60))
		r = o.charPtrArg_andsignedlonglongArg_("foobar", -42)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -42)
		r = o.charPtrArg_andsignedlonglongArg_("foobar", 0)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andsignedlonglongArg_("foobar", 42)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andsignedlonglongArg_("foobar", 1L << 60)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1L << 60)


	def testcharPtrAndunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_andunsignedcharArg_("hello", 0)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andunsignedcharArg_("hello", 128)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 128)
		r = o.charPtrArg_andunsignedcharArg_("hello", 255)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 255)
		r = o.charPtrArg_andunsignedcharArg_("world", 0)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andunsignedcharArg_("world", 128)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 128)
		r = o.charPtrArg_andunsignedcharArg_("world", 255)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 255)
		r = o.charPtrArg_andunsignedcharArg_("foobar", 0)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andunsignedcharArg_("foobar", 128)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 128)
		r = o.charPtrArg_andunsignedcharArg_("foobar", 255)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 255)


	def testcharPtrAndunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_andunsignedshortArg_("hello", 0)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andunsignedshortArg_("hello", 42)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andunsignedshortArg_("hello", 1<<14)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1<<14)
		r = o.charPtrArg_andunsignedshortArg_("world", 0)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andunsignedshortArg_("world", 42)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andunsignedshortArg_("world", 1<<14)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1<<14)
		r = o.charPtrArg_andunsignedshortArg_("foobar", 0)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andunsignedshortArg_("foobar", 42)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andunsignedshortArg_("foobar", 1<<14)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1<<14)


	def testcharPtrAndunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_andunsignedintArg_("hello", 0)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andunsignedintArg_("hello", 42)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andunsignedintArg_("hello", 1 << 30)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1 << 30)
		r = o.charPtrArg_andunsignedintArg_("world", 0)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andunsignedintArg_("world", 42)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andunsignedintArg_("world", 1 << 30)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1 << 30)
		r = o.charPtrArg_andunsignedintArg_("foobar", 0)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andunsignedintArg_("foobar", 42)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andunsignedintArg_("foobar", 1 << 30)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1 << 30)


	def testcharPtrAndunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_andunsignedlongArg_("hello", 0)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andunsignedlongArg_("hello", 42)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andunsignedlongArg_("hello", 1L << 30)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1L << 30)
		r = o.charPtrArg_andunsignedlongArg_("world", 0)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andunsignedlongArg_("world", 42)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andunsignedlongArg_("world", 1L << 30)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1L << 30)
		r = o.charPtrArg_andunsignedlongArg_("foobar", 0)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andunsignedlongArg_("foobar", 42)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andunsignedlongArg_("foobar", 1L << 30)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1L << 30)


	def testcharPtrAndunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_andunsignedlonglongArg_("hello", 0)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andunsignedlonglongArg_("hello", 42)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andunsignedlonglongArg_("hello", 1L << 62)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1L << 62)
		r = o.charPtrArg_andunsignedlonglongArg_("world", 0)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andunsignedlonglongArg_("world", 42)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andunsignedlonglongArg_("world", 1L << 62)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1L << 62)
		r = o.charPtrArg_andunsignedlonglongArg_("foobar", 0)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = o.charPtrArg_andunsignedlonglongArg_("foobar", 42)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = o.charPtrArg_andunsignedlonglongArg_("foobar", 1L << 62)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1L << 62)


	def testcharPtrAndfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_andfloatArg_("hello", 0.128)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 0.128)
		r = o.charPtrArg_andfloatArg_("hello", 1.0)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 1.0)
		r = o.charPtrArg_andfloatArg_("hello", 42.0)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 42.0)
		r = o.charPtrArg_andfloatArg_("hello", 1e10)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 1e10)
		r = o.charPtrArg_andfloatArg_("world", 0.128)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 0.128)
		r = o.charPtrArg_andfloatArg_("world", 1.0)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 1.0)
		r = o.charPtrArg_andfloatArg_("world", 42.0)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 42.0)
		r = o.charPtrArg_andfloatArg_("world", 1e10)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 1e10)
		r = o.charPtrArg_andfloatArg_("foobar", 0.128)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 0.128)
		r = o.charPtrArg_andfloatArg_("foobar", 1.0)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 1.0)
		r = o.charPtrArg_andfloatArg_("foobar", 42.0)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 42.0)
		r = o.charPtrArg_andfloatArg_("foobar", 1e10)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 1e10)


	def testcharPtrAnddoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_anddoubleArg_("hello", 0.128)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 0.128)
		r = o.charPtrArg_anddoubleArg_("hello", 1.0)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 1.0)
		r = o.charPtrArg_anddoubleArg_("hello", 42.0)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 42.0)
		r = o.charPtrArg_anddoubleArg_("hello", 1e10)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 1e10)
		r = o.charPtrArg_anddoubleArg_("world", 0.128)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 0.128)
		r = o.charPtrArg_anddoubleArg_("world", 1.0)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 1.0)
		r = o.charPtrArg_anddoubleArg_("world", 42.0)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 42.0)
		r = o.charPtrArg_anddoubleArg_("world", 1e10)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 1e10)
		r = o.charPtrArg_anddoubleArg_("foobar", 0.128)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 0.128)
		r = o.charPtrArg_anddoubleArg_("foobar", 1.0)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 1.0)
		r = o.charPtrArg_anddoubleArg_("foobar", 42.0)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 42.0)
		r = o.charPtrArg_anddoubleArg_("foobar", 1e10)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 1e10)


	def testcharPtrAndidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_andidArg_("hello", NSPriorDayDesignations)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.charPtrArg_andidArg_("world", NSPriorDayDesignations)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.charPtrArg_andidArg_("foobar", NSPriorDayDesignations)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcharPtrAndcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_andcharPtrArg_("hello", "hello")
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], "hello")
		r = o.charPtrArg_andcharPtrArg_("hello", "world")
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], "world")
		r = o.charPtrArg_andcharPtrArg_("hello", "foobar")
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], "foobar")
		r = o.charPtrArg_andcharPtrArg_("world", "hello")
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], "hello")
		r = o.charPtrArg_andcharPtrArg_("world", "world")
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], "world")
		r = o.charPtrArg_andcharPtrArg_("world", "foobar")
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], "foobar")
		r = o.charPtrArg_andcharPtrArg_("foobar", "hello")
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], "hello")
		r = o.charPtrArg_andcharPtrArg_("foobar", "world")
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], "world")
		r = o.charPtrArg_andcharPtrArg_("foobar", "foobar")
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], "foobar")


	def testcharPtrAndNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_andNSPointArg_("hello", (1, 2))
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], (1, 2))
		r = o.charPtrArg_andNSPointArg_("hello", (3, 4))
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], (3, 4))
		r = o.charPtrArg_andNSPointArg_("world", (1, 2))
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], (1, 2))
		r = o.charPtrArg_andNSPointArg_("world", (3, 4))
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], (3, 4))
		r = o.charPtrArg_andNSPointArg_("foobar", (1, 2))
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], (1, 2))
		r = o.charPtrArg_andNSPointArg_("foobar", (3, 4))
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], (3, 4))


	def testcharPtrAndNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrArg_andNSRectArg_("hello", ((1, 2), (3, 4)))
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.charPtrArg_andNSRectArg_("hello", ((7, 8), (9, 10)))
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.charPtrArg_andNSRectArg_("world", ((1, 2), (3, 4)))
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.charPtrArg_andNSRectArg_("world", ((7, 8), (9, 10)))
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.charPtrArg_andNSRectArg_("foobar", ((1, 2), (3, 4)))
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.charPtrArg_andNSRectArg_("foobar", ((7, 8), (9, 10)))
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testNSPointAndBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_andBOOLArg_((1, 2), YES)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], YES)
		r = o.NSPointArg_andBOOLArg_((1, 2), NO)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], NO)
		r = o.NSPointArg_andBOOLArg_((3, 4), YES)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], YES)
		r = o.NSPointArg_andBOOLArg_((3, 4), NO)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], NO)


	def testNSPointAndcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_andcharArg_((1, 2), -128)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -128)
		r = o.NSPointArg_andcharArg_((1, 2), 0)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andcharArg_((1, 2), 127)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 127)
		r = o.NSPointArg_andcharArg_((3, 4), -128)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -128)
		r = o.NSPointArg_andcharArg_((3, 4), 0)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andcharArg_((3, 4), 127)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 127)


	def testNSPointAndsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_andsignedshortArg_((1, 2), -(1<<14))
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -(1<<14))
		r = o.NSPointArg_andsignedshortArg_((1, 2), -42)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -42)
		r = o.NSPointArg_andsignedshortArg_((1, 2), 0)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andsignedshortArg_((1, 2), 42)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = o.NSPointArg_andsignedshortArg_((1, 2), 1 << 14)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1 << 14)
		r = o.NSPointArg_andsignedshortArg_((3, 4), -(1<<14))
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -(1<<14))
		r = o.NSPointArg_andsignedshortArg_((3, 4), -42)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -42)
		r = o.NSPointArg_andsignedshortArg_((3, 4), 0)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andsignedshortArg_((3, 4), 42)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = o.NSPointArg_andsignedshortArg_((3, 4), 1 << 14)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1 << 14)


	def testNSPointAndsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_andsignedintArg_((1, 2), -(1<<30))
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -(1<<30))
		r = o.NSPointArg_andsignedintArg_((1, 2), -42)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -42)
		r = o.NSPointArg_andsignedintArg_((1, 2), 0)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andsignedintArg_((1, 2), 42)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = o.NSPointArg_andsignedintArg_((1, 2), 1 << 30)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1 << 30)
		r = o.NSPointArg_andsignedintArg_((3, 4), -(1<<30))
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -(1<<30))
		r = o.NSPointArg_andsignedintArg_((3, 4), -42)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -42)
		r = o.NSPointArg_andsignedintArg_((3, 4), 0)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andsignedintArg_((3, 4), 42)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = o.NSPointArg_andsignedintArg_((3, 4), 1 << 30)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1 << 30)


	def testNSPointAndsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_andsignedlongArg_((1, 2), -(1<<30))
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -(1<<30))
		r = o.NSPointArg_andsignedlongArg_((1, 2), -42)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -42)
		r = o.NSPointArg_andsignedlongArg_((1, 2), 0)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andsignedlongArg_((1, 2), 42)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = o.NSPointArg_andsignedlongArg_((1, 2), 1 << 30)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1 << 30)
		r = o.NSPointArg_andsignedlongArg_((3, 4), -(1<<30))
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -(1<<30))
		r = o.NSPointArg_andsignedlongArg_((3, 4), -42)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -42)
		r = o.NSPointArg_andsignedlongArg_((3, 4), 0)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andsignedlongArg_((3, 4), 42)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = o.NSPointArg_andsignedlongArg_((3, 4), 1 << 30)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1 << 30)


	def testNSPointAndsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_andsignedlonglongArg_((1, 2), -(1L << 60))
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -(1L << 60))
		r = o.NSPointArg_andsignedlonglongArg_((1, 2), -42)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -42)
		r = o.NSPointArg_andsignedlonglongArg_((1, 2), 0)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andsignedlonglongArg_((1, 2), 42)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = o.NSPointArg_andsignedlonglongArg_((1, 2), 1L << 60)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1L << 60)
		r = o.NSPointArg_andsignedlonglongArg_((3, 4), -(1L << 60))
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -(1L << 60))
		r = o.NSPointArg_andsignedlonglongArg_((3, 4), -42)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -42)
		r = o.NSPointArg_andsignedlonglongArg_((3, 4), 0)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andsignedlonglongArg_((3, 4), 42)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = o.NSPointArg_andsignedlonglongArg_((3, 4), 1L << 60)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1L << 60)


	def testNSPointAndunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_andunsignedcharArg_((1, 2), 0)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andunsignedcharArg_((1, 2), 128)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 128)
		r = o.NSPointArg_andunsignedcharArg_((1, 2), 255)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 255)
		r = o.NSPointArg_andunsignedcharArg_((3, 4), 0)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andunsignedcharArg_((3, 4), 128)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 128)
		r = o.NSPointArg_andunsignedcharArg_((3, 4), 255)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 255)


	def testNSPointAndunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_andunsignedshortArg_((1, 2), 0)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andunsignedshortArg_((1, 2), 42)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = o.NSPointArg_andunsignedshortArg_((1, 2), 1<<14)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1<<14)
		r = o.NSPointArg_andunsignedshortArg_((3, 4), 0)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andunsignedshortArg_((3, 4), 42)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = o.NSPointArg_andunsignedshortArg_((3, 4), 1<<14)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1<<14)


	def testNSPointAndunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_andunsignedintArg_((1, 2), 0)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andunsignedintArg_((1, 2), 42)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = o.NSPointArg_andunsignedintArg_((1, 2), 1 << 30)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1 << 30)
		r = o.NSPointArg_andunsignedintArg_((3, 4), 0)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andunsignedintArg_((3, 4), 42)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = o.NSPointArg_andunsignedintArg_((3, 4), 1 << 30)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1 << 30)


	def testNSPointAndunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_andunsignedlongArg_((1, 2), 0)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andunsignedlongArg_((1, 2), 42)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = o.NSPointArg_andunsignedlongArg_((1, 2), 1L << 30)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1L << 30)
		r = o.NSPointArg_andunsignedlongArg_((3, 4), 0)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andunsignedlongArg_((3, 4), 42)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = o.NSPointArg_andunsignedlongArg_((3, 4), 1L << 30)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1L << 30)


	def testNSPointAndunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_andunsignedlonglongArg_((1, 2), 0)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andunsignedlonglongArg_((1, 2), 42)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = o.NSPointArg_andunsignedlonglongArg_((1, 2), 1L << 62)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1L << 62)
		r = o.NSPointArg_andunsignedlonglongArg_((3, 4), 0)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = o.NSPointArg_andunsignedlonglongArg_((3, 4), 42)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = o.NSPointArg_andunsignedlonglongArg_((3, 4), 1L << 62)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1L << 62)


	def testNSPointAndfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_andfloatArg_((1, 2), 0.128)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 0.128)
		r = o.NSPointArg_andfloatArg_((1, 2), 1.0)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 1.0)
		r = o.NSPointArg_andfloatArg_((1, 2), 42.0)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 42.0)
		r = o.NSPointArg_andfloatArg_((1, 2), 1e10)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 1e10)
		r = o.NSPointArg_andfloatArg_((3, 4), 0.128)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 0.128)
		r = o.NSPointArg_andfloatArg_((3, 4), 1.0)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 1.0)
		r = o.NSPointArg_andfloatArg_((3, 4), 42.0)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 42.0)
		r = o.NSPointArg_andfloatArg_((3, 4), 1e10)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 1e10)


	def testNSPointAnddoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_anddoubleArg_((1, 2), 0.128)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 0.128)
		r = o.NSPointArg_anddoubleArg_((1, 2), 1.0)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 1.0)
		r = o.NSPointArg_anddoubleArg_((1, 2), 42.0)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 42.0)
		r = o.NSPointArg_anddoubleArg_((1, 2), 1e10)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 1e10)
		r = o.NSPointArg_anddoubleArg_((3, 4), 0.128)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 0.128)
		r = o.NSPointArg_anddoubleArg_((3, 4), 1.0)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 1.0)
		r = o.NSPointArg_anddoubleArg_((3, 4), 42.0)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 42.0)
		r = o.NSPointArg_anddoubleArg_((3, 4), 1e10)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 1e10)


	def testNSPointAndidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_andidArg_((1, 2), NSPriorDayDesignations)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.NSPointArg_andidArg_((3, 4), NSPriorDayDesignations)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testNSPointAndcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_andcharPtrArg_((1, 2), "hello")
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], "hello")
		r = o.NSPointArg_andcharPtrArg_((1, 2), "world")
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], "world")
		r = o.NSPointArg_andcharPtrArg_((1, 2), "foobar")
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], "foobar")
		r = o.NSPointArg_andcharPtrArg_((3, 4), "hello")
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], "hello")
		r = o.NSPointArg_andcharPtrArg_((3, 4), "world")
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], "world")
		r = o.NSPointArg_andcharPtrArg_((3, 4), "foobar")
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], "foobar")


	def testNSPointAndNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_andNSPointArg_((1, 2), (1, 2))
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], (1, 2))
		r = o.NSPointArg_andNSPointArg_((1, 2), (3, 4))
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], (3, 4))
		r = o.NSPointArg_andNSPointArg_((3, 4), (1, 2))
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], (1, 2))
		r = o.NSPointArg_andNSPointArg_((3, 4), (3, 4))
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], (3, 4))


	def testNSPointAndNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointArg_andNSRectArg_((1, 2), ((1, 2), (3, 4)))
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.NSPointArg_andNSRectArg_((1, 2), ((7, 8), (9, 10)))
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.NSPointArg_andNSRectArg_((3, 4), ((1, 2), (3, 4)))
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.NSPointArg_andNSRectArg_((3, 4), ((7, 8), (9, 10)))
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testNSRectAndBOOLArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_andBOOLArg_(((1, 2), (3, 4)), YES)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], YES)
		r = o.NSRectArg_andBOOLArg_(((1, 2), (3, 4)), NO)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], NO)
		r = o.NSRectArg_andBOOLArg_(((7, 8), (9, 10)), YES)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], YES)
		r = o.NSRectArg_andBOOLArg_(((7, 8), (9, 10)), NO)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], NO)


	def testNSRectAndcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_andcharArg_(((1, 2), (3, 4)), -128)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -128)
		r = o.NSRectArg_andcharArg_(((1, 2), (3, 4)), 0)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andcharArg_(((1, 2), (3, 4)), 127)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 127)
		r = o.NSRectArg_andcharArg_(((7, 8), (9, 10)), -128)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -128)
		r = o.NSRectArg_andcharArg_(((7, 8), (9, 10)), 0)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andcharArg_(((7, 8), (9, 10)), 127)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 127)


	def testNSRectAndsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_andsignedshortArg_(((1, 2), (3, 4)), -(1<<14))
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -(1<<14))
		r = o.NSRectArg_andsignedshortArg_(((1, 2), (3, 4)), -42)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -42)
		r = o.NSRectArg_andsignedshortArg_(((1, 2), (3, 4)), 0)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andsignedshortArg_(((1, 2), (3, 4)), 42)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = o.NSRectArg_andsignedshortArg_(((1, 2), (3, 4)), 1 << 14)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1 << 14)
		r = o.NSRectArg_andsignedshortArg_(((7, 8), (9, 10)), -(1<<14))
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -(1<<14))
		r = o.NSRectArg_andsignedshortArg_(((7, 8), (9, 10)), -42)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -42)
		r = o.NSRectArg_andsignedshortArg_(((7, 8), (9, 10)), 0)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andsignedshortArg_(((7, 8), (9, 10)), 42)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = o.NSRectArg_andsignedshortArg_(((7, 8), (9, 10)), 1 << 14)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1 << 14)


	def testNSRectAndsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_andsignedintArg_(((1, 2), (3, 4)), -(1<<30))
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -(1<<30))
		r = o.NSRectArg_andsignedintArg_(((1, 2), (3, 4)), -42)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -42)
		r = o.NSRectArg_andsignedintArg_(((1, 2), (3, 4)), 0)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andsignedintArg_(((1, 2), (3, 4)), 42)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = o.NSRectArg_andsignedintArg_(((1, 2), (3, 4)), 1 << 30)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1 << 30)
		r = o.NSRectArg_andsignedintArg_(((7, 8), (9, 10)), -(1<<30))
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -(1<<30))
		r = o.NSRectArg_andsignedintArg_(((7, 8), (9, 10)), -42)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -42)
		r = o.NSRectArg_andsignedintArg_(((7, 8), (9, 10)), 0)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andsignedintArg_(((7, 8), (9, 10)), 42)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = o.NSRectArg_andsignedintArg_(((7, 8), (9, 10)), 1 << 30)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1 << 30)


	def testNSRectAndsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_andsignedlongArg_(((1, 2), (3, 4)), -(1<<30))
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -(1<<30))
		r = o.NSRectArg_andsignedlongArg_(((1, 2), (3, 4)), -42)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -42)
		r = o.NSRectArg_andsignedlongArg_(((1, 2), (3, 4)), 0)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andsignedlongArg_(((1, 2), (3, 4)), 42)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = o.NSRectArg_andsignedlongArg_(((1, 2), (3, 4)), 1 << 30)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1 << 30)
		r = o.NSRectArg_andsignedlongArg_(((7, 8), (9, 10)), -(1<<30))
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -(1<<30))
		r = o.NSRectArg_andsignedlongArg_(((7, 8), (9, 10)), -42)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -42)
		r = o.NSRectArg_andsignedlongArg_(((7, 8), (9, 10)), 0)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andsignedlongArg_(((7, 8), (9, 10)), 42)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = o.NSRectArg_andsignedlongArg_(((7, 8), (9, 10)), 1 << 30)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1 << 30)


	def testNSRectAndsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_andsignedlonglongArg_(((1, 2), (3, 4)), -(1L << 60))
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -(1L << 60))
		r = o.NSRectArg_andsignedlonglongArg_(((1, 2), (3, 4)), -42)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -42)
		r = o.NSRectArg_andsignedlonglongArg_(((1, 2), (3, 4)), 0)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andsignedlonglongArg_(((1, 2), (3, 4)), 42)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = o.NSRectArg_andsignedlonglongArg_(((1, 2), (3, 4)), 1L << 60)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1L << 60)
		r = o.NSRectArg_andsignedlonglongArg_(((7, 8), (9, 10)), -(1L << 60))
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -(1L << 60))
		r = o.NSRectArg_andsignedlonglongArg_(((7, 8), (9, 10)), -42)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -42)
		r = o.NSRectArg_andsignedlonglongArg_(((7, 8), (9, 10)), 0)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andsignedlonglongArg_(((7, 8), (9, 10)), 42)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = o.NSRectArg_andsignedlonglongArg_(((7, 8), (9, 10)), 1L << 60)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1L << 60)


	def testNSRectAndunsignedcharArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_andunsignedcharArg_(((1, 2), (3, 4)), 0)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andunsignedcharArg_(((1, 2), (3, 4)), 128)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 128)
		r = o.NSRectArg_andunsignedcharArg_(((1, 2), (3, 4)), 255)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 255)
		r = o.NSRectArg_andunsignedcharArg_(((7, 8), (9, 10)), 0)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andunsignedcharArg_(((7, 8), (9, 10)), 128)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 128)
		r = o.NSRectArg_andunsignedcharArg_(((7, 8), (9, 10)), 255)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 255)


	def testNSRectAndunsignedshortArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_andunsignedshortArg_(((1, 2), (3, 4)), 0)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andunsignedshortArg_(((1, 2), (3, 4)), 42)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = o.NSRectArg_andunsignedshortArg_(((1, 2), (3, 4)), 1<<14)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1<<14)
		r = o.NSRectArg_andunsignedshortArg_(((7, 8), (9, 10)), 0)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andunsignedshortArg_(((7, 8), (9, 10)), 42)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = o.NSRectArg_andunsignedshortArg_(((7, 8), (9, 10)), 1<<14)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1<<14)


	def testNSRectAndunsignedintArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_andunsignedintArg_(((1, 2), (3, 4)), 0)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andunsignedintArg_(((1, 2), (3, 4)), 42)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = o.NSRectArg_andunsignedintArg_(((1, 2), (3, 4)), 1 << 30)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1 << 30)
		r = o.NSRectArg_andunsignedintArg_(((7, 8), (9, 10)), 0)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andunsignedintArg_(((7, 8), (9, 10)), 42)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = o.NSRectArg_andunsignedintArg_(((7, 8), (9, 10)), 1 << 30)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1 << 30)


	def testNSRectAndunsignedlongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_andunsignedlongArg_(((1, 2), (3, 4)), 0)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andunsignedlongArg_(((1, 2), (3, 4)), 42)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = o.NSRectArg_andunsignedlongArg_(((1, 2), (3, 4)), 1L << 30)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1L << 30)
		r = o.NSRectArg_andunsignedlongArg_(((7, 8), (9, 10)), 0)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andunsignedlongArg_(((7, 8), (9, 10)), 42)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = o.NSRectArg_andunsignedlongArg_(((7, 8), (9, 10)), 1L << 30)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1L << 30)


	def testNSRectAndunsignedlonglongArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_andunsignedlonglongArg_(((1, 2), (3, 4)), 0)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andunsignedlonglongArg_(((1, 2), (3, 4)), 42)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = o.NSRectArg_andunsignedlonglongArg_(((1, 2), (3, 4)), 1L << 62)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1L << 62)
		r = o.NSRectArg_andunsignedlonglongArg_(((7, 8), (9, 10)), 0)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = o.NSRectArg_andunsignedlonglongArg_(((7, 8), (9, 10)), 42)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = o.NSRectArg_andunsignedlonglongArg_(((7, 8), (9, 10)), 1L << 62)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1L << 62)


	def testNSRectAndfloatArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_andfloatArg_(((1, 2), (3, 4)), 0.128)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 0.128)
		r = o.NSRectArg_andfloatArg_(((1, 2), (3, 4)), 1.0)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 1.0)
		r = o.NSRectArg_andfloatArg_(((1, 2), (3, 4)), 42.0)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 42.0)
		r = o.NSRectArg_andfloatArg_(((1, 2), (3, 4)), 1e10)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 1e10)
		r = o.NSRectArg_andfloatArg_(((7, 8), (9, 10)), 0.128)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 0.128)
		r = o.NSRectArg_andfloatArg_(((7, 8), (9, 10)), 1.0)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 1.0)
		r = o.NSRectArg_andfloatArg_(((7, 8), (9, 10)), 42.0)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 42.0)
		r = o.NSRectArg_andfloatArg_(((7, 8), (9, 10)), 1e10)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 1e10)


	def testNSRectAnddoubleArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_anddoubleArg_(((1, 2), (3, 4)), 0.128)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 0.128)
		r = o.NSRectArg_anddoubleArg_(((1, 2), (3, 4)), 1.0)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 1.0)
		r = o.NSRectArg_anddoubleArg_(((1, 2), (3, 4)), 42.0)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 42.0)
		r = o.NSRectArg_anddoubleArg_(((1, 2), (3, 4)), 1e10)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 1e10)
		r = o.NSRectArg_anddoubleArg_(((7, 8), (9, 10)), 0.128)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 0.128)
		r = o.NSRectArg_anddoubleArg_(((7, 8), (9, 10)), 1.0)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 1.0)
		r = o.NSRectArg_anddoubleArg_(((7, 8), (9, 10)), 42.0)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 42.0)
		r = o.NSRectArg_anddoubleArg_(((7, 8), (9, 10)), 1e10)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 1e10)


	def testNSRectAndidArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_andidArg_(((1, 2), (3, 4)), NSPriorDayDesignations)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = o.NSRectArg_andidArg_(((7, 8), (9, 10)), NSPriorDayDesignations)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testNSRectAndcharPtrArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_andcharPtrArg_(((1, 2), (3, 4)), "hello")
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], "hello")
		r = o.NSRectArg_andcharPtrArg_(((1, 2), (3, 4)), "world")
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], "world")
		r = o.NSRectArg_andcharPtrArg_(((1, 2), (3, 4)), "foobar")
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], "foobar")
		r = o.NSRectArg_andcharPtrArg_(((7, 8), (9, 10)), "hello")
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], "hello")
		r = o.NSRectArg_andcharPtrArg_(((7, 8), (9, 10)), "world")
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], "world")
		r = o.NSRectArg_andcharPtrArg_(((7, 8), (9, 10)), "foobar")
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], "foobar")


	def testNSRectAndNSPointArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_andNSPointArg_(((1, 2), (3, 4)), (1, 2))
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], (1, 2))
		r = o.NSRectArg_andNSPointArg_(((1, 2), (3, 4)), (3, 4))
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], (3, 4))
		r = o.NSRectArg_andNSPointArg_(((7, 8), (9, 10)), (1, 2))
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], (1, 2))
		r = o.NSRectArg_andNSPointArg_(((7, 8), (9, 10)), (3, 4))
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], (3, 4))


	def testNSRectAndNSRectArg(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectArg_andNSRectArg_(((1, 2), (3, 4)), ((1, 2), (3, 4)))
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.NSRectArg_andNSRectArg_(((1, 2), (3, 4)), ((7, 8), (9, 10)))
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = o.NSRectArg_andNSRectArg_(((7, 8), (9, 10)), ((1, 2), (3, 4)))
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.NSRectArg_andNSRectArg_(((7, 8), (9, 10)), ((7, 8), (9, 10)))
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	# Pass by reference arguments (in)

	def testBOOLIn(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.BOOLInArg_(YES)
		self.assertEquals(r, YES)
		r = o.BOOLInArg_(NO)
		self.assertEquals(r, NO)


	def testcharIn(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charInArg_(-128)
		self.assertEquals(r, -128)
		r = o.charInArg_(0)
		self.assertEquals(r, 0)
		r = o.charInArg_(127)
		self.assertEquals(r, 127)


	def testsignedshortIn(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedshortInArg_(-(1<<14))
		self.assertEquals(r, -(1<<14))
		r = o.signedshortInArg_(-42)
		self.assertEquals(r, -42)
		r = o.signedshortInArg_(0)
		self.assertEquals(r, 0)
		r = o.signedshortInArg_(42)
		self.assertEquals(r, 42)
		r = o.signedshortInArg_(1 << 14)
		self.assertEquals(r, 1 << 14)


	def testsignedintIn(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedintInArg_(-(1<<30))
		self.assertEquals(r, -(1<<30))
		r = o.signedintInArg_(-42)
		self.assertEquals(r, -42)
		r = o.signedintInArg_(0)
		self.assertEquals(r, 0)
		r = o.signedintInArg_(42)
		self.assertEquals(r, 42)
		r = o.signedintInArg_(1 << 30)
		self.assertEquals(r, 1 << 30)


	def testsignedlongIn(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlongInArg_(-(1<<30))
		self.assertEquals(r, -(1<<30))
		r = o.signedlongInArg_(-42)
		self.assertEquals(r, -42)
		r = o.signedlongInArg_(0)
		self.assertEquals(r, 0)
		r = o.signedlongInArg_(42)
		self.assertEquals(r, 42)
		r = o.signedlongInArg_(1 << 30)
		self.assertEquals(r, 1 << 30)


	def testsignedlonglongIn(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.signedlonglongInArg_(-(1L << 60))
		self.assertEquals(r, -(1L << 60))
		r = o.signedlonglongInArg_(-42)
		self.assertEquals(r, -42)
		r = o.signedlonglongInArg_(0)
		self.assertEquals(r, 0)
		r = o.signedlonglongInArg_(42)
		self.assertEquals(r, 42)
		r = o.signedlonglongInArg_(1L << 60)
		self.assertEquals(r, 1L << 60)


	def testunsignedcharIn(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedcharInArg_(0)
		self.assertEquals(r, 0)
		r = o.unsignedcharInArg_(128)
		self.assertEquals(r, 128)
		r = o.unsignedcharInArg_(255)
		self.assertEquals(r, 255)


	def testunsignedshortIn(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedshortInArg_(0)
		self.assertEquals(r, 0)
		r = o.unsignedshortInArg_(42)
		self.assertEquals(r, 42)
		r = o.unsignedshortInArg_(1<<14)
		self.assertEquals(r, 1<<14)


	def testunsignedintIn(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedintInArg_(0)
		self.assertEquals(r, 0)
		r = o.unsignedintInArg_(42)
		self.assertEquals(r, 42)
		r = o.unsignedintInArg_(1 << 30)
		self.assertEquals(r, 1 << 30)


	def testunsignedlongIn(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlongInArg_(0)
		self.assertEquals(r, 0)
		r = o.unsignedlongInArg_(42)
		self.assertEquals(r, 42)
		r = o.unsignedlongInArg_(1L << 30)
		self.assertEquals(r, 1L << 30)


	def testunsignedlonglongIn(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.unsignedlonglongInArg_(0)
		self.assertEquals(r, 0)
		r = o.unsignedlonglongInArg_(42)
		self.assertEquals(r, 42)
		r = o.unsignedlonglongInArg_(1L << 62)
		self.assertEquals(r, 1L << 62)


	def testfloatIn(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.floatInArg_(0.128)
		self.assertAlmostEquals(r, 0.128)
		r = o.floatInArg_(1.0)
		self.assertAlmostEquals(r, 1.0)
		r = o.floatInArg_(42.0)
		self.assertAlmostEquals(r, 42.0)
		r = o.floatInArg_(1e10)
		self.assertAlmostEquals(r, 1e10)


	def testdoubleIn(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.doubleInArg_(0.128)
		self.assertAlmostEquals(r, 0.128)
		r = o.doubleInArg_(1.0)
		self.assertAlmostEquals(r, 1.0)
		r = o.doubleInArg_(42.0)
		self.assertAlmostEquals(r, 42.0)
		r = o.doubleInArg_(1e10)
		self.assertAlmostEquals(r, 1e10)


	def testidIn(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.idInArg_(NSPriorDayDesignations)
		self.assertEquals(r, NSPriorDayDesignations)


	def testcharPtrIn(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.charPtrInArg_("hello")
		self.assertEquals(r, "hello")
		r = o.charPtrInArg_("world")
		self.assertEquals(r, "world")
		r = o.charPtrInArg_("foobar")
		self.assertEquals(r, "foobar")


	def testNSPointIn(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSPointInArg_((1, 2))
		self.assertEquals(r, (1, 2))
		r = o.NSPointInArg_((3, 4))
		self.assertEquals(r, (3, 4))


	def testNSRectIn(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		r = o.NSRectInArg_(((1, 2), (3, 4)))
		self.assertEquals(r, ((1, 2), (3, 4)))
		r = o.NSRectInArg_(((7, 8), (9, 10)))
		self.assertEquals(r, ((7, 8), (9, 10)))


	# Pass by reference arguments (out)

	def testBOOLOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.BOOLOutArg_()
		self.assertEquals(r, YES)
		r = o.BOOLOutArg_()
		self.assertEquals(r, NO)


	def testcharOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.charOutArg_()
		self.assertEquals(r, -128)
		r = o.charOutArg_()
		self.assertEquals(r, 0)
		r = o.charOutArg_()
		self.assertEquals(r, 127)


	def testsignedshortOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.signedshortOutArg_()
		self.assertEquals(r, -(1<<14))
		r = o.signedshortOutArg_()
		self.assertEquals(r, -42)
		r = o.signedshortOutArg_()
		self.assertEquals(r, 0)
		r = o.signedshortOutArg_()
		self.assertEquals(r, 42)
		r = o.signedshortOutArg_()
		self.assertEquals(r, 1 << 14)


	def testsignedintOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.signedintOutArg_()
		self.assertEquals(r, -(1<<30))
		r = o.signedintOutArg_()
		self.assertEquals(r, -42)
		r = o.signedintOutArg_()
		self.assertEquals(r, 0)
		r = o.signedintOutArg_()
		self.assertEquals(r, 42)
		r = o.signedintOutArg_()
		self.assertEquals(r, 1 << 30)


	def testsignedlongOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.signedlongOutArg_()
		self.assertEquals(r, -(1<<30))
		r = o.signedlongOutArg_()
		self.assertEquals(r, -42)
		r = o.signedlongOutArg_()
		self.assertEquals(r, 0)
		r = o.signedlongOutArg_()
		self.assertEquals(r, 42)
		r = o.signedlongOutArg_()
		self.assertEquals(r, 1 << 30)


	def testsignedlonglongOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.signedlonglongOutArg_()
		self.assertEquals(r, -(1L << 60))
		r = o.signedlonglongOutArg_()
		self.assertEquals(r, -42)
		r = o.signedlonglongOutArg_()
		self.assertEquals(r, 0)
		r = o.signedlonglongOutArg_()
		self.assertEquals(r, 42)
		r = o.signedlonglongOutArg_()
		self.assertEquals(r, 1L << 60)


	def testunsignedcharOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.unsignedcharOutArg_()
		self.assertEquals(r, 0)
		r = o.unsignedcharOutArg_()
		self.assertEquals(r, 128)
		r = o.unsignedcharOutArg_()
		self.assertEquals(r, 255)


	def testunsignedshortOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.unsignedshortOutArg_()
		self.assertEquals(r, 0)
		r = o.unsignedshortOutArg_()
		self.assertEquals(r, 42)
		r = o.unsignedshortOutArg_()
		self.assertEquals(r, 1<<14)


	def testunsignedintOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.unsignedintOutArg_()
		self.assertEquals(r, 0)
		r = o.unsignedintOutArg_()
		self.assertEquals(r, 42)
		r = o.unsignedintOutArg_()
		self.assertEquals(r, 1 << 30)


	def testunsignedlongOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.unsignedlongOutArg_()
		self.assertEquals(r, 0)
		r = o.unsignedlongOutArg_()
		self.assertEquals(r, 42)
		r = o.unsignedlongOutArg_()
		self.assertEquals(r, 1L << 30)


	def testunsignedlonglongOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.unsignedlonglongOutArg_()
		self.assertEquals(r, 0)
		r = o.unsignedlonglongOutArg_()
		self.assertEquals(r, 42)
		r = o.unsignedlonglongOutArg_()
		self.assertEquals(r, 1L << 62)


	def testfloatOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.floatOutArg_()
		self.assertAlmostEquals(r, 0.128)
		r = o.floatOutArg_()
		self.assertAlmostEquals(r, 1.0)
		r = o.floatOutArg_()
		self.assertAlmostEquals(r, 42.0)
		r = o.floatOutArg_()
		self.assertAlmostEquals(r, 1e10)


	def testdoubleOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.doubleOutArg_()
		self.assertAlmostEquals(r, 0.128)
		r = o.doubleOutArg_()
		self.assertAlmostEquals(r, 1.0)
		r = o.doubleOutArg_()
		self.assertAlmostEquals(r, 42.0)
		r = o.doubleOutArg_()
		self.assertAlmostEquals(r, 1e10)


	def testidOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.idOutArg_()
		self.assertEquals(r, NSPriorDayDesignations)


	def testcharPtrOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.charPtrOutArg_()
		self.assertEquals(r, "hello")
		r = o.charPtrOutArg_()
		self.assertEquals(r, "world")
		r = o.charPtrOutArg_()
		self.assertEquals(r, "foobar")


	def testNSPointOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.NSPointOutArg_()
		self.assertEquals(r, (1, 2))
		r = o.NSPointOutArg_()
		self.assertEquals(r, (3, 4))


	def testNSRectOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.NSRectOutArg_()
		self.assertEquals(r, ((1, 2), (3, 4)))
		r = o.NSRectOutArg_()
		self.assertEquals(r, ((7, 8), (9, 10)))


	# Pass by reference arguments (inout)

	def testBOOLInOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.BOOLInOutArg_(NO)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], YES)
		r = o.BOOLInOutArg_(YES)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], NO)


	def testcharInOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.charInOutArg_(127)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -128)
		r = o.charInOutArg_(0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.charInOutArg_(-128)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 127)


	def testsignedshortInOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.signedshortInOutArg_(1 << 14)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -(1<<14))
		r = o.signedshortInOutArg_(42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedshortInOutArg_(0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedshortInOutArg_(-42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedshortInOutArg_(-(1<<14))
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1 << 14)


	def testsignedintInOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.signedintInOutArg_(1 << 30)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedintInOutArg_(42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedintInOutArg_(0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedintInOutArg_(-42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedintInOutArg_(-(1<<30))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)


	def testsignedlongInOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.signedlongInOutArg_(1 << 30)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = o.signedlongInOutArg_(42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedlongInOutArg_(0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlongInOutArg_(-42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlongInOutArg_(-(1<<30))
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)


	def testsignedlonglongInOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.signedlonglongInOutArg_(1L << 60)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -(1L << 60))
		r = o.signedlonglongInOutArg_(42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = o.signedlonglongInOutArg_(0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = o.signedlonglongInOutArg_(-42)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = o.signedlonglongInOutArg_(-(1L << 60))
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1L << 60)


	def testunsignedcharInOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.unsignedcharInOutArg_(255)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = o.unsignedcharInOutArg_(128)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 128)
		r = o.unsignedcharInOutArg_(0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)


	def testunsignedshortInOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.unsignedshortInOutArg_(1<<14)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = o.unsignedshortInOutArg_(42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedshortInOutArg_(0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)


	def testunsignedintInOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.unsignedintInOutArg_(1 << 30)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedintInOutArg_(42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedintInOutArg_(0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)


	def testunsignedlongInOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.unsignedlongInOutArg_(1L << 30)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = o.unsignedlongInOutArg_(42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlongInOutArg_(0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)


	def testunsignedlonglongInOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.unsignedlonglongInOutArg_(1L << 62)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = o.unsignedlonglongInOutArg_(42)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = o.unsignedlonglongInOutArg_(0)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)


	def testfloatInOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.floatInOutArg_(1e10)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.floatInOutArg_(42.0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.floatInOutArg_(1.0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.floatInOutArg_(0.128)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)


	def testdoubleInOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.doubleInOutArg_(1e10)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = o.doubleInOutArg_(42.0)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = o.doubleInOutArg_(1.0)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = o.doubleInOutArg_(0.128)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)


	def testidInOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.idInOutArg_(NSPriorDayDesignations)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcharPtrInOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.charPtrInOutArg_("foobar")
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], "hello")
		r = o.charPtrInOutArg_("world")
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], "world")
		r = o.charPtrInOutArg_("hello")
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], "foobar")


	def testNSPointInOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.NSPointInOutArg_((3, 4))
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], (1, 2))
		r = o.NSPointInOutArg_((1, 2))
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], (3, 4))


	def testNSRectInOut(self):
		o = PyObjC_TestClass1.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = o.NSRectInOutArg_(((7, 8), (9, 10)))
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = o.NSRectInOutArg_(((1, 2), (3, 4)))
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], ((7, 8), (9, 10)))


# Helper arrays
g_BOOL_values = (YES, NO)
g_char_values = (-128, 0, 127)
g_signedshort_values = (-(1<<14), -42, 0, 42, 1 << 14)
g_signedint_values = (-(1<<30), -42, 0, 42, 1 << 30)
g_signedlong_values = (-(1<<30), -42, 0, 42, 1 << 30)
g_signedlonglong_values = (-(1L << 60), -42, 0, 42, 1L << 60)
g_unsignedchar_values = (0, 128, 255)
g_unsignedshort_values = (0, 42, 1<<14)
g_unsignedint_values = (0, 42, 1 << 30)
g_unsignedlong_values = (0, 42, 1L << 30)
g_unsignedlonglong_values = (0, 42, 1L << 62)
g_float_values = (0.128, 1.0, 42.0, 1e10)
g_double_values = (0.128, 1.0, 42.0, 1e10)
g_id_values = (NSPriorDayDesignations,)
g_charPtr_values = ("hello", "world", "foobar")
g_NSPoint_values = ((1, 2), (3, 4))
g_NSRect_values = (((1, 2), (3, 4)), ((7, 8), (9, 10)))


class Python_TestClass (objc.runtime.NSObject):
	def init(self):
		self = super(Python_TestClass, self).init()
		self.reset()
		return self


	def reset(self):
		self.counter = 0


	def BOOLMethod(self):
		if self.counter > 2: self.reset()
		idx = self.counter
		self.counter += 1
		return g_BOOL_values[idx]
	BOOLMethod = objc.selector(BOOLMethod, signature="c@:")


	def charMethod(self):
		if self.counter > 3: self.reset()
		idx = self.counter
		self.counter += 1
		return g_char_values[idx]
	charMethod = objc.selector(charMethod, signature="c@:")


	def signedshortMethod(self):
		if self.counter > 5: self.reset()
		idx = self.counter
		self.counter += 1
		return g_signedshort_values[idx]
	signedshortMethod = objc.selector(signedshortMethod, signature="s@:")


	def signedintMethod(self):
		if self.counter > 5: self.reset()
		idx = self.counter
		self.counter += 1
		return g_signedint_values[idx]
	signedintMethod = objc.selector(signedintMethod, signature="i@:")


	def signedlongMethod(self):
		if self.counter > 5: self.reset()
		idx = self.counter
		self.counter += 1
		return g_signedlong_values[idx]
	signedlongMethod = objc.selector(signedlongMethod, signature="l@:")


	def signedlonglongMethod(self):
		if self.counter > 5: self.reset()
		idx = self.counter
		self.counter += 1
		return g_signedlonglong_values[idx]
	signedlonglongMethod = objc.selector(signedlonglongMethod, signature="q@:")


	def unsignedcharMethod(self):
		if self.counter > 3: self.reset()
		idx = self.counter
		self.counter += 1
		return g_unsignedchar_values[idx]
	unsignedcharMethod = objc.selector(unsignedcharMethod, signature="C@:")


	def unsignedshortMethod(self):
		if self.counter > 3: self.reset()
		idx = self.counter
		self.counter += 1
		return g_unsignedshort_values[idx]
	unsignedshortMethod = objc.selector(unsignedshortMethod, signature="S@:")


	def unsignedintMethod(self):
		if self.counter > 3: self.reset()
		idx = self.counter
		self.counter += 1
		return g_unsignedint_values[idx]
	unsignedintMethod = objc.selector(unsignedintMethod, signature="I@:")


	def unsignedlongMethod(self):
		if self.counter > 3: self.reset()
		idx = self.counter
		self.counter += 1
		return g_unsignedlong_values[idx]
	unsignedlongMethod = objc.selector(unsignedlongMethod, signature="L@:")


	def unsignedlonglongMethod(self):
		if self.counter > 3: self.reset()
		idx = self.counter
		self.counter += 1
		return g_unsignedlonglong_values[idx]
	unsignedlonglongMethod = objc.selector(unsignedlonglongMethod, signature="Q@:")


	def floatMethod(self):
		if self.counter > 4: self.reset()
		idx = self.counter
		self.counter += 1
		return g_float_values[idx]
	floatMethod = objc.selector(floatMethod, signature="f@:")


	def doubleMethod(self):
		if self.counter > 4: self.reset()
		idx = self.counter
		self.counter += 1
		return g_double_values[idx]
	doubleMethod = objc.selector(doubleMethod, signature="d@:")


	def idMethod(self):
		if self.counter > 1: self.reset()
		idx = self.counter
		self.counter += 1
		return g_id_values[idx]
	idMethod = objc.selector(idMethod, signature="@@:")


	def charPtrMethod(self):
		if self.counter > 3: self.reset()
		idx = self.counter
		self.counter += 1
		return g_charPtr_values[idx]
	charPtrMethod = objc.selector(charPtrMethod, signature="*@:")


	def NSPointMethod(self):
		if self.counter > 2: self.reset()
		idx = self.counter
		self.counter += 1
		return g_NSPoint_values[idx]
	NSPointMethod = objc.selector(NSPointMethod, signature="{_NSPoint=ff}@:")


	def NSRectMethod(self):
		if self.counter > 2: self.reset()
		idx = self.counter
		self.counter += 1
		return g_NSRect_values[idx]
	NSRectMethod = objc.selector(NSRectMethod, signature="{_NSRect={_NSPoint=ff}{_NSSize=ff}}@:")


	def BOOLArg_(self, arg):
		return arg # return the same
	BOOLArg_ = objc.selector(BOOLArg_, signature="@@:c")


	def charArg_(self, arg):
		return arg # return the same
	charArg_ = objc.selector(charArg_, signature="@@:c")


	def signedshortArg_(self, arg):
		return arg # return the same
	signedshortArg_ = objc.selector(signedshortArg_, signature="@@:s")


	def signedintArg_(self, arg):
		return arg # return the same
	signedintArg_ = objc.selector(signedintArg_, signature="@@:i")


	def signedlongArg_(self, arg):
		return arg # return the same
	signedlongArg_ = objc.selector(signedlongArg_, signature="@@:l")


	def signedlonglongArg_(self, arg):
		return arg # return the same
	signedlonglongArg_ = objc.selector(signedlonglongArg_, signature="@@:q")


	def unsignedcharArg_(self, arg):
		return arg # return the same
	unsignedcharArg_ = objc.selector(unsignedcharArg_, signature="@@:C")


	def unsignedshortArg_(self, arg):
		return arg # return the same
	unsignedshortArg_ = objc.selector(unsignedshortArg_, signature="@@:S")


	def unsignedintArg_(self, arg):
		return arg # return the same
	unsignedintArg_ = objc.selector(unsignedintArg_, signature="@@:I")


	def unsignedlongArg_(self, arg):
		return arg # return the same
	unsignedlongArg_ = objc.selector(unsignedlongArg_, signature="@@:L")


	def unsignedlonglongArg_(self, arg):
		return arg # return the same
	unsignedlonglongArg_ = objc.selector(unsignedlonglongArg_, signature="@@:Q")


	def floatArg_(self, arg):
		return arg # return the same
	floatArg_ = objc.selector(floatArg_, signature="@@:f")


	def doubleArg_(self, arg):
		return arg # return the same
	doubleArg_ = objc.selector(doubleArg_, signature="@@:d")


	def idArg_(self, arg):
		return arg # return the same
	idArg_ = objc.selector(idArg_, signature="@@:@")


	def charPtrArg_(self, arg):
		return arg # return the same
	charPtrArg_ = objc.selector(charPtrArg_, signature="@@:*")


	def NSPointArg_(self, arg):
		return arg # return the same
	NSPointArg_ = objc.selector(NSPointArg_, signature="@@:{_NSPoint=ff}")


	def NSRectArg_(self, arg):
		return arg # return the same
	NSRectArg_ = objc.selector(NSRectArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def BOOLArg_andBOOLArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	BOOLArg_andBOOLArg_ = objc.selector(BOOLArg_andBOOLArg_, signature="@@:cc")


	def BOOLArg_andcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	BOOLArg_andcharArg_ = objc.selector(BOOLArg_andcharArg_, signature="@@:cc")


	def BOOLArg_andsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	BOOLArg_andsignedshortArg_ = objc.selector(BOOLArg_andsignedshortArg_, signature="@@:cs")


	def BOOLArg_andsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	BOOLArg_andsignedintArg_ = objc.selector(BOOLArg_andsignedintArg_, signature="@@:ci")


	def BOOLArg_andsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	BOOLArg_andsignedlongArg_ = objc.selector(BOOLArg_andsignedlongArg_, signature="@@:cl")


	def BOOLArg_andsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	BOOLArg_andsignedlonglongArg_ = objc.selector(BOOLArg_andsignedlonglongArg_, signature="@@:cq")


	def BOOLArg_andunsignedcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	BOOLArg_andunsignedcharArg_ = objc.selector(BOOLArg_andunsignedcharArg_, signature="@@:cC")


	def BOOLArg_andunsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	BOOLArg_andunsignedshortArg_ = objc.selector(BOOLArg_andunsignedshortArg_, signature="@@:cS")


	def BOOLArg_andunsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	BOOLArg_andunsignedintArg_ = objc.selector(BOOLArg_andunsignedintArg_, signature="@@:cI")


	def BOOLArg_andunsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	BOOLArg_andunsignedlongArg_ = objc.selector(BOOLArg_andunsignedlongArg_, signature="@@:cL")


	def BOOLArg_andunsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	BOOLArg_andunsignedlonglongArg_ = objc.selector(BOOLArg_andunsignedlonglongArg_, signature="@@:cQ")


	def BOOLArg_andfloatArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	BOOLArg_andfloatArg_ = objc.selector(BOOLArg_andfloatArg_, signature="@@:cf")


	def BOOLArg_anddoubleArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	BOOLArg_anddoubleArg_ = objc.selector(BOOLArg_anddoubleArg_, signature="@@:cd")


	def BOOLArg_andidArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	BOOLArg_andidArg_ = objc.selector(BOOLArg_andidArg_, signature="@@:c@")


	def BOOLArg_andcharPtrArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	BOOLArg_andcharPtrArg_ = objc.selector(BOOLArg_andcharPtrArg_, signature="@@:c*")


	def BOOLArg_andNSPointArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	BOOLArg_andNSPointArg_ = objc.selector(BOOLArg_andNSPointArg_, signature="@@:c{_NSPoint=ff}")


	def BOOLArg_andNSRectArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	BOOLArg_andNSRectArg_ = objc.selector(BOOLArg_andNSRectArg_, signature="@@:c{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def charArg_andBOOLArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charArg_andBOOLArg_ = objc.selector(charArg_andBOOLArg_, signature="@@:cc")


	def charArg_andcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charArg_andcharArg_ = objc.selector(charArg_andcharArg_, signature="@@:cc")


	def charArg_andsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charArg_andsignedshortArg_ = objc.selector(charArg_andsignedshortArg_, signature="@@:cs")


	def charArg_andsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charArg_andsignedintArg_ = objc.selector(charArg_andsignedintArg_, signature="@@:ci")


	def charArg_andsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charArg_andsignedlongArg_ = objc.selector(charArg_andsignedlongArg_, signature="@@:cl")


	def charArg_andsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charArg_andsignedlonglongArg_ = objc.selector(charArg_andsignedlonglongArg_, signature="@@:cq")


	def charArg_andunsignedcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charArg_andunsignedcharArg_ = objc.selector(charArg_andunsignedcharArg_, signature="@@:cC")


	def charArg_andunsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charArg_andunsignedshortArg_ = objc.selector(charArg_andunsignedshortArg_, signature="@@:cS")


	def charArg_andunsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charArg_andunsignedintArg_ = objc.selector(charArg_andunsignedintArg_, signature="@@:cI")


	def charArg_andunsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charArg_andunsignedlongArg_ = objc.selector(charArg_andunsignedlongArg_, signature="@@:cL")


	def charArg_andunsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charArg_andunsignedlonglongArg_ = objc.selector(charArg_andunsignedlonglongArg_, signature="@@:cQ")


	def charArg_andfloatArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charArg_andfloatArg_ = objc.selector(charArg_andfloatArg_, signature="@@:cf")


	def charArg_anddoubleArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charArg_anddoubleArg_ = objc.selector(charArg_anddoubleArg_, signature="@@:cd")


	def charArg_andidArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charArg_andidArg_ = objc.selector(charArg_andidArg_, signature="@@:c@")


	def charArg_andcharPtrArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charArg_andcharPtrArg_ = objc.selector(charArg_andcharPtrArg_, signature="@@:c*")


	def charArg_andNSPointArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charArg_andNSPointArg_ = objc.selector(charArg_andNSPointArg_, signature="@@:c{_NSPoint=ff}")


	def charArg_andNSRectArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charArg_andNSRectArg_ = objc.selector(charArg_andNSRectArg_, signature="@@:c{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def signedshortArg_andBOOLArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedshortArg_andBOOLArg_ = objc.selector(signedshortArg_andBOOLArg_, signature="@@:sc")


	def signedshortArg_andcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedshortArg_andcharArg_ = objc.selector(signedshortArg_andcharArg_, signature="@@:sc")


	def signedshortArg_andsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedshortArg_andsignedshortArg_ = objc.selector(signedshortArg_andsignedshortArg_, signature="@@:ss")


	def signedshortArg_andsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedshortArg_andsignedintArg_ = objc.selector(signedshortArg_andsignedintArg_, signature="@@:si")


	def signedshortArg_andsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedshortArg_andsignedlongArg_ = objc.selector(signedshortArg_andsignedlongArg_, signature="@@:sl")


	def signedshortArg_andsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedshortArg_andsignedlonglongArg_ = objc.selector(signedshortArg_andsignedlonglongArg_, signature="@@:sq")


	def signedshortArg_andunsignedcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedshortArg_andunsignedcharArg_ = objc.selector(signedshortArg_andunsignedcharArg_, signature="@@:sC")


	def signedshortArg_andunsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedshortArg_andunsignedshortArg_ = objc.selector(signedshortArg_andunsignedshortArg_, signature="@@:sS")


	def signedshortArg_andunsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedshortArg_andunsignedintArg_ = objc.selector(signedshortArg_andunsignedintArg_, signature="@@:sI")


	def signedshortArg_andunsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedshortArg_andunsignedlongArg_ = objc.selector(signedshortArg_andunsignedlongArg_, signature="@@:sL")


	def signedshortArg_andunsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedshortArg_andunsignedlonglongArg_ = objc.selector(signedshortArg_andunsignedlonglongArg_, signature="@@:sQ")


	def signedshortArg_andfloatArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedshortArg_andfloatArg_ = objc.selector(signedshortArg_andfloatArg_, signature="@@:sf")


	def signedshortArg_anddoubleArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedshortArg_anddoubleArg_ = objc.selector(signedshortArg_anddoubleArg_, signature="@@:sd")


	def signedshortArg_andidArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedshortArg_andidArg_ = objc.selector(signedshortArg_andidArg_, signature="@@:s@")


	def signedshortArg_andcharPtrArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedshortArg_andcharPtrArg_ = objc.selector(signedshortArg_andcharPtrArg_, signature="@@:s*")


	def signedshortArg_andNSPointArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedshortArg_andNSPointArg_ = objc.selector(signedshortArg_andNSPointArg_, signature="@@:s{_NSPoint=ff}")


	def signedshortArg_andNSRectArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedshortArg_andNSRectArg_ = objc.selector(signedshortArg_andNSRectArg_, signature="@@:s{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def signedintArg_andBOOLArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedintArg_andBOOLArg_ = objc.selector(signedintArg_andBOOLArg_, signature="@@:ic")


	def signedintArg_andcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedintArg_andcharArg_ = objc.selector(signedintArg_andcharArg_, signature="@@:ic")


	def signedintArg_andsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedintArg_andsignedshortArg_ = objc.selector(signedintArg_andsignedshortArg_, signature="@@:is")


	def signedintArg_andsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedintArg_andsignedintArg_ = objc.selector(signedintArg_andsignedintArg_, signature="@@:ii")


	def signedintArg_andsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedintArg_andsignedlongArg_ = objc.selector(signedintArg_andsignedlongArg_, signature="@@:il")


	def signedintArg_andsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedintArg_andsignedlonglongArg_ = objc.selector(signedintArg_andsignedlonglongArg_, signature="@@:iq")


	def signedintArg_andunsignedcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedintArg_andunsignedcharArg_ = objc.selector(signedintArg_andunsignedcharArg_, signature="@@:iC")


	def signedintArg_andunsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedintArg_andunsignedshortArg_ = objc.selector(signedintArg_andunsignedshortArg_, signature="@@:iS")


	def signedintArg_andunsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedintArg_andunsignedintArg_ = objc.selector(signedintArg_andunsignedintArg_, signature="@@:iI")


	def signedintArg_andunsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedintArg_andunsignedlongArg_ = objc.selector(signedintArg_andunsignedlongArg_, signature="@@:iL")


	def signedintArg_andunsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedintArg_andunsignedlonglongArg_ = objc.selector(signedintArg_andunsignedlonglongArg_, signature="@@:iQ")


	def signedintArg_andfloatArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedintArg_andfloatArg_ = objc.selector(signedintArg_andfloatArg_, signature="@@:if")


	def signedintArg_anddoubleArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedintArg_anddoubleArg_ = objc.selector(signedintArg_anddoubleArg_, signature="@@:id")


	def signedintArg_andidArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedintArg_andidArg_ = objc.selector(signedintArg_andidArg_, signature="@@:i@")


	def signedintArg_andcharPtrArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedintArg_andcharPtrArg_ = objc.selector(signedintArg_andcharPtrArg_, signature="@@:i*")


	def signedintArg_andNSPointArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedintArg_andNSPointArg_ = objc.selector(signedintArg_andNSPointArg_, signature="@@:i{_NSPoint=ff}")


	def signedintArg_andNSRectArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedintArg_andNSRectArg_ = objc.selector(signedintArg_andNSRectArg_, signature="@@:i{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def signedlongArg_andBOOLArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlongArg_andBOOLArg_ = objc.selector(signedlongArg_andBOOLArg_, signature="@@:lc")


	def signedlongArg_andcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlongArg_andcharArg_ = objc.selector(signedlongArg_andcharArg_, signature="@@:lc")


	def signedlongArg_andsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlongArg_andsignedshortArg_ = objc.selector(signedlongArg_andsignedshortArg_, signature="@@:ls")


	def signedlongArg_andsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlongArg_andsignedintArg_ = objc.selector(signedlongArg_andsignedintArg_, signature="@@:li")


	def signedlongArg_andsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlongArg_andsignedlongArg_ = objc.selector(signedlongArg_andsignedlongArg_, signature="@@:ll")


	def signedlongArg_andsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlongArg_andsignedlonglongArg_ = objc.selector(signedlongArg_andsignedlonglongArg_, signature="@@:lq")


	def signedlongArg_andunsignedcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlongArg_andunsignedcharArg_ = objc.selector(signedlongArg_andunsignedcharArg_, signature="@@:lC")


	def signedlongArg_andunsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlongArg_andunsignedshortArg_ = objc.selector(signedlongArg_andunsignedshortArg_, signature="@@:lS")


	def signedlongArg_andunsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlongArg_andunsignedintArg_ = objc.selector(signedlongArg_andunsignedintArg_, signature="@@:lI")


	def signedlongArg_andunsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlongArg_andunsignedlongArg_ = objc.selector(signedlongArg_andunsignedlongArg_, signature="@@:lL")


	def signedlongArg_andunsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlongArg_andunsignedlonglongArg_ = objc.selector(signedlongArg_andunsignedlonglongArg_, signature="@@:lQ")


	def signedlongArg_andfloatArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlongArg_andfloatArg_ = objc.selector(signedlongArg_andfloatArg_, signature="@@:lf")


	def signedlongArg_anddoubleArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlongArg_anddoubleArg_ = objc.selector(signedlongArg_anddoubleArg_, signature="@@:ld")


	def signedlongArg_andidArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlongArg_andidArg_ = objc.selector(signedlongArg_andidArg_, signature="@@:l@")


	def signedlongArg_andcharPtrArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlongArg_andcharPtrArg_ = objc.selector(signedlongArg_andcharPtrArg_, signature="@@:l*")


	def signedlongArg_andNSPointArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlongArg_andNSPointArg_ = objc.selector(signedlongArg_andNSPointArg_, signature="@@:l{_NSPoint=ff}")


	def signedlongArg_andNSRectArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlongArg_andNSRectArg_ = objc.selector(signedlongArg_andNSRectArg_, signature="@@:l{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def signedlonglongArg_andBOOLArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlonglongArg_andBOOLArg_ = objc.selector(signedlonglongArg_andBOOLArg_, signature="@@:qc")


	def signedlonglongArg_andcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlonglongArg_andcharArg_ = objc.selector(signedlonglongArg_andcharArg_, signature="@@:qc")


	def signedlonglongArg_andsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlonglongArg_andsignedshortArg_ = objc.selector(signedlonglongArg_andsignedshortArg_, signature="@@:qs")


	def signedlonglongArg_andsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlonglongArg_andsignedintArg_ = objc.selector(signedlonglongArg_andsignedintArg_, signature="@@:qi")


	def signedlonglongArg_andsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlonglongArg_andsignedlongArg_ = objc.selector(signedlonglongArg_andsignedlongArg_, signature="@@:ql")


	def signedlonglongArg_andsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlonglongArg_andsignedlonglongArg_ = objc.selector(signedlonglongArg_andsignedlonglongArg_, signature="@@:qq")


	def signedlonglongArg_andunsignedcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlonglongArg_andunsignedcharArg_ = objc.selector(signedlonglongArg_andunsignedcharArg_, signature="@@:qC")


	def signedlonglongArg_andunsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlonglongArg_andunsignedshortArg_ = objc.selector(signedlonglongArg_andunsignedshortArg_, signature="@@:qS")


	def signedlonglongArg_andunsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlonglongArg_andunsignedintArg_ = objc.selector(signedlonglongArg_andunsignedintArg_, signature="@@:qI")


	def signedlonglongArg_andunsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlonglongArg_andunsignedlongArg_ = objc.selector(signedlonglongArg_andunsignedlongArg_, signature="@@:qL")


	def signedlonglongArg_andunsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlonglongArg_andunsignedlonglongArg_ = objc.selector(signedlonglongArg_andunsignedlonglongArg_, signature="@@:qQ")


	def signedlonglongArg_andfloatArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlonglongArg_andfloatArg_ = objc.selector(signedlonglongArg_andfloatArg_, signature="@@:qf")


	def signedlonglongArg_anddoubleArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlonglongArg_anddoubleArg_ = objc.selector(signedlonglongArg_anddoubleArg_, signature="@@:qd")


	def signedlonglongArg_andidArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlonglongArg_andidArg_ = objc.selector(signedlonglongArg_andidArg_, signature="@@:q@")


	def signedlonglongArg_andcharPtrArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlonglongArg_andcharPtrArg_ = objc.selector(signedlonglongArg_andcharPtrArg_, signature="@@:q*")


	def signedlonglongArg_andNSPointArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlonglongArg_andNSPointArg_ = objc.selector(signedlonglongArg_andNSPointArg_, signature="@@:q{_NSPoint=ff}")


	def signedlonglongArg_andNSRectArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	signedlonglongArg_andNSRectArg_ = objc.selector(signedlonglongArg_andNSRectArg_, signature="@@:q{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def unsignedcharArg_andBOOLArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedcharArg_andBOOLArg_ = objc.selector(unsignedcharArg_andBOOLArg_, signature="@@:Cc")


	def unsignedcharArg_andcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedcharArg_andcharArg_ = objc.selector(unsignedcharArg_andcharArg_, signature="@@:Cc")


	def unsignedcharArg_andsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedcharArg_andsignedshortArg_ = objc.selector(unsignedcharArg_andsignedshortArg_, signature="@@:Cs")


	def unsignedcharArg_andsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedcharArg_andsignedintArg_ = objc.selector(unsignedcharArg_andsignedintArg_, signature="@@:Ci")


	def unsignedcharArg_andsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedcharArg_andsignedlongArg_ = objc.selector(unsignedcharArg_andsignedlongArg_, signature="@@:Cl")


	def unsignedcharArg_andsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedcharArg_andsignedlonglongArg_ = objc.selector(unsignedcharArg_andsignedlonglongArg_, signature="@@:Cq")


	def unsignedcharArg_andunsignedcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedcharArg_andunsignedcharArg_ = objc.selector(unsignedcharArg_andunsignedcharArg_, signature="@@:CC")


	def unsignedcharArg_andunsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedcharArg_andunsignedshortArg_ = objc.selector(unsignedcharArg_andunsignedshortArg_, signature="@@:CS")


	def unsignedcharArg_andunsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedcharArg_andunsignedintArg_ = objc.selector(unsignedcharArg_andunsignedintArg_, signature="@@:CI")


	def unsignedcharArg_andunsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedcharArg_andunsignedlongArg_ = objc.selector(unsignedcharArg_andunsignedlongArg_, signature="@@:CL")


	def unsignedcharArg_andunsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedcharArg_andunsignedlonglongArg_ = objc.selector(unsignedcharArg_andunsignedlonglongArg_, signature="@@:CQ")


	def unsignedcharArg_andfloatArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedcharArg_andfloatArg_ = objc.selector(unsignedcharArg_andfloatArg_, signature="@@:Cf")


	def unsignedcharArg_anddoubleArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedcharArg_anddoubleArg_ = objc.selector(unsignedcharArg_anddoubleArg_, signature="@@:Cd")


	def unsignedcharArg_andidArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedcharArg_andidArg_ = objc.selector(unsignedcharArg_andidArg_, signature="@@:C@")


	def unsignedcharArg_andcharPtrArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedcharArg_andcharPtrArg_ = objc.selector(unsignedcharArg_andcharPtrArg_, signature="@@:C*")


	def unsignedcharArg_andNSPointArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedcharArg_andNSPointArg_ = objc.selector(unsignedcharArg_andNSPointArg_, signature="@@:C{_NSPoint=ff}")


	def unsignedcharArg_andNSRectArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedcharArg_andNSRectArg_ = objc.selector(unsignedcharArg_andNSRectArg_, signature="@@:C{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def unsignedshortArg_andBOOLArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedshortArg_andBOOLArg_ = objc.selector(unsignedshortArg_andBOOLArg_, signature="@@:Sc")


	def unsignedshortArg_andcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedshortArg_andcharArg_ = objc.selector(unsignedshortArg_andcharArg_, signature="@@:Sc")


	def unsignedshortArg_andsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedshortArg_andsignedshortArg_ = objc.selector(unsignedshortArg_andsignedshortArg_, signature="@@:Ss")


	def unsignedshortArg_andsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedshortArg_andsignedintArg_ = objc.selector(unsignedshortArg_andsignedintArg_, signature="@@:Si")


	def unsignedshortArg_andsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedshortArg_andsignedlongArg_ = objc.selector(unsignedshortArg_andsignedlongArg_, signature="@@:Sl")


	def unsignedshortArg_andsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedshortArg_andsignedlonglongArg_ = objc.selector(unsignedshortArg_andsignedlonglongArg_, signature="@@:Sq")


	def unsignedshortArg_andunsignedcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedshortArg_andunsignedcharArg_ = objc.selector(unsignedshortArg_andunsignedcharArg_, signature="@@:SC")


	def unsignedshortArg_andunsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedshortArg_andunsignedshortArg_ = objc.selector(unsignedshortArg_andunsignedshortArg_, signature="@@:SS")


	def unsignedshortArg_andunsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedshortArg_andunsignedintArg_ = objc.selector(unsignedshortArg_andunsignedintArg_, signature="@@:SI")


	def unsignedshortArg_andunsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedshortArg_andunsignedlongArg_ = objc.selector(unsignedshortArg_andunsignedlongArg_, signature="@@:SL")


	def unsignedshortArg_andunsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedshortArg_andunsignedlonglongArg_ = objc.selector(unsignedshortArg_andunsignedlonglongArg_, signature="@@:SQ")


	def unsignedshortArg_andfloatArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedshortArg_andfloatArg_ = objc.selector(unsignedshortArg_andfloatArg_, signature="@@:Sf")


	def unsignedshortArg_anddoubleArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedshortArg_anddoubleArg_ = objc.selector(unsignedshortArg_anddoubleArg_, signature="@@:Sd")


	def unsignedshortArg_andidArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedshortArg_andidArg_ = objc.selector(unsignedshortArg_andidArg_, signature="@@:S@")


	def unsignedshortArg_andcharPtrArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedshortArg_andcharPtrArg_ = objc.selector(unsignedshortArg_andcharPtrArg_, signature="@@:S*")


	def unsignedshortArg_andNSPointArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedshortArg_andNSPointArg_ = objc.selector(unsignedshortArg_andNSPointArg_, signature="@@:S{_NSPoint=ff}")


	def unsignedshortArg_andNSRectArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedshortArg_andNSRectArg_ = objc.selector(unsignedshortArg_andNSRectArg_, signature="@@:S{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def unsignedintArg_andBOOLArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedintArg_andBOOLArg_ = objc.selector(unsignedintArg_andBOOLArg_, signature="@@:Ic")


	def unsignedintArg_andcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedintArg_andcharArg_ = objc.selector(unsignedintArg_andcharArg_, signature="@@:Ic")


	def unsignedintArg_andsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedintArg_andsignedshortArg_ = objc.selector(unsignedintArg_andsignedshortArg_, signature="@@:Is")


	def unsignedintArg_andsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedintArg_andsignedintArg_ = objc.selector(unsignedintArg_andsignedintArg_, signature="@@:Ii")


	def unsignedintArg_andsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedintArg_andsignedlongArg_ = objc.selector(unsignedintArg_andsignedlongArg_, signature="@@:Il")


	def unsignedintArg_andsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedintArg_andsignedlonglongArg_ = objc.selector(unsignedintArg_andsignedlonglongArg_, signature="@@:Iq")


	def unsignedintArg_andunsignedcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedintArg_andunsignedcharArg_ = objc.selector(unsignedintArg_andunsignedcharArg_, signature="@@:IC")


	def unsignedintArg_andunsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedintArg_andunsignedshortArg_ = objc.selector(unsignedintArg_andunsignedshortArg_, signature="@@:IS")


	def unsignedintArg_andunsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedintArg_andunsignedintArg_ = objc.selector(unsignedintArg_andunsignedintArg_, signature="@@:II")


	def unsignedintArg_andunsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedintArg_andunsignedlongArg_ = objc.selector(unsignedintArg_andunsignedlongArg_, signature="@@:IL")


	def unsignedintArg_andunsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedintArg_andunsignedlonglongArg_ = objc.selector(unsignedintArg_andunsignedlonglongArg_, signature="@@:IQ")


	def unsignedintArg_andfloatArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedintArg_andfloatArg_ = objc.selector(unsignedintArg_andfloatArg_, signature="@@:If")


	def unsignedintArg_anddoubleArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedintArg_anddoubleArg_ = objc.selector(unsignedintArg_anddoubleArg_, signature="@@:Id")


	def unsignedintArg_andidArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedintArg_andidArg_ = objc.selector(unsignedintArg_andidArg_, signature="@@:I@")


	def unsignedintArg_andcharPtrArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedintArg_andcharPtrArg_ = objc.selector(unsignedintArg_andcharPtrArg_, signature="@@:I*")


	def unsignedintArg_andNSPointArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedintArg_andNSPointArg_ = objc.selector(unsignedintArg_andNSPointArg_, signature="@@:I{_NSPoint=ff}")


	def unsignedintArg_andNSRectArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedintArg_andNSRectArg_ = objc.selector(unsignedintArg_andNSRectArg_, signature="@@:I{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def unsignedlongArg_andBOOLArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlongArg_andBOOLArg_ = objc.selector(unsignedlongArg_andBOOLArg_, signature="@@:Lc")


	def unsignedlongArg_andcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlongArg_andcharArg_ = objc.selector(unsignedlongArg_andcharArg_, signature="@@:Lc")


	def unsignedlongArg_andsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlongArg_andsignedshortArg_ = objc.selector(unsignedlongArg_andsignedshortArg_, signature="@@:Ls")


	def unsignedlongArg_andsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlongArg_andsignedintArg_ = objc.selector(unsignedlongArg_andsignedintArg_, signature="@@:Li")


	def unsignedlongArg_andsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlongArg_andsignedlongArg_ = objc.selector(unsignedlongArg_andsignedlongArg_, signature="@@:Ll")


	def unsignedlongArg_andsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlongArg_andsignedlonglongArg_ = objc.selector(unsignedlongArg_andsignedlonglongArg_, signature="@@:Lq")


	def unsignedlongArg_andunsignedcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlongArg_andunsignedcharArg_ = objc.selector(unsignedlongArg_andunsignedcharArg_, signature="@@:LC")


	def unsignedlongArg_andunsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlongArg_andunsignedshortArg_ = objc.selector(unsignedlongArg_andunsignedshortArg_, signature="@@:LS")


	def unsignedlongArg_andunsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlongArg_andunsignedintArg_ = objc.selector(unsignedlongArg_andunsignedintArg_, signature="@@:LI")


	def unsignedlongArg_andunsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlongArg_andunsignedlongArg_ = objc.selector(unsignedlongArg_andunsignedlongArg_, signature="@@:LL")


	def unsignedlongArg_andunsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlongArg_andunsignedlonglongArg_ = objc.selector(unsignedlongArg_andunsignedlonglongArg_, signature="@@:LQ")


	def unsignedlongArg_andfloatArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlongArg_andfloatArg_ = objc.selector(unsignedlongArg_andfloatArg_, signature="@@:Lf")


	def unsignedlongArg_anddoubleArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlongArg_anddoubleArg_ = objc.selector(unsignedlongArg_anddoubleArg_, signature="@@:Ld")


	def unsignedlongArg_andidArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlongArg_andidArg_ = objc.selector(unsignedlongArg_andidArg_, signature="@@:L@")


	def unsignedlongArg_andcharPtrArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlongArg_andcharPtrArg_ = objc.selector(unsignedlongArg_andcharPtrArg_, signature="@@:L*")


	def unsignedlongArg_andNSPointArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlongArg_andNSPointArg_ = objc.selector(unsignedlongArg_andNSPointArg_, signature="@@:L{_NSPoint=ff}")


	def unsignedlongArg_andNSRectArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlongArg_andNSRectArg_ = objc.selector(unsignedlongArg_andNSRectArg_, signature="@@:L{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def unsignedlonglongArg_andBOOLArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlonglongArg_andBOOLArg_ = objc.selector(unsignedlonglongArg_andBOOLArg_, signature="@@:Qc")


	def unsignedlonglongArg_andcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlonglongArg_andcharArg_ = objc.selector(unsignedlonglongArg_andcharArg_, signature="@@:Qc")


	def unsignedlonglongArg_andsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlonglongArg_andsignedshortArg_ = objc.selector(unsignedlonglongArg_andsignedshortArg_, signature="@@:Qs")


	def unsignedlonglongArg_andsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlonglongArg_andsignedintArg_ = objc.selector(unsignedlonglongArg_andsignedintArg_, signature="@@:Qi")


	def unsignedlonglongArg_andsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlonglongArg_andsignedlongArg_ = objc.selector(unsignedlonglongArg_andsignedlongArg_, signature="@@:Ql")


	def unsignedlonglongArg_andsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlonglongArg_andsignedlonglongArg_ = objc.selector(unsignedlonglongArg_andsignedlonglongArg_, signature="@@:Qq")


	def unsignedlonglongArg_andunsignedcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlonglongArg_andunsignedcharArg_ = objc.selector(unsignedlonglongArg_andunsignedcharArg_, signature="@@:QC")


	def unsignedlonglongArg_andunsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlonglongArg_andunsignedshortArg_ = objc.selector(unsignedlonglongArg_andunsignedshortArg_, signature="@@:QS")


	def unsignedlonglongArg_andunsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlonglongArg_andunsignedintArg_ = objc.selector(unsignedlonglongArg_andunsignedintArg_, signature="@@:QI")


	def unsignedlonglongArg_andunsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlonglongArg_andunsignedlongArg_ = objc.selector(unsignedlonglongArg_andunsignedlongArg_, signature="@@:QL")


	def unsignedlonglongArg_andunsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlonglongArg_andunsignedlonglongArg_ = objc.selector(unsignedlonglongArg_andunsignedlonglongArg_, signature="@@:QQ")


	def unsignedlonglongArg_andfloatArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlonglongArg_andfloatArg_ = objc.selector(unsignedlonglongArg_andfloatArg_, signature="@@:Qf")


	def unsignedlonglongArg_anddoubleArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlonglongArg_anddoubleArg_ = objc.selector(unsignedlonglongArg_anddoubleArg_, signature="@@:Qd")


	def unsignedlonglongArg_andidArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlonglongArg_andidArg_ = objc.selector(unsignedlonglongArg_andidArg_, signature="@@:Q@")


	def unsignedlonglongArg_andcharPtrArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlonglongArg_andcharPtrArg_ = objc.selector(unsignedlonglongArg_andcharPtrArg_, signature="@@:Q*")


	def unsignedlonglongArg_andNSPointArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlonglongArg_andNSPointArg_ = objc.selector(unsignedlonglongArg_andNSPointArg_, signature="@@:Q{_NSPoint=ff}")


	def unsignedlonglongArg_andNSRectArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	unsignedlonglongArg_andNSRectArg_ = objc.selector(unsignedlonglongArg_andNSRectArg_, signature="@@:Q{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def floatArg_andBOOLArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	floatArg_andBOOLArg_ = objc.selector(floatArg_andBOOLArg_, signature="@@:fc")


	def floatArg_andcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	floatArg_andcharArg_ = objc.selector(floatArg_andcharArg_, signature="@@:fc")


	def floatArg_andsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	floatArg_andsignedshortArg_ = objc.selector(floatArg_andsignedshortArg_, signature="@@:fs")


	def floatArg_andsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	floatArg_andsignedintArg_ = objc.selector(floatArg_andsignedintArg_, signature="@@:fi")


	def floatArg_andsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	floatArg_andsignedlongArg_ = objc.selector(floatArg_andsignedlongArg_, signature="@@:fl")


	def floatArg_andsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	floatArg_andsignedlonglongArg_ = objc.selector(floatArg_andsignedlonglongArg_, signature="@@:fq")


	def floatArg_andunsignedcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	floatArg_andunsignedcharArg_ = objc.selector(floatArg_andunsignedcharArg_, signature="@@:fC")


	def floatArg_andunsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	floatArg_andunsignedshortArg_ = objc.selector(floatArg_andunsignedshortArg_, signature="@@:fS")


	def floatArg_andunsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	floatArg_andunsignedintArg_ = objc.selector(floatArg_andunsignedintArg_, signature="@@:fI")


	def floatArg_andunsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	floatArg_andunsignedlongArg_ = objc.selector(floatArg_andunsignedlongArg_, signature="@@:fL")


	def floatArg_andunsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	floatArg_andunsignedlonglongArg_ = objc.selector(floatArg_andunsignedlonglongArg_, signature="@@:fQ")


	def floatArg_andfloatArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	floatArg_andfloatArg_ = objc.selector(floatArg_andfloatArg_, signature="@@:ff")


	def floatArg_anddoubleArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	floatArg_anddoubleArg_ = objc.selector(floatArg_anddoubleArg_, signature="@@:fd")


	def floatArg_andidArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	floatArg_andidArg_ = objc.selector(floatArg_andidArg_, signature="@@:f@")


	def floatArg_andcharPtrArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	floatArg_andcharPtrArg_ = objc.selector(floatArg_andcharPtrArg_, signature="@@:f*")


	def floatArg_andNSPointArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	floatArg_andNSPointArg_ = objc.selector(floatArg_andNSPointArg_, signature="@@:f{_NSPoint=ff}")


	def floatArg_andNSRectArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	floatArg_andNSRectArg_ = objc.selector(floatArg_andNSRectArg_, signature="@@:f{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def doubleArg_andBOOLArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	doubleArg_andBOOLArg_ = objc.selector(doubleArg_andBOOLArg_, signature="@@:dc")


	def doubleArg_andcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	doubleArg_andcharArg_ = objc.selector(doubleArg_andcharArg_, signature="@@:dc")


	def doubleArg_andsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	doubleArg_andsignedshortArg_ = objc.selector(doubleArg_andsignedshortArg_, signature="@@:ds")


	def doubleArg_andsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	doubleArg_andsignedintArg_ = objc.selector(doubleArg_andsignedintArg_, signature="@@:di")


	def doubleArg_andsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	doubleArg_andsignedlongArg_ = objc.selector(doubleArg_andsignedlongArg_, signature="@@:dl")


	def doubleArg_andsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	doubleArg_andsignedlonglongArg_ = objc.selector(doubleArg_andsignedlonglongArg_, signature="@@:dq")


	def doubleArg_andunsignedcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	doubleArg_andunsignedcharArg_ = objc.selector(doubleArg_andunsignedcharArg_, signature="@@:dC")


	def doubleArg_andunsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	doubleArg_andunsignedshortArg_ = objc.selector(doubleArg_andunsignedshortArg_, signature="@@:dS")


	def doubleArg_andunsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	doubleArg_andunsignedintArg_ = objc.selector(doubleArg_andunsignedintArg_, signature="@@:dI")


	def doubleArg_andunsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	doubleArg_andunsignedlongArg_ = objc.selector(doubleArg_andunsignedlongArg_, signature="@@:dL")


	def doubleArg_andunsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	doubleArg_andunsignedlonglongArg_ = objc.selector(doubleArg_andunsignedlonglongArg_, signature="@@:dQ")


	def doubleArg_andfloatArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	doubleArg_andfloatArg_ = objc.selector(doubleArg_andfloatArg_, signature="@@:df")


	def doubleArg_anddoubleArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	doubleArg_anddoubleArg_ = objc.selector(doubleArg_anddoubleArg_, signature="@@:dd")


	def doubleArg_andidArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	doubleArg_andidArg_ = objc.selector(doubleArg_andidArg_, signature="@@:d@")


	def doubleArg_andcharPtrArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	doubleArg_andcharPtrArg_ = objc.selector(doubleArg_andcharPtrArg_, signature="@@:d*")


	def doubleArg_andNSPointArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	doubleArg_andNSPointArg_ = objc.selector(doubleArg_andNSPointArg_, signature="@@:d{_NSPoint=ff}")


	def doubleArg_andNSRectArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	doubleArg_andNSRectArg_ = objc.selector(doubleArg_andNSRectArg_, signature="@@:d{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def idArg_andBOOLArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	idArg_andBOOLArg_ = objc.selector(idArg_andBOOLArg_, signature="@@:@c")


	def idArg_andcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	idArg_andcharArg_ = objc.selector(idArg_andcharArg_, signature="@@:@c")


	def idArg_andsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	idArg_andsignedshortArg_ = objc.selector(idArg_andsignedshortArg_, signature="@@:@s")


	def idArg_andsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	idArg_andsignedintArg_ = objc.selector(idArg_andsignedintArg_, signature="@@:@i")


	def idArg_andsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	idArg_andsignedlongArg_ = objc.selector(idArg_andsignedlongArg_, signature="@@:@l")


	def idArg_andsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	idArg_andsignedlonglongArg_ = objc.selector(idArg_andsignedlonglongArg_, signature="@@:@q")


	def idArg_andunsignedcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	idArg_andunsignedcharArg_ = objc.selector(idArg_andunsignedcharArg_, signature="@@:@C")


	def idArg_andunsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	idArg_andunsignedshortArg_ = objc.selector(idArg_andunsignedshortArg_, signature="@@:@S")


	def idArg_andunsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	idArg_andunsignedintArg_ = objc.selector(idArg_andunsignedintArg_, signature="@@:@I")


	def idArg_andunsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	idArg_andunsignedlongArg_ = objc.selector(idArg_andunsignedlongArg_, signature="@@:@L")


	def idArg_andunsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	idArg_andunsignedlonglongArg_ = objc.selector(idArg_andunsignedlonglongArg_, signature="@@:@Q")


	def idArg_andfloatArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	idArg_andfloatArg_ = objc.selector(idArg_andfloatArg_, signature="@@:@f")


	def idArg_anddoubleArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	idArg_anddoubleArg_ = objc.selector(idArg_anddoubleArg_, signature="@@:@d")


	def idArg_andidArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	idArg_andidArg_ = objc.selector(idArg_andidArg_, signature="@@:@@")


	def idArg_andcharPtrArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	idArg_andcharPtrArg_ = objc.selector(idArg_andcharPtrArg_, signature="@@:@*")


	def idArg_andNSPointArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	idArg_andNSPointArg_ = objc.selector(idArg_andNSPointArg_, signature="@@:@{_NSPoint=ff}")


	def idArg_andNSRectArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	idArg_andNSRectArg_ = objc.selector(idArg_andNSRectArg_, signature="@@:@{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def charPtrArg_andBOOLArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charPtrArg_andBOOLArg_ = objc.selector(charPtrArg_andBOOLArg_, signature="@@:*c")


	def charPtrArg_andcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charPtrArg_andcharArg_ = objc.selector(charPtrArg_andcharArg_, signature="@@:*c")


	def charPtrArg_andsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charPtrArg_andsignedshortArg_ = objc.selector(charPtrArg_andsignedshortArg_, signature="@@:*s")


	def charPtrArg_andsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charPtrArg_andsignedintArg_ = objc.selector(charPtrArg_andsignedintArg_, signature="@@:*i")


	def charPtrArg_andsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charPtrArg_andsignedlongArg_ = objc.selector(charPtrArg_andsignedlongArg_, signature="@@:*l")


	def charPtrArg_andsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charPtrArg_andsignedlonglongArg_ = objc.selector(charPtrArg_andsignedlonglongArg_, signature="@@:*q")


	def charPtrArg_andunsignedcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charPtrArg_andunsignedcharArg_ = objc.selector(charPtrArg_andunsignedcharArg_, signature="@@:*C")


	def charPtrArg_andunsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charPtrArg_andunsignedshortArg_ = objc.selector(charPtrArg_andunsignedshortArg_, signature="@@:*S")


	def charPtrArg_andunsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charPtrArg_andunsignedintArg_ = objc.selector(charPtrArg_andunsignedintArg_, signature="@@:*I")


	def charPtrArg_andunsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charPtrArg_andunsignedlongArg_ = objc.selector(charPtrArg_andunsignedlongArg_, signature="@@:*L")


	def charPtrArg_andunsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charPtrArg_andunsignedlonglongArg_ = objc.selector(charPtrArg_andunsignedlonglongArg_, signature="@@:*Q")


	def charPtrArg_andfloatArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charPtrArg_andfloatArg_ = objc.selector(charPtrArg_andfloatArg_, signature="@@:*f")


	def charPtrArg_anddoubleArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charPtrArg_anddoubleArg_ = objc.selector(charPtrArg_anddoubleArg_, signature="@@:*d")


	def charPtrArg_andidArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charPtrArg_andidArg_ = objc.selector(charPtrArg_andidArg_, signature="@@:*@")


	def charPtrArg_andcharPtrArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charPtrArg_andcharPtrArg_ = objc.selector(charPtrArg_andcharPtrArg_, signature="@@:**")


	def charPtrArg_andNSPointArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charPtrArg_andNSPointArg_ = objc.selector(charPtrArg_andNSPointArg_, signature="@@:*{_NSPoint=ff}")


	def charPtrArg_andNSRectArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	charPtrArg_andNSRectArg_ = objc.selector(charPtrArg_andNSRectArg_, signature="@@:*{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def NSPointArg_andBOOLArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSPointArg_andBOOLArg_ = objc.selector(NSPointArg_andBOOLArg_, signature="@@:{_NSPoint=ff}c")


	def NSPointArg_andcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSPointArg_andcharArg_ = objc.selector(NSPointArg_andcharArg_, signature="@@:{_NSPoint=ff}c")


	def NSPointArg_andsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSPointArg_andsignedshortArg_ = objc.selector(NSPointArg_andsignedshortArg_, signature="@@:{_NSPoint=ff}s")


	def NSPointArg_andsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSPointArg_andsignedintArg_ = objc.selector(NSPointArg_andsignedintArg_, signature="@@:{_NSPoint=ff}i")


	def NSPointArg_andsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSPointArg_andsignedlongArg_ = objc.selector(NSPointArg_andsignedlongArg_, signature="@@:{_NSPoint=ff}l")


	def NSPointArg_andsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSPointArg_andsignedlonglongArg_ = objc.selector(NSPointArg_andsignedlonglongArg_, signature="@@:{_NSPoint=ff}q")


	def NSPointArg_andunsignedcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSPointArg_andunsignedcharArg_ = objc.selector(NSPointArg_andunsignedcharArg_, signature="@@:{_NSPoint=ff}C")


	def NSPointArg_andunsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSPointArg_andunsignedshortArg_ = objc.selector(NSPointArg_andunsignedshortArg_, signature="@@:{_NSPoint=ff}S")


	def NSPointArg_andunsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSPointArg_andunsignedintArg_ = objc.selector(NSPointArg_andunsignedintArg_, signature="@@:{_NSPoint=ff}I")


	def NSPointArg_andunsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSPointArg_andunsignedlongArg_ = objc.selector(NSPointArg_andunsignedlongArg_, signature="@@:{_NSPoint=ff}L")


	def NSPointArg_andunsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSPointArg_andunsignedlonglongArg_ = objc.selector(NSPointArg_andunsignedlonglongArg_, signature="@@:{_NSPoint=ff}Q")


	def NSPointArg_andfloatArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSPointArg_andfloatArg_ = objc.selector(NSPointArg_andfloatArg_, signature="@@:{_NSPoint=ff}f")


	def NSPointArg_anddoubleArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSPointArg_anddoubleArg_ = objc.selector(NSPointArg_anddoubleArg_, signature="@@:{_NSPoint=ff}d")


	def NSPointArg_andidArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSPointArg_andidArg_ = objc.selector(NSPointArg_andidArg_, signature="@@:{_NSPoint=ff}@")


	def NSPointArg_andcharPtrArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSPointArg_andcharPtrArg_ = objc.selector(NSPointArg_andcharPtrArg_, signature="@@:{_NSPoint=ff}*")


	def NSPointArg_andNSPointArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSPointArg_andNSPointArg_ = objc.selector(NSPointArg_andNSPointArg_, signature="@@:{_NSPoint=ff}{_NSPoint=ff}")


	def NSPointArg_andNSRectArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSPointArg_andNSRectArg_ = objc.selector(NSPointArg_andNSRectArg_, signature="@@:{_NSPoint=ff}{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def NSRectArg_andBOOLArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSRectArg_andBOOLArg_ = objc.selector(NSRectArg_andBOOLArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}c")


	def NSRectArg_andcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSRectArg_andcharArg_ = objc.selector(NSRectArg_andcharArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}c")


	def NSRectArg_andsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSRectArg_andsignedshortArg_ = objc.selector(NSRectArg_andsignedshortArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}s")


	def NSRectArg_andsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSRectArg_andsignedintArg_ = objc.selector(NSRectArg_andsignedintArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}i")


	def NSRectArg_andsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSRectArg_andsignedlongArg_ = objc.selector(NSRectArg_andsignedlongArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}l")


	def NSRectArg_andsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSRectArg_andsignedlonglongArg_ = objc.selector(NSRectArg_andsignedlonglongArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}q")


	def NSRectArg_andunsignedcharArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSRectArg_andunsignedcharArg_ = objc.selector(NSRectArg_andunsignedcharArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}C")


	def NSRectArg_andunsignedshortArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSRectArg_andunsignedshortArg_ = objc.selector(NSRectArg_andunsignedshortArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}S")


	def NSRectArg_andunsignedintArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSRectArg_andunsignedintArg_ = objc.selector(NSRectArg_andunsignedintArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}I")


	def NSRectArg_andunsignedlongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSRectArg_andunsignedlongArg_ = objc.selector(NSRectArg_andunsignedlongArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}L")


	def NSRectArg_andunsignedlonglongArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSRectArg_andunsignedlonglongArg_ = objc.selector(NSRectArg_andunsignedlonglongArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}Q")


	def NSRectArg_andfloatArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSRectArg_andfloatArg_ = objc.selector(NSRectArg_andfloatArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}f")


	def NSRectArg_anddoubleArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSRectArg_anddoubleArg_ = objc.selector(NSRectArg_anddoubleArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}d")


	def NSRectArg_andidArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSRectArg_andidArg_ = objc.selector(NSRectArg_andidArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}@")


	def NSRectArg_andcharPtrArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSRectArg_andcharPtrArg_ = objc.selector(NSRectArg_andcharPtrArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}*")


	def NSRectArg_andNSPointArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSRectArg_andNSPointArg_ = objc.selector(NSRectArg_andNSPointArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}{_NSPoint=ff}")


	def NSRectArg_andNSRectArg_(self, arg1, arg2):
		return [ arg1, arg2 ]
	NSRectArg_andNSRectArg_ = objc.selector(NSRectArg_andNSRectArg_, signature="@@:{_NSRect={_NSPoint=ff}{_NSSize=ff}}{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def BOOLInArg_(self, arg):
		return arg
	BOOLInArg_ = objc.selector(BOOLInArg_, signature="@@:n^c")


	def BOOLOutArg_(self):
		if (self.counter > 2): self.reset()
		res = g_BOOL_values[self.counter]
		self.counter += 1
		return res
	BOOLOutArg_ = objc.selector(BOOLOutArg_, signature="v@:o^c")


	def BOOLInOutArg_(self, arg):
		if (self.counter > 2): self.reset()
		res = g_BOOL_values[self.counter];
		self.counter += 1
		return (arg, res)
	BOOLInOutArg_ = objc.selector(BOOLInOutArg_, signature="@@:N^c")


	def charInArg_(self, arg):
		return arg
	charInArg_ = objc.selector(charInArg_, signature="@@:n^c")


	def charOutArg_(self):
		if (self.counter > 3): self.reset()
		res = g_char_values[self.counter]
		self.counter += 1
		return res
	charOutArg_ = objc.selector(charOutArg_, signature="v@:o^c")


	def charInOutArg_(self, arg):
		if (self.counter > 3): self.reset()
		res = g_char_values[self.counter];
		self.counter += 1
		return (arg, res)
	charInOutArg_ = objc.selector(charInOutArg_, signature="@@:N^c")


	def signedshortInArg_(self, arg):
		return arg
	signedshortInArg_ = objc.selector(signedshortInArg_, signature="@@:n^s")


	def signedshortOutArg_(self):
		if (self.counter > 5): self.reset()
		res = g_signedshort_values[self.counter]
		self.counter += 1
		return res
	signedshortOutArg_ = objc.selector(signedshortOutArg_, signature="v@:o^s")


	def signedshortInOutArg_(self, arg):
		if (self.counter > 5): self.reset()
		res = g_signedshort_values[self.counter];
		self.counter += 1
		return (arg, res)
	signedshortInOutArg_ = objc.selector(signedshortInOutArg_, signature="@@:N^s")


	def signedintInArg_(self, arg):
		return arg
	signedintInArg_ = objc.selector(signedintInArg_, signature="@@:n^i")


	def signedintOutArg_(self):
		if (self.counter > 5): self.reset()
		res = g_signedint_values[self.counter]
		self.counter += 1
		return res
	signedintOutArg_ = objc.selector(signedintOutArg_, signature="v@:o^i")


	def signedintInOutArg_(self, arg):
		if (self.counter > 5): self.reset()
		res = g_signedint_values[self.counter];
		self.counter += 1
		return (arg, res)
	signedintInOutArg_ = objc.selector(signedintInOutArg_, signature="@@:N^i")


	def signedlongInArg_(self, arg):
		return arg
	signedlongInArg_ = objc.selector(signedlongInArg_, signature="@@:n^l")


	def signedlongOutArg_(self):
		if (self.counter > 5): self.reset()
		res = g_signedlong_values[self.counter]
		self.counter += 1
		return res
	signedlongOutArg_ = objc.selector(signedlongOutArg_, signature="v@:o^l")


	def signedlongInOutArg_(self, arg):
		if (self.counter > 5): self.reset()
		res = g_signedlong_values[self.counter];
		self.counter += 1
		return (arg, res)
	signedlongInOutArg_ = objc.selector(signedlongInOutArg_, signature="@@:N^l")


	def signedlonglongInArg_(self, arg):
		return arg
	signedlonglongInArg_ = objc.selector(signedlonglongInArg_, signature="@@:n^q")


	def signedlonglongOutArg_(self):
		if (self.counter > 5): self.reset()
		res = g_signedlonglong_values[self.counter]
		self.counter += 1
		return res
	signedlonglongOutArg_ = objc.selector(signedlonglongOutArg_, signature="v@:o^q")


	def signedlonglongInOutArg_(self, arg):
		if (self.counter > 5): self.reset()
		res = g_signedlonglong_values[self.counter];
		self.counter += 1
		return (arg, res)
	signedlonglongInOutArg_ = objc.selector(signedlonglongInOutArg_, signature="@@:N^q")


	def unsignedcharInArg_(self, arg):
		return arg
	unsignedcharInArg_ = objc.selector(unsignedcharInArg_, signature="@@:n^C")


	def unsignedcharOutArg_(self):
		if (self.counter > 3): self.reset()
		res = g_unsignedchar_values[self.counter]
		self.counter += 1
		return res
	unsignedcharOutArg_ = objc.selector(unsignedcharOutArg_, signature="v@:o^C")


	def unsignedcharInOutArg_(self, arg):
		if (self.counter > 3): self.reset()
		res = g_unsignedchar_values[self.counter];
		self.counter += 1
		return (arg, res)
	unsignedcharInOutArg_ = objc.selector(unsignedcharInOutArg_, signature="@@:N^C")


	def unsignedshortInArg_(self, arg):
		return arg
	unsignedshortInArg_ = objc.selector(unsignedshortInArg_, signature="@@:n^S")


	def unsignedshortOutArg_(self):
		if (self.counter > 3): self.reset()
		res = g_unsignedshort_values[self.counter]
		self.counter += 1
		return res
	unsignedshortOutArg_ = objc.selector(unsignedshortOutArg_, signature="v@:o^S")


	def unsignedshortInOutArg_(self, arg):
		if (self.counter > 3): self.reset()
		res = g_unsignedshort_values[self.counter];
		self.counter += 1
		return (arg, res)
	unsignedshortInOutArg_ = objc.selector(unsignedshortInOutArg_, signature="@@:N^S")


	def unsignedintInArg_(self, arg):
		return arg
	unsignedintInArg_ = objc.selector(unsignedintInArg_, signature="@@:n^I")


	def unsignedintOutArg_(self):
		if (self.counter > 3): self.reset()
		res = g_unsignedint_values[self.counter]
		self.counter += 1
		return res
	unsignedintOutArg_ = objc.selector(unsignedintOutArg_, signature="v@:o^I")


	def unsignedintInOutArg_(self, arg):
		if (self.counter > 3): self.reset()
		res = g_unsignedint_values[self.counter];
		self.counter += 1
		return (arg, res)
	unsignedintInOutArg_ = objc.selector(unsignedintInOutArg_, signature="@@:N^I")


	def unsignedlongInArg_(self, arg):
		return arg
	unsignedlongInArg_ = objc.selector(unsignedlongInArg_, signature="@@:n^L")


	def unsignedlongOutArg_(self):
		if (self.counter > 3): self.reset()
		res = g_unsignedlong_values[self.counter]
		self.counter += 1
		return res
	unsignedlongOutArg_ = objc.selector(unsignedlongOutArg_, signature="v@:o^L")


	def unsignedlongInOutArg_(self, arg):
		if (self.counter > 3): self.reset()
		res = g_unsignedlong_values[self.counter];
		self.counter += 1
		return (arg, res)
	unsignedlongInOutArg_ = objc.selector(unsignedlongInOutArg_, signature="@@:N^L")


	def unsignedlonglongInArg_(self, arg):
		return arg
	unsignedlonglongInArg_ = objc.selector(unsignedlonglongInArg_, signature="@@:n^Q")


	def unsignedlonglongOutArg_(self):
		if (self.counter > 3): self.reset()
		res = g_unsignedlonglong_values[self.counter]
		self.counter += 1
		return res
	unsignedlonglongOutArg_ = objc.selector(unsignedlonglongOutArg_, signature="v@:o^Q")


	def unsignedlonglongInOutArg_(self, arg):
		if (self.counter > 3): self.reset()
		res = g_unsignedlonglong_values[self.counter];
		self.counter += 1
		return (arg, res)
	unsignedlonglongInOutArg_ = objc.selector(unsignedlonglongInOutArg_, signature="@@:N^Q")


	def floatInArg_(self, arg):
		return arg
	floatInArg_ = objc.selector(floatInArg_, signature="@@:n^f")


	def floatOutArg_(self):
		if (self.counter > 4): self.reset()
		res = g_float_values[self.counter]
		self.counter += 1
		return res
	floatOutArg_ = objc.selector(floatOutArg_, signature="v@:o^f")


	def floatInOutArg_(self, arg):
		if (self.counter > 4): self.reset()
		res = g_float_values[self.counter];
		self.counter += 1
		return (arg, res)
	floatInOutArg_ = objc.selector(floatInOutArg_, signature="@@:N^f")


	def doubleInArg_(self, arg):
		return arg
	doubleInArg_ = objc.selector(doubleInArg_, signature="@@:n^d")


	def doubleOutArg_(self):
		if (self.counter > 4): self.reset()
		res = g_double_values[self.counter]
		self.counter += 1
		return res
	doubleOutArg_ = objc.selector(doubleOutArg_, signature="v@:o^d")


	def doubleInOutArg_(self, arg):
		if (self.counter > 4): self.reset()
		res = g_double_values[self.counter];
		self.counter += 1
		return (arg, res)
	doubleInOutArg_ = objc.selector(doubleInOutArg_, signature="@@:N^d")


	def idInArg_(self, arg):
		return arg
	idInArg_ = objc.selector(idInArg_, signature="@@:n^@")


	def idOutArg_(self):
		if (self.counter > 1): self.reset()
		res = g_id_values[self.counter]
		self.counter += 1
		return res
	idOutArg_ = objc.selector(idOutArg_, signature="v@:o^@")


	def idInOutArg_(self, arg):
		if (self.counter > 1): self.reset()
		res = g_id_values[self.counter];
		self.counter += 1
		return (arg, res)
	idInOutArg_ = objc.selector(idInOutArg_, signature="@@:N^@")


	def charPtrInArg_(self, arg):
		return arg
	charPtrInArg_ = objc.selector(charPtrInArg_, signature="@@:n^*")


	def charPtrOutArg_(self):
		if (self.counter > 3): self.reset()
		res = g_charPtr_values[self.counter]
		self.counter += 1
		return res
	charPtrOutArg_ = objc.selector(charPtrOutArg_, signature="v@:o^*")


	def charPtrInOutArg_(self, arg):
		if (self.counter > 3): self.reset()
		res = g_charPtr_values[self.counter];
		self.counter += 1
		return (arg, res)
	charPtrInOutArg_ = objc.selector(charPtrInOutArg_, signature="@@:N^*")


	def NSPointInArg_(self, arg):
		return arg
	NSPointInArg_ = objc.selector(NSPointInArg_, signature="@@:n^{_NSPoint=ff}")


	def NSPointOutArg_(self):
		if (self.counter > 2): self.reset()
		res = g_NSPoint_values[self.counter]
		self.counter += 1
		return res
	NSPointOutArg_ = objc.selector(NSPointOutArg_, signature="v@:o^{_NSPoint=ff}")


	def NSPointInOutArg_(self, arg):
		if (self.counter > 2): self.reset()
		res = g_NSPoint_values[self.counter];
		self.counter += 1
		return (arg, res)
	NSPointInOutArg_ = objc.selector(NSPointInOutArg_, signature="@@:N^{_NSPoint=ff}")


	def NSRectInArg_(self, arg):
		return arg
	NSRectInArg_ = objc.selector(NSRectInArg_, signature="@@:n^{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def NSRectOutArg_(self):
		if (self.counter > 2): self.reset()
		res = g_NSRect_values[self.counter]
		self.counter += 1
		return res
	NSRectOutArg_ = objc.selector(NSRectOutArg_, signature="v@:o^{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


	def NSRectInOutArg_(self, arg):
		if (self.counter > 2): self.reset()
		res = g_NSRect_values[self.counter];
		self.counter += 1
		return (arg, res)
	NSRectInOutArg_ = objc.selector(NSRectInOutArg_, signature="@@:N^{_NSRect={_NSPoint=ff}{_NSSize=ff}}")


class ObjCToPy (TestCase):
	# Test calling Python from Objective-C
	# Simple returns from instance methods

	def testcallBOOLResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.callBOOLMethodOf_(o), YES)
		self.assertEquals(PyObjC_TestClass2.callBOOLMethodOf_(o), NO)


	def testinvokeBOOLResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.invokeBOOLMethodOf_(o), YES)
		self.assertEquals(PyObjC_TestClass2.invokeBOOLMethodOf_(o), NO)


	def testcallcharResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.callcharMethodOf_(o), -128)
		self.assertEquals(PyObjC_TestClass2.callcharMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.callcharMethodOf_(o), 127)


	def testinvokecharResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.invokecharMethodOf_(o), -128)
		self.assertEquals(PyObjC_TestClass2.invokecharMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.invokecharMethodOf_(o), 127)


	def testcallsignedshortResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.callsignedshortMethodOf_(o), -(1<<14))
		self.assertEquals(PyObjC_TestClass2.callsignedshortMethodOf_(o), -42)
		self.assertEquals(PyObjC_TestClass2.callsignedshortMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.callsignedshortMethodOf_(o), 42)
		self.assertEquals(PyObjC_TestClass2.callsignedshortMethodOf_(o), 1 << 14)


	def testinvokesignedshortResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.invokesignedshortMethodOf_(o), -(1<<14))
		self.assertEquals(PyObjC_TestClass2.invokesignedshortMethodOf_(o), -42)
		self.assertEquals(PyObjC_TestClass2.invokesignedshortMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.invokesignedshortMethodOf_(o), 42)
		self.assertEquals(PyObjC_TestClass2.invokesignedshortMethodOf_(o), 1 << 14)


	def testcallsignedintResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.callsignedintMethodOf_(o), -(1<<30))
		self.assertEquals(PyObjC_TestClass2.callsignedintMethodOf_(o), -42)
		self.assertEquals(PyObjC_TestClass2.callsignedintMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.callsignedintMethodOf_(o), 42)
		self.assertEquals(PyObjC_TestClass2.callsignedintMethodOf_(o), 1 << 30)


	def testinvokesignedintResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.invokesignedintMethodOf_(o), -(1<<30))
		self.assertEquals(PyObjC_TestClass2.invokesignedintMethodOf_(o), -42)
		self.assertEquals(PyObjC_TestClass2.invokesignedintMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.invokesignedintMethodOf_(o), 42)
		self.assertEquals(PyObjC_TestClass2.invokesignedintMethodOf_(o), 1 << 30)


	def testcallsignedlongResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.callsignedlongMethodOf_(o), -(1<<30))
		self.assertEquals(PyObjC_TestClass2.callsignedlongMethodOf_(o), -42)
		self.assertEquals(PyObjC_TestClass2.callsignedlongMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.callsignedlongMethodOf_(o), 42)
		self.assertEquals(PyObjC_TestClass2.callsignedlongMethodOf_(o), 1 << 30)


	def testinvokesignedlongResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.invokesignedlongMethodOf_(o), -(1<<30))
		self.assertEquals(PyObjC_TestClass2.invokesignedlongMethodOf_(o), -42)
		self.assertEquals(PyObjC_TestClass2.invokesignedlongMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.invokesignedlongMethodOf_(o), 42)
		self.assertEquals(PyObjC_TestClass2.invokesignedlongMethodOf_(o), 1 << 30)


	def testcallsignedlonglongResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.callsignedlonglongMethodOf_(o), -(1L << 60))
		self.assertEquals(PyObjC_TestClass2.callsignedlonglongMethodOf_(o), -42)
		self.assertEquals(PyObjC_TestClass2.callsignedlonglongMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.callsignedlonglongMethodOf_(o), 42)
		self.assertEquals(PyObjC_TestClass2.callsignedlonglongMethodOf_(o), 1L << 60)


	def testinvokesignedlonglongResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.invokesignedlonglongMethodOf_(o), -(1L << 60))
		self.assertEquals(PyObjC_TestClass2.invokesignedlonglongMethodOf_(o), -42)
		self.assertEquals(PyObjC_TestClass2.invokesignedlonglongMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.invokesignedlonglongMethodOf_(o), 42)
		self.assertEquals(PyObjC_TestClass2.invokesignedlonglongMethodOf_(o), 1L << 60)


	def testcallunsignedcharResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.callunsignedcharMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.callunsignedcharMethodOf_(o), 128)
		self.assertEquals(PyObjC_TestClass2.callunsignedcharMethodOf_(o), 255)


	def testinvokeunsignedcharResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.invokeunsignedcharMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.invokeunsignedcharMethodOf_(o), 128)
		self.assertEquals(PyObjC_TestClass2.invokeunsignedcharMethodOf_(o), 255)


	def testcallunsignedshortResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.callunsignedshortMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.callunsignedshortMethodOf_(o), 42)
		self.assertEquals(PyObjC_TestClass2.callunsignedshortMethodOf_(o), 1<<14)


	def testinvokeunsignedshortResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.invokeunsignedshortMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.invokeunsignedshortMethodOf_(o), 42)
		self.assertEquals(PyObjC_TestClass2.invokeunsignedshortMethodOf_(o), 1<<14)


	def testcallunsignedintResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.callunsignedintMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.callunsignedintMethodOf_(o), 42)
		self.assertEquals(PyObjC_TestClass2.callunsignedintMethodOf_(o), 1 << 30)


	def testinvokeunsignedintResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.invokeunsignedintMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.invokeunsignedintMethodOf_(o), 42)
		self.assertEquals(PyObjC_TestClass2.invokeunsignedintMethodOf_(o), 1 << 30)


	def testcallunsignedlongResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.callunsignedlongMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.callunsignedlongMethodOf_(o), 42)
		self.assertEquals(PyObjC_TestClass2.callunsignedlongMethodOf_(o), 1L << 30)


	def testinvokeunsignedlongResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.invokeunsignedlongMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.invokeunsignedlongMethodOf_(o), 42)
		self.assertEquals(PyObjC_TestClass2.invokeunsignedlongMethodOf_(o), 1L << 30)


	def testcallunsignedlonglongResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.callunsignedlonglongMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.callunsignedlonglongMethodOf_(o), 42)
		self.assertEquals(PyObjC_TestClass2.callunsignedlonglongMethodOf_(o), 1L << 62)


	def testinvokeunsignedlonglongResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.invokeunsignedlonglongMethodOf_(o), 0)
		self.assertEquals(PyObjC_TestClass2.invokeunsignedlonglongMethodOf_(o), 42)
		self.assertEquals(PyObjC_TestClass2.invokeunsignedlonglongMethodOf_(o), 1L << 62)


	def testcallfloatResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertAlmostEquals(PyObjC_TestClass2.callfloatMethodOf_(o), 0.128)
		self.assertAlmostEquals(PyObjC_TestClass2.callfloatMethodOf_(o), 1.0)
		self.assertAlmostEquals(PyObjC_TestClass2.callfloatMethodOf_(o), 42.0)
		self.assertAlmostEquals(PyObjC_TestClass2.callfloatMethodOf_(o), 1e10)


	def testinvokefloatResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertAlmostEquals(PyObjC_TestClass2.invokefloatMethodOf_(o), 0.128)
		self.assertAlmostEquals(PyObjC_TestClass2.invokefloatMethodOf_(o), 1.0)
		self.assertAlmostEquals(PyObjC_TestClass2.invokefloatMethodOf_(o), 42.0)
		self.assertAlmostEquals(PyObjC_TestClass2.invokefloatMethodOf_(o), 1e10)


	def testcalldoubleResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertAlmostEquals(PyObjC_TestClass2.calldoubleMethodOf_(o), 0.128)
		self.assertAlmostEquals(PyObjC_TestClass2.calldoubleMethodOf_(o), 1.0)
		self.assertAlmostEquals(PyObjC_TestClass2.calldoubleMethodOf_(o), 42.0)
		self.assertAlmostEquals(PyObjC_TestClass2.calldoubleMethodOf_(o), 1e10)


	def testinvokedoubleResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertAlmostEquals(PyObjC_TestClass2.invokedoubleMethodOf_(o), 0.128)
		self.assertAlmostEquals(PyObjC_TestClass2.invokedoubleMethodOf_(o), 1.0)
		self.assertAlmostEquals(PyObjC_TestClass2.invokedoubleMethodOf_(o), 42.0)
		self.assertAlmostEquals(PyObjC_TestClass2.invokedoubleMethodOf_(o), 1e10)


	def testcallidResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.callidMethodOf_(o), NSPriorDayDesignations)


	def testinvokeidResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.invokeidMethodOf_(o), NSPriorDayDesignations)


	def testcallcharPtrResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.callcharPtrMethodOf_(o), "hello")
		self.assertEquals(PyObjC_TestClass2.callcharPtrMethodOf_(o), "world")
		self.assertEquals(PyObjC_TestClass2.callcharPtrMethodOf_(o), "foobar")


	def testinvokecharPtrResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.invokecharPtrMethodOf_(o), "hello")
		self.assertEquals(PyObjC_TestClass2.invokecharPtrMethodOf_(o), "world")
		self.assertEquals(PyObjC_TestClass2.invokecharPtrMethodOf_(o), "foobar")


	def testcallNSPointResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.callNSPointMethodOf_(o), (1, 2))
		self.assertEquals(PyObjC_TestClass2.callNSPointMethodOf_(o), (3, 4))


	def testinvokeNSPointResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.invokeNSPointMethodOf_(o), (1, 2))
		self.assertEquals(PyObjC_TestClass2.invokeNSPointMethodOf_(o), (3, 4))


	def testcallNSRectResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.callNSRectMethodOf_(o), ((1, 2), (3, 4)))
		self.assertEquals(PyObjC_TestClass2.callNSRectMethodOf_(o), ((7, 8), (9, 10)))


	def testinvokeNSRectResult(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		self.assertEquals(PyObjC_TestClass2.invokeNSRectMethodOf_(o), ((1, 2), (3, 4)))
		self.assertEquals(PyObjC_TestClass2.invokeNSRectMethodOf_(o), ((7, 8), (9, 10)))


	# One argument

	def testcallBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_of_(YES, o)
		self.assertEquals(r, YES)
		r = PyObjC_TestClass2.callBOOLArg_of_(NO, o)
		self.assertEquals(r, NO)


	def testinvokeBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_of_(YES, o)
		self.assertEquals(r, YES)
		r = PyObjC_TestClass2.invokeBOOLArg_of_(NO, o)
		self.assertEquals(r, NO)


	def testcallcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_of_(-128, o)
		self.assertEquals(r, -128)
		r = PyObjC_TestClass2.callcharArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callcharArg_of_(127, o)
		self.assertEquals(r, 127)


	def testinvokecharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_of_(-128, o)
		self.assertEquals(r, -128)
		r = PyObjC_TestClass2.invokecharArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokecharArg_of_(127, o)
		self.assertEquals(r, 127)


	def testcallsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_of_(-(1<<14), o)
		self.assertEquals(r, -(1<<14))
		r = PyObjC_TestClass2.callsignedshortArg_of_(-42, o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.callsignedshortArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callsignedshortArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callsignedshortArg_of_(1 << 14, o)
		self.assertEquals(r, 1 << 14)


	def testinvokesignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_of_(-(1<<14), o)
		self.assertEquals(r, -(1<<14))
		r = PyObjC_TestClass2.invokesignedshortArg_of_(-42, o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.invokesignedshortArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokesignedshortArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokesignedshortArg_of_(1 << 14, o)
		self.assertEquals(r, 1 << 14)


	def testcallsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_of_(-(1<<30), o)
		self.assertEquals(r, -(1<<30))
		r = PyObjC_TestClass2.callsignedintArg_of_(-42, o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.callsignedintArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callsignedintArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callsignedintArg_of_(1 << 30, o)
		self.assertEquals(r, 1 << 30)


	def testinvokesignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_of_(-(1<<30), o)
		self.assertEquals(r, -(1<<30))
		r = PyObjC_TestClass2.invokesignedintArg_of_(-42, o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.invokesignedintArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokesignedintArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokesignedintArg_of_(1 << 30, o)
		self.assertEquals(r, 1 << 30)


	def testcallsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_of_(-(1<<30), o)
		self.assertEquals(r, -(1<<30))
		r = PyObjC_TestClass2.callsignedlongArg_of_(-42, o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.callsignedlongArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callsignedlongArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callsignedlongArg_of_(1 << 30, o)
		self.assertEquals(r, 1 << 30)


	def testinvokesignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_of_(-(1<<30), o)
		self.assertEquals(r, -(1<<30))
		r = PyObjC_TestClass2.invokesignedlongArg_of_(-42, o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.invokesignedlongArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokesignedlongArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokesignedlongArg_of_(1 << 30, o)
		self.assertEquals(r, 1 << 30)


	def testcallsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_of_(-(1L << 60), o)
		self.assertEquals(r, -(1L << 60))
		r = PyObjC_TestClass2.callsignedlonglongArg_of_(-42, o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_of_(1L << 60, o)
		self.assertEquals(r, 1L << 60)


	def testinvokesignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_of_(-(1L << 60), o)
		self.assertEquals(r, -(1L << 60))
		r = PyObjC_TestClass2.invokesignedlonglongArg_of_(-42, o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_of_(1L << 60, o)
		self.assertEquals(r, 1L << 60)


	def testcallunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callunsignedcharArg_of_(128, o)
		self.assertEquals(r, 128)
		r = PyObjC_TestClass2.callunsignedcharArg_of_(255, o)
		self.assertEquals(r, 255)


	def testinvokeunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_of_(128, o)
		self.assertEquals(r, 128)
		r = PyObjC_TestClass2.invokeunsignedcharArg_of_(255, o)
		self.assertEquals(r, 255)


	def testcallunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callunsignedshortArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callunsignedshortArg_of_(1<<14, o)
		self.assertEquals(r, 1<<14)


	def testinvokeunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_of_(1<<14, o)
		self.assertEquals(r, 1<<14)


	def testcallunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callunsignedintArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callunsignedintArg_of_(1 << 30, o)
		self.assertEquals(r, 1 << 30)


	def testinvokeunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_of_(1 << 30, o)
		self.assertEquals(r, 1 << 30)


	def testcallunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callunsignedlongArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callunsignedlongArg_of_(1L << 30, o)
		self.assertEquals(r, 1L << 30)


	def testinvokeunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_of_(1L << 30, o)
		self.assertEquals(r, 1L << 30)


	def testcallunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_of_(1L << 62, o)
		self.assertEquals(r, 1L << 62)


	def testinvokeunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_of_(1L << 62, o)
		self.assertEquals(r, 1L << 62)


	def testcallfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_of_(0.128, o)
		self.assertAlmostEquals(r, 0.128)
		r = PyObjC_TestClass2.callfloatArg_of_(1.0, o)
		self.assertAlmostEquals(r, 1.0)
		r = PyObjC_TestClass2.callfloatArg_of_(42.0, o)
		self.assertAlmostEquals(r, 42.0)
		r = PyObjC_TestClass2.callfloatArg_of_(1e10, o)
		self.assertAlmostEquals(r, 1e10)


	def testinvokefloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_of_(0.128, o)
		self.assertAlmostEquals(r, 0.128)
		r = PyObjC_TestClass2.invokefloatArg_of_(1.0, o)
		self.assertAlmostEquals(r, 1.0)
		r = PyObjC_TestClass2.invokefloatArg_of_(42.0, o)
		self.assertAlmostEquals(r, 42.0)
		r = PyObjC_TestClass2.invokefloatArg_of_(1e10, o)
		self.assertAlmostEquals(r, 1e10)


	def testcalldoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_of_(0.128, o)
		self.assertAlmostEquals(r, 0.128)
		r = PyObjC_TestClass2.calldoubleArg_of_(1.0, o)
		self.assertAlmostEquals(r, 1.0)
		r = PyObjC_TestClass2.calldoubleArg_of_(42.0, o)
		self.assertAlmostEquals(r, 42.0)
		r = PyObjC_TestClass2.calldoubleArg_of_(1e10, o)
		self.assertAlmostEquals(r, 1e10)


	def testinvokedoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_of_(0.128, o)
		self.assertAlmostEquals(r, 0.128)
		r = PyObjC_TestClass2.invokedoubleArg_of_(1.0, o)
		self.assertAlmostEquals(r, 1.0)
		r = PyObjC_TestClass2.invokedoubleArg_of_(42.0, o)
		self.assertAlmostEquals(r, 42.0)
		r = PyObjC_TestClass2.invokedoubleArg_of_(1e10, o)
		self.assertAlmostEquals(r, 1e10)


	def testcallidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_of_(NSPriorDayDesignations, o)
		self.assertEquals(r, NSPriorDayDesignations)


	def testinvokeidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_of_(NSPriorDayDesignations, o)
		self.assertEquals(r, NSPriorDayDesignations)


	def testcallcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_of_("hello", o)
		self.assertEquals(r, "hello")
		r = PyObjC_TestClass2.callcharPtrArg_of_("world", o)
		self.assertEquals(r, "world")
		r = PyObjC_TestClass2.callcharPtrArg_of_("foobar", o)
		self.assertEquals(r, "foobar")


	def testinvokecharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_of_("hello", o)
		self.assertEquals(r, "hello")
		r = PyObjC_TestClass2.invokecharPtrArg_of_("world", o)
		self.assertEquals(r, "world")
		r = PyObjC_TestClass2.invokecharPtrArg_of_("foobar", o)
		self.assertEquals(r, "foobar")


	def testcallNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_of_((1, 2), o)
		self.assertEquals(r, (1, 2))
		r = PyObjC_TestClass2.callNSPointArg_of_((3, 4), o)
		self.assertEquals(r, (3, 4))


	def testinvokeNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_of_((1, 2), o)
		self.assertEquals(r, (1, 2))
		r = PyObjC_TestClass2.invokeNSPointArg_of_((3, 4), o)
		self.assertEquals(r, (3, 4))


	def testcallNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_of_(((1, 2), (3, 4)), o)
		self.assertEquals(r, ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callNSRectArg_of_(((7, 8), (9, 10)), o)
		self.assertEquals(r, ((7, 8), (9, 10)))


	def testinvokeNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_of_(((1, 2), (3, 4)), o)
		self.assertEquals(r, ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeNSRectArg_of_(((7, 8), (9, 10)), o)
		self.assertEquals(r, ((7, 8), (9, 10)))


	# Two arguments

	def testcallBOOLAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_andBOOLArg_of_(YES, YES, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callBOOLArg_andBOOLArg_of_(YES, NO, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callBOOLArg_andBOOLArg_of_(NO, YES, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callBOOLArg_andBOOLArg_of_(NO, NO, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], NO)


	def testinvokeBOOLAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_andBOOLArg_of_(YES, YES, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeBOOLArg_andBOOLArg_of_(YES, NO, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokeBOOLArg_andBOOLArg_of_(NO, YES, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeBOOLArg_andBOOLArg_of_(NO, NO, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], NO)


	def testcallBOOLAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_andcharArg_of_(YES, -128, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callBOOLArg_andcharArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andcharArg_of_(YES, 127, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callBOOLArg_andcharArg_of_(NO, -128, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callBOOLArg_andcharArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andcharArg_of_(NO, 127, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 127)


	def testinvokeBOOLAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_andcharArg_of_(YES, -128, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeBOOLArg_andcharArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andcharArg_of_(YES, 127, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokeBOOLArg_andcharArg_of_(NO, -128, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeBOOLArg_andcharArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andcharArg_of_(NO, 127, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 127)


	def testcallBOOLAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_andsignedshortArg_of_(YES, -(1<<14), o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callBOOLArg_andsignedshortArg_of_(YES, -42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callBOOLArg_andsignedshortArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andsignedshortArg_of_(YES, 42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callBOOLArg_andsignedshortArg_of_(YES, 1 << 14, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callBOOLArg_andsignedshortArg_of_(NO, -(1<<14), o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callBOOLArg_andsignedshortArg_of_(NO, -42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callBOOLArg_andsignedshortArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andsignedshortArg_of_(NO, 42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callBOOLArg_andsignedshortArg_of_(NO, 1 << 14, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1 << 14)


	def testinvokeBOOLAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedshortArg_of_(YES, -(1<<14), o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedshortArg_of_(YES, -42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedshortArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedshortArg_of_(YES, 42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedshortArg_of_(YES, 1 << 14, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedshortArg_of_(NO, -(1<<14), o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedshortArg_of_(NO, -42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedshortArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedshortArg_of_(NO, 42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedshortArg_of_(NO, 1 << 14, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1 << 14)


	def testcallBOOLAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_andsignedintArg_of_(YES, -(1<<30), o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callBOOLArg_andsignedintArg_of_(YES, -42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callBOOLArg_andsignedintArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andsignedintArg_of_(YES, 42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callBOOLArg_andsignedintArg_of_(YES, 1 << 30, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callBOOLArg_andsignedintArg_of_(NO, -(1<<30), o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callBOOLArg_andsignedintArg_of_(NO, -42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callBOOLArg_andsignedintArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andsignedintArg_of_(NO, 42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callBOOLArg_andsignedintArg_of_(NO, 1 << 30, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeBOOLAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedintArg_of_(YES, -(1<<30), o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedintArg_of_(YES, -42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedintArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedintArg_of_(YES, 42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedintArg_of_(YES, 1 << 30, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedintArg_of_(NO, -(1<<30), o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedintArg_of_(NO, -42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedintArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedintArg_of_(NO, 42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedintArg_of_(NO, 1 << 30, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1 << 30)


	def testcallBOOLAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_andsignedlongArg_of_(YES, -(1<<30), o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callBOOLArg_andsignedlongArg_of_(YES, -42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callBOOLArg_andsignedlongArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andsignedlongArg_of_(YES, 42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callBOOLArg_andsignedlongArg_of_(YES, 1 << 30, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callBOOLArg_andsignedlongArg_of_(NO, -(1<<30), o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callBOOLArg_andsignedlongArg_of_(NO, -42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callBOOLArg_andsignedlongArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andsignedlongArg_of_(NO, 42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callBOOLArg_andsignedlongArg_of_(NO, 1 << 30, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeBOOLAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlongArg_of_(YES, -(1<<30), o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlongArg_of_(YES, -42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlongArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlongArg_of_(YES, 42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlongArg_of_(YES, 1 << 30, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlongArg_of_(NO, -(1<<30), o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlongArg_of_(NO, -42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlongArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlongArg_of_(NO, 42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlongArg_of_(NO, 1 << 30, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1 << 30)


	def testcallBOOLAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_andsignedlonglongArg_of_(YES, -(1L << 60), o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callBOOLArg_andsignedlonglongArg_of_(YES, -42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callBOOLArg_andsignedlonglongArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andsignedlonglongArg_of_(YES, 42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callBOOLArg_andsignedlonglongArg_of_(YES, 1L << 60, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callBOOLArg_andsignedlonglongArg_of_(NO, -(1L << 60), o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callBOOLArg_andsignedlonglongArg_of_(NO, -42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callBOOLArg_andsignedlonglongArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andsignedlonglongArg_of_(NO, 42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callBOOLArg_andsignedlonglongArg_of_(NO, 1L << 60, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1L << 60)


	def testinvokeBOOLAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlonglongArg_of_(YES, -(1L << 60), o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlonglongArg_of_(YES, -42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlonglongArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlonglongArg_of_(YES, 42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlonglongArg_of_(YES, 1L << 60, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlonglongArg_of_(NO, -(1L << 60), o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlonglongArg_of_(NO, -42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlonglongArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlonglongArg_of_(NO, 42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeBOOLArg_andsignedlonglongArg_of_(NO, 1L << 60, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1L << 60)


	def testcallBOOLAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedcharArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedcharArg_of_(YES, 128, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedcharArg_of_(YES, 255, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedcharArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedcharArg_of_(NO, 128, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedcharArg_of_(NO, 255, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 255)


	def testinvokeBOOLAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedcharArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedcharArg_of_(YES, 128, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedcharArg_of_(YES, 255, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedcharArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedcharArg_of_(NO, 128, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedcharArg_of_(NO, 255, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 255)


	def testcallBOOLAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedshortArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedshortArg_of_(YES, 42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedshortArg_of_(YES, 1<<14, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedshortArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedshortArg_of_(NO, 42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedshortArg_of_(NO, 1<<14, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1<<14)


	def testinvokeBOOLAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedshortArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedshortArg_of_(YES, 42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedshortArg_of_(YES, 1<<14, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedshortArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedshortArg_of_(NO, 42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedshortArg_of_(NO, 1<<14, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1<<14)


	def testcallBOOLAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedintArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedintArg_of_(YES, 42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedintArg_of_(YES, 1 << 30, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedintArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedintArg_of_(NO, 42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedintArg_of_(NO, 1 << 30, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeBOOLAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedintArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedintArg_of_(YES, 42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedintArg_of_(YES, 1 << 30, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedintArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedintArg_of_(NO, 42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedintArg_of_(NO, 1 << 30, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1 << 30)


	def testcallBOOLAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedlongArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedlongArg_of_(YES, 42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedlongArg_of_(YES, 1L << 30, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedlongArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedlongArg_of_(NO, 42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedlongArg_of_(NO, 1L << 30, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1L << 30)


	def testinvokeBOOLAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedlongArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedlongArg_of_(YES, 42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedlongArg_of_(YES, 1L << 30, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedlongArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedlongArg_of_(NO, 42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedlongArg_of_(NO, 1L << 30, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1L << 30)


	def testcallBOOLAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedlonglongArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedlonglongArg_of_(YES, 42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedlonglongArg_of_(YES, 1L << 62, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedlonglongArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedlonglongArg_of_(NO, 42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callBOOLArg_andunsignedlonglongArg_of_(NO, 1L << 62, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1L << 62)


	def testinvokeBOOLAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedlonglongArg_of_(YES, 0, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedlonglongArg_of_(YES, 42, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedlonglongArg_of_(YES, 1L << 62, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedlonglongArg_of_(NO, 0, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedlonglongArg_of_(NO, 42, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeBOOLArg_andunsignedlonglongArg_of_(NO, 1L << 62, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], 1L << 62)


	def testcallBOOLAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_andfloatArg_of_(YES, 0.128, o)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callBOOLArg_andfloatArg_of_(YES, 1.0, o)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callBOOLArg_andfloatArg_of_(YES, 42.0, o)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callBOOLArg_andfloatArg_of_(YES, 1e10, o)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callBOOLArg_andfloatArg_of_(NO, 0.128, o)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callBOOLArg_andfloatArg_of_(NO, 1.0, o)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callBOOLArg_andfloatArg_of_(NO, 42.0, o)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callBOOLArg_andfloatArg_of_(NO, 1e10, o)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeBOOLAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_andfloatArg_of_(YES, 0.128, o)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeBOOLArg_andfloatArg_of_(YES, 1.0, o)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeBOOLArg_andfloatArg_of_(YES, 42.0, o)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeBOOLArg_andfloatArg_of_(YES, 1e10, o)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeBOOLArg_andfloatArg_of_(NO, 0.128, o)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeBOOLArg_andfloatArg_of_(NO, 1.0, o)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeBOOLArg_andfloatArg_of_(NO, 42.0, o)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeBOOLArg_andfloatArg_of_(NO, 1e10, o)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallBOOLAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_anddoubleArg_of_(YES, 0.128, o)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callBOOLArg_anddoubleArg_of_(YES, 1.0, o)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callBOOLArg_anddoubleArg_of_(YES, 42.0, o)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callBOOLArg_anddoubleArg_of_(YES, 1e10, o)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callBOOLArg_anddoubleArg_of_(NO, 0.128, o)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callBOOLArg_anddoubleArg_of_(NO, 1.0, o)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callBOOLArg_anddoubleArg_of_(NO, 42.0, o)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callBOOLArg_anddoubleArg_of_(NO, 1e10, o)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeBOOLAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_anddoubleArg_of_(YES, 0.128, o)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeBOOLArg_anddoubleArg_of_(YES, 1.0, o)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeBOOLArg_anddoubleArg_of_(YES, 42.0, o)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeBOOLArg_anddoubleArg_of_(YES, 1e10, o)
		self.assertEquals(r[0], YES)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeBOOLArg_anddoubleArg_of_(NO, 0.128, o)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeBOOLArg_anddoubleArg_of_(NO, 1.0, o)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeBOOLArg_anddoubleArg_of_(NO, 42.0, o)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeBOOLArg_anddoubleArg_of_(NO, 1e10, o)
		self.assertEquals(r[0], NO)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallBOOLAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_andidArg_of_(YES, NSPriorDayDesignations, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callBOOLArg_andidArg_of_(NO, NSPriorDayDesignations, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokeBOOLAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_andidArg_of_(YES, NSPriorDayDesignations, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokeBOOLArg_andidArg_of_(NO, NSPriorDayDesignations, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcallBOOLAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_andcharPtrArg_of_(YES, "hello", o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callBOOLArg_andcharPtrArg_of_(YES, "world", o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callBOOLArg_andcharPtrArg_of_(YES, "foobar", o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callBOOLArg_andcharPtrArg_of_(NO, "hello", o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callBOOLArg_andcharPtrArg_of_(NO, "world", o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callBOOLArg_andcharPtrArg_of_(NO, "foobar", o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], "foobar")


	def testinvokeBOOLAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_andcharPtrArg_of_(YES, "hello", o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeBOOLArg_andcharPtrArg_of_(YES, "world", o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeBOOLArg_andcharPtrArg_of_(YES, "foobar", o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokeBOOLArg_andcharPtrArg_of_(NO, "hello", o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeBOOLArg_andcharPtrArg_of_(NO, "world", o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeBOOLArg_andcharPtrArg_of_(NO, "foobar", o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], "foobar")


	def testcallBOOLAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_andNSPointArg_of_(YES, (1, 2), o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callBOOLArg_andNSPointArg_of_(YES, (3, 4), o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callBOOLArg_andNSPointArg_of_(NO, (1, 2), o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callBOOLArg_andNSPointArg_of_(NO, (3, 4), o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], (3, 4))


	def testinvokeBOOLAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_andNSPointArg_of_(YES, (1, 2), o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeBOOLArg_andNSPointArg_of_(YES, (3, 4), o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokeBOOLArg_andNSPointArg_of_(NO, (1, 2), o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeBOOLArg_andNSPointArg_of_(NO, (3, 4), o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], (3, 4))


	def testcallBOOLAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLArg_andNSRectArg_of_(YES, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callBOOLArg_andNSRectArg_of_(YES, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callBOOLArg_andNSRectArg_of_(NO, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callBOOLArg_andNSRectArg_of_(NO, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokeBOOLAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLArg_andNSRectArg_of_(YES, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeBOOLArg_andNSRectArg_of_(YES, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokeBOOLArg_andNSRectArg_of_(NO, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeBOOLArg_andNSRectArg_of_(NO, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcallcharAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_andBOOLArg_of_(-128, YES, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callcharArg_andBOOLArg_of_(-128, NO, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callcharArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callcharArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callcharArg_andBOOLArg_of_(127, YES, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callcharArg_andBOOLArg_of_(127, NO, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], NO)


	def testinvokecharAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_andBOOLArg_of_(-128, YES, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokecharArg_andBOOLArg_of_(-128, NO, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokecharArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokecharArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokecharArg_andBOOLArg_of_(127, YES, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokecharArg_andBOOLArg_of_(127, NO, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], NO)


	def testcallcharAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_andcharArg_of_(-128, -128, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callcharArg_andcharArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andcharArg_of_(-128, 127, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callcharArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callcharArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callcharArg_andcharArg_of_(127, -128, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callcharArg_andcharArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andcharArg_of_(127, 127, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 127)


	def testinvokecharAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_andcharArg_of_(-128, -128, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokecharArg_andcharArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andcharArg_of_(-128, 127, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokecharArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokecharArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokecharArg_andcharArg_of_(127, -128, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokecharArg_andcharArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andcharArg_of_(127, 127, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 127)


	def testcallcharAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_andsignedshortArg_of_(-128, -(1<<14), o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callcharArg_andsignedshortArg_of_(-128, -42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharArg_andsignedshortArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andsignedshortArg_of_(-128, 42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andsignedshortArg_of_(-128, 1 << 14, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callcharArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callcharArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callcharArg_andsignedshortArg_of_(127, -(1<<14), o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callcharArg_andsignedshortArg_of_(127, -42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharArg_andsignedshortArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andsignedshortArg_of_(127, 42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andsignedshortArg_of_(127, 1 << 14, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1 << 14)


	def testinvokecharAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_andsignedshortArg_of_(-128, -(1<<14), o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokecharArg_andsignedshortArg_of_(-128, -42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharArg_andsignedshortArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andsignedshortArg_of_(-128, 42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andsignedshortArg_of_(-128, 1 << 14, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokecharArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokecharArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokecharArg_andsignedshortArg_of_(127, -(1<<14), o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokecharArg_andsignedshortArg_of_(127, -42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharArg_andsignedshortArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andsignedshortArg_of_(127, 42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andsignedshortArg_of_(127, 1 << 14, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1 << 14)


	def testcallcharAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_andsignedintArg_of_(-128, -(1<<30), o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callcharArg_andsignedintArg_of_(-128, -42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharArg_andsignedintArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andsignedintArg_of_(-128, 42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andsignedintArg_of_(-128, 1 << 30, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callcharArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callcharArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callcharArg_andsignedintArg_of_(127, -(1<<30), o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callcharArg_andsignedintArg_of_(127, -42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharArg_andsignedintArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andsignedintArg_of_(127, 42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andsignedintArg_of_(127, 1 << 30, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1 << 30)


	def testinvokecharAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_andsignedintArg_of_(-128, -(1<<30), o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokecharArg_andsignedintArg_of_(-128, -42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharArg_andsignedintArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andsignedintArg_of_(-128, 42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andsignedintArg_of_(-128, 1 << 30, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokecharArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokecharArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokecharArg_andsignedintArg_of_(127, -(1<<30), o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokecharArg_andsignedintArg_of_(127, -42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharArg_andsignedintArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andsignedintArg_of_(127, 42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andsignedintArg_of_(127, 1 << 30, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1 << 30)


	def testcallcharAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_andsignedlongArg_of_(-128, -(1<<30), o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callcharArg_andsignedlongArg_of_(-128, -42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharArg_andsignedlongArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andsignedlongArg_of_(-128, 42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andsignedlongArg_of_(-128, 1 << 30, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callcharArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callcharArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callcharArg_andsignedlongArg_of_(127, -(1<<30), o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callcharArg_andsignedlongArg_of_(127, -42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharArg_andsignedlongArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andsignedlongArg_of_(127, 42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andsignedlongArg_of_(127, 1 << 30, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1 << 30)


	def testinvokecharAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_andsignedlongArg_of_(-128, -(1<<30), o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokecharArg_andsignedlongArg_of_(-128, -42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharArg_andsignedlongArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andsignedlongArg_of_(-128, 42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andsignedlongArg_of_(-128, 1 << 30, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokecharArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokecharArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokecharArg_andsignedlongArg_of_(127, -(1<<30), o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokecharArg_andsignedlongArg_of_(127, -42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharArg_andsignedlongArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andsignedlongArg_of_(127, 42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andsignedlongArg_of_(127, 1 << 30, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1 << 30)


	def testcallcharAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_andsignedlonglongArg_of_(-128, -(1L << 60), o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callcharArg_andsignedlonglongArg_of_(-128, -42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharArg_andsignedlonglongArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andsignedlonglongArg_of_(-128, 42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andsignedlonglongArg_of_(-128, 1L << 60, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callcharArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callcharArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callcharArg_andsignedlonglongArg_of_(127, -(1L << 60), o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callcharArg_andsignedlonglongArg_of_(127, -42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharArg_andsignedlonglongArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andsignedlonglongArg_of_(127, 42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andsignedlonglongArg_of_(127, 1L << 60, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1L << 60)


	def testinvokecharAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_andsignedlonglongArg_of_(-128, -(1L << 60), o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokecharArg_andsignedlonglongArg_of_(-128, -42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharArg_andsignedlonglongArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andsignedlonglongArg_of_(-128, 42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andsignedlonglongArg_of_(-128, 1L << 60, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokecharArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokecharArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokecharArg_andsignedlonglongArg_of_(127, -(1L << 60), o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokecharArg_andsignedlonglongArg_of_(127, -42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharArg_andsignedlonglongArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andsignedlonglongArg_of_(127, 42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andsignedlonglongArg_of_(127, 1L << 60, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1L << 60)


	def testcallcharAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_andunsignedcharArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andunsignedcharArg_of_(-128, 128, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callcharArg_andunsignedcharArg_of_(-128, 255, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callcharArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callcharArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callcharArg_andunsignedcharArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andunsignedcharArg_of_(127, 128, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callcharArg_andunsignedcharArg_of_(127, 255, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 255)


	def testinvokecharAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_andunsignedcharArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andunsignedcharArg_of_(-128, 128, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokecharArg_andunsignedcharArg_of_(-128, 255, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokecharArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokecharArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokecharArg_andunsignedcharArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andunsignedcharArg_of_(127, 128, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokecharArg_andunsignedcharArg_of_(127, 255, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 255)


	def testcallcharAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_andunsignedshortArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andunsignedshortArg_of_(-128, 42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andunsignedshortArg_of_(-128, 1<<14, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callcharArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callcharArg_andunsignedshortArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andunsignedshortArg_of_(127, 42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andunsignedshortArg_of_(127, 1<<14, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1<<14)


	def testinvokecharAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_andunsignedshortArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andunsignedshortArg_of_(-128, 42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andunsignedshortArg_of_(-128, 1<<14, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokecharArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokecharArg_andunsignedshortArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andunsignedshortArg_of_(127, 42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andunsignedshortArg_of_(127, 1<<14, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1<<14)


	def testcallcharAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_andunsignedintArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andunsignedintArg_of_(-128, 42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andunsignedintArg_of_(-128, 1 << 30, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callcharArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callcharArg_andunsignedintArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andunsignedintArg_of_(127, 42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andunsignedintArg_of_(127, 1 << 30, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1 << 30)


	def testinvokecharAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_andunsignedintArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andunsignedintArg_of_(-128, 42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andunsignedintArg_of_(-128, 1 << 30, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokecharArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokecharArg_andunsignedintArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andunsignedintArg_of_(127, 42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andunsignedintArg_of_(127, 1 << 30, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1 << 30)


	def testcallcharAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_andunsignedlongArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andunsignedlongArg_of_(-128, 42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andunsignedlongArg_of_(-128, 1L << 30, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callcharArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callcharArg_andunsignedlongArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andunsignedlongArg_of_(127, 42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andunsignedlongArg_of_(127, 1L << 30, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1L << 30)


	def testinvokecharAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlongArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlongArg_of_(-128, 42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlongArg_of_(-128, 1L << 30, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlongArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlongArg_of_(127, 42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlongArg_of_(127, 1L << 30, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1L << 30)


	def testcallcharAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_andunsignedlonglongArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andunsignedlonglongArg_of_(-128, 42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andunsignedlonglongArg_of_(-128, 1L << 62, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callcharArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callcharArg_andunsignedlonglongArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharArg_andunsignedlonglongArg_of_(127, 42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharArg_andunsignedlonglongArg_of_(127, 1L << 62, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1L << 62)


	def testinvokecharAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlonglongArg_of_(-128, 0, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlonglongArg_of_(-128, 42, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlonglongArg_of_(-128, 1L << 62, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlonglongArg_of_(127, 0, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlonglongArg_of_(127, 42, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharArg_andunsignedlonglongArg_of_(127, 1L << 62, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], 1L << 62)


	def testcallcharAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_andfloatArg_of_(-128, 0.128, o)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callcharArg_andfloatArg_of_(-128, 1.0, o)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callcharArg_andfloatArg_of_(-128, 42.0, o)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callcharArg_andfloatArg_of_(-128, 1e10, o)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callcharArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callcharArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callcharArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callcharArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callcharArg_andfloatArg_of_(127, 0.128, o)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callcharArg_andfloatArg_of_(127, 1.0, o)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callcharArg_andfloatArg_of_(127, 42.0, o)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callcharArg_andfloatArg_of_(127, 1e10, o)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokecharAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_andfloatArg_of_(-128, 0.128, o)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokecharArg_andfloatArg_of_(-128, 1.0, o)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokecharArg_andfloatArg_of_(-128, 42.0, o)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokecharArg_andfloatArg_of_(-128, 1e10, o)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokecharArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokecharArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokecharArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokecharArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokecharArg_andfloatArg_of_(127, 0.128, o)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokecharArg_andfloatArg_of_(127, 1.0, o)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokecharArg_andfloatArg_of_(127, 42.0, o)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokecharArg_andfloatArg_of_(127, 1e10, o)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallcharAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_anddoubleArg_of_(-128, 0.128, o)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callcharArg_anddoubleArg_of_(-128, 1.0, o)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callcharArg_anddoubleArg_of_(-128, 42.0, o)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callcharArg_anddoubleArg_of_(-128, 1e10, o)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callcharArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callcharArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callcharArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callcharArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callcharArg_anddoubleArg_of_(127, 0.128, o)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callcharArg_anddoubleArg_of_(127, 1.0, o)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callcharArg_anddoubleArg_of_(127, 42.0, o)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callcharArg_anddoubleArg_of_(127, 1e10, o)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokecharAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_anddoubleArg_of_(-128, 0.128, o)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokecharArg_anddoubleArg_of_(-128, 1.0, o)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokecharArg_anddoubleArg_of_(-128, 42.0, o)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokecharArg_anddoubleArg_of_(-128, 1e10, o)
		self.assertEquals(r[0], -128)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokecharArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokecharArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokecharArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokecharArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokecharArg_anddoubleArg_of_(127, 0.128, o)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokecharArg_anddoubleArg_of_(127, 1.0, o)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokecharArg_anddoubleArg_of_(127, 42.0, o)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokecharArg_anddoubleArg_of_(127, 1e10, o)
		self.assertEquals(r[0], 127)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallcharAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_andidArg_of_(-128, NSPriorDayDesignations, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callcharArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callcharArg_andidArg_of_(127, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokecharAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_andidArg_of_(-128, NSPriorDayDesignations, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokecharArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokecharArg_andidArg_of_(127, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcallcharAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_andcharPtrArg_of_(-128, "hello", o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callcharArg_andcharPtrArg_of_(-128, "world", o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callcharArg_andcharPtrArg_of_(-128, "foobar", o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callcharArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callcharArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callcharArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callcharArg_andcharPtrArg_of_(127, "hello", o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callcharArg_andcharPtrArg_of_(127, "world", o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callcharArg_andcharPtrArg_of_(127, "foobar", o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], "foobar")


	def testinvokecharAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_andcharPtrArg_of_(-128, "hello", o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokecharArg_andcharPtrArg_of_(-128, "world", o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokecharArg_andcharPtrArg_of_(-128, "foobar", o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokecharArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokecharArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokecharArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokecharArg_andcharPtrArg_of_(127, "hello", o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokecharArg_andcharPtrArg_of_(127, "world", o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokecharArg_andcharPtrArg_of_(127, "foobar", o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], "foobar")


	def testcallcharAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_andNSPointArg_of_(-128, (1, 2), o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callcharArg_andNSPointArg_of_(-128, (3, 4), o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callcharArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callcharArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callcharArg_andNSPointArg_of_(127, (1, 2), o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callcharArg_andNSPointArg_of_(127, (3, 4), o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], (3, 4))


	def testinvokecharAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_andNSPointArg_of_(-128, (1, 2), o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokecharArg_andNSPointArg_of_(-128, (3, 4), o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokecharArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokecharArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokecharArg_andNSPointArg_of_(127, (1, 2), o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokecharArg_andNSPointArg_of_(127, (3, 4), o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], (3, 4))


	def testcallcharAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharArg_andNSRectArg_of_(-128, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callcharArg_andNSRectArg_of_(-128, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callcharArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callcharArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callcharArg_andNSRectArg_of_(127, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callcharArg_andNSRectArg_of_(127, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokecharAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharArg_andNSRectArg_of_(-128, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokecharArg_andNSRectArg_of_(-128, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokecharArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokecharArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokecharArg_andNSRectArg_of_(127, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokecharArg_andNSRectArg_of_(127, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcallsignedshortAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_andBOOLArg_of_(-(1<<14), YES, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedshortArg_andBOOLArg_of_(-(1<<14), NO, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callsignedshortArg_andBOOLArg_of_(-42, YES, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedshortArg_andBOOLArg_of_(-42, NO, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callsignedshortArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedshortArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callsignedshortArg_andBOOLArg_of_(42, YES, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedshortArg_andBOOLArg_of_(42, NO, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callsignedshortArg_andBOOLArg_of_(1 << 14, YES, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedshortArg_andBOOLArg_of_(1 << 14, NO, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], NO)


	def testinvokesignedshortAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_andBOOLArg_of_(-(1<<14), YES, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedshortArg_andBOOLArg_of_(-(1<<14), NO, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokesignedshortArg_andBOOLArg_of_(-42, YES, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedshortArg_andBOOLArg_of_(-42, NO, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokesignedshortArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedshortArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokesignedshortArg_andBOOLArg_of_(42, YES, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedshortArg_andBOOLArg_of_(42, NO, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokesignedshortArg_andBOOLArg_of_(1 << 14, YES, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedshortArg_andBOOLArg_of_(1 << 14, NO, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], NO)


	def testcallsignedshortAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_andcharArg_of_(-(1<<14), -128, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedshortArg_andcharArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andcharArg_of_(-(1<<14), 127, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callsignedshortArg_andcharArg_of_(-42, -128, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedshortArg_andcharArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andcharArg_of_(-42, 127, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callsignedshortArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedshortArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callsignedshortArg_andcharArg_of_(42, -128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedshortArg_andcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andcharArg_of_(42, 127, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callsignedshortArg_andcharArg_of_(1 << 14, -128, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedshortArg_andcharArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andcharArg_of_(1 << 14, 127, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 127)


	def testinvokesignedshortAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_andcharArg_of_(-(1<<14), -128, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedshortArg_andcharArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andcharArg_of_(-(1<<14), 127, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokesignedshortArg_andcharArg_of_(-42, -128, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedshortArg_andcharArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andcharArg_of_(-42, 127, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokesignedshortArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedshortArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokesignedshortArg_andcharArg_of_(42, -128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedshortArg_andcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andcharArg_of_(42, 127, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokesignedshortArg_andcharArg_of_(1 << 14, -128, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedshortArg_andcharArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andcharArg_of_(1 << 14, 127, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 127)


	def testcallsignedshortAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(-(1<<14), -(1<<14), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(-(1<<14), -42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(-(1<<14), 42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(-(1<<14), 1 << 14, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(-42, -(1<<14), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(-42, 1 << 14, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(42, -(1<<14), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(42, 1 << 14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(1 << 14, -(1<<14), o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(1 << 14, -42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(1 << 14, 42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedshortArg_of_(1 << 14, 1 << 14, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1 << 14)


	def testinvokesignedshortAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(-(1<<14), -(1<<14), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(-(1<<14), -42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(-(1<<14), 42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(-(1<<14), 1 << 14, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(-42, -(1<<14), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(-42, 1 << 14, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(42, -(1<<14), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(42, 1 << 14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(1 << 14, -(1<<14), o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(1 << 14, -42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(1 << 14, 42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedshortArg_of_(1 << 14, 1 << 14, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1 << 14)


	def testcallsignedshortAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(-(1<<14), -(1<<30), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(-(1<<14), -42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(-(1<<14), 42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(-(1<<14), 1 << 30, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(-42, -(1<<30), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(1 << 14, -(1<<30), o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(1 << 14, -42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(1 << 14, 42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedintArg_of_(1 << 14, 1 << 30, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1 << 30)


	def testinvokesignedshortAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(-(1<<14), -(1<<30), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(-(1<<14), -42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(-(1<<14), 42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(-(1<<14), 1 << 30, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(-42, -(1<<30), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(1 << 14, -(1<<30), o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(1 << 14, -42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(1 << 14, 42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedintArg_of_(1 << 14, 1 << 30, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1 << 30)


	def testcallsignedshortAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(-(1<<14), -(1<<30), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(-(1<<14), -42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(-(1<<14), 42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(-(1<<14), 1 << 30, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(-42, -(1<<30), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(1 << 14, -(1<<30), o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(1 << 14, -42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(1 << 14, 42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlongArg_of_(1 << 14, 1 << 30, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1 << 30)


	def testinvokesignedshortAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(-(1<<14), -(1<<30), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(-(1<<14), -42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(-(1<<14), 42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(-(1<<14), 1 << 30, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(-42, -(1<<30), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(1 << 14, -(1<<30), o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(1 << 14, -42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(1 << 14, 42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlongArg_of_(1 << 14, 1 << 30, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1 << 30)


	def testcallsignedshortAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(-(1<<14), -(1L << 60), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(-(1<<14), -42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(-(1<<14), 42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(-(1<<14), 1L << 60, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(-42, -(1L << 60), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(-42, 1L << 60, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(42, -(1L << 60), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(42, 1L << 60, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(1 << 14, -(1L << 60), o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(1 << 14, -42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(1 << 14, 42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andsignedlonglongArg_of_(1 << 14, 1L << 60, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1L << 60)


	def testinvokesignedshortAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(-(1<<14), -(1L << 60), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(-(1<<14), -42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(-(1<<14), 42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(-(1<<14), 1L << 60, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(-42, -(1L << 60), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(-42, 1L << 60, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(42, -(1L << 60), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(42, 1L << 60, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(1 << 14, -(1L << 60), o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(1 << 14, -42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(1 << 14, 42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andsignedlonglongArg_of_(1 << 14, 1L << 60, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1L << 60)


	def testcallsignedshortAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedcharArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedcharArg_of_(-(1<<14), 128, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedcharArg_of_(-(1<<14), 255, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedcharArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedcharArg_of_(-42, 128, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedcharArg_of_(-42, 255, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedcharArg_of_(42, 128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedcharArg_of_(42, 255, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedcharArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedcharArg_of_(1 << 14, 128, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedcharArg_of_(1 << 14, 255, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 255)


	def testinvokesignedshortAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedcharArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedcharArg_of_(-(1<<14), 128, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedcharArg_of_(-(1<<14), 255, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedcharArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedcharArg_of_(-42, 128, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedcharArg_of_(-42, 255, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedcharArg_of_(42, 128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedcharArg_of_(42, 255, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedcharArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedcharArg_of_(1 << 14, 128, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedcharArg_of_(1 << 14, 255, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 255)


	def testcallsignedshortAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedshortArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedshortArg_of_(-(1<<14), 42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedshortArg_of_(-(1<<14), 1<<14, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedshortArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedshortArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedshortArg_of_(-42, 1<<14, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedshortArg_of_(42, 1<<14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedshortArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedshortArg_of_(1 << 14, 42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedshortArg_of_(1 << 14, 1<<14, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1<<14)


	def testinvokesignedshortAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedshortArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedshortArg_of_(-(1<<14), 42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedshortArg_of_(-(1<<14), 1<<14, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedshortArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedshortArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedshortArg_of_(-42, 1<<14, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedshortArg_of_(42, 1<<14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedshortArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedshortArg_of_(1 << 14, 42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedshortArg_of_(1 << 14, 1<<14, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1<<14)


	def testcallsignedshortAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedintArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedintArg_of_(-(1<<14), 42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedintArg_of_(-(1<<14), 1 << 30, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedintArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedintArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedintArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedintArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedintArg_of_(1 << 14, 42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedintArg_of_(1 << 14, 1 << 30, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1 << 30)


	def testinvokesignedshortAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedintArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedintArg_of_(-(1<<14), 42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedintArg_of_(-(1<<14), 1 << 30, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedintArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedintArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedintArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedintArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedintArg_of_(1 << 14, 42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedintArg_of_(1 << 14, 1 << 30, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1 << 30)


	def testcallsignedshortAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlongArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlongArg_of_(-(1<<14), 42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlongArg_of_(-(1<<14), 1L << 30, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlongArg_of_(-42, 1L << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlongArg_of_(42, 1L << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlongArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlongArg_of_(1 << 14, 42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlongArg_of_(1 << 14, 1L << 30, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1L << 30)


	def testinvokesignedshortAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlongArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlongArg_of_(-(1<<14), 42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlongArg_of_(-(1<<14), 1L << 30, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlongArg_of_(-42, 1L << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlongArg_of_(42, 1L << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlongArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlongArg_of_(1 << 14, 42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlongArg_of_(1 << 14, 1L << 30, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1L << 30)


	def testcallsignedshortAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlonglongArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlonglongArg_of_(-(1<<14), 42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlonglongArg_of_(-(1<<14), 1L << 62, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlonglongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlonglongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlonglongArg_of_(-42, 1L << 62, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlonglongArg_of_(42, 1L << 62, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlonglongArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlonglongArg_of_(1 << 14, 42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortArg_andunsignedlonglongArg_of_(1 << 14, 1L << 62, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1L << 62)


	def testinvokesignedshortAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlonglongArg_of_(-(1<<14), 0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlonglongArg_of_(-(1<<14), 42, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlonglongArg_of_(-(1<<14), 1L << 62, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlonglongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlonglongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlonglongArg_of_(-42, 1L << 62, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlonglongArg_of_(42, 1L << 62, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlonglongArg_of_(1 << 14, 0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlonglongArg_of_(1 << 14, 42, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortArg_andunsignedlonglongArg_of_(1 << 14, 1L << 62, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], 1L << 62)


	def testcallsignedshortAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(-(1<<14), 0.128, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(-(1<<14), 1.0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(-(1<<14), 42.0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(-(1<<14), 1e10, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(-42, 0.128, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(-42, 1.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(-42, 42.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(-42, 1e10, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(1 << 14, 0.128, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(1 << 14, 1.0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(1 << 14, 42.0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedshortArg_andfloatArg_of_(1 << 14, 1e10, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokesignedshortAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(-(1<<14), 0.128, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(-(1<<14), 1.0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(-(1<<14), 42.0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(-(1<<14), 1e10, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(-42, 0.128, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(-42, 1.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(-42, 42.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(-42, 1e10, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(1 << 14, 0.128, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(1 << 14, 1.0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(1 << 14, 42.0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedshortArg_andfloatArg_of_(1 << 14, 1e10, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallsignedshortAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(-(1<<14), 0.128, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(-(1<<14), 1.0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(-(1<<14), 42.0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(-(1<<14), 1e10, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(-42, 0.128, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(-42, 1.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(-42, 42.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(-42, 1e10, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(1 << 14, 0.128, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(1 << 14, 1.0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(1 << 14, 42.0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedshortArg_anddoubleArg_of_(1 << 14, 1e10, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokesignedshortAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(-(1<<14), 0.128, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(-(1<<14), 1.0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(-(1<<14), 42.0, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(-(1<<14), 1e10, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(-42, 0.128, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(-42, 1.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(-42, 42.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(-42, 1e10, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(1 << 14, 0.128, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(1 << 14, 1.0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(1 << 14, 42.0, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedshortArg_anddoubleArg_of_(1 << 14, 1e10, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallsignedshortAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_andidArg_of_(-(1<<14), NSPriorDayDesignations, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callsignedshortArg_andidArg_of_(-42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callsignedshortArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callsignedshortArg_andidArg_of_(42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callsignedshortArg_andidArg_of_(1 << 14, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokesignedshortAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_andidArg_of_(-(1<<14), NSPriorDayDesignations, o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokesignedshortArg_andidArg_of_(-42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokesignedshortArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokesignedshortArg_andidArg_of_(42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokesignedshortArg_andidArg_of_(1 << 14, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcallsignedshortAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_andcharPtrArg_of_(-(1<<14), "hello", o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedshortArg_andcharPtrArg_of_(-(1<<14), "world", o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedshortArg_andcharPtrArg_of_(-(1<<14), "foobar", o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callsignedshortArg_andcharPtrArg_of_(-42, "hello", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedshortArg_andcharPtrArg_of_(-42, "world", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedshortArg_andcharPtrArg_of_(-42, "foobar", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callsignedshortArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedshortArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedshortArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callsignedshortArg_andcharPtrArg_of_(42, "hello", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedshortArg_andcharPtrArg_of_(42, "world", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedshortArg_andcharPtrArg_of_(42, "foobar", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callsignedshortArg_andcharPtrArg_of_(1 << 14, "hello", o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedshortArg_andcharPtrArg_of_(1 << 14, "world", o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedshortArg_andcharPtrArg_of_(1 << 14, "foobar", o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], "foobar")


	def testinvokesignedshortAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_andcharPtrArg_of_(-(1<<14), "hello", o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedshortArg_andcharPtrArg_of_(-(1<<14), "world", o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedshortArg_andcharPtrArg_of_(-(1<<14), "foobar", o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokesignedshortArg_andcharPtrArg_of_(-42, "hello", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedshortArg_andcharPtrArg_of_(-42, "world", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedshortArg_andcharPtrArg_of_(-42, "foobar", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokesignedshortArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedshortArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedshortArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokesignedshortArg_andcharPtrArg_of_(42, "hello", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedshortArg_andcharPtrArg_of_(42, "world", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedshortArg_andcharPtrArg_of_(42, "foobar", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokesignedshortArg_andcharPtrArg_of_(1 << 14, "hello", o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedshortArg_andcharPtrArg_of_(1 << 14, "world", o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedshortArg_andcharPtrArg_of_(1 << 14, "foobar", o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], "foobar")


	def testcallsignedshortAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_andNSPointArg_of_(-(1<<14), (1, 2), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedshortArg_andNSPointArg_of_(-(1<<14), (3, 4), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callsignedshortArg_andNSPointArg_of_(-42, (1, 2), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedshortArg_andNSPointArg_of_(-42, (3, 4), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callsignedshortArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedshortArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callsignedshortArg_andNSPointArg_of_(42, (1, 2), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedshortArg_andNSPointArg_of_(42, (3, 4), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callsignedshortArg_andNSPointArg_of_(1 << 14, (1, 2), o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedshortArg_andNSPointArg_of_(1 << 14, (3, 4), o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], (3, 4))


	def testinvokesignedshortAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_andNSPointArg_of_(-(1<<14), (1, 2), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSPointArg_of_(-(1<<14), (3, 4), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSPointArg_of_(-42, (1, 2), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSPointArg_of_(-42, (3, 4), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSPointArg_of_(42, (1, 2), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSPointArg_of_(42, (3, 4), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSPointArg_of_(1 << 14, (1, 2), o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSPointArg_of_(1 << 14, (3, 4), o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], (3, 4))


	def testcallsignedshortAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortArg_andNSRectArg_of_(-(1<<14), ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedshortArg_andNSRectArg_of_(-(1<<14), ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callsignedshortArg_andNSRectArg_of_(-42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedshortArg_andNSRectArg_of_(-42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callsignedshortArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedshortArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callsignedshortArg_andNSRectArg_of_(42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedshortArg_andNSRectArg_of_(42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callsignedshortArg_andNSRectArg_of_(1 << 14, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedshortArg_andNSRectArg_of_(1 << 14, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokesignedshortAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortArg_andNSRectArg_of_(-(1<<14), ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSRectArg_of_(-(1<<14), ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSRectArg_of_(-42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSRectArg_of_(-42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSRectArg_of_(42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSRectArg_of_(42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSRectArg_of_(1 << 14, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedshortArg_andNSRectArg_of_(1 << 14, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcallsignedintAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_andBOOLArg_of_(-(1<<30), YES, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedintArg_andBOOLArg_of_(-(1<<30), NO, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callsignedintArg_andBOOLArg_of_(-42, YES, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedintArg_andBOOLArg_of_(-42, NO, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callsignedintArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedintArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callsignedintArg_andBOOLArg_of_(42, YES, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedintArg_andBOOLArg_of_(42, NO, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callsignedintArg_andBOOLArg_of_(1 << 30, YES, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedintArg_andBOOLArg_of_(1 << 30, NO, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NO)


	def testinvokesignedintAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_andBOOLArg_of_(-(1<<30), YES, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedintArg_andBOOLArg_of_(-(1<<30), NO, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokesignedintArg_andBOOLArg_of_(-42, YES, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedintArg_andBOOLArg_of_(-42, NO, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokesignedintArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedintArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokesignedintArg_andBOOLArg_of_(42, YES, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedintArg_andBOOLArg_of_(42, NO, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokesignedintArg_andBOOLArg_of_(1 << 30, YES, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedintArg_andBOOLArg_of_(1 << 30, NO, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NO)


	def testcallsignedintAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_andcharArg_of_(-(1<<30), -128, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedintArg_andcharArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andcharArg_of_(-(1<<30), 127, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callsignedintArg_andcharArg_of_(-42, -128, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedintArg_andcharArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andcharArg_of_(-42, 127, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callsignedintArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedintArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callsignedintArg_andcharArg_of_(42, -128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedintArg_andcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andcharArg_of_(42, 127, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callsignedintArg_andcharArg_of_(1 << 30, -128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedintArg_andcharArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andcharArg_of_(1 << 30, 127, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 127)


	def testinvokesignedintAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_andcharArg_of_(-(1<<30), -128, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedintArg_andcharArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andcharArg_of_(-(1<<30), 127, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokesignedintArg_andcharArg_of_(-42, -128, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedintArg_andcharArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andcharArg_of_(-42, 127, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokesignedintArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedintArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokesignedintArg_andcharArg_of_(42, -128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedintArg_andcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andcharArg_of_(42, 127, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokesignedintArg_andcharArg_of_(1 << 30, -128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedintArg_andcharArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andcharArg_of_(1 << 30, 127, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 127)


	def testcallsignedintAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(-(1<<30), -(1<<14), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(-(1<<30), -42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(-(1<<30), 1 << 14, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(-42, -(1<<14), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(-42, 1 << 14, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(42, -(1<<14), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(42, 1 << 14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(1 << 30, -(1<<14), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedshortArg_of_(1 << 30, 1 << 14, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 14)


	def testinvokesignedintAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(-(1<<30), -(1<<14), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(-(1<<30), -42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(-(1<<30), 1 << 14, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(-42, -(1<<14), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(-42, 1 << 14, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(42, -(1<<14), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(42, 1 << 14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(1 << 30, -(1<<14), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedshortArg_of_(1 << 30, 1 << 14, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 14)


	def testcallsignedintAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(-(1<<30), -(1<<30), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(-(1<<30), -42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(-(1<<30), 1 << 30, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(-42, -(1<<30), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(1 << 30, -(1<<30), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedintArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testinvokesignedintAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(-(1<<30), -(1<<30), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(-(1<<30), -42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(-(1<<30), 1 << 30, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(-42, -(1<<30), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(1 << 30, -(1<<30), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedintArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testcallsignedintAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(-(1<<30), -(1<<30), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(-(1<<30), -42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(-(1<<30), 1 << 30, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(-42, -(1<<30), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(1 << 30, -(1<<30), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlongArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testinvokesignedintAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(-(1<<30), -(1<<30), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(-(1<<30), -42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(-(1<<30), 1 << 30, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(-42, -(1<<30), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(1 << 30, -(1<<30), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlongArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testcallsignedintAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(-(1<<30), -(1L << 60), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(-(1<<30), -42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(-(1<<30), 1L << 60, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(-42, -(1L << 60), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(-42, 1L << 60, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(42, -(1L << 60), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(42, 1L << 60, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(1 << 30, -(1L << 60), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andsignedlonglongArg_of_(1 << 30, 1L << 60, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 60)


	def testinvokesignedintAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(-(1<<30), -(1L << 60), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(-(1<<30), -42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(-(1<<30), 1L << 60, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(-42, -(1L << 60), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(-42, 1L << 60, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(42, -(1L << 60), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(42, 1L << 60, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(1 << 30, -(1L << 60), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andsignedlonglongArg_of_(1 << 30, 1L << 60, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 60)


	def testcallsignedintAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedcharArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedcharArg_of_(-(1<<30), 128, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedcharArg_of_(-(1<<30), 255, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedcharArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedcharArg_of_(-42, 128, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedcharArg_of_(-42, 255, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedcharArg_of_(42, 128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedcharArg_of_(42, 255, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedcharArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedcharArg_of_(1 << 30, 128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedcharArg_of_(1 << 30, 255, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 255)


	def testinvokesignedintAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedcharArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedcharArg_of_(-(1<<30), 128, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedcharArg_of_(-(1<<30), 255, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedcharArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedcharArg_of_(-42, 128, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedcharArg_of_(-42, 255, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedcharArg_of_(42, 128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedcharArg_of_(42, 255, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedcharArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedcharArg_of_(1 << 30, 128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedcharArg_of_(1 << 30, 255, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 255)


	def testcallsignedintAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedshortArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedshortArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedshortArg_of_(-(1<<30), 1<<14, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedshortArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedshortArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedshortArg_of_(-42, 1<<14, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedshortArg_of_(42, 1<<14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedshortArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedshortArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedshortArg_of_(1 << 30, 1<<14, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1<<14)


	def testinvokesignedintAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedshortArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedshortArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedshortArg_of_(-(1<<30), 1<<14, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedshortArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedshortArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedshortArg_of_(-42, 1<<14, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedshortArg_of_(42, 1<<14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedshortArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedshortArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedshortArg_of_(1 << 30, 1<<14, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1<<14)


	def testcallsignedintAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedintArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedintArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedintArg_of_(-(1<<30), 1 << 30, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedintArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedintArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedintArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedintArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedintArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedintArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testinvokesignedintAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedintArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedintArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedintArg_of_(-(1<<30), 1 << 30, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedintArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedintArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedintArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedintArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedintArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedintArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testcallsignedintAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlongArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlongArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlongArg_of_(-(1<<30), 1L << 30, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlongArg_of_(-42, 1L << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlongArg_of_(42, 1L << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlongArg_of_(1 << 30, 1L << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 30)


	def testinvokesignedintAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlongArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlongArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlongArg_of_(-(1<<30), 1L << 30, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlongArg_of_(-42, 1L << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlongArg_of_(42, 1L << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlongArg_of_(1 << 30, 1L << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 30)


	def testcallsignedintAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlonglongArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlonglongArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlonglongArg_of_(-(1<<30), 1L << 62, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlonglongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlonglongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlonglongArg_of_(-42, 1L << 62, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlonglongArg_of_(42, 1L << 62, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlonglongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlonglongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintArg_andunsignedlonglongArg_of_(1 << 30, 1L << 62, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 62)


	def testinvokesignedintAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlonglongArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlonglongArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlonglongArg_of_(-(1<<30), 1L << 62, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlonglongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlonglongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlonglongArg_of_(-42, 1L << 62, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlonglongArg_of_(42, 1L << 62, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlonglongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlonglongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintArg_andunsignedlonglongArg_of_(1 << 30, 1L << 62, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 62)


	def testcallsignedintAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(-(1<<30), 0.128, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(-(1<<30), 1.0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(-(1<<30), 42.0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(-(1<<30), 1e10, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(-42, 0.128, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(-42, 1.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(-42, 42.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(-42, 1e10, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(1 << 30, 0.128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(1 << 30, 1.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(1 << 30, 42.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedintArg_andfloatArg_of_(1 << 30, 1e10, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokesignedintAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(-(1<<30), 0.128, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(-(1<<30), 1.0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(-(1<<30), 42.0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(-(1<<30), 1e10, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(-42, 0.128, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(-42, 1.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(-42, 42.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(-42, 1e10, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(1 << 30, 0.128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(1 << 30, 1.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(1 << 30, 42.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedintArg_andfloatArg_of_(1 << 30, 1e10, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallsignedintAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(-(1<<30), 0.128, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(-(1<<30), 1.0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(-(1<<30), 42.0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(-(1<<30), 1e10, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(-42, 0.128, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(-42, 1.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(-42, 42.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(-42, 1e10, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(1 << 30, 0.128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(1 << 30, 1.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(1 << 30, 42.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedintArg_anddoubleArg_of_(1 << 30, 1e10, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokesignedintAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(-(1<<30), 0.128, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(-(1<<30), 1.0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(-(1<<30), 42.0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(-(1<<30), 1e10, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(-42, 0.128, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(-42, 1.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(-42, 42.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(-42, 1e10, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(1 << 30, 0.128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(1 << 30, 1.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(1 << 30, 42.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedintArg_anddoubleArg_of_(1 << 30, 1e10, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallsignedintAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_andidArg_of_(-(1<<30), NSPriorDayDesignations, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callsignedintArg_andidArg_of_(-42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callsignedintArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callsignedintArg_andidArg_of_(42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callsignedintArg_andidArg_of_(1 << 30, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokesignedintAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_andidArg_of_(-(1<<30), NSPriorDayDesignations, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokesignedintArg_andidArg_of_(-42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokesignedintArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokesignedintArg_andidArg_of_(42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokesignedintArg_andidArg_of_(1 << 30, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcallsignedintAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_andcharPtrArg_of_(-(1<<30), "hello", o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedintArg_andcharPtrArg_of_(-(1<<30), "world", o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedintArg_andcharPtrArg_of_(-(1<<30), "foobar", o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callsignedintArg_andcharPtrArg_of_(-42, "hello", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedintArg_andcharPtrArg_of_(-42, "world", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedintArg_andcharPtrArg_of_(-42, "foobar", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callsignedintArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedintArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedintArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callsignedintArg_andcharPtrArg_of_(42, "hello", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedintArg_andcharPtrArg_of_(42, "world", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedintArg_andcharPtrArg_of_(42, "foobar", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callsignedintArg_andcharPtrArg_of_(1 << 30, "hello", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedintArg_andcharPtrArg_of_(1 << 30, "world", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedintArg_andcharPtrArg_of_(1 << 30, "foobar", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "foobar")


	def testinvokesignedintAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_andcharPtrArg_of_(-(1<<30), "hello", o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedintArg_andcharPtrArg_of_(-(1<<30), "world", o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedintArg_andcharPtrArg_of_(-(1<<30), "foobar", o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokesignedintArg_andcharPtrArg_of_(-42, "hello", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedintArg_andcharPtrArg_of_(-42, "world", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedintArg_andcharPtrArg_of_(-42, "foobar", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokesignedintArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedintArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedintArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokesignedintArg_andcharPtrArg_of_(42, "hello", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedintArg_andcharPtrArg_of_(42, "world", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedintArg_andcharPtrArg_of_(42, "foobar", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokesignedintArg_andcharPtrArg_of_(1 << 30, "hello", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedintArg_andcharPtrArg_of_(1 << 30, "world", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedintArg_andcharPtrArg_of_(1 << 30, "foobar", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "foobar")


	def testcallsignedintAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_andNSPointArg_of_(-(1<<30), (1, 2), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedintArg_andNSPointArg_of_(-(1<<30), (3, 4), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callsignedintArg_andNSPointArg_of_(-42, (1, 2), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedintArg_andNSPointArg_of_(-42, (3, 4), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callsignedintArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedintArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callsignedintArg_andNSPointArg_of_(42, (1, 2), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedintArg_andNSPointArg_of_(42, (3, 4), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callsignedintArg_andNSPointArg_of_(1 << 30, (1, 2), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedintArg_andNSPointArg_of_(1 << 30, (3, 4), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (3, 4))


	def testinvokesignedintAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_andNSPointArg_of_(-(1<<30), (1, 2), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedintArg_andNSPointArg_of_(-(1<<30), (3, 4), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokesignedintArg_andNSPointArg_of_(-42, (1, 2), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedintArg_andNSPointArg_of_(-42, (3, 4), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokesignedintArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedintArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokesignedintArg_andNSPointArg_of_(42, (1, 2), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedintArg_andNSPointArg_of_(42, (3, 4), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokesignedintArg_andNSPointArg_of_(1 << 30, (1, 2), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedintArg_andNSPointArg_of_(1 << 30, (3, 4), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (3, 4))


	def testcallsignedintAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintArg_andNSRectArg_of_(-(1<<30), ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedintArg_andNSRectArg_of_(-(1<<30), ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callsignedintArg_andNSRectArg_of_(-42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedintArg_andNSRectArg_of_(-42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callsignedintArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedintArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callsignedintArg_andNSRectArg_of_(42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedintArg_andNSRectArg_of_(42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callsignedintArg_andNSRectArg_of_(1 << 30, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedintArg_andNSRectArg_of_(1 << 30, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokesignedintAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintArg_andNSRectArg_of_(-(1<<30), ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedintArg_andNSRectArg_of_(-(1<<30), ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokesignedintArg_andNSRectArg_of_(-42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedintArg_andNSRectArg_of_(-42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokesignedintArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedintArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokesignedintArg_andNSRectArg_of_(42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedintArg_andNSRectArg_of_(42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokesignedintArg_andNSRectArg_of_(1 << 30, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedintArg_andNSRectArg_of_(1 << 30, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcallsignedlongAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_andBOOLArg_of_(-(1<<30), YES, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedlongArg_andBOOLArg_of_(-(1<<30), NO, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callsignedlongArg_andBOOLArg_of_(-42, YES, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedlongArg_andBOOLArg_of_(-42, NO, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callsignedlongArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedlongArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callsignedlongArg_andBOOLArg_of_(42, YES, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedlongArg_andBOOLArg_of_(42, NO, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callsignedlongArg_andBOOLArg_of_(1 << 30, YES, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedlongArg_andBOOLArg_of_(1 << 30, NO, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NO)


	def testinvokesignedlongAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_andBOOLArg_of_(-(1<<30), YES, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedlongArg_andBOOLArg_of_(-(1<<30), NO, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokesignedlongArg_andBOOLArg_of_(-42, YES, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedlongArg_andBOOLArg_of_(-42, NO, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokesignedlongArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedlongArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokesignedlongArg_andBOOLArg_of_(42, YES, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedlongArg_andBOOLArg_of_(42, NO, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokesignedlongArg_andBOOLArg_of_(1 << 30, YES, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedlongArg_andBOOLArg_of_(1 << 30, NO, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NO)


	def testcallsignedlongAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_andcharArg_of_(-(1<<30), -128, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedlongArg_andcharArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andcharArg_of_(-(1<<30), 127, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callsignedlongArg_andcharArg_of_(-42, -128, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedlongArg_andcharArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andcharArg_of_(-42, 127, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callsignedlongArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedlongArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callsignedlongArg_andcharArg_of_(42, -128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedlongArg_andcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andcharArg_of_(42, 127, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callsignedlongArg_andcharArg_of_(1 << 30, -128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedlongArg_andcharArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andcharArg_of_(1 << 30, 127, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 127)


	def testinvokesignedlongAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_andcharArg_of_(-(1<<30), -128, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedlongArg_andcharArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andcharArg_of_(-(1<<30), 127, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokesignedlongArg_andcharArg_of_(-42, -128, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedlongArg_andcharArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andcharArg_of_(-42, 127, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokesignedlongArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedlongArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokesignedlongArg_andcharArg_of_(42, -128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedlongArg_andcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andcharArg_of_(42, 127, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokesignedlongArg_andcharArg_of_(1 << 30, -128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedlongArg_andcharArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andcharArg_of_(1 << 30, 127, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 127)


	def testcallsignedlongAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(-(1<<30), -(1<<14), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(-(1<<30), -42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(-(1<<30), 1 << 14, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(-42, -(1<<14), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(-42, 1 << 14, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(42, -(1<<14), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(42, 1 << 14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(1 << 30, -(1<<14), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedshortArg_of_(1 << 30, 1 << 14, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 14)


	def testinvokesignedlongAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(-(1<<30), -(1<<14), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(-(1<<30), -42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(-(1<<30), 1 << 14, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(-42, -(1<<14), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(-42, 1 << 14, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(42, -(1<<14), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(42, 1 << 14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(1 << 30, -(1<<14), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedshortArg_of_(1 << 30, 1 << 14, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 14)


	def testcallsignedlongAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(-(1<<30), -(1<<30), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(-(1<<30), -42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(-(1<<30), 1 << 30, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(-42, -(1<<30), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(1 << 30, -(1<<30), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedintArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testinvokesignedlongAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(-(1<<30), -(1<<30), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(-(1<<30), -42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(-(1<<30), 1 << 30, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(-42, -(1<<30), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(1 << 30, -(1<<30), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedintArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testcallsignedlongAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(-(1<<30), -(1<<30), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(-(1<<30), -42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(-(1<<30), 1 << 30, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(-42, -(1<<30), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(1 << 30, -(1<<30), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlongArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testinvokesignedlongAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(-(1<<30), -(1<<30), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(-(1<<30), -42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(-(1<<30), 1 << 30, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(-42, -(1<<30), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(1 << 30, -(1<<30), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlongArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testcallsignedlongAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(-(1<<30), -(1L << 60), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(-(1<<30), -42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(-(1<<30), 1L << 60, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(-42, -(1L << 60), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(-42, 1L << 60, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(42, -(1L << 60), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(42, 1L << 60, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(1 << 30, -(1L << 60), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andsignedlonglongArg_of_(1 << 30, 1L << 60, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 60)


	def testinvokesignedlongAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(-(1<<30), -(1L << 60), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(-(1<<30), -42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(-(1<<30), 1L << 60, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(-42, -(1L << 60), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(-42, 1L << 60, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(42, -(1L << 60), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(42, 1L << 60, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(1 << 30, -(1L << 60), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andsignedlonglongArg_of_(1 << 30, 1L << 60, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 60)


	def testcallsignedlongAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedcharArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedcharArg_of_(-(1<<30), 128, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedcharArg_of_(-(1<<30), 255, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedcharArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedcharArg_of_(-42, 128, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedcharArg_of_(-42, 255, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedcharArg_of_(42, 128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedcharArg_of_(42, 255, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedcharArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedcharArg_of_(1 << 30, 128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedcharArg_of_(1 << 30, 255, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 255)


	def testinvokesignedlongAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedcharArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedcharArg_of_(-(1<<30), 128, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedcharArg_of_(-(1<<30), 255, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedcharArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedcharArg_of_(-42, 128, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedcharArg_of_(-42, 255, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedcharArg_of_(42, 128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedcharArg_of_(42, 255, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedcharArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedcharArg_of_(1 << 30, 128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedcharArg_of_(1 << 30, 255, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 255)


	def testcallsignedlongAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedshortArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedshortArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedshortArg_of_(-(1<<30), 1<<14, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedshortArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedshortArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedshortArg_of_(-42, 1<<14, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedshortArg_of_(42, 1<<14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedshortArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedshortArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedshortArg_of_(1 << 30, 1<<14, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1<<14)


	def testinvokesignedlongAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedshortArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedshortArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedshortArg_of_(-(1<<30), 1<<14, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedshortArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedshortArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedshortArg_of_(-42, 1<<14, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedshortArg_of_(42, 1<<14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedshortArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedshortArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedshortArg_of_(1 << 30, 1<<14, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1<<14)


	def testcallsignedlongAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedintArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedintArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedintArg_of_(-(1<<30), 1 << 30, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedintArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedintArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedintArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedintArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedintArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedintArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testinvokesignedlongAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedintArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedintArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedintArg_of_(-(1<<30), 1 << 30, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedintArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedintArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedintArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedintArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedintArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedintArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testcallsignedlongAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlongArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlongArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlongArg_of_(-(1<<30), 1L << 30, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlongArg_of_(-42, 1L << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlongArg_of_(42, 1L << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlongArg_of_(1 << 30, 1L << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 30)


	def testinvokesignedlongAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlongArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlongArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlongArg_of_(-(1<<30), 1L << 30, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlongArg_of_(-42, 1L << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlongArg_of_(42, 1L << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlongArg_of_(1 << 30, 1L << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 30)


	def testcallsignedlongAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlonglongArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlonglongArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlonglongArg_of_(-(1<<30), 1L << 62, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlonglongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlonglongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlonglongArg_of_(-42, 1L << 62, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlonglongArg_of_(42, 1L << 62, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlonglongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlonglongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongArg_andunsignedlonglongArg_of_(1 << 30, 1L << 62, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 62)


	def testinvokesignedlongAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlonglongArg_of_(-(1<<30), 0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlonglongArg_of_(-(1<<30), 42, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlonglongArg_of_(-(1<<30), 1L << 62, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlonglongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlonglongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlonglongArg_of_(-42, 1L << 62, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlonglongArg_of_(42, 1L << 62, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlonglongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlonglongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongArg_andunsignedlonglongArg_of_(1 << 30, 1L << 62, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 62)


	def testcallsignedlongAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(-(1<<30), 0.128, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(-(1<<30), 1.0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(-(1<<30), 42.0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(-(1<<30), 1e10, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(-42, 0.128, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(-42, 1.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(-42, 42.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(-42, 1e10, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(1 << 30, 0.128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(1 << 30, 1.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(1 << 30, 42.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlongArg_andfloatArg_of_(1 << 30, 1e10, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokesignedlongAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(-(1<<30), 0.128, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(-(1<<30), 1.0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(-(1<<30), 42.0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(-(1<<30), 1e10, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(-42, 0.128, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(-42, 1.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(-42, 42.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(-42, 1e10, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(1 << 30, 0.128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(1 << 30, 1.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(1 << 30, 42.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlongArg_andfloatArg_of_(1 << 30, 1e10, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallsignedlongAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(-(1<<30), 0.128, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(-(1<<30), 1.0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(-(1<<30), 42.0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(-(1<<30), 1e10, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(-42, 0.128, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(-42, 1.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(-42, 42.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(-42, 1e10, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(1 << 30, 0.128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(1 << 30, 1.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(1 << 30, 42.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlongArg_anddoubleArg_of_(1 << 30, 1e10, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokesignedlongAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(-(1<<30), 0.128, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(-(1<<30), 1.0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(-(1<<30), 42.0, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(-(1<<30), 1e10, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(-42, 0.128, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(-42, 1.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(-42, 42.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(-42, 1e10, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(1 << 30, 0.128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(1 << 30, 1.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(1 << 30, 42.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlongArg_anddoubleArg_of_(1 << 30, 1e10, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallsignedlongAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_andidArg_of_(-(1<<30), NSPriorDayDesignations, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callsignedlongArg_andidArg_of_(-42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callsignedlongArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callsignedlongArg_andidArg_of_(42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callsignedlongArg_andidArg_of_(1 << 30, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokesignedlongAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_andidArg_of_(-(1<<30), NSPriorDayDesignations, o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokesignedlongArg_andidArg_of_(-42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokesignedlongArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokesignedlongArg_andidArg_of_(42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokesignedlongArg_andidArg_of_(1 << 30, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcallsignedlongAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_andcharPtrArg_of_(-(1<<30), "hello", o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedlongArg_andcharPtrArg_of_(-(1<<30), "world", o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedlongArg_andcharPtrArg_of_(-(1<<30), "foobar", o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callsignedlongArg_andcharPtrArg_of_(-42, "hello", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedlongArg_andcharPtrArg_of_(-42, "world", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedlongArg_andcharPtrArg_of_(-42, "foobar", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callsignedlongArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedlongArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedlongArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callsignedlongArg_andcharPtrArg_of_(42, "hello", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedlongArg_andcharPtrArg_of_(42, "world", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedlongArg_andcharPtrArg_of_(42, "foobar", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callsignedlongArg_andcharPtrArg_of_(1 << 30, "hello", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedlongArg_andcharPtrArg_of_(1 << 30, "world", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedlongArg_andcharPtrArg_of_(1 << 30, "foobar", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "foobar")


	def testinvokesignedlongAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_andcharPtrArg_of_(-(1<<30), "hello", o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedlongArg_andcharPtrArg_of_(-(1<<30), "world", o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedlongArg_andcharPtrArg_of_(-(1<<30), "foobar", o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokesignedlongArg_andcharPtrArg_of_(-42, "hello", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedlongArg_andcharPtrArg_of_(-42, "world", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedlongArg_andcharPtrArg_of_(-42, "foobar", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokesignedlongArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedlongArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedlongArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokesignedlongArg_andcharPtrArg_of_(42, "hello", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedlongArg_andcharPtrArg_of_(42, "world", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedlongArg_andcharPtrArg_of_(42, "foobar", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokesignedlongArg_andcharPtrArg_of_(1 << 30, "hello", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedlongArg_andcharPtrArg_of_(1 << 30, "world", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedlongArg_andcharPtrArg_of_(1 << 30, "foobar", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "foobar")


	def testcallsignedlongAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_andNSPointArg_of_(-(1<<30), (1, 2), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedlongArg_andNSPointArg_of_(-(1<<30), (3, 4), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callsignedlongArg_andNSPointArg_of_(-42, (1, 2), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedlongArg_andNSPointArg_of_(-42, (3, 4), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callsignedlongArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedlongArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callsignedlongArg_andNSPointArg_of_(42, (1, 2), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedlongArg_andNSPointArg_of_(42, (3, 4), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callsignedlongArg_andNSPointArg_of_(1 << 30, (1, 2), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedlongArg_andNSPointArg_of_(1 << 30, (3, 4), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (3, 4))


	def testinvokesignedlongAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_andNSPointArg_of_(-(1<<30), (1, 2), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSPointArg_of_(-(1<<30), (3, 4), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSPointArg_of_(-42, (1, 2), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSPointArg_of_(-42, (3, 4), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSPointArg_of_(42, (1, 2), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSPointArg_of_(42, (3, 4), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSPointArg_of_(1 << 30, (1, 2), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSPointArg_of_(1 << 30, (3, 4), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (3, 4))


	def testcallsignedlongAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongArg_andNSRectArg_of_(-(1<<30), ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedlongArg_andNSRectArg_of_(-(1<<30), ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callsignedlongArg_andNSRectArg_of_(-42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedlongArg_andNSRectArg_of_(-42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callsignedlongArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedlongArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callsignedlongArg_andNSRectArg_of_(42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedlongArg_andNSRectArg_of_(42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callsignedlongArg_andNSRectArg_of_(1 << 30, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedlongArg_andNSRectArg_of_(1 << 30, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokesignedlongAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongArg_andNSRectArg_of_(-(1<<30), ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSRectArg_of_(-(1<<30), ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSRectArg_of_(-42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSRectArg_of_(-42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSRectArg_of_(42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSRectArg_of_(42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSRectArg_of_(1 << 30, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedlongArg_andNSRectArg_of_(1 << 30, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcallsignedlonglongAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_andBOOLArg_of_(-(1L << 60), YES, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedlonglongArg_andBOOLArg_of_(-(1L << 60), NO, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callsignedlonglongArg_andBOOLArg_of_(-42, YES, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedlonglongArg_andBOOLArg_of_(-42, NO, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callsignedlonglongArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedlonglongArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callsignedlonglongArg_andBOOLArg_of_(42, YES, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedlonglongArg_andBOOLArg_of_(42, NO, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callsignedlonglongArg_andBOOLArg_of_(1L << 60, YES, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callsignedlonglongArg_andBOOLArg_of_(1L << 60, NO, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], NO)


	def testinvokesignedlonglongAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andBOOLArg_of_(-(1L << 60), YES, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andBOOLArg_of_(-(1L << 60), NO, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andBOOLArg_of_(-42, YES, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andBOOLArg_of_(-42, NO, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andBOOLArg_of_(42, YES, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andBOOLArg_of_(42, NO, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andBOOLArg_of_(1L << 60, YES, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andBOOLArg_of_(1L << 60, NO, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], NO)


	def testcallsignedlonglongAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharArg_of_(-(1L << 60), -128, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharArg_of_(-(1L << 60), 127, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharArg_of_(-42, -128, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharArg_of_(-42, 127, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharArg_of_(42, -128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharArg_of_(42, 127, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharArg_of_(1L << 60, -128, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharArg_of_(1L << 60, 127, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 127)


	def testinvokesignedlonglongAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharArg_of_(-(1L << 60), -128, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharArg_of_(-(1L << 60), 127, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharArg_of_(-42, -128, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharArg_of_(-42, 127, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharArg_of_(42, -128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharArg_of_(42, 127, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharArg_of_(1L << 60, -128, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharArg_of_(1L << 60, 127, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 127)


	def testcallsignedlonglongAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(-(1L << 60), -(1<<14), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(-(1L << 60), -42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(-(1L << 60), 42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(-(1L << 60), 1 << 14, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(-42, -(1<<14), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(-42, 1 << 14, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(42, -(1<<14), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(42, 1 << 14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(1L << 60, -(1<<14), o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(1L << 60, -42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(1L << 60, 42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedshortArg_of_(1L << 60, 1 << 14, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1 << 14)


	def testinvokesignedlonglongAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(-(1L << 60), -(1<<14), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(-(1L << 60), -42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(-(1L << 60), 42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(-(1L << 60), 1 << 14, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(-42, -(1<<14), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(-42, 1 << 14, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(42, -(1<<14), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(42, 1 << 14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(1L << 60, -(1<<14), o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(1L << 60, -42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(1L << 60, 42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedshortArg_of_(1L << 60, 1 << 14, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1 << 14)


	def testcallsignedlonglongAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(-(1L << 60), -(1<<30), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(-(1L << 60), -42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(-(1L << 60), 42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(-(1L << 60), 1 << 30, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(-42, -(1<<30), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(1L << 60, -(1<<30), o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(1L << 60, -42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(1L << 60, 42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedintArg_of_(1L << 60, 1 << 30, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1 << 30)


	def testinvokesignedlonglongAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(-(1L << 60), -(1<<30), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(-(1L << 60), -42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(-(1L << 60), 42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(-(1L << 60), 1 << 30, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(-42, -(1<<30), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(1L << 60, -(1<<30), o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(1L << 60, -42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(1L << 60, 42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedintArg_of_(1L << 60, 1 << 30, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1 << 30)


	def testcallsignedlonglongAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(-(1L << 60), -(1<<30), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(-(1L << 60), -42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(-(1L << 60), 42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(-(1L << 60), 1 << 30, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(-42, -(1<<30), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(1L << 60, -(1<<30), o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(1L << 60, -42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(1L << 60, 42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlongArg_of_(1L << 60, 1 << 30, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1 << 30)


	def testinvokesignedlonglongAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(-(1L << 60), -(1<<30), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(-(1L << 60), -42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(-(1L << 60), 42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(-(1L << 60), 1 << 30, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(-42, -(1<<30), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(1L << 60, -(1<<30), o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(1L << 60, -42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(1L << 60, 42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlongArg_of_(1L << 60, 1 << 30, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1 << 30)


	def testcallsignedlonglongAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(-(1L << 60), -(1L << 60), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(-(1L << 60), -42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(-(1L << 60), 42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(-(1L << 60), 1L << 60, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(-42, -(1L << 60), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(-42, 1L << 60, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(42, -(1L << 60), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(42, 1L << 60, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(1L << 60, -(1L << 60), o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(1L << 60, -42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(1L << 60, 42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andsignedlonglongArg_of_(1L << 60, 1L << 60, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1L << 60)


	def testinvokesignedlonglongAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(-(1L << 60), -(1L << 60), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(-(1L << 60), -42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(-(1L << 60), 42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(-(1L << 60), 1L << 60, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(-42, -(1L << 60), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(-42, -42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(-42, 1L << 60, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(42, -(1L << 60), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(42, 1L << 60, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(1L << 60, -(1L << 60), o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(1L << 60, -42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(1L << 60, 42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andsignedlonglongArg_of_(1L << 60, 1L << 60, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1L << 60)


	def testcallsignedlonglongAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedcharArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedcharArg_of_(-(1L << 60), 128, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedcharArg_of_(-(1L << 60), 255, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedcharArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedcharArg_of_(-42, 128, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedcharArg_of_(-42, 255, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedcharArg_of_(42, 128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedcharArg_of_(42, 255, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedcharArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedcharArg_of_(1L << 60, 128, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedcharArg_of_(1L << 60, 255, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 255)


	def testinvokesignedlonglongAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedcharArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedcharArg_of_(-(1L << 60), 128, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedcharArg_of_(-(1L << 60), 255, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedcharArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedcharArg_of_(-42, 128, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedcharArg_of_(-42, 255, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedcharArg_of_(42, 128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedcharArg_of_(42, 255, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedcharArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedcharArg_of_(1L << 60, 128, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedcharArg_of_(1L << 60, 255, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 255)


	def testcallsignedlonglongAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedshortArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedshortArg_of_(-(1L << 60), 42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedshortArg_of_(-(1L << 60), 1<<14, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedshortArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedshortArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedshortArg_of_(-42, 1<<14, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedshortArg_of_(42, 1<<14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedshortArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedshortArg_of_(1L << 60, 42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedshortArg_of_(1L << 60, 1<<14, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1<<14)


	def testinvokesignedlonglongAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedshortArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedshortArg_of_(-(1L << 60), 42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedshortArg_of_(-(1L << 60), 1<<14, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedshortArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedshortArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedshortArg_of_(-42, 1<<14, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedshortArg_of_(42, 1<<14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedshortArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedshortArg_of_(1L << 60, 42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedshortArg_of_(1L << 60, 1<<14, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1<<14)


	def testcallsignedlonglongAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedintArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedintArg_of_(-(1L << 60), 42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedintArg_of_(-(1L << 60), 1 << 30, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedintArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedintArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedintArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedintArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedintArg_of_(1L << 60, 42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedintArg_of_(1L << 60, 1 << 30, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1 << 30)


	def testinvokesignedlonglongAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedintArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedintArg_of_(-(1L << 60), 42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedintArg_of_(-(1L << 60), 1 << 30, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedintArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedintArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedintArg_of_(-42, 1 << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedintArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedintArg_of_(1L << 60, 42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedintArg_of_(1L << 60, 1 << 30, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1 << 30)


	def testcallsignedlonglongAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlongArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlongArg_of_(-(1L << 60), 42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlongArg_of_(-(1L << 60), 1L << 30, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlongArg_of_(-42, 1L << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlongArg_of_(42, 1L << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlongArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlongArg_of_(1L << 60, 42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlongArg_of_(1L << 60, 1L << 30, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1L << 30)


	def testinvokesignedlonglongAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlongArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlongArg_of_(-(1L << 60), 42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlongArg_of_(-(1L << 60), 1L << 30, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlongArg_of_(-42, 1L << 30, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlongArg_of_(42, 1L << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlongArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlongArg_of_(1L << 60, 42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlongArg_of_(1L << 60, 1L << 30, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1L << 30)


	def testcallsignedlonglongAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlonglongArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlonglongArg_of_(-(1L << 60), 42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlonglongArg_of_(-(1L << 60), 1L << 62, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlonglongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlonglongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlonglongArg_of_(-42, 1L << 62, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlonglongArg_of_(42, 1L << 62, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlonglongArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlonglongArg_of_(1L << 60, 42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongArg_andunsignedlonglongArg_of_(1L << 60, 1L << 62, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1L << 62)


	def testinvokesignedlonglongAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlonglongArg_of_(-(1L << 60), 0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlonglongArg_of_(-(1L << 60), 42, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlonglongArg_of_(-(1L << 60), 1L << 62, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlonglongArg_of_(-42, 0, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlonglongArg_of_(-42, 42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlonglongArg_of_(-42, 1L << 62, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlonglongArg_of_(42, 1L << 62, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlonglongArg_of_(1L << 60, 0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlonglongArg_of_(1L << 60, 42, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andunsignedlonglongArg_of_(1L << 60, 1L << 62, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], 1L << 62)


	def testcallsignedlonglongAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(-(1L << 60), 0.128, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(-(1L << 60), 1.0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(-(1L << 60), 42.0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(-(1L << 60), 1e10, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(-42, 0.128, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(-42, 1.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(-42, 42.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(-42, 1e10, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(1L << 60, 0.128, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(1L << 60, 1.0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(1L << 60, 42.0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_andfloatArg_of_(1L << 60, 1e10, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokesignedlonglongAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(-(1L << 60), 0.128, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(-(1L << 60), 1.0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(-(1L << 60), 42.0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(-(1L << 60), 1e10, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(-42, 0.128, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(-42, 1.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(-42, 42.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(-42, 1e10, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(1L << 60, 0.128, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(1L << 60, 1.0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(1L << 60, 42.0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andfloatArg_of_(1L << 60, 1e10, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallsignedlonglongAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(-(1L << 60), 0.128, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(-(1L << 60), 1.0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(-(1L << 60), 42.0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(-(1L << 60), 1e10, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(-42, 0.128, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(-42, 1.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(-42, 42.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(-42, 1e10, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(1L << 60, 0.128, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(1L << 60, 1.0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(1L << 60, 42.0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callsignedlonglongArg_anddoubleArg_of_(1L << 60, 1e10, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokesignedlonglongAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(-(1L << 60), 0.128, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(-(1L << 60), 1.0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(-(1L << 60), 42.0, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(-(1L << 60), 1e10, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(-42, 0.128, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(-42, 1.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(-42, 42.0, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(-42, 1e10, o)
		self.assertEquals(r[0], -42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(1L << 60, 0.128, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(1L << 60, 1.0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(1L << 60, 42.0, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokesignedlonglongArg_anddoubleArg_of_(1L << 60, 1e10, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallsignedlonglongAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_andidArg_of_(-(1L << 60), NSPriorDayDesignations, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callsignedlonglongArg_andidArg_of_(-42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callsignedlonglongArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callsignedlonglongArg_andidArg_of_(42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callsignedlonglongArg_andidArg_of_(1L << 60, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokesignedlonglongAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andidArg_of_(-(1L << 60), NSPriorDayDesignations, o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andidArg_of_(-42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andidArg_of_(42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andidArg_of_(1L << 60, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcallsignedlonglongAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharPtrArg_of_(-(1L << 60), "hello", o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharPtrArg_of_(-(1L << 60), "world", o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharPtrArg_of_(-(1L << 60), "foobar", o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharPtrArg_of_(-42, "hello", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharPtrArg_of_(-42, "world", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharPtrArg_of_(-42, "foobar", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharPtrArg_of_(42, "hello", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharPtrArg_of_(42, "world", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharPtrArg_of_(42, "foobar", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharPtrArg_of_(1L << 60, "hello", o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharPtrArg_of_(1L << 60, "world", o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callsignedlonglongArg_andcharPtrArg_of_(1L << 60, "foobar", o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], "foobar")


	def testinvokesignedlonglongAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharPtrArg_of_(-(1L << 60), "hello", o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharPtrArg_of_(-(1L << 60), "world", o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharPtrArg_of_(-(1L << 60), "foobar", o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharPtrArg_of_(-42, "hello", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharPtrArg_of_(-42, "world", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharPtrArg_of_(-42, "foobar", o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharPtrArg_of_(42, "hello", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharPtrArg_of_(42, "world", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharPtrArg_of_(42, "foobar", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharPtrArg_of_(1L << 60, "hello", o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharPtrArg_of_(1L << 60, "world", o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokesignedlonglongArg_andcharPtrArg_of_(1L << 60, "foobar", o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], "foobar")


	def testcallsignedlonglongAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSPointArg_of_(-(1L << 60), (1, 2), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSPointArg_of_(-(1L << 60), (3, 4), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSPointArg_of_(-42, (1, 2), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSPointArg_of_(-42, (3, 4), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSPointArg_of_(42, (1, 2), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSPointArg_of_(42, (3, 4), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSPointArg_of_(1L << 60, (1, 2), o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSPointArg_of_(1L << 60, (3, 4), o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], (3, 4))


	def testinvokesignedlonglongAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSPointArg_of_(-(1L << 60), (1, 2), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSPointArg_of_(-(1L << 60), (3, 4), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSPointArg_of_(-42, (1, 2), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSPointArg_of_(-42, (3, 4), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSPointArg_of_(42, (1, 2), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSPointArg_of_(42, (3, 4), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSPointArg_of_(1L << 60, (1, 2), o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSPointArg_of_(1L << 60, (3, 4), o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], (3, 4))


	def testcallsignedlonglongAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSRectArg_of_(-(1L << 60), ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSRectArg_of_(-(1L << 60), ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSRectArg_of_(-42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSRectArg_of_(-42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSRectArg_of_(42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSRectArg_of_(42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSRectArg_of_(1L << 60, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callsignedlonglongArg_andNSRectArg_of_(1L << 60, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokesignedlonglongAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSRectArg_of_(-(1L << 60), ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSRectArg_of_(-(1L << 60), ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSRectArg_of_(-42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSRectArg_of_(-42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSRectArg_of_(42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSRectArg_of_(42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSRectArg_of_(1L << 60, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokesignedlonglongArg_andNSRectArg_of_(1L << 60, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcallunsignedcharAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callunsignedcharArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callunsignedcharArg_andBOOLArg_of_(128, YES, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callunsignedcharArg_andBOOLArg_of_(128, NO, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callunsignedcharArg_andBOOLArg_of_(255, YES, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callunsignedcharArg_andBOOLArg_of_(255, NO, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], NO)


	def testinvokeunsignedcharAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andBOOLArg_of_(128, YES, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andBOOLArg_of_(128, NO, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andBOOLArg_of_(255, YES, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andBOOLArg_of_(255, NO, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], NO)


	def testcallunsignedcharAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callunsignedcharArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callunsignedcharArg_andcharArg_of_(128, -128, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callunsignedcharArg_andcharArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andcharArg_of_(128, 127, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callunsignedcharArg_andcharArg_of_(255, -128, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callunsignedcharArg_andcharArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andcharArg_of_(255, 127, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 127)


	def testinvokeunsignedcharAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharArg_of_(128, -128, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharArg_of_(128, 127, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharArg_of_(255, -128, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharArg_of_(255, 127, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 127)


	def testcallunsignedcharAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedshortArg_of_(128, -(1<<14), o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedshortArg_of_(128, -42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedshortArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedshortArg_of_(128, 42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedshortArg_of_(128, 1 << 14, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedshortArg_of_(255, -(1<<14), o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedshortArg_of_(255, -42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedshortArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedshortArg_of_(255, 42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedshortArg_of_(255, 1 << 14, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1 << 14)


	def testinvokeunsignedcharAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedshortArg_of_(128, -(1<<14), o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedshortArg_of_(128, -42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedshortArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedshortArg_of_(128, 42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedshortArg_of_(128, 1 << 14, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedshortArg_of_(255, -(1<<14), o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedshortArg_of_(255, -42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedshortArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedshortArg_of_(255, 42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedshortArg_of_(255, 1 << 14, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1 << 14)


	def testcallunsignedcharAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedintArg_of_(128, -(1<<30), o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedintArg_of_(128, -42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedintArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedintArg_of_(128, 42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedintArg_of_(128, 1 << 30, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedintArg_of_(255, -(1<<30), o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedintArg_of_(255, -42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedintArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedintArg_of_(255, 42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedintArg_of_(255, 1 << 30, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeunsignedcharAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedintArg_of_(128, -(1<<30), o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedintArg_of_(128, -42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedintArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedintArg_of_(128, 42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedintArg_of_(128, 1 << 30, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedintArg_of_(255, -(1<<30), o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedintArg_of_(255, -42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedintArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedintArg_of_(255, 42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedintArg_of_(255, 1 << 30, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1 << 30)


	def testcallunsignedcharAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlongArg_of_(128, -(1<<30), o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlongArg_of_(128, -42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlongArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlongArg_of_(128, 42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlongArg_of_(128, 1 << 30, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlongArg_of_(255, -(1<<30), o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlongArg_of_(255, -42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlongArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlongArg_of_(255, 42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlongArg_of_(255, 1 << 30, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeunsignedcharAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlongArg_of_(128, -(1<<30), o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlongArg_of_(128, -42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlongArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlongArg_of_(128, 42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlongArg_of_(128, 1 << 30, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlongArg_of_(255, -(1<<30), o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlongArg_of_(255, -42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlongArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlongArg_of_(255, 42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlongArg_of_(255, 1 << 30, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1 << 30)


	def testcallunsignedcharAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlonglongArg_of_(128, -(1L << 60), o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlonglongArg_of_(128, -42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlonglongArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlonglongArg_of_(128, 42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlonglongArg_of_(128, 1L << 60, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlonglongArg_of_(255, -(1L << 60), o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlonglongArg_of_(255, -42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlonglongArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlonglongArg_of_(255, 42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andsignedlonglongArg_of_(255, 1L << 60, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1L << 60)


	def testinvokeunsignedcharAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlonglongArg_of_(128, -(1L << 60), o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlonglongArg_of_(128, -42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlonglongArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlonglongArg_of_(128, 42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlonglongArg_of_(128, 1L << 60, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlonglongArg_of_(255, -(1L << 60), o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlonglongArg_of_(255, -42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlonglongArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlonglongArg_of_(255, 42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andsignedlonglongArg_of_(255, 1L << 60, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1L << 60)


	def testcallunsignedcharAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedcharArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedcharArg_of_(128, 128, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedcharArg_of_(128, 255, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedcharArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedcharArg_of_(255, 128, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedcharArg_of_(255, 255, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 255)


	def testinvokeunsignedcharAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedcharArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedcharArg_of_(128, 128, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedcharArg_of_(128, 255, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedcharArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedcharArg_of_(255, 128, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedcharArg_of_(255, 255, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 255)


	def testcallunsignedcharAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedshortArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedshortArg_of_(128, 42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedshortArg_of_(128, 1<<14, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedshortArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedshortArg_of_(255, 42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedshortArg_of_(255, 1<<14, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1<<14)


	def testinvokeunsignedcharAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedshortArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedshortArg_of_(128, 42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedshortArg_of_(128, 1<<14, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedshortArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedshortArg_of_(255, 42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedshortArg_of_(255, 1<<14, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1<<14)


	def testcallunsignedcharAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedintArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedintArg_of_(128, 42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedintArg_of_(128, 1 << 30, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedintArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedintArg_of_(255, 42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedintArg_of_(255, 1 << 30, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeunsignedcharAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedintArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedintArg_of_(128, 42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedintArg_of_(128, 1 << 30, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedintArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedintArg_of_(255, 42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedintArg_of_(255, 1 << 30, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1 << 30)


	def testcallunsignedcharAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlongArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlongArg_of_(128, 42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlongArg_of_(128, 1L << 30, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlongArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlongArg_of_(255, 42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlongArg_of_(255, 1L << 30, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1L << 30)


	def testinvokeunsignedcharAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlongArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlongArg_of_(128, 42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlongArg_of_(128, 1L << 30, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlongArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlongArg_of_(255, 42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlongArg_of_(255, 1L << 30, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1L << 30)


	def testcallunsignedcharAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlonglongArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlonglongArg_of_(128, 42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlonglongArg_of_(128, 1L << 62, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlonglongArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlonglongArg_of_(255, 42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedcharArg_andunsignedlonglongArg_of_(255, 1L << 62, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1L << 62)


	def testinvokeunsignedcharAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlonglongArg_of_(128, 0, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlonglongArg_of_(128, 42, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlonglongArg_of_(128, 1L << 62, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlonglongArg_of_(255, 0, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlonglongArg_of_(255, 42, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andunsignedlonglongArg_of_(255, 1L << 62, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 1L << 62)


	def testcallunsignedcharAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedcharArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedcharArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedcharArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedcharArg_andfloatArg_of_(128, 0.128, o)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedcharArg_andfloatArg_of_(128, 1.0, o)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedcharArg_andfloatArg_of_(128, 42.0, o)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedcharArg_andfloatArg_of_(128, 1e10, o)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedcharArg_andfloatArg_of_(255, 0.128, o)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedcharArg_andfloatArg_of_(255, 1.0, o)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedcharArg_andfloatArg_of_(255, 42.0, o)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedcharArg_andfloatArg_of_(255, 1e10, o)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeunsignedcharAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andfloatArg_of_(128, 0.128, o)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andfloatArg_of_(128, 1.0, o)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andfloatArg_of_(128, 42.0, o)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andfloatArg_of_(128, 1e10, o)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andfloatArg_of_(255, 0.128, o)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andfloatArg_of_(255, 1.0, o)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andfloatArg_of_(255, 42.0, o)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andfloatArg_of_(255, 1e10, o)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallunsignedcharAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedcharArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedcharArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedcharArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedcharArg_anddoubleArg_of_(128, 0.128, o)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedcharArg_anddoubleArg_of_(128, 1.0, o)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedcharArg_anddoubleArg_of_(128, 42.0, o)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedcharArg_anddoubleArg_of_(128, 1e10, o)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedcharArg_anddoubleArg_of_(255, 0.128, o)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedcharArg_anddoubleArg_of_(255, 1.0, o)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedcharArg_anddoubleArg_of_(255, 42.0, o)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedcharArg_anddoubleArg_of_(255, 1e10, o)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeunsignedcharAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedcharArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedcharArg_anddoubleArg_of_(128, 0.128, o)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedcharArg_anddoubleArg_of_(128, 1.0, o)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_anddoubleArg_of_(128, 42.0, o)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_anddoubleArg_of_(128, 1e10, o)
		self.assertEquals(r[0], 128)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedcharArg_anddoubleArg_of_(255, 0.128, o)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedcharArg_anddoubleArg_of_(255, 1.0, o)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_anddoubleArg_of_(255, 42.0, o)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedcharArg_anddoubleArg_of_(255, 1e10, o)
		self.assertEquals(r[0], 255)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallunsignedcharAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callunsignedcharArg_andidArg_of_(128, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callunsignedcharArg_andidArg_of_(255, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokeunsignedcharAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andidArg_of_(128, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andidArg_of_(255, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcallunsignedcharAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callunsignedcharArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callunsignedcharArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callunsignedcharArg_andcharPtrArg_of_(128, "hello", o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callunsignedcharArg_andcharPtrArg_of_(128, "world", o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callunsignedcharArg_andcharPtrArg_of_(128, "foobar", o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callunsignedcharArg_andcharPtrArg_of_(255, "hello", o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callunsignedcharArg_andcharPtrArg_of_(255, "world", o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callunsignedcharArg_andcharPtrArg_of_(255, "foobar", o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], "foobar")


	def testinvokeunsignedcharAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharPtrArg_of_(128, "hello", o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharPtrArg_of_(128, "world", o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharPtrArg_of_(128, "foobar", o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharPtrArg_of_(255, "hello", o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharPtrArg_of_(255, "world", o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeunsignedcharArg_andcharPtrArg_of_(255, "foobar", o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], "foobar")


	def testcallunsignedcharAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callunsignedcharArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callunsignedcharArg_andNSPointArg_of_(128, (1, 2), o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callunsignedcharArg_andNSPointArg_of_(128, (3, 4), o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callunsignedcharArg_andNSPointArg_of_(255, (1, 2), o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callunsignedcharArg_andNSPointArg_of_(255, (3, 4), o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], (3, 4))


	def testinvokeunsignedcharAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andNSPointArg_of_(128, (1, 2), o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andNSPointArg_of_(128, (3, 4), o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andNSPointArg_of_(255, (1, 2), o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andNSPointArg_of_(255, (3, 4), o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], (3, 4))


	def testcallunsignedcharAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callunsignedcharArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callunsignedcharArg_andNSRectArg_of_(128, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callunsignedcharArg_andNSRectArg_of_(128, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callunsignedcharArg_andNSRectArg_of_(255, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callunsignedcharArg_andNSRectArg_of_(255, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokeunsignedcharAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andNSRectArg_of_(128, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andNSRectArg_of_(128, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andNSRectArg_of_(255, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeunsignedcharArg_andNSRectArg_of_(255, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcallunsignedshortAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callunsignedshortArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callunsignedshortArg_andBOOLArg_of_(42, YES, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callunsignedshortArg_andBOOLArg_of_(42, NO, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callunsignedshortArg_andBOOLArg_of_(1<<14, YES, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callunsignedshortArg_andBOOLArg_of_(1<<14, NO, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], NO)


	def testinvokeunsignedshortAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andBOOLArg_of_(42, YES, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andBOOLArg_of_(42, NO, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andBOOLArg_of_(1<<14, YES, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andBOOLArg_of_(1<<14, NO, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], NO)


	def testcallunsignedshortAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callunsignedshortArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callunsignedshortArg_andcharArg_of_(42, -128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callunsignedshortArg_andcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andcharArg_of_(42, 127, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callunsignedshortArg_andcharArg_of_(1<<14, -128, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callunsignedshortArg_andcharArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andcharArg_of_(1<<14, 127, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 127)


	def testinvokeunsignedshortAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharArg_of_(42, -128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharArg_of_(42, 127, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharArg_of_(1<<14, -128, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharArg_of_(1<<14, 127, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 127)


	def testcallunsignedshortAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedshortArg_of_(42, -(1<<14), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedshortArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedshortArg_of_(42, 1 << 14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedshortArg_of_(1<<14, -(1<<14), o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedshortArg_of_(1<<14, -42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedshortArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedshortArg_of_(1<<14, 42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedshortArg_of_(1<<14, 1 << 14, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1 << 14)


	def testinvokeunsignedshortAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedshortArg_of_(42, -(1<<14), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedshortArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedshortArg_of_(42, 1 << 14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedshortArg_of_(1<<14, -(1<<14), o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedshortArg_of_(1<<14, -42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedshortArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedshortArg_of_(1<<14, 42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedshortArg_of_(1<<14, 1 << 14, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1 << 14)


	def testcallunsignedshortAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedintArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedintArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedintArg_of_(1<<14, -(1<<30), o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedintArg_of_(1<<14, -42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedintArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedintArg_of_(1<<14, 42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedintArg_of_(1<<14, 1 << 30, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeunsignedshortAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedintArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedintArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedintArg_of_(1<<14, -(1<<30), o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedintArg_of_(1<<14, -42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedintArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedintArg_of_(1<<14, 42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedintArg_of_(1<<14, 1 << 30, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1 << 30)


	def testcallunsignedshortAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlongArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlongArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlongArg_of_(1<<14, -(1<<30), o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlongArg_of_(1<<14, -42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlongArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlongArg_of_(1<<14, 42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlongArg_of_(1<<14, 1 << 30, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeunsignedshortAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlongArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlongArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlongArg_of_(1<<14, -(1<<30), o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlongArg_of_(1<<14, -42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlongArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlongArg_of_(1<<14, 42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlongArg_of_(1<<14, 1 << 30, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1 << 30)


	def testcallunsignedshortAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlonglongArg_of_(42, -(1L << 60), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlonglongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlonglongArg_of_(42, 1L << 60, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlonglongArg_of_(1<<14, -(1L << 60), o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlonglongArg_of_(1<<14, -42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlonglongArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlonglongArg_of_(1<<14, 42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andsignedlonglongArg_of_(1<<14, 1L << 60, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1L << 60)


	def testinvokeunsignedshortAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlonglongArg_of_(42, -(1L << 60), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlonglongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlonglongArg_of_(42, 1L << 60, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlonglongArg_of_(1<<14, -(1L << 60), o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlonglongArg_of_(1<<14, -42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlonglongArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlonglongArg_of_(1<<14, 42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andsignedlonglongArg_of_(1<<14, 1L << 60, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1L << 60)


	def testcallunsignedshortAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedcharArg_of_(42, 128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedcharArg_of_(42, 255, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedcharArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedcharArg_of_(1<<14, 128, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedcharArg_of_(1<<14, 255, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 255)


	def testinvokeunsignedshortAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedcharArg_of_(42, 128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedcharArg_of_(42, 255, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedcharArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedcharArg_of_(1<<14, 128, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedcharArg_of_(1<<14, 255, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 255)


	def testcallunsignedshortAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedshortArg_of_(42, 1<<14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedshortArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedshortArg_of_(1<<14, 42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedshortArg_of_(1<<14, 1<<14, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1<<14)


	def testinvokeunsignedshortAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedshortArg_of_(42, 1<<14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedshortArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedshortArg_of_(1<<14, 42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedshortArg_of_(1<<14, 1<<14, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1<<14)


	def testcallunsignedshortAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedintArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedintArg_of_(1<<14, 42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedintArg_of_(1<<14, 1 << 30, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeunsignedshortAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedintArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedintArg_of_(1<<14, 42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedintArg_of_(1<<14, 1 << 30, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1 << 30)


	def testcallunsignedshortAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlongArg_of_(42, 1L << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlongArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlongArg_of_(1<<14, 42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlongArg_of_(1<<14, 1L << 30, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1L << 30)


	def testinvokeunsignedshortAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlongArg_of_(42, 1L << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlongArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlongArg_of_(1<<14, 42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlongArg_of_(1<<14, 1L << 30, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1L << 30)


	def testcallunsignedshortAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlonglongArg_of_(42, 1L << 62, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlonglongArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlonglongArg_of_(1<<14, 42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortArg_andunsignedlonglongArg_of_(1<<14, 1L << 62, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1L << 62)


	def testinvokeunsignedshortAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlonglongArg_of_(42, 1L << 62, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlonglongArg_of_(1<<14, 0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlonglongArg_of_(1<<14, 42, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andunsignedlonglongArg_of_(1<<14, 1L << 62, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 1L << 62)


	def testcallunsignedshortAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedshortArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedshortArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedshortArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedshortArg_andfloatArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedshortArg_andfloatArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedshortArg_andfloatArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedshortArg_andfloatArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedshortArg_andfloatArg_of_(1<<14, 0.128, o)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedshortArg_andfloatArg_of_(1<<14, 1.0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedshortArg_andfloatArg_of_(1<<14, 42.0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedshortArg_andfloatArg_of_(1<<14, 1e10, o)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeunsignedshortAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andfloatArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andfloatArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andfloatArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andfloatArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andfloatArg_of_(1<<14, 0.128, o)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andfloatArg_of_(1<<14, 1.0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andfloatArg_of_(1<<14, 42.0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andfloatArg_of_(1<<14, 1e10, o)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallunsignedshortAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedshortArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedshortArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedshortArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedshortArg_anddoubleArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedshortArg_anddoubleArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedshortArg_anddoubleArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedshortArg_anddoubleArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedshortArg_anddoubleArg_of_(1<<14, 0.128, o)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedshortArg_anddoubleArg_of_(1<<14, 1.0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedshortArg_anddoubleArg_of_(1<<14, 42.0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedshortArg_anddoubleArg_of_(1<<14, 1e10, o)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeunsignedshortAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedshortArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedshortArg_anddoubleArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedshortArg_anddoubleArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_anddoubleArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_anddoubleArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedshortArg_anddoubleArg_of_(1<<14, 0.128, o)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedshortArg_anddoubleArg_of_(1<<14, 1.0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_anddoubleArg_of_(1<<14, 42.0, o)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedshortArg_anddoubleArg_of_(1<<14, 1e10, o)
		self.assertEquals(r[0], 1<<14)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallunsignedshortAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callunsignedshortArg_andidArg_of_(42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callunsignedshortArg_andidArg_of_(1<<14, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokeunsignedshortAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andidArg_of_(42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andidArg_of_(1<<14, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcallunsignedshortAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callunsignedshortArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callunsignedshortArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callunsignedshortArg_andcharPtrArg_of_(42, "hello", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callunsignedshortArg_andcharPtrArg_of_(42, "world", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callunsignedshortArg_andcharPtrArg_of_(42, "foobar", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callunsignedshortArg_andcharPtrArg_of_(1<<14, "hello", o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callunsignedshortArg_andcharPtrArg_of_(1<<14, "world", o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callunsignedshortArg_andcharPtrArg_of_(1<<14, "foobar", o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], "foobar")


	def testinvokeunsignedshortAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharPtrArg_of_(42, "hello", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharPtrArg_of_(42, "world", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharPtrArg_of_(42, "foobar", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharPtrArg_of_(1<<14, "hello", o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharPtrArg_of_(1<<14, "world", o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeunsignedshortArg_andcharPtrArg_of_(1<<14, "foobar", o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], "foobar")


	def testcallunsignedshortAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callunsignedshortArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callunsignedshortArg_andNSPointArg_of_(42, (1, 2), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callunsignedshortArg_andNSPointArg_of_(42, (3, 4), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callunsignedshortArg_andNSPointArg_of_(1<<14, (1, 2), o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callunsignedshortArg_andNSPointArg_of_(1<<14, (3, 4), o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], (3, 4))


	def testinvokeunsignedshortAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andNSPointArg_of_(42, (1, 2), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andNSPointArg_of_(42, (3, 4), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andNSPointArg_of_(1<<14, (1, 2), o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andNSPointArg_of_(1<<14, (3, 4), o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], (3, 4))


	def testcallunsignedshortAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callunsignedshortArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callunsignedshortArg_andNSRectArg_of_(42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callunsignedshortArg_andNSRectArg_of_(42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callunsignedshortArg_andNSRectArg_of_(1<<14, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callunsignedshortArg_andNSRectArg_of_(1<<14, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokeunsignedshortAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andNSRectArg_of_(42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andNSRectArg_of_(42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andNSRectArg_of_(1<<14, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeunsignedshortArg_andNSRectArg_of_(1<<14, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcallunsignedintAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callunsignedintArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callunsignedintArg_andBOOLArg_of_(42, YES, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callunsignedintArg_andBOOLArg_of_(42, NO, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callunsignedintArg_andBOOLArg_of_(1 << 30, YES, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callunsignedintArg_andBOOLArg_of_(1 << 30, NO, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NO)


	def testinvokeunsignedintAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeunsignedintArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokeunsignedintArg_andBOOLArg_of_(42, YES, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeunsignedintArg_andBOOLArg_of_(42, NO, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokeunsignedintArg_andBOOLArg_of_(1 << 30, YES, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeunsignedintArg_andBOOLArg_of_(1 << 30, NO, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NO)


	def testcallunsignedintAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callunsignedintArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callunsignedintArg_andcharArg_of_(42, -128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callunsignedintArg_andcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andcharArg_of_(42, 127, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callunsignedintArg_andcharArg_of_(1 << 30, -128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callunsignedintArg_andcharArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andcharArg_of_(1 << 30, 127, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 127)


	def testinvokeunsignedintAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharArg_of_(42, -128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharArg_of_(42, 127, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharArg_of_(1 << 30, -128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharArg_of_(1 << 30, 127, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 127)


	def testcallunsignedintAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callunsignedintArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedshortArg_of_(42, -(1<<14), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callunsignedintArg_andsignedshortArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedshortArg_of_(42, 1 << 14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedshortArg_of_(1 << 30, -(1<<14), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callunsignedintArg_andsignedshortArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedshortArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedshortArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedshortArg_of_(1 << 30, 1 << 14, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 14)


	def testinvokeunsignedintAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedshortArg_of_(42, -(1<<14), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedshortArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedshortArg_of_(42, 1 << 14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedshortArg_of_(1 << 30, -(1<<14), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedshortArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedshortArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedshortArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedshortArg_of_(1 << 30, 1 << 14, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 14)


	def testcallunsignedintAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedintArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedintArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedintArg_andsignedintArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedintArg_of_(1 << 30, -(1<<30), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedintArg_andsignedintArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedintArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedintArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedintArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeunsignedintAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedintArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedintArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedintArg_of_(1 << 30, -(1<<30), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedintArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedintArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedintArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedintArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testcallunsignedintAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlongArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlongArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlongArg_of_(1 << 30, -(1<<30), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlongArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlongArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeunsignedintAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlongArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlongArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlongArg_of_(1 << 30, -(1<<30), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlongArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlongArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testcallunsignedintAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlonglongArg_of_(42, -(1L << 60), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlonglongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlonglongArg_of_(42, 1L << 60, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlonglongArg_of_(1 << 30, -(1L << 60), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlonglongArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlonglongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlonglongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andsignedlonglongArg_of_(1 << 30, 1L << 60, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 60)


	def testinvokeunsignedintAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlonglongArg_of_(42, -(1L << 60), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlonglongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlonglongArg_of_(42, 1L << 60, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlonglongArg_of_(1 << 30, -(1L << 60), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlonglongArg_of_(1 << 30, -42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlonglongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlonglongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andsignedlonglongArg_of_(1 << 30, 1L << 60, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 60)


	def testcallunsignedintAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedcharArg_of_(42, 128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedcharArg_of_(42, 255, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedcharArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedcharArg_of_(1 << 30, 128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedcharArg_of_(1 << 30, 255, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 255)


	def testinvokeunsignedintAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedcharArg_of_(42, 128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedcharArg_of_(42, 255, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedcharArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedcharArg_of_(1 << 30, 128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedcharArg_of_(1 << 30, 255, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 255)


	def testcallunsignedintAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedshortArg_of_(42, 1<<14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedshortArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedshortArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedshortArg_of_(1 << 30, 1<<14, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1<<14)


	def testinvokeunsignedintAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedshortArg_of_(42, 1<<14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedshortArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedshortArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedshortArg_of_(1 << 30, 1<<14, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1<<14)


	def testcallunsignedintAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedintArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedintArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedintArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeunsignedintAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedintArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedintArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedintArg_of_(1 << 30, 1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1 << 30)


	def testcallunsignedintAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlongArg_of_(42, 1L << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlongArg_of_(1 << 30, 1L << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 30)


	def testinvokeunsignedintAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlongArg_of_(42, 1L << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlongArg_of_(1 << 30, 1L << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 30)


	def testcallunsignedintAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlonglongArg_of_(42, 1L << 62, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlonglongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlonglongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintArg_andunsignedlonglongArg_of_(1 << 30, 1L << 62, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 62)


	def testinvokeunsignedintAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlonglongArg_of_(42, 1L << 62, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlonglongArg_of_(1 << 30, 0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlonglongArg_of_(1 << 30, 42, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintArg_andunsignedlonglongArg_of_(1 << 30, 1L << 62, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 1L << 62)


	def testcallunsignedintAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedintArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedintArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedintArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedintArg_andfloatArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedintArg_andfloatArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedintArg_andfloatArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedintArg_andfloatArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedintArg_andfloatArg_of_(1 << 30, 0.128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedintArg_andfloatArg_of_(1 << 30, 1.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedintArg_andfloatArg_of_(1 << 30, 42.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedintArg_andfloatArg_of_(1 << 30, 1e10, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeunsignedintAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedintArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedintArg_andfloatArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedintArg_andfloatArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andfloatArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andfloatArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedintArg_andfloatArg_of_(1 << 30, 0.128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedintArg_andfloatArg_of_(1 << 30, 1.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andfloatArg_of_(1 << 30, 42.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedintArg_andfloatArg_of_(1 << 30, 1e10, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallunsignedintAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedintArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedintArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedintArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedintArg_anddoubleArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedintArg_anddoubleArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedintArg_anddoubleArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedintArg_anddoubleArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedintArg_anddoubleArg_of_(1 << 30, 0.128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedintArg_anddoubleArg_of_(1 << 30, 1.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedintArg_anddoubleArg_of_(1 << 30, 42.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedintArg_anddoubleArg_of_(1 << 30, 1e10, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeunsignedintAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedintArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedintArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedintArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedintArg_anddoubleArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedintArg_anddoubleArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedintArg_anddoubleArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedintArg_anddoubleArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedintArg_anddoubleArg_of_(1 << 30, 0.128, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedintArg_anddoubleArg_of_(1 << 30, 1.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedintArg_anddoubleArg_of_(1 << 30, 42.0, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedintArg_anddoubleArg_of_(1 << 30, 1e10, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallunsignedintAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callunsignedintArg_andidArg_of_(42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callunsignedintArg_andidArg_of_(1 << 30, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokeunsignedintAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokeunsignedintArg_andidArg_of_(42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokeunsignedintArg_andidArg_of_(1 << 30, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcallunsignedintAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callunsignedintArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callunsignedintArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callunsignedintArg_andcharPtrArg_of_(42, "hello", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callunsignedintArg_andcharPtrArg_of_(42, "world", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callunsignedintArg_andcharPtrArg_of_(42, "foobar", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callunsignedintArg_andcharPtrArg_of_(1 << 30, "hello", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callunsignedintArg_andcharPtrArg_of_(1 << 30, "world", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callunsignedintArg_andcharPtrArg_of_(1 << 30, "foobar", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "foobar")


	def testinvokeunsignedintAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharPtrArg_of_(42, "hello", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharPtrArg_of_(42, "world", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharPtrArg_of_(42, "foobar", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharPtrArg_of_(1 << 30, "hello", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharPtrArg_of_(1 << 30, "world", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeunsignedintArg_andcharPtrArg_of_(1 << 30, "foobar", o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], "foobar")


	def testcallunsignedintAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callunsignedintArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callunsignedintArg_andNSPointArg_of_(42, (1, 2), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callunsignedintArg_andNSPointArg_of_(42, (3, 4), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callunsignedintArg_andNSPointArg_of_(1 << 30, (1, 2), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callunsignedintArg_andNSPointArg_of_(1 << 30, (3, 4), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (3, 4))


	def testinvokeunsignedintAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeunsignedintArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokeunsignedintArg_andNSPointArg_of_(42, (1, 2), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeunsignedintArg_andNSPointArg_of_(42, (3, 4), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokeunsignedintArg_andNSPointArg_of_(1 << 30, (1, 2), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeunsignedintArg_andNSPointArg_of_(1 << 30, (3, 4), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], (3, 4))


	def testcallunsignedintAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callunsignedintArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callunsignedintArg_andNSRectArg_of_(42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callunsignedintArg_andNSRectArg_of_(42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callunsignedintArg_andNSRectArg_of_(1 << 30, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callunsignedintArg_andNSRectArg_of_(1 << 30, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokeunsignedintAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeunsignedintArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokeunsignedintArg_andNSRectArg_of_(42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeunsignedintArg_andNSRectArg_of_(42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokeunsignedintArg_andNSRectArg_of_(1 << 30, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeunsignedintArg_andNSRectArg_of_(1 << 30, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcallunsignedlongAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callunsignedlongArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callunsignedlongArg_andBOOLArg_of_(42, YES, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callunsignedlongArg_andBOOLArg_of_(42, NO, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callunsignedlongArg_andBOOLArg_of_(1L << 30, YES, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callunsignedlongArg_andBOOLArg_of_(1L << 30, NO, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], NO)


	def testinvokeunsignedlongAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andBOOLArg_of_(42, YES, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andBOOLArg_of_(42, NO, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andBOOLArg_of_(1L << 30, YES, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andBOOLArg_of_(1L << 30, NO, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], NO)


	def testcallunsignedlongAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callunsignedlongArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callunsignedlongArg_andcharArg_of_(42, -128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callunsignedlongArg_andcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andcharArg_of_(42, 127, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callunsignedlongArg_andcharArg_of_(1L << 30, -128, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callunsignedlongArg_andcharArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andcharArg_of_(1L << 30, 127, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 127)


	def testinvokeunsignedlongAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharArg_of_(42, -128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharArg_of_(42, 127, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharArg_of_(1L << 30, -128, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharArg_of_(1L << 30, 127, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 127)


	def testcallunsignedlongAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedshortArg_of_(42, -(1<<14), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedshortArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedshortArg_of_(42, 1 << 14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedshortArg_of_(1L << 30, -(1<<14), o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedshortArg_of_(1L << 30, -42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedshortArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedshortArg_of_(1L << 30, 42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedshortArg_of_(1L << 30, 1 << 14, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1 << 14)


	def testinvokeunsignedlongAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedshortArg_of_(42, -(1<<14), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedshortArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedshortArg_of_(42, 1 << 14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedshortArg_of_(1L << 30, -(1<<14), o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedshortArg_of_(1L << 30, -42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedshortArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedshortArg_of_(1L << 30, 42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedshortArg_of_(1L << 30, 1 << 14, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1 << 14)


	def testcallunsignedlongAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedintArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedintArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedintArg_of_(1L << 30, -(1<<30), o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedintArg_of_(1L << 30, -42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedintArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedintArg_of_(1L << 30, 42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedintArg_of_(1L << 30, 1 << 30, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeunsignedlongAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedintArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedintArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedintArg_of_(1L << 30, -(1<<30), o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedintArg_of_(1L << 30, -42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedintArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedintArg_of_(1L << 30, 42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedintArg_of_(1L << 30, 1 << 30, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1 << 30)


	def testcallunsignedlongAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlongArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlongArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlongArg_of_(1L << 30, -(1<<30), o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlongArg_of_(1L << 30, -42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlongArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlongArg_of_(1L << 30, 42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlongArg_of_(1L << 30, 1 << 30, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeunsignedlongAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlongArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlongArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlongArg_of_(1L << 30, -(1<<30), o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlongArg_of_(1L << 30, -42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlongArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlongArg_of_(1L << 30, 42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlongArg_of_(1L << 30, 1 << 30, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1 << 30)


	def testcallunsignedlongAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlonglongArg_of_(42, -(1L << 60), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlonglongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlonglongArg_of_(42, 1L << 60, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlonglongArg_of_(1L << 30, -(1L << 60), o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlonglongArg_of_(1L << 30, -42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlonglongArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlonglongArg_of_(1L << 30, 42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andsignedlonglongArg_of_(1L << 30, 1L << 60, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1L << 60)


	def testinvokeunsignedlongAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlonglongArg_of_(42, -(1L << 60), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlonglongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlonglongArg_of_(42, 1L << 60, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlonglongArg_of_(1L << 30, -(1L << 60), o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlonglongArg_of_(1L << 30, -42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlonglongArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlonglongArg_of_(1L << 30, 42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andsignedlonglongArg_of_(1L << 30, 1L << 60, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1L << 60)


	def testcallunsignedlongAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedcharArg_of_(42, 128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedcharArg_of_(42, 255, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedcharArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedcharArg_of_(1L << 30, 128, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedcharArg_of_(1L << 30, 255, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 255)


	def testinvokeunsignedlongAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedcharArg_of_(42, 128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedcharArg_of_(42, 255, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedcharArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedcharArg_of_(1L << 30, 128, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedcharArg_of_(1L << 30, 255, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 255)


	def testcallunsignedlongAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedshortArg_of_(42, 1<<14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedshortArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedshortArg_of_(1L << 30, 42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedshortArg_of_(1L << 30, 1<<14, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1<<14)


	def testinvokeunsignedlongAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedshortArg_of_(42, 1<<14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedshortArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedshortArg_of_(1L << 30, 42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedshortArg_of_(1L << 30, 1<<14, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1<<14)


	def testcallunsignedlongAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedintArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedintArg_of_(1L << 30, 42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedintArg_of_(1L << 30, 1 << 30, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeunsignedlongAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedintArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedintArg_of_(1L << 30, 42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedintArg_of_(1L << 30, 1 << 30, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1 << 30)


	def testcallunsignedlongAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlongArg_of_(42, 1L << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlongArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlongArg_of_(1L << 30, 42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlongArg_of_(1L << 30, 1L << 30, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1L << 30)


	def testinvokeunsignedlongAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlongArg_of_(42, 1L << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlongArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlongArg_of_(1L << 30, 42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlongArg_of_(1L << 30, 1L << 30, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1L << 30)


	def testcallunsignedlongAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlonglongArg_of_(42, 1L << 62, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlonglongArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlonglongArg_of_(1L << 30, 42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongArg_andunsignedlonglongArg_of_(1L << 30, 1L << 62, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1L << 62)


	def testinvokeunsignedlongAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlonglongArg_of_(42, 1L << 62, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlonglongArg_of_(1L << 30, 0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlonglongArg_of_(1L << 30, 42, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andunsignedlonglongArg_of_(1L << 30, 1L << 62, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 1L << 62)


	def testcallunsignedlongAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedlongArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedlongArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedlongArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedlongArg_andfloatArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedlongArg_andfloatArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedlongArg_andfloatArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedlongArg_andfloatArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedlongArg_andfloatArg_of_(1L << 30, 0.128, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedlongArg_andfloatArg_of_(1L << 30, 1.0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedlongArg_andfloatArg_of_(1L << 30, 42.0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedlongArg_andfloatArg_of_(1L << 30, 1e10, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeunsignedlongAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andfloatArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andfloatArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andfloatArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andfloatArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andfloatArg_of_(1L << 30, 0.128, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andfloatArg_of_(1L << 30, 1.0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andfloatArg_of_(1L << 30, 42.0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andfloatArg_of_(1L << 30, 1e10, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallunsignedlongAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedlongArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedlongArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedlongArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedlongArg_anddoubleArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedlongArg_anddoubleArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedlongArg_anddoubleArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedlongArg_anddoubleArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedlongArg_anddoubleArg_of_(1L << 30, 0.128, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedlongArg_anddoubleArg_of_(1L << 30, 1.0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedlongArg_anddoubleArg_of_(1L << 30, 42.0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedlongArg_anddoubleArg_of_(1L << 30, 1e10, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeunsignedlongAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedlongArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedlongArg_anddoubleArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedlongArg_anddoubleArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_anddoubleArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_anddoubleArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedlongArg_anddoubleArg_of_(1L << 30, 0.128, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedlongArg_anddoubleArg_of_(1L << 30, 1.0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_anddoubleArg_of_(1L << 30, 42.0, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedlongArg_anddoubleArg_of_(1L << 30, 1e10, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallunsignedlongAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callunsignedlongArg_andidArg_of_(42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callunsignedlongArg_andidArg_of_(1L << 30, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokeunsignedlongAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andidArg_of_(42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andidArg_of_(1L << 30, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcallunsignedlongAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callunsignedlongArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callunsignedlongArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callunsignedlongArg_andcharPtrArg_of_(42, "hello", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callunsignedlongArg_andcharPtrArg_of_(42, "world", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callunsignedlongArg_andcharPtrArg_of_(42, "foobar", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callunsignedlongArg_andcharPtrArg_of_(1L << 30, "hello", o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callunsignedlongArg_andcharPtrArg_of_(1L << 30, "world", o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callunsignedlongArg_andcharPtrArg_of_(1L << 30, "foobar", o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], "foobar")


	def testinvokeunsignedlongAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharPtrArg_of_(42, "hello", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharPtrArg_of_(42, "world", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharPtrArg_of_(42, "foobar", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharPtrArg_of_(1L << 30, "hello", o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharPtrArg_of_(1L << 30, "world", o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeunsignedlongArg_andcharPtrArg_of_(1L << 30, "foobar", o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], "foobar")


	def testcallunsignedlongAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callunsignedlongArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callunsignedlongArg_andNSPointArg_of_(42, (1, 2), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callunsignedlongArg_andNSPointArg_of_(42, (3, 4), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callunsignedlongArg_andNSPointArg_of_(1L << 30, (1, 2), o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callunsignedlongArg_andNSPointArg_of_(1L << 30, (3, 4), o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], (3, 4))


	def testinvokeunsignedlongAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andNSPointArg_of_(42, (1, 2), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andNSPointArg_of_(42, (3, 4), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andNSPointArg_of_(1L << 30, (1, 2), o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andNSPointArg_of_(1L << 30, (3, 4), o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], (3, 4))


	def testcallunsignedlongAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callunsignedlongArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callunsignedlongArg_andNSRectArg_of_(42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callunsignedlongArg_andNSRectArg_of_(42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callunsignedlongArg_andNSRectArg_of_(1L << 30, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callunsignedlongArg_andNSRectArg_of_(1L << 30, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokeunsignedlongAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andNSRectArg_of_(42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andNSRectArg_of_(42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andNSRectArg_of_(1L << 30, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeunsignedlongArg_andNSRectArg_of_(1L << 30, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcallunsignedlonglongAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andBOOLArg_of_(42, YES, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andBOOLArg_of_(42, NO, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andBOOLArg_of_(1L << 62, YES, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andBOOLArg_of_(1L << 62, NO, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], NO)


	def testinvokeunsignedlonglongAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andBOOLArg_of_(0, YES, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andBOOLArg_of_(0, NO, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andBOOLArg_of_(42, YES, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andBOOLArg_of_(42, NO, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andBOOLArg_of_(1L << 62, YES, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andBOOLArg_of_(1L << 62, NO, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], NO)


	def testcallunsignedlonglongAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharArg_of_(42, -128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharArg_of_(42, 127, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharArg_of_(1L << 62, -128, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharArg_of_(1L << 62, 127, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 127)


	def testinvokeunsignedlonglongAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharArg_of_(0, -128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharArg_of_(0, 127, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharArg_of_(42, -128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharArg_of_(42, 127, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharArg_of_(1L << 62, -128, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharArg_of_(1L << 62, 127, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 127)


	def testcallunsignedlonglongAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedshortArg_of_(42, -(1<<14), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedshortArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedshortArg_of_(42, 1 << 14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedshortArg_of_(1L << 62, -(1<<14), o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedshortArg_of_(1L << 62, -42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedshortArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedshortArg_of_(1L << 62, 42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedshortArg_of_(1L << 62, 1 << 14, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1 << 14)


	def testinvokeunsignedlonglongAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedshortArg_of_(0, -(1<<14), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedshortArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedshortArg_of_(0, 1 << 14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedshortArg_of_(42, -(1<<14), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedshortArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedshortArg_of_(42, 1 << 14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedshortArg_of_(1L << 62, -(1<<14), o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedshortArg_of_(1L << 62, -42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedshortArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedshortArg_of_(1L << 62, 42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedshortArg_of_(1L << 62, 1 << 14, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1 << 14)


	def testcallunsignedlonglongAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedintArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedintArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedintArg_of_(1L << 62, -(1<<30), o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedintArg_of_(1L << 62, -42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedintArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedintArg_of_(1L << 62, 42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedintArg_of_(1L << 62, 1 << 30, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeunsignedlonglongAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedintArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedintArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedintArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedintArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedintArg_of_(1L << 62, -(1<<30), o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedintArg_of_(1L << 62, -42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedintArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedintArg_of_(1L << 62, 42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedintArg_of_(1L << 62, 1 << 30, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1 << 30)


	def testcallunsignedlonglongAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlongArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlongArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlongArg_of_(1L << 62, -(1<<30), o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlongArg_of_(1L << 62, -42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlongArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlongArg_of_(1L << 62, 42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlongArg_of_(1L << 62, 1 << 30, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeunsignedlonglongAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlongArg_of_(0, -(1<<30), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlongArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlongArg_of_(42, -(1<<30), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlongArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlongArg_of_(1L << 62, -(1<<30), o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlongArg_of_(1L << 62, -42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlongArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlongArg_of_(1L << 62, 42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlongArg_of_(1L << 62, 1 << 30, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1 << 30)


	def testcallunsignedlonglongAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlonglongArg_of_(42, -(1L << 60), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlonglongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlonglongArg_of_(42, 1L << 60, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlonglongArg_of_(1L << 62, -(1L << 60), o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlonglongArg_of_(1L << 62, -42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlonglongArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlonglongArg_of_(1L << 62, 42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andsignedlonglongArg_of_(1L << 62, 1L << 60, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1L << 60)


	def testinvokeunsignedlonglongAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlonglongArg_of_(0, -(1L << 60), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlonglongArg_of_(0, -42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlonglongArg_of_(0, 1L << 60, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlonglongArg_of_(42, -(1L << 60), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlonglongArg_of_(42, -42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlonglongArg_of_(42, 1L << 60, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlonglongArg_of_(1L << 62, -(1L << 60), o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlonglongArg_of_(1L << 62, -42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlonglongArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlonglongArg_of_(1L << 62, 42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andsignedlonglongArg_of_(1L << 62, 1L << 60, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1L << 60)


	def testcallunsignedlonglongAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedcharArg_of_(42, 128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedcharArg_of_(42, 255, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedcharArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedcharArg_of_(1L << 62, 128, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedcharArg_of_(1L << 62, 255, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 255)


	def testinvokeunsignedlonglongAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedcharArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedcharArg_of_(0, 128, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedcharArg_of_(0, 255, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedcharArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedcharArg_of_(42, 128, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedcharArg_of_(42, 255, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedcharArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedcharArg_of_(1L << 62, 128, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedcharArg_of_(1L << 62, 255, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 255)


	def testcallunsignedlonglongAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedshortArg_of_(42, 1<<14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedshortArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedshortArg_of_(1L << 62, 42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedshortArg_of_(1L << 62, 1<<14, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1<<14)


	def testinvokeunsignedlonglongAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedshortArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedshortArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedshortArg_of_(0, 1<<14, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedshortArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedshortArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedshortArg_of_(42, 1<<14, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedshortArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedshortArg_of_(1L << 62, 42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedshortArg_of_(1L << 62, 1<<14, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1<<14)


	def testcallunsignedlonglongAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedintArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedintArg_of_(1L << 62, 42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedintArg_of_(1L << 62, 1 << 30, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeunsignedlonglongAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedintArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedintArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedintArg_of_(0, 1 << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedintArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedintArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedintArg_of_(42, 1 << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedintArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedintArg_of_(1L << 62, 42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedintArg_of_(1L << 62, 1 << 30, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1 << 30)


	def testcallunsignedlonglongAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlongArg_of_(42, 1L << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlongArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlongArg_of_(1L << 62, 42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlongArg_of_(1L << 62, 1L << 30, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1L << 30)


	def testinvokeunsignedlonglongAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlongArg_of_(0, 1L << 30, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlongArg_of_(42, 1L << 30, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlongArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlongArg_of_(1L << 62, 42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlongArg_of_(1L << 62, 1L << 30, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1L << 30)


	def testcallunsignedlonglongAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlonglongArg_of_(42, 1L << 62, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlonglongArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlonglongArg_of_(1L << 62, 42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andunsignedlonglongArg_of_(1L << 62, 1L << 62, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1L << 62)


	def testinvokeunsignedlonglongAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlonglongArg_of_(0, 0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlonglongArg_of_(0, 42, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlonglongArg_of_(0, 1L << 62, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlonglongArg_of_(42, 0, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlonglongArg_of_(42, 42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlonglongArg_of_(42, 1L << 62, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlonglongArg_of_(1L << 62, 0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlonglongArg_of_(1L << 62, 42, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andunsignedlonglongArg_of_(1L << 62, 1L << 62, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 1L << 62)


	def testcallunsignedlonglongAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andfloatArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andfloatArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andfloatArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andfloatArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andfloatArg_of_(1L << 62, 0.128, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andfloatArg_of_(1L << 62, 1.0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andfloatArg_of_(1L << 62, 42.0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andfloatArg_of_(1L << 62, 1e10, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeunsignedlonglongAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andfloatArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andfloatArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andfloatArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andfloatArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andfloatArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andfloatArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andfloatArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andfloatArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andfloatArg_of_(1L << 62, 0.128, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andfloatArg_of_(1L << 62, 1.0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andfloatArg_of_(1L << 62, 42.0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andfloatArg_of_(1L << 62, 1e10, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallunsignedlonglongAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedlonglongArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedlonglongArg_anddoubleArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedlonglongArg_anddoubleArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_anddoubleArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_anddoubleArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callunsignedlonglongArg_anddoubleArg_of_(1L << 62, 0.128, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callunsignedlonglongArg_anddoubleArg_of_(1L << 62, 1.0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_anddoubleArg_of_(1L << 62, 42.0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callunsignedlonglongArg_anddoubleArg_of_(1L << 62, 1e10, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeunsignedlonglongAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_anddoubleArg_of_(0, 0.128, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_anddoubleArg_of_(0, 1.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_anddoubleArg_of_(0, 42.0, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_anddoubleArg_of_(0, 1e10, o)
		self.assertEquals(r[0], 0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_anddoubleArg_of_(42, 0.128, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_anddoubleArg_of_(42, 1.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_anddoubleArg_of_(42, 42.0, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_anddoubleArg_of_(42, 1e10, o)
		self.assertEquals(r[0], 42)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_anddoubleArg_of_(1L << 62, 0.128, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_anddoubleArg_of_(1L << 62, 1.0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_anddoubleArg_of_(1L << 62, 42.0, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_anddoubleArg_of_(1L << 62, 1e10, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallunsignedlonglongAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andidArg_of_(42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andidArg_of_(1L << 62, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokeunsignedlonglongAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andidArg_of_(0, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andidArg_of_(42, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andidArg_of_(1L << 62, NSPriorDayDesignations, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcallunsignedlonglongAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharPtrArg_of_(42, "hello", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharPtrArg_of_(42, "world", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharPtrArg_of_(42, "foobar", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharPtrArg_of_(1L << 62, "hello", o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharPtrArg_of_(1L << 62, "world", o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callunsignedlonglongArg_andcharPtrArg_of_(1L << 62, "foobar", o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], "foobar")


	def testinvokeunsignedlonglongAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharPtrArg_of_(0, "hello", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharPtrArg_of_(0, "world", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharPtrArg_of_(0, "foobar", o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharPtrArg_of_(42, "hello", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharPtrArg_of_(42, "world", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharPtrArg_of_(42, "foobar", o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharPtrArg_of_(1L << 62, "hello", o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharPtrArg_of_(1L << 62, "world", o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andcharPtrArg_of_(1L << 62, "foobar", o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], "foobar")


	def testcallunsignedlonglongAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andNSPointArg_of_(42, (1, 2), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andNSPointArg_of_(42, (3, 4), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andNSPointArg_of_(1L << 62, (1, 2), o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andNSPointArg_of_(1L << 62, (3, 4), o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], (3, 4))


	def testinvokeunsignedlonglongAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andNSPointArg_of_(0, (1, 2), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andNSPointArg_of_(0, (3, 4), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andNSPointArg_of_(42, (1, 2), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andNSPointArg_of_(42, (3, 4), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andNSPointArg_of_(1L << 62, (1, 2), o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andNSPointArg_of_(1L << 62, (3, 4), o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], (3, 4))


	def testcallunsignedlonglongAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andNSRectArg_of_(42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andNSRectArg_of_(42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andNSRectArg_of_(1L << 62, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callunsignedlonglongArg_andNSRectArg_of_(1L << 62, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokeunsignedlonglongAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andNSRectArg_of_(0, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andNSRectArg_of_(0, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andNSRectArg_of_(42, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andNSRectArg_of_(42, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andNSRectArg_of_(1L << 62, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeunsignedlonglongArg_andNSRectArg_of_(1L << 62, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcallfloatAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_andBOOLArg_of_(0.128, YES, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callfloatArg_andBOOLArg_of_(0.128, NO, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callfloatArg_andBOOLArg_of_(1.0, YES, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callfloatArg_andBOOLArg_of_(1.0, NO, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callfloatArg_andBOOLArg_of_(42.0, YES, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callfloatArg_andBOOLArg_of_(42.0, NO, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callfloatArg_andBOOLArg_of_(1e10, YES, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callfloatArg_andBOOLArg_of_(1e10, NO, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], NO)


	def testinvokefloatAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_andBOOLArg_of_(0.128, YES, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokefloatArg_andBOOLArg_of_(0.128, NO, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokefloatArg_andBOOLArg_of_(1.0, YES, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokefloatArg_andBOOLArg_of_(1.0, NO, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokefloatArg_andBOOLArg_of_(42.0, YES, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokefloatArg_andBOOLArg_of_(42.0, NO, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokefloatArg_andBOOLArg_of_(1e10, YES, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokefloatArg_andBOOLArg_of_(1e10, NO, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], NO)


	def testcallfloatAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_andcharArg_of_(0.128, -128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callfloatArg_andcharArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andcharArg_of_(0.128, 127, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callfloatArg_andcharArg_of_(1.0, -128, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callfloatArg_andcharArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andcharArg_of_(1.0, 127, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callfloatArg_andcharArg_of_(42.0, -128, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callfloatArg_andcharArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andcharArg_of_(42.0, 127, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callfloatArg_andcharArg_of_(1e10, -128, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callfloatArg_andcharArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andcharArg_of_(1e10, 127, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 127)


	def testinvokefloatAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_andcharArg_of_(0.128, -128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokefloatArg_andcharArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andcharArg_of_(0.128, 127, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokefloatArg_andcharArg_of_(1.0, -128, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokefloatArg_andcharArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andcharArg_of_(1.0, 127, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokefloatArg_andcharArg_of_(42.0, -128, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokefloatArg_andcharArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andcharArg_of_(42.0, 127, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokefloatArg_andcharArg_of_(1e10, -128, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokefloatArg_andcharArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andcharArg_of_(1e10, 127, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 127)


	def testcallfloatAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(0.128, -(1<<14), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(0.128, -42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(0.128, 1 << 14, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(1.0, -(1<<14), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(1.0, -42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(1.0, 1 << 14, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(42.0, -(1<<14), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(42.0, -42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(42.0, 1 << 14, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(1e10, -(1<<14), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(1e10, -42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andsignedshortArg_of_(1e10, 1 << 14, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 14)


	def testinvokefloatAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(0.128, -(1<<14), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(0.128, -42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(0.128, 1 << 14, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(1.0, -(1<<14), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(1.0, -42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(1.0, 1 << 14, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(42.0, -(1<<14), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(42.0, -42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(42.0, 1 << 14, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(1e10, -(1<<14), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(1e10, -42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedshortArg_of_(1e10, 1 << 14, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 14)


	def testcallfloatAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(0.128, -(1<<30), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(0.128, -42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(0.128, 1 << 30, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(1.0, -(1<<30), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(1.0, -42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(1.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(42.0, -(1<<30), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(42.0, -42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(42.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(1e10, -(1<<30), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(1e10, -42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andsignedintArg_of_(1e10, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testinvokefloatAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(0.128, -(1<<30), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(0.128, -42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(0.128, 1 << 30, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(1.0, -(1<<30), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(1.0, -42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(1.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(42.0, -(1<<30), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(42.0, -42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(42.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(1e10, -(1<<30), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(1e10, -42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedintArg_of_(1e10, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testcallfloatAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(0.128, -(1<<30), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(0.128, -42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(0.128, 1 << 30, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(1.0, -(1<<30), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(1.0, -42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(1.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(42.0, -(1<<30), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(42.0, -42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(42.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(1e10, -(1<<30), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(1e10, -42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andsignedlongArg_of_(1e10, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testinvokefloatAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(0.128, -(1<<30), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(0.128, -42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(0.128, 1 << 30, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(1.0, -(1<<30), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(1.0, -42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(1.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(42.0, -(1<<30), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(42.0, -42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(42.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(1e10, -(1<<30), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(1e10, -42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlongArg_of_(1e10, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testcallfloatAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(0.128, -(1L << 60), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(0.128, -42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(0.128, 1L << 60, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(1.0, -(1L << 60), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(1.0, -42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(1.0, 1L << 60, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(42.0, -(1L << 60), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(42.0, -42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(42.0, 1L << 60, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(1e10, -(1L << 60), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(1e10, -42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andsignedlonglongArg_of_(1e10, 1L << 60, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 60)


	def testinvokefloatAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(0.128, -(1L << 60), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(0.128, -42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(0.128, 1L << 60, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(1.0, -(1L << 60), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(1.0, -42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(1.0, 1L << 60, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(42.0, -(1L << 60), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(42.0, -42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(42.0, 1L << 60, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(1e10, -(1L << 60), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(1e10, -42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andsignedlonglongArg_of_(1e10, 1L << 60, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 60)


	def testcallfloatAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_andunsignedcharArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedcharArg_of_(0.128, 128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callfloatArg_andunsignedcharArg_of_(0.128, 255, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callfloatArg_andunsignedcharArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedcharArg_of_(1.0, 128, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callfloatArg_andunsignedcharArg_of_(1.0, 255, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callfloatArg_andunsignedcharArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedcharArg_of_(42.0, 128, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callfloatArg_andunsignedcharArg_of_(42.0, 255, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callfloatArg_andunsignedcharArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedcharArg_of_(1e10, 128, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callfloatArg_andunsignedcharArg_of_(1e10, 255, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 255)


	def testinvokefloatAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedcharArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedcharArg_of_(0.128, 128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedcharArg_of_(0.128, 255, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedcharArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedcharArg_of_(1.0, 128, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedcharArg_of_(1.0, 255, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedcharArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedcharArg_of_(42.0, 128, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedcharArg_of_(42.0, 255, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedcharArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedcharArg_of_(1e10, 128, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedcharArg_of_(1e10, 255, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 255)


	def testcallfloatAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_andunsignedshortArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedshortArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andunsignedshortArg_of_(0.128, 1<<14, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callfloatArg_andunsignedshortArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedshortArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andunsignedshortArg_of_(1.0, 1<<14, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callfloatArg_andunsignedshortArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedshortArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andunsignedshortArg_of_(42.0, 1<<14, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callfloatArg_andunsignedshortArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedshortArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andunsignedshortArg_of_(1e10, 1<<14, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1<<14)


	def testinvokefloatAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedshortArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedshortArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedshortArg_of_(0.128, 1<<14, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedshortArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedshortArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedshortArg_of_(1.0, 1<<14, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedshortArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedshortArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedshortArg_of_(42.0, 1<<14, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedshortArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedshortArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedshortArg_of_(1e10, 1<<14, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1<<14)


	def testcallfloatAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_andunsignedintArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedintArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andunsignedintArg_of_(0.128, 1 << 30, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callfloatArg_andunsignedintArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedintArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andunsignedintArg_of_(1.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callfloatArg_andunsignedintArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedintArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andunsignedintArg_of_(42.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callfloatArg_andunsignedintArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedintArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andunsignedintArg_of_(1e10, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testinvokefloatAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedintArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedintArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedintArg_of_(0.128, 1 << 30, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedintArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedintArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedintArg_of_(1.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedintArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedintArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedintArg_of_(42.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedintArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedintArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedintArg_of_(1e10, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testcallfloatAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlongArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlongArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlongArg_of_(0.128, 1L << 30, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlongArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlongArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlongArg_of_(1.0, 1L << 30, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlongArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlongArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlongArg_of_(42.0, 1L << 30, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlongArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlongArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlongArg_of_(1e10, 1L << 30, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 30)


	def testinvokefloatAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlongArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlongArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlongArg_of_(0.128, 1L << 30, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlongArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlongArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlongArg_of_(1.0, 1L << 30, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlongArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlongArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlongArg_of_(42.0, 1L << 30, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlongArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlongArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlongArg_of_(1e10, 1L << 30, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 30)


	def testcallfloatAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlonglongArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlonglongArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlonglongArg_of_(0.128, 1L << 62, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlonglongArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlonglongArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlonglongArg_of_(1.0, 1L << 62, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlonglongArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlonglongArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlonglongArg_of_(42.0, 1L << 62, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlonglongArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlonglongArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callfloatArg_andunsignedlonglongArg_of_(1e10, 1L << 62, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 62)


	def testinvokefloatAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlonglongArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlonglongArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlonglongArg_of_(0.128, 1L << 62, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlonglongArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlonglongArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlonglongArg_of_(1.0, 1L << 62, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlonglongArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlonglongArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlonglongArg_of_(42.0, 1L << 62, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlonglongArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlonglongArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokefloatArg_andunsignedlonglongArg_of_(1e10, 1L << 62, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 62)


	def testcallfloatAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_andfloatArg_of_(0.128, 0.128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callfloatArg_andfloatArg_of_(0.128, 1.0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callfloatArg_andfloatArg_of_(0.128, 42.0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callfloatArg_andfloatArg_of_(0.128, 1e10, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callfloatArg_andfloatArg_of_(1.0, 0.128, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callfloatArg_andfloatArg_of_(1.0, 1.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callfloatArg_andfloatArg_of_(1.0, 42.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callfloatArg_andfloatArg_of_(1.0, 1e10, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callfloatArg_andfloatArg_of_(42.0, 0.128, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callfloatArg_andfloatArg_of_(42.0, 1.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callfloatArg_andfloatArg_of_(42.0, 42.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callfloatArg_andfloatArg_of_(42.0, 1e10, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callfloatArg_andfloatArg_of_(1e10, 0.128, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callfloatArg_andfloatArg_of_(1e10, 1.0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callfloatArg_andfloatArg_of_(1e10, 42.0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callfloatArg_andfloatArg_of_(1e10, 1e10, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokefloatAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_andfloatArg_of_(0.128, 0.128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokefloatArg_andfloatArg_of_(0.128, 1.0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokefloatArg_andfloatArg_of_(0.128, 42.0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokefloatArg_andfloatArg_of_(0.128, 1e10, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokefloatArg_andfloatArg_of_(1.0, 0.128, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokefloatArg_andfloatArg_of_(1.0, 1.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokefloatArg_andfloatArg_of_(1.0, 42.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokefloatArg_andfloatArg_of_(1.0, 1e10, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokefloatArg_andfloatArg_of_(42.0, 0.128, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokefloatArg_andfloatArg_of_(42.0, 1.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokefloatArg_andfloatArg_of_(42.0, 42.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokefloatArg_andfloatArg_of_(42.0, 1e10, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokefloatArg_andfloatArg_of_(1e10, 0.128, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokefloatArg_andfloatArg_of_(1e10, 1.0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokefloatArg_andfloatArg_of_(1e10, 42.0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokefloatArg_andfloatArg_of_(1e10, 1e10, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallfloatAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_anddoubleArg_of_(0.128, 0.128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callfloatArg_anddoubleArg_of_(0.128, 1.0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callfloatArg_anddoubleArg_of_(0.128, 42.0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callfloatArg_anddoubleArg_of_(0.128, 1e10, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callfloatArg_anddoubleArg_of_(1.0, 0.128, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callfloatArg_anddoubleArg_of_(1.0, 1.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callfloatArg_anddoubleArg_of_(1.0, 42.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callfloatArg_anddoubleArg_of_(1.0, 1e10, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callfloatArg_anddoubleArg_of_(42.0, 0.128, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callfloatArg_anddoubleArg_of_(42.0, 1.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callfloatArg_anddoubleArg_of_(42.0, 42.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callfloatArg_anddoubleArg_of_(42.0, 1e10, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callfloatArg_anddoubleArg_of_(1e10, 0.128, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callfloatArg_anddoubleArg_of_(1e10, 1.0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callfloatArg_anddoubleArg_of_(1e10, 42.0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callfloatArg_anddoubleArg_of_(1e10, 1e10, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokefloatAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_anddoubleArg_of_(0.128, 0.128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokefloatArg_anddoubleArg_of_(0.128, 1.0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokefloatArg_anddoubleArg_of_(0.128, 42.0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokefloatArg_anddoubleArg_of_(0.128, 1e10, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokefloatArg_anddoubleArg_of_(1.0, 0.128, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokefloatArg_anddoubleArg_of_(1.0, 1.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokefloatArg_anddoubleArg_of_(1.0, 42.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokefloatArg_anddoubleArg_of_(1.0, 1e10, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokefloatArg_anddoubleArg_of_(42.0, 0.128, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokefloatArg_anddoubleArg_of_(42.0, 1.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokefloatArg_anddoubleArg_of_(42.0, 42.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokefloatArg_anddoubleArg_of_(42.0, 1e10, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokefloatArg_anddoubleArg_of_(1e10, 0.128, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokefloatArg_anddoubleArg_of_(1e10, 1.0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokefloatArg_anddoubleArg_of_(1e10, 42.0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokefloatArg_anddoubleArg_of_(1e10, 1e10, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallfloatAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_andidArg_of_(0.128, NSPriorDayDesignations, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callfloatArg_andidArg_of_(1.0, NSPriorDayDesignations, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callfloatArg_andidArg_of_(42.0, NSPriorDayDesignations, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callfloatArg_andidArg_of_(1e10, NSPriorDayDesignations, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokefloatAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_andidArg_of_(0.128, NSPriorDayDesignations, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokefloatArg_andidArg_of_(1.0, NSPriorDayDesignations, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokefloatArg_andidArg_of_(42.0, NSPriorDayDesignations, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokefloatArg_andidArg_of_(1e10, NSPriorDayDesignations, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcallfloatAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_andcharPtrArg_of_(0.128, "hello", o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callfloatArg_andcharPtrArg_of_(0.128, "world", o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callfloatArg_andcharPtrArg_of_(0.128, "foobar", o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callfloatArg_andcharPtrArg_of_(1.0, "hello", o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callfloatArg_andcharPtrArg_of_(1.0, "world", o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callfloatArg_andcharPtrArg_of_(1.0, "foobar", o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callfloatArg_andcharPtrArg_of_(42.0, "hello", o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callfloatArg_andcharPtrArg_of_(42.0, "world", o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callfloatArg_andcharPtrArg_of_(42.0, "foobar", o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callfloatArg_andcharPtrArg_of_(1e10, "hello", o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callfloatArg_andcharPtrArg_of_(1e10, "world", o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callfloatArg_andcharPtrArg_of_(1e10, "foobar", o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "foobar")


	def testinvokefloatAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_andcharPtrArg_of_(0.128, "hello", o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokefloatArg_andcharPtrArg_of_(0.128, "world", o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokefloatArg_andcharPtrArg_of_(0.128, "foobar", o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokefloatArg_andcharPtrArg_of_(1.0, "hello", o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokefloatArg_andcharPtrArg_of_(1.0, "world", o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokefloatArg_andcharPtrArg_of_(1.0, "foobar", o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokefloatArg_andcharPtrArg_of_(42.0, "hello", o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokefloatArg_andcharPtrArg_of_(42.0, "world", o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokefloatArg_andcharPtrArg_of_(42.0, "foobar", o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokefloatArg_andcharPtrArg_of_(1e10, "hello", o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokefloatArg_andcharPtrArg_of_(1e10, "world", o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokefloatArg_andcharPtrArg_of_(1e10, "foobar", o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "foobar")


	def testcallfloatAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_andNSPointArg_of_(0.128, (1, 2), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callfloatArg_andNSPointArg_of_(0.128, (3, 4), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callfloatArg_andNSPointArg_of_(1.0, (1, 2), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callfloatArg_andNSPointArg_of_(1.0, (3, 4), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callfloatArg_andNSPointArg_of_(42.0, (1, 2), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callfloatArg_andNSPointArg_of_(42.0, (3, 4), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callfloatArg_andNSPointArg_of_(1e10, (1, 2), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callfloatArg_andNSPointArg_of_(1e10, (3, 4), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], (3, 4))


	def testinvokefloatAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_andNSPointArg_of_(0.128, (1, 2), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokefloatArg_andNSPointArg_of_(0.128, (3, 4), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokefloatArg_andNSPointArg_of_(1.0, (1, 2), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokefloatArg_andNSPointArg_of_(1.0, (3, 4), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokefloatArg_andNSPointArg_of_(42.0, (1, 2), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokefloatArg_andNSPointArg_of_(42.0, (3, 4), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokefloatArg_andNSPointArg_of_(1e10, (1, 2), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokefloatArg_andNSPointArg_of_(1e10, (3, 4), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], (3, 4))


	def testcallfloatAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatArg_andNSRectArg_of_(0.128, ((1, 2), (3, 4)), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callfloatArg_andNSRectArg_of_(0.128, ((7, 8), (9, 10)), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callfloatArg_andNSRectArg_of_(1.0, ((1, 2), (3, 4)), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callfloatArg_andNSRectArg_of_(1.0, ((7, 8), (9, 10)), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callfloatArg_andNSRectArg_of_(42.0, ((1, 2), (3, 4)), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callfloatArg_andNSRectArg_of_(42.0, ((7, 8), (9, 10)), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callfloatArg_andNSRectArg_of_(1e10, ((1, 2), (3, 4)), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callfloatArg_andNSRectArg_of_(1e10, ((7, 8), (9, 10)), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokefloatAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatArg_andNSRectArg_of_(0.128, ((1, 2), (3, 4)), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokefloatArg_andNSRectArg_of_(0.128, ((7, 8), (9, 10)), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokefloatArg_andNSRectArg_of_(1.0, ((1, 2), (3, 4)), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokefloatArg_andNSRectArg_of_(1.0, ((7, 8), (9, 10)), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokefloatArg_andNSRectArg_of_(42.0, ((1, 2), (3, 4)), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokefloatArg_andNSRectArg_of_(42.0, ((7, 8), (9, 10)), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokefloatArg_andNSRectArg_of_(1e10, ((1, 2), (3, 4)), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokefloatArg_andNSRectArg_of_(1e10, ((7, 8), (9, 10)), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcalldoubleAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_andBOOLArg_of_(0.128, YES, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.calldoubleArg_andBOOLArg_of_(0.128, NO, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.calldoubleArg_andBOOLArg_of_(1.0, YES, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.calldoubleArg_andBOOLArg_of_(1.0, NO, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.calldoubleArg_andBOOLArg_of_(42.0, YES, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.calldoubleArg_andBOOLArg_of_(42.0, NO, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.calldoubleArg_andBOOLArg_of_(1e10, YES, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.calldoubleArg_andBOOLArg_of_(1e10, NO, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], NO)


	def testinvokedoubleAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_andBOOLArg_of_(0.128, YES, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokedoubleArg_andBOOLArg_of_(0.128, NO, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokedoubleArg_andBOOLArg_of_(1.0, YES, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokedoubleArg_andBOOLArg_of_(1.0, NO, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokedoubleArg_andBOOLArg_of_(42.0, YES, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokedoubleArg_andBOOLArg_of_(42.0, NO, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokedoubleArg_andBOOLArg_of_(1e10, YES, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokedoubleArg_andBOOLArg_of_(1e10, NO, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], NO)


	def testcalldoubleAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_andcharArg_of_(0.128, -128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.calldoubleArg_andcharArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andcharArg_of_(0.128, 127, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.calldoubleArg_andcharArg_of_(1.0, -128, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.calldoubleArg_andcharArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andcharArg_of_(1.0, 127, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.calldoubleArg_andcharArg_of_(42.0, -128, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.calldoubleArg_andcharArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andcharArg_of_(42.0, 127, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.calldoubleArg_andcharArg_of_(1e10, -128, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.calldoubleArg_andcharArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andcharArg_of_(1e10, 127, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 127)


	def testinvokedoubleAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_andcharArg_of_(0.128, -128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokedoubleArg_andcharArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andcharArg_of_(0.128, 127, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokedoubleArg_andcharArg_of_(1.0, -128, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokedoubleArg_andcharArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andcharArg_of_(1.0, 127, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokedoubleArg_andcharArg_of_(42.0, -128, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokedoubleArg_andcharArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andcharArg_of_(42.0, 127, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokedoubleArg_andcharArg_of_(1e10, -128, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokedoubleArg_andcharArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andcharArg_of_(1e10, 127, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 127)


	def testcalldoubleAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(0.128, -(1<<14), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(0.128, -42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(0.128, 1 << 14, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(1.0, -(1<<14), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(1.0, -42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(1.0, 1 << 14, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(42.0, -(1<<14), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(42.0, -42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(42.0, 1 << 14, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(1e10, -(1<<14), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(1e10, -42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedshortArg_of_(1e10, 1 << 14, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 14)


	def testinvokedoubleAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(0.128, -(1<<14), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(0.128, -42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(0.128, 1 << 14, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(1.0, -(1<<14), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(1.0, -42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(1.0, 1 << 14, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(42.0, -(1<<14), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(42.0, -42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(42.0, 1 << 14, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(1e10, -(1<<14), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(1e10, -42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedshortArg_of_(1e10, 1 << 14, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 14)


	def testcalldoubleAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(0.128, -(1<<30), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(0.128, -42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(0.128, 1 << 30, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(1.0, -(1<<30), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(1.0, -42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(1.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(42.0, -(1<<30), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(42.0, -42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(42.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(1e10, -(1<<30), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(1e10, -42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedintArg_of_(1e10, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testinvokedoubleAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(0.128, -(1<<30), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(0.128, -42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(0.128, 1 << 30, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(1.0, -(1<<30), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(1.0, -42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(1.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(42.0, -(1<<30), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(42.0, -42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(42.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(1e10, -(1<<30), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(1e10, -42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedintArg_of_(1e10, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testcalldoubleAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(0.128, -(1<<30), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(0.128, -42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(0.128, 1 << 30, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(1.0, -(1<<30), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(1.0, -42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(1.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(42.0, -(1<<30), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(42.0, -42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(42.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(1e10, -(1<<30), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(1e10, -42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlongArg_of_(1e10, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testinvokedoubleAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(0.128, -(1<<30), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(0.128, -42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(0.128, 1 << 30, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(1.0, -(1<<30), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(1.0, -42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(1.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(42.0, -(1<<30), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(42.0, -42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(42.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(1e10, -(1<<30), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(1e10, -42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlongArg_of_(1e10, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testcalldoubleAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(0.128, -(1L << 60), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(0.128, -42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(0.128, 1L << 60, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(1.0, -(1L << 60), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(1.0, -42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(1.0, 1L << 60, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(42.0, -(1L << 60), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(42.0, -42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(42.0, 1L << 60, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(1e10, -(1L << 60), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(1e10, -42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andsignedlonglongArg_of_(1e10, 1L << 60, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 60)


	def testinvokedoubleAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(0.128, -(1L << 60), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(0.128, -42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(0.128, 1L << 60, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(1.0, -(1L << 60), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(1.0, -42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(1.0, 1L << 60, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(42.0, -(1L << 60), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(42.0, -42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(42.0, 1L << 60, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(1e10, -(1L << 60), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(1e10, -42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andsignedlonglongArg_of_(1e10, 1L << 60, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 60)


	def testcalldoubleAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedcharArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedcharArg_of_(0.128, 128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedcharArg_of_(0.128, 255, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedcharArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedcharArg_of_(1.0, 128, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedcharArg_of_(1.0, 255, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedcharArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedcharArg_of_(42.0, 128, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedcharArg_of_(42.0, 255, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedcharArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedcharArg_of_(1e10, 128, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedcharArg_of_(1e10, 255, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 255)


	def testinvokedoubleAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedcharArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedcharArg_of_(0.128, 128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedcharArg_of_(0.128, 255, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedcharArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedcharArg_of_(1.0, 128, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedcharArg_of_(1.0, 255, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedcharArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedcharArg_of_(42.0, 128, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedcharArg_of_(42.0, 255, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedcharArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedcharArg_of_(1e10, 128, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedcharArg_of_(1e10, 255, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 255)


	def testcalldoubleAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedshortArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedshortArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedshortArg_of_(0.128, 1<<14, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedshortArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedshortArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedshortArg_of_(1.0, 1<<14, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedshortArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedshortArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedshortArg_of_(42.0, 1<<14, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedshortArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedshortArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedshortArg_of_(1e10, 1<<14, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1<<14)


	def testinvokedoubleAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedshortArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedshortArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedshortArg_of_(0.128, 1<<14, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedshortArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedshortArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedshortArg_of_(1.0, 1<<14, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedshortArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedshortArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedshortArg_of_(42.0, 1<<14, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedshortArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedshortArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedshortArg_of_(1e10, 1<<14, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1<<14)


	def testcalldoubleAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedintArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedintArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedintArg_of_(0.128, 1 << 30, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedintArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedintArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedintArg_of_(1.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedintArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedintArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedintArg_of_(42.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedintArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedintArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedintArg_of_(1e10, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testinvokedoubleAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedintArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedintArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedintArg_of_(0.128, 1 << 30, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedintArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedintArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedintArg_of_(1.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedintArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedintArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedintArg_of_(42.0, 1 << 30, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedintArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedintArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedintArg_of_(1e10, 1 << 30, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1 << 30)


	def testcalldoubleAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlongArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlongArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlongArg_of_(0.128, 1L << 30, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlongArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlongArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlongArg_of_(1.0, 1L << 30, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlongArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlongArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlongArg_of_(42.0, 1L << 30, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlongArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlongArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlongArg_of_(1e10, 1L << 30, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 30)


	def testinvokedoubleAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlongArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlongArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlongArg_of_(0.128, 1L << 30, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlongArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlongArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlongArg_of_(1.0, 1L << 30, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlongArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlongArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlongArg_of_(42.0, 1L << 30, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlongArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlongArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlongArg_of_(1e10, 1L << 30, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 30)


	def testcalldoubleAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlonglongArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlonglongArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlonglongArg_of_(0.128, 1L << 62, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlonglongArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlonglongArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlonglongArg_of_(1.0, 1L << 62, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlonglongArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlonglongArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlonglongArg_of_(42.0, 1L << 62, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlonglongArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlonglongArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.calldoubleArg_andunsignedlonglongArg_of_(1e10, 1L << 62, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 62)


	def testinvokedoubleAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlonglongArg_of_(0.128, 0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlonglongArg_of_(0.128, 42, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlonglongArg_of_(0.128, 1L << 62, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlonglongArg_of_(1.0, 0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlonglongArg_of_(1.0, 42, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlonglongArg_of_(1.0, 1L << 62, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlonglongArg_of_(42.0, 0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlonglongArg_of_(42.0, 42, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlonglongArg_of_(42.0, 1L << 62, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlonglongArg_of_(1e10, 0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlonglongArg_of_(1e10, 42, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokedoubleArg_andunsignedlonglongArg_of_(1e10, 1L << 62, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], 1L << 62)


	def testcalldoubleAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_andfloatArg_of_(0.128, 0.128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.calldoubleArg_andfloatArg_of_(0.128, 1.0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.calldoubleArg_andfloatArg_of_(0.128, 42.0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.calldoubleArg_andfloatArg_of_(0.128, 1e10, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.calldoubleArg_andfloatArg_of_(1.0, 0.128, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.calldoubleArg_andfloatArg_of_(1.0, 1.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.calldoubleArg_andfloatArg_of_(1.0, 42.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.calldoubleArg_andfloatArg_of_(1.0, 1e10, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.calldoubleArg_andfloatArg_of_(42.0, 0.128, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.calldoubleArg_andfloatArg_of_(42.0, 1.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.calldoubleArg_andfloatArg_of_(42.0, 42.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.calldoubleArg_andfloatArg_of_(42.0, 1e10, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.calldoubleArg_andfloatArg_of_(1e10, 0.128, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.calldoubleArg_andfloatArg_of_(1e10, 1.0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.calldoubleArg_andfloatArg_of_(1e10, 42.0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.calldoubleArg_andfloatArg_of_(1e10, 1e10, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokedoubleAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_andfloatArg_of_(0.128, 0.128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokedoubleArg_andfloatArg_of_(0.128, 1.0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokedoubleArg_andfloatArg_of_(0.128, 42.0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokedoubleArg_andfloatArg_of_(0.128, 1e10, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokedoubleArg_andfloatArg_of_(1.0, 0.128, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokedoubleArg_andfloatArg_of_(1.0, 1.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokedoubleArg_andfloatArg_of_(1.0, 42.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokedoubleArg_andfloatArg_of_(1.0, 1e10, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokedoubleArg_andfloatArg_of_(42.0, 0.128, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokedoubleArg_andfloatArg_of_(42.0, 1.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokedoubleArg_andfloatArg_of_(42.0, 42.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokedoubleArg_andfloatArg_of_(42.0, 1e10, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokedoubleArg_andfloatArg_of_(1e10, 0.128, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokedoubleArg_andfloatArg_of_(1e10, 1.0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokedoubleArg_andfloatArg_of_(1e10, 42.0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokedoubleArg_andfloatArg_of_(1e10, 1e10, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1e10)


	def testcalldoubleAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_anddoubleArg_of_(0.128, 0.128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.calldoubleArg_anddoubleArg_of_(0.128, 1.0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.calldoubleArg_anddoubleArg_of_(0.128, 42.0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.calldoubleArg_anddoubleArg_of_(0.128, 1e10, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.calldoubleArg_anddoubleArg_of_(1.0, 0.128, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.calldoubleArg_anddoubleArg_of_(1.0, 1.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.calldoubleArg_anddoubleArg_of_(1.0, 42.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.calldoubleArg_anddoubleArg_of_(1.0, 1e10, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.calldoubleArg_anddoubleArg_of_(42.0, 0.128, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.calldoubleArg_anddoubleArg_of_(42.0, 1.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.calldoubleArg_anddoubleArg_of_(42.0, 42.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.calldoubleArg_anddoubleArg_of_(42.0, 1e10, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.calldoubleArg_anddoubleArg_of_(1e10, 0.128, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.calldoubleArg_anddoubleArg_of_(1e10, 1.0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.calldoubleArg_anddoubleArg_of_(1e10, 42.0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.calldoubleArg_anddoubleArg_of_(1e10, 1e10, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokedoubleAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_anddoubleArg_of_(0.128, 0.128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokedoubleArg_anddoubleArg_of_(0.128, 1.0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokedoubleArg_anddoubleArg_of_(0.128, 42.0, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokedoubleArg_anddoubleArg_of_(0.128, 1e10, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokedoubleArg_anddoubleArg_of_(1.0, 0.128, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokedoubleArg_anddoubleArg_of_(1.0, 1.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokedoubleArg_anddoubleArg_of_(1.0, 42.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokedoubleArg_anddoubleArg_of_(1.0, 1e10, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokedoubleArg_anddoubleArg_of_(42.0, 0.128, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokedoubleArg_anddoubleArg_of_(42.0, 1.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokedoubleArg_anddoubleArg_of_(42.0, 42.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokedoubleArg_anddoubleArg_of_(42.0, 1e10, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokedoubleArg_anddoubleArg_of_(1e10, 0.128, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokedoubleArg_anddoubleArg_of_(1e10, 1.0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokedoubleArg_anddoubleArg_of_(1e10, 42.0, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokedoubleArg_anddoubleArg_of_(1e10, 1e10, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 1e10)


	def testcalldoubleAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_andidArg_of_(0.128, NSPriorDayDesignations, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.calldoubleArg_andidArg_of_(1.0, NSPriorDayDesignations, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.calldoubleArg_andidArg_of_(42.0, NSPriorDayDesignations, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.calldoubleArg_andidArg_of_(1e10, NSPriorDayDesignations, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokedoubleAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_andidArg_of_(0.128, NSPriorDayDesignations, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokedoubleArg_andidArg_of_(1.0, NSPriorDayDesignations, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokedoubleArg_andidArg_of_(42.0, NSPriorDayDesignations, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokedoubleArg_andidArg_of_(1e10, NSPriorDayDesignations, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcalldoubleAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_andcharPtrArg_of_(0.128, "hello", o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.calldoubleArg_andcharPtrArg_of_(0.128, "world", o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.calldoubleArg_andcharPtrArg_of_(0.128, "foobar", o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.calldoubleArg_andcharPtrArg_of_(1.0, "hello", o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.calldoubleArg_andcharPtrArg_of_(1.0, "world", o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.calldoubleArg_andcharPtrArg_of_(1.0, "foobar", o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.calldoubleArg_andcharPtrArg_of_(42.0, "hello", o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.calldoubleArg_andcharPtrArg_of_(42.0, "world", o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.calldoubleArg_andcharPtrArg_of_(42.0, "foobar", o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.calldoubleArg_andcharPtrArg_of_(1e10, "hello", o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.calldoubleArg_andcharPtrArg_of_(1e10, "world", o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.calldoubleArg_andcharPtrArg_of_(1e10, "foobar", o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "foobar")


	def testinvokedoubleAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_andcharPtrArg_of_(0.128, "hello", o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokedoubleArg_andcharPtrArg_of_(0.128, "world", o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokedoubleArg_andcharPtrArg_of_(0.128, "foobar", o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokedoubleArg_andcharPtrArg_of_(1.0, "hello", o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokedoubleArg_andcharPtrArg_of_(1.0, "world", o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokedoubleArg_andcharPtrArg_of_(1.0, "foobar", o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokedoubleArg_andcharPtrArg_of_(42.0, "hello", o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokedoubleArg_andcharPtrArg_of_(42.0, "world", o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokedoubleArg_andcharPtrArg_of_(42.0, "foobar", o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokedoubleArg_andcharPtrArg_of_(1e10, "hello", o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokedoubleArg_andcharPtrArg_of_(1e10, "world", o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokedoubleArg_andcharPtrArg_of_(1e10, "foobar", o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], "foobar")


	def testcalldoubleAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_andNSPointArg_of_(0.128, (1, 2), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.calldoubleArg_andNSPointArg_of_(0.128, (3, 4), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.calldoubleArg_andNSPointArg_of_(1.0, (1, 2), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.calldoubleArg_andNSPointArg_of_(1.0, (3, 4), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.calldoubleArg_andNSPointArg_of_(42.0, (1, 2), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.calldoubleArg_andNSPointArg_of_(42.0, (3, 4), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.calldoubleArg_andNSPointArg_of_(1e10, (1, 2), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.calldoubleArg_andNSPointArg_of_(1e10, (3, 4), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], (3, 4))


	def testinvokedoubleAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_andNSPointArg_of_(0.128, (1, 2), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokedoubleArg_andNSPointArg_of_(0.128, (3, 4), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokedoubleArg_andNSPointArg_of_(1.0, (1, 2), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokedoubleArg_andNSPointArg_of_(1.0, (3, 4), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokedoubleArg_andNSPointArg_of_(42.0, (1, 2), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokedoubleArg_andNSPointArg_of_(42.0, (3, 4), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokedoubleArg_andNSPointArg_of_(1e10, (1, 2), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokedoubleArg_andNSPointArg_of_(1e10, (3, 4), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], (3, 4))


	def testcalldoubleAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleArg_andNSRectArg_of_(0.128, ((1, 2), (3, 4)), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.calldoubleArg_andNSRectArg_of_(0.128, ((7, 8), (9, 10)), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.calldoubleArg_andNSRectArg_of_(1.0, ((1, 2), (3, 4)), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.calldoubleArg_andNSRectArg_of_(1.0, ((7, 8), (9, 10)), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.calldoubleArg_andNSRectArg_of_(42.0, ((1, 2), (3, 4)), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.calldoubleArg_andNSRectArg_of_(42.0, ((7, 8), (9, 10)), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.calldoubleArg_andNSRectArg_of_(1e10, ((1, 2), (3, 4)), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.calldoubleArg_andNSRectArg_of_(1e10, ((7, 8), (9, 10)), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokedoubleAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleArg_andNSRectArg_of_(0.128, ((1, 2), (3, 4)), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokedoubleArg_andNSRectArg_of_(0.128, ((7, 8), (9, 10)), o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokedoubleArg_andNSRectArg_of_(1.0, ((1, 2), (3, 4)), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokedoubleArg_andNSRectArg_of_(1.0, ((7, 8), (9, 10)), o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokedoubleArg_andNSRectArg_of_(42.0, ((1, 2), (3, 4)), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokedoubleArg_andNSRectArg_of_(42.0, ((7, 8), (9, 10)), o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokedoubleArg_andNSRectArg_of_(1e10, ((1, 2), (3, 4)), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokedoubleArg_andNSRectArg_of_(1e10, ((7, 8), (9, 10)), o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcallidAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_andBOOLArg_of_(NSPriorDayDesignations, YES, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callidArg_andBOOLArg_of_(NSPriorDayDesignations, NO, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], NO)


	def testinvokeidAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_andBOOLArg_of_(NSPriorDayDesignations, YES, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeidArg_andBOOLArg_of_(NSPriorDayDesignations, NO, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], NO)


	def testcallidAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_andcharArg_of_(NSPriorDayDesignations, -128, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callidArg_andcharArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callidArg_andcharArg_of_(NSPriorDayDesignations, 127, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 127)


	def testinvokeidAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_andcharArg_of_(NSPriorDayDesignations, -128, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeidArg_andcharArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeidArg_andcharArg_of_(NSPriorDayDesignations, 127, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 127)


	def testcallidAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_andsignedshortArg_of_(NSPriorDayDesignations, -(1<<14), o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callidArg_andsignedshortArg_of_(NSPriorDayDesignations, -42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callidArg_andsignedshortArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callidArg_andsignedshortArg_of_(NSPriorDayDesignations, 42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callidArg_andsignedshortArg_of_(NSPriorDayDesignations, 1 << 14, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1 << 14)


	def testinvokeidAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_andsignedshortArg_of_(NSPriorDayDesignations, -(1<<14), o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeidArg_andsignedshortArg_of_(NSPriorDayDesignations, -42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeidArg_andsignedshortArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeidArg_andsignedshortArg_of_(NSPriorDayDesignations, 42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeidArg_andsignedshortArg_of_(NSPriorDayDesignations, 1 << 14, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1 << 14)


	def testcallidAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_andsignedintArg_of_(NSPriorDayDesignations, -(1<<30), o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callidArg_andsignedintArg_of_(NSPriorDayDesignations, -42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callidArg_andsignedintArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callidArg_andsignedintArg_of_(NSPriorDayDesignations, 42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callidArg_andsignedintArg_of_(NSPriorDayDesignations, 1 << 30, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeidAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_andsignedintArg_of_(NSPriorDayDesignations, -(1<<30), o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeidArg_andsignedintArg_of_(NSPriorDayDesignations, -42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeidArg_andsignedintArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeidArg_andsignedintArg_of_(NSPriorDayDesignations, 42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeidArg_andsignedintArg_of_(NSPriorDayDesignations, 1 << 30, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1 << 30)


	def testcallidAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_andsignedlongArg_of_(NSPriorDayDesignations, -(1<<30), o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callidArg_andsignedlongArg_of_(NSPriorDayDesignations, -42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callidArg_andsignedlongArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callidArg_andsignedlongArg_of_(NSPriorDayDesignations, 42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callidArg_andsignedlongArg_of_(NSPriorDayDesignations, 1 << 30, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeidAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_andsignedlongArg_of_(NSPriorDayDesignations, -(1<<30), o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeidArg_andsignedlongArg_of_(NSPriorDayDesignations, -42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeidArg_andsignedlongArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeidArg_andsignedlongArg_of_(NSPriorDayDesignations, 42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeidArg_andsignedlongArg_of_(NSPriorDayDesignations, 1 << 30, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1 << 30)


	def testcallidAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_andsignedlonglongArg_of_(NSPriorDayDesignations, -(1L << 60), o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callidArg_andsignedlonglongArg_of_(NSPriorDayDesignations, -42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callidArg_andsignedlonglongArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callidArg_andsignedlonglongArg_of_(NSPriorDayDesignations, 42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callidArg_andsignedlonglongArg_of_(NSPriorDayDesignations, 1L << 60, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1L << 60)


	def testinvokeidAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_andsignedlonglongArg_of_(NSPriorDayDesignations, -(1L << 60), o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeidArg_andsignedlonglongArg_of_(NSPriorDayDesignations, -42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeidArg_andsignedlonglongArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeidArg_andsignedlonglongArg_of_(NSPriorDayDesignations, 42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeidArg_andsignedlonglongArg_of_(NSPriorDayDesignations, 1L << 60, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1L << 60)


	def testcallidAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_andunsignedcharArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callidArg_andunsignedcharArg_of_(NSPriorDayDesignations, 128, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callidArg_andunsignedcharArg_of_(NSPriorDayDesignations, 255, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 255)


	def testinvokeidAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_andunsignedcharArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeidArg_andunsignedcharArg_of_(NSPriorDayDesignations, 128, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeidArg_andunsignedcharArg_of_(NSPriorDayDesignations, 255, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 255)


	def testcallidAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_andunsignedshortArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callidArg_andunsignedshortArg_of_(NSPriorDayDesignations, 42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callidArg_andunsignedshortArg_of_(NSPriorDayDesignations, 1<<14, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1<<14)


	def testinvokeidAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_andunsignedshortArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeidArg_andunsignedshortArg_of_(NSPriorDayDesignations, 42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeidArg_andunsignedshortArg_of_(NSPriorDayDesignations, 1<<14, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1<<14)


	def testcallidAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_andunsignedintArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callidArg_andunsignedintArg_of_(NSPriorDayDesignations, 42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callidArg_andunsignedintArg_of_(NSPriorDayDesignations, 1 << 30, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeidAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_andunsignedintArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeidArg_andunsignedintArg_of_(NSPriorDayDesignations, 42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeidArg_andunsignedintArg_of_(NSPriorDayDesignations, 1 << 30, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1 << 30)


	def testcallidAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_andunsignedlongArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callidArg_andunsignedlongArg_of_(NSPriorDayDesignations, 42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callidArg_andunsignedlongArg_of_(NSPriorDayDesignations, 1L << 30, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1L << 30)


	def testinvokeidAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_andunsignedlongArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeidArg_andunsignedlongArg_of_(NSPriorDayDesignations, 42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeidArg_andunsignedlongArg_of_(NSPriorDayDesignations, 1L << 30, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1L << 30)


	def testcallidAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_andunsignedlonglongArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callidArg_andunsignedlonglongArg_of_(NSPriorDayDesignations, 42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callidArg_andunsignedlonglongArg_of_(NSPriorDayDesignations, 1L << 62, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1L << 62)


	def testinvokeidAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_andunsignedlonglongArg_of_(NSPriorDayDesignations, 0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeidArg_andunsignedlonglongArg_of_(NSPriorDayDesignations, 42, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeidArg_andunsignedlonglongArg_of_(NSPriorDayDesignations, 1L << 62, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], 1L << 62)


	def testcallidAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_andfloatArg_of_(NSPriorDayDesignations, 0.128, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callidArg_andfloatArg_of_(NSPriorDayDesignations, 1.0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callidArg_andfloatArg_of_(NSPriorDayDesignations, 42.0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callidArg_andfloatArg_of_(NSPriorDayDesignations, 1e10, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeidAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_andfloatArg_of_(NSPriorDayDesignations, 0.128, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeidArg_andfloatArg_of_(NSPriorDayDesignations, 1.0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeidArg_andfloatArg_of_(NSPriorDayDesignations, 42.0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeidArg_andfloatArg_of_(NSPriorDayDesignations, 1e10, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallidAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_anddoubleArg_of_(NSPriorDayDesignations, 0.128, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callidArg_anddoubleArg_of_(NSPriorDayDesignations, 1.0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callidArg_anddoubleArg_of_(NSPriorDayDesignations, 42.0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callidArg_anddoubleArg_of_(NSPriorDayDesignations, 1e10, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeidAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_anddoubleArg_of_(NSPriorDayDesignations, 0.128, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeidArg_anddoubleArg_of_(NSPriorDayDesignations, 1.0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeidArg_anddoubleArg_of_(NSPriorDayDesignations, 42.0, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeidArg_anddoubleArg_of_(NSPriorDayDesignations, 1e10, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallidAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_andidArg_of_(NSPriorDayDesignations, NSPriorDayDesignations, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokeidAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_andidArg_of_(NSPriorDayDesignations, NSPriorDayDesignations, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcallidAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_andcharPtrArg_of_(NSPriorDayDesignations, "hello", o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callidArg_andcharPtrArg_of_(NSPriorDayDesignations, "world", o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callidArg_andcharPtrArg_of_(NSPriorDayDesignations, "foobar", o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], "foobar")


	def testinvokeidAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_andcharPtrArg_of_(NSPriorDayDesignations, "hello", o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeidArg_andcharPtrArg_of_(NSPriorDayDesignations, "world", o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeidArg_andcharPtrArg_of_(NSPriorDayDesignations, "foobar", o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], "foobar")


	def testcallidAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_andNSPointArg_of_(NSPriorDayDesignations, (1, 2), o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callidArg_andNSPointArg_of_(NSPriorDayDesignations, (3, 4), o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], (3, 4))


	def testinvokeidAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_andNSPointArg_of_(NSPriorDayDesignations, (1, 2), o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeidArg_andNSPointArg_of_(NSPriorDayDesignations, (3, 4), o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], (3, 4))


	def testcallidAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidArg_andNSRectArg_of_(NSPriorDayDesignations, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callidArg_andNSRectArg_of_(NSPriorDayDesignations, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokeidAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidArg_andNSRectArg_of_(NSPriorDayDesignations, ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeidArg_andNSRectArg_of_(NSPriorDayDesignations, ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcallcharPtrAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_andBOOLArg_of_("hello", YES, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callcharPtrArg_andBOOLArg_of_("hello", NO, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callcharPtrArg_andBOOLArg_of_("world", YES, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callcharPtrArg_andBOOLArg_of_("world", NO, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callcharPtrArg_andBOOLArg_of_("foobar", YES, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callcharPtrArg_andBOOLArg_of_("foobar", NO, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], NO)


	def testinvokecharPtrAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_andBOOLArg_of_("hello", YES, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokecharPtrArg_andBOOLArg_of_("hello", NO, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokecharPtrArg_andBOOLArg_of_("world", YES, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokecharPtrArg_andBOOLArg_of_("world", NO, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokecharPtrArg_andBOOLArg_of_("foobar", YES, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokecharPtrArg_andBOOLArg_of_("foobar", NO, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], NO)


	def testcallcharPtrAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_andcharArg_of_("hello", -128, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callcharPtrArg_andcharArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andcharArg_of_("hello", 127, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callcharPtrArg_andcharArg_of_("world", -128, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callcharPtrArg_andcharArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andcharArg_of_("world", 127, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callcharPtrArg_andcharArg_of_("foobar", -128, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callcharPtrArg_andcharArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andcharArg_of_("foobar", 127, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 127)


	def testinvokecharPtrAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_andcharArg_of_("hello", -128, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokecharPtrArg_andcharArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andcharArg_of_("hello", 127, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokecharPtrArg_andcharArg_of_("world", -128, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokecharPtrArg_andcharArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andcharArg_of_("world", 127, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokecharPtrArg_andcharArg_of_("foobar", -128, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokecharPtrArg_andcharArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andcharArg_of_("foobar", 127, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 127)


	def testcallcharPtrAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedshortArg_of_("hello", -(1<<14), o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callcharPtrArg_andsignedshortArg_of_("hello", -42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedshortArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedshortArg_of_("hello", 42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedshortArg_of_("hello", 1 << 14, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedshortArg_of_("world", -(1<<14), o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callcharPtrArg_andsignedshortArg_of_("world", -42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedshortArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedshortArg_of_("world", 42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedshortArg_of_("world", 1 << 14, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedshortArg_of_("foobar", -(1<<14), o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callcharPtrArg_andsignedshortArg_of_("foobar", -42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedshortArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedshortArg_of_("foobar", 42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedshortArg_of_("foobar", 1 << 14, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1 << 14)


	def testinvokecharPtrAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedshortArg_of_("hello", -(1<<14), o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedshortArg_of_("hello", -42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedshortArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedshortArg_of_("hello", 42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedshortArg_of_("hello", 1 << 14, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedshortArg_of_("world", -(1<<14), o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedshortArg_of_("world", -42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedshortArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedshortArg_of_("world", 42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedshortArg_of_("world", 1 << 14, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedshortArg_of_("foobar", -(1<<14), o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedshortArg_of_("foobar", -42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedshortArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedshortArg_of_("foobar", 42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedshortArg_of_("foobar", 1 << 14, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1 << 14)


	def testcallcharPtrAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedintArg_of_("hello", -(1<<30), o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callcharPtrArg_andsignedintArg_of_("hello", -42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedintArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedintArg_of_("hello", 42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedintArg_of_("hello", 1 << 30, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedintArg_of_("world", -(1<<30), o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callcharPtrArg_andsignedintArg_of_("world", -42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedintArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedintArg_of_("world", 42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedintArg_of_("world", 1 << 30, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedintArg_of_("foobar", -(1<<30), o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callcharPtrArg_andsignedintArg_of_("foobar", -42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedintArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedintArg_of_("foobar", 42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedintArg_of_("foobar", 1 << 30, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1 << 30)


	def testinvokecharPtrAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedintArg_of_("hello", -(1<<30), o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedintArg_of_("hello", -42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedintArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedintArg_of_("hello", 42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedintArg_of_("hello", 1 << 30, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedintArg_of_("world", -(1<<30), o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedintArg_of_("world", -42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedintArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedintArg_of_("world", 42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedintArg_of_("world", 1 << 30, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedintArg_of_("foobar", -(1<<30), o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedintArg_of_("foobar", -42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedintArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedintArg_of_("foobar", 42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedintArg_of_("foobar", 1 << 30, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1 << 30)


	def testcallcharPtrAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlongArg_of_("hello", -(1<<30), o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlongArg_of_("hello", -42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlongArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlongArg_of_("hello", 42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlongArg_of_("hello", 1 << 30, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlongArg_of_("world", -(1<<30), o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlongArg_of_("world", -42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlongArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlongArg_of_("world", 42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlongArg_of_("world", 1 << 30, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlongArg_of_("foobar", -(1<<30), o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlongArg_of_("foobar", -42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlongArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlongArg_of_("foobar", 42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlongArg_of_("foobar", 1 << 30, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1 << 30)


	def testinvokecharPtrAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlongArg_of_("hello", -(1<<30), o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlongArg_of_("hello", -42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlongArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlongArg_of_("hello", 42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlongArg_of_("hello", 1 << 30, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlongArg_of_("world", -(1<<30), o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlongArg_of_("world", -42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlongArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlongArg_of_("world", 42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlongArg_of_("world", 1 << 30, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlongArg_of_("foobar", -(1<<30), o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlongArg_of_("foobar", -42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlongArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlongArg_of_("foobar", 42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlongArg_of_("foobar", 1 << 30, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1 << 30)


	def testcallcharPtrAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlonglongArg_of_("hello", -(1L << 60), o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlonglongArg_of_("hello", -42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlonglongArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlonglongArg_of_("hello", 42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlonglongArg_of_("hello", 1L << 60, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlonglongArg_of_("world", -(1L << 60), o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlonglongArg_of_("world", -42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlonglongArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlonglongArg_of_("world", 42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlonglongArg_of_("world", 1L << 60, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlonglongArg_of_("foobar", -(1L << 60), o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlonglongArg_of_("foobar", -42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlonglongArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlonglongArg_of_("foobar", 42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andsignedlonglongArg_of_("foobar", 1L << 60, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1L << 60)


	def testinvokecharPtrAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlonglongArg_of_("hello", -(1L << 60), o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlonglongArg_of_("hello", -42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlonglongArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlonglongArg_of_("hello", 42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlonglongArg_of_("hello", 1L << 60, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlonglongArg_of_("world", -(1L << 60), o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlonglongArg_of_("world", -42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlonglongArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlonglongArg_of_("world", 42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlonglongArg_of_("world", 1L << 60, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlonglongArg_of_("foobar", -(1L << 60), o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlonglongArg_of_("foobar", -42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlonglongArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlonglongArg_of_("foobar", 42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andsignedlonglongArg_of_("foobar", 1L << 60, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1L << 60)


	def testcallcharPtrAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedcharArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedcharArg_of_("hello", 128, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedcharArg_of_("hello", 255, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedcharArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedcharArg_of_("world", 128, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedcharArg_of_("world", 255, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedcharArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedcharArg_of_("foobar", 128, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedcharArg_of_("foobar", 255, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 255)


	def testinvokecharPtrAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedcharArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedcharArg_of_("hello", 128, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedcharArg_of_("hello", 255, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedcharArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedcharArg_of_("world", 128, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedcharArg_of_("world", 255, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedcharArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedcharArg_of_("foobar", 128, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedcharArg_of_("foobar", 255, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 255)


	def testcallcharPtrAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedshortArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedshortArg_of_("hello", 42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedshortArg_of_("hello", 1<<14, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedshortArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedshortArg_of_("world", 42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedshortArg_of_("world", 1<<14, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedshortArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedshortArg_of_("foobar", 42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedshortArg_of_("foobar", 1<<14, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1<<14)


	def testinvokecharPtrAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedshortArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedshortArg_of_("hello", 42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedshortArg_of_("hello", 1<<14, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedshortArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedshortArg_of_("world", 42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedshortArg_of_("world", 1<<14, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedshortArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedshortArg_of_("foobar", 42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedshortArg_of_("foobar", 1<<14, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1<<14)


	def testcallcharPtrAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedintArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedintArg_of_("hello", 42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedintArg_of_("hello", 1 << 30, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedintArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedintArg_of_("world", 42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedintArg_of_("world", 1 << 30, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedintArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedintArg_of_("foobar", 42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedintArg_of_("foobar", 1 << 30, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1 << 30)


	def testinvokecharPtrAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedintArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedintArg_of_("hello", 42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedintArg_of_("hello", 1 << 30, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedintArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedintArg_of_("world", 42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedintArg_of_("world", 1 << 30, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedintArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedintArg_of_("foobar", 42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedintArg_of_("foobar", 1 << 30, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1 << 30)


	def testcallcharPtrAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlongArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlongArg_of_("hello", 42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlongArg_of_("hello", 1L << 30, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlongArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlongArg_of_("world", 42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlongArg_of_("world", 1L << 30, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlongArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlongArg_of_("foobar", 42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlongArg_of_("foobar", 1L << 30, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1L << 30)


	def testinvokecharPtrAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlongArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlongArg_of_("hello", 42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlongArg_of_("hello", 1L << 30, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlongArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlongArg_of_("world", 42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlongArg_of_("world", 1L << 30, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlongArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlongArg_of_("foobar", 42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlongArg_of_("foobar", 1L << 30, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1L << 30)


	def testcallcharPtrAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlonglongArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlonglongArg_of_("hello", 42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlonglongArg_of_("hello", 1L << 62, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlonglongArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlonglongArg_of_("world", 42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlonglongArg_of_("world", 1L << 62, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlonglongArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlonglongArg_of_("foobar", 42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callcharPtrArg_andunsignedlonglongArg_of_("foobar", 1L << 62, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1L << 62)


	def testinvokecharPtrAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlonglongArg_of_("hello", 0, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlonglongArg_of_("hello", 42, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlonglongArg_of_("hello", 1L << 62, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlonglongArg_of_("world", 0, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlonglongArg_of_("world", 42, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlonglongArg_of_("world", 1L << 62, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlonglongArg_of_("foobar", 0, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlonglongArg_of_("foobar", 42, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokecharPtrArg_andunsignedlonglongArg_of_("foobar", 1L << 62, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], 1L << 62)


	def testcallcharPtrAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_andfloatArg_of_("hello", 0.128, o)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callcharPtrArg_andfloatArg_of_("hello", 1.0, o)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callcharPtrArg_andfloatArg_of_("hello", 42.0, o)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callcharPtrArg_andfloatArg_of_("hello", 1e10, o)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callcharPtrArg_andfloatArg_of_("world", 0.128, o)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callcharPtrArg_andfloatArg_of_("world", 1.0, o)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callcharPtrArg_andfloatArg_of_("world", 42.0, o)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callcharPtrArg_andfloatArg_of_("world", 1e10, o)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callcharPtrArg_andfloatArg_of_("foobar", 0.128, o)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callcharPtrArg_andfloatArg_of_("foobar", 1.0, o)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callcharPtrArg_andfloatArg_of_("foobar", 42.0, o)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callcharPtrArg_andfloatArg_of_("foobar", 1e10, o)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokecharPtrAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_andfloatArg_of_("hello", 0.128, o)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokecharPtrArg_andfloatArg_of_("hello", 1.0, o)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokecharPtrArg_andfloatArg_of_("hello", 42.0, o)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokecharPtrArg_andfloatArg_of_("hello", 1e10, o)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokecharPtrArg_andfloatArg_of_("world", 0.128, o)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokecharPtrArg_andfloatArg_of_("world", 1.0, o)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokecharPtrArg_andfloatArg_of_("world", 42.0, o)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokecharPtrArg_andfloatArg_of_("world", 1e10, o)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokecharPtrArg_andfloatArg_of_("foobar", 0.128, o)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokecharPtrArg_andfloatArg_of_("foobar", 1.0, o)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokecharPtrArg_andfloatArg_of_("foobar", 42.0, o)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokecharPtrArg_andfloatArg_of_("foobar", 1e10, o)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 1e10)


	def testcallcharPtrAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_anddoubleArg_of_("hello", 0.128, o)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callcharPtrArg_anddoubleArg_of_("hello", 1.0, o)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callcharPtrArg_anddoubleArg_of_("hello", 42.0, o)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callcharPtrArg_anddoubleArg_of_("hello", 1e10, o)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callcharPtrArg_anddoubleArg_of_("world", 0.128, o)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callcharPtrArg_anddoubleArg_of_("world", 1.0, o)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callcharPtrArg_anddoubleArg_of_("world", 42.0, o)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callcharPtrArg_anddoubleArg_of_("world", 1e10, o)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callcharPtrArg_anddoubleArg_of_("foobar", 0.128, o)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callcharPtrArg_anddoubleArg_of_("foobar", 1.0, o)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callcharPtrArg_anddoubleArg_of_("foobar", 42.0, o)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callcharPtrArg_anddoubleArg_of_("foobar", 1e10, o)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokecharPtrAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_anddoubleArg_of_("hello", 0.128, o)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokecharPtrArg_anddoubleArg_of_("hello", 1.0, o)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokecharPtrArg_anddoubleArg_of_("hello", 42.0, o)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokecharPtrArg_anddoubleArg_of_("hello", 1e10, o)
		self.assertEquals(r[0], "hello")
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokecharPtrArg_anddoubleArg_of_("world", 0.128, o)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokecharPtrArg_anddoubleArg_of_("world", 1.0, o)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokecharPtrArg_anddoubleArg_of_("world", 42.0, o)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokecharPtrArg_anddoubleArg_of_("world", 1e10, o)
		self.assertEquals(r[0], "world")
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokecharPtrArg_anddoubleArg_of_("foobar", 0.128, o)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokecharPtrArg_anddoubleArg_of_("foobar", 1.0, o)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokecharPtrArg_anddoubleArg_of_("foobar", 42.0, o)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokecharPtrArg_anddoubleArg_of_("foobar", 1e10, o)
		self.assertEquals(r[0], "foobar")
		self.assertAlmostEquals(r[1], 1e10)


	def testcallcharPtrAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_andidArg_of_("hello", NSPriorDayDesignations, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callcharPtrArg_andidArg_of_("world", NSPriorDayDesignations, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callcharPtrArg_andidArg_of_("foobar", NSPriorDayDesignations, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokecharPtrAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_andidArg_of_("hello", NSPriorDayDesignations, o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokecharPtrArg_andidArg_of_("world", NSPriorDayDesignations, o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokecharPtrArg_andidArg_of_("foobar", NSPriorDayDesignations, o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcallcharPtrAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_andcharPtrArg_of_("hello", "hello", o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callcharPtrArg_andcharPtrArg_of_("hello", "world", o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callcharPtrArg_andcharPtrArg_of_("hello", "foobar", o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callcharPtrArg_andcharPtrArg_of_("world", "hello", o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callcharPtrArg_andcharPtrArg_of_("world", "world", o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callcharPtrArg_andcharPtrArg_of_("world", "foobar", o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callcharPtrArg_andcharPtrArg_of_("foobar", "hello", o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callcharPtrArg_andcharPtrArg_of_("foobar", "world", o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callcharPtrArg_andcharPtrArg_of_("foobar", "foobar", o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], "foobar")


	def testinvokecharPtrAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_andcharPtrArg_of_("hello", "hello", o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokecharPtrArg_andcharPtrArg_of_("hello", "world", o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokecharPtrArg_andcharPtrArg_of_("hello", "foobar", o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokecharPtrArg_andcharPtrArg_of_("world", "hello", o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokecharPtrArg_andcharPtrArg_of_("world", "world", o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokecharPtrArg_andcharPtrArg_of_("world", "foobar", o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokecharPtrArg_andcharPtrArg_of_("foobar", "hello", o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokecharPtrArg_andcharPtrArg_of_("foobar", "world", o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokecharPtrArg_andcharPtrArg_of_("foobar", "foobar", o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], "foobar")


	def testcallcharPtrAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_andNSPointArg_of_("hello", (1, 2), o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callcharPtrArg_andNSPointArg_of_("hello", (3, 4), o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callcharPtrArg_andNSPointArg_of_("world", (1, 2), o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callcharPtrArg_andNSPointArg_of_("world", (3, 4), o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callcharPtrArg_andNSPointArg_of_("foobar", (1, 2), o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callcharPtrArg_andNSPointArg_of_("foobar", (3, 4), o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], (3, 4))


	def testinvokecharPtrAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_andNSPointArg_of_("hello", (1, 2), o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokecharPtrArg_andNSPointArg_of_("hello", (3, 4), o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokecharPtrArg_andNSPointArg_of_("world", (1, 2), o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokecharPtrArg_andNSPointArg_of_("world", (3, 4), o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokecharPtrArg_andNSPointArg_of_("foobar", (1, 2), o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokecharPtrArg_andNSPointArg_of_("foobar", (3, 4), o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], (3, 4))


	def testcallcharPtrAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrArg_andNSRectArg_of_("hello", ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callcharPtrArg_andNSRectArg_of_("hello", ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callcharPtrArg_andNSRectArg_of_("world", ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callcharPtrArg_andNSRectArg_of_("world", ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callcharPtrArg_andNSRectArg_of_("foobar", ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callcharPtrArg_andNSRectArg_of_("foobar", ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokecharPtrAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrArg_andNSRectArg_of_("hello", ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokecharPtrArg_andNSRectArg_of_("hello", ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokecharPtrArg_andNSRectArg_of_("world", ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokecharPtrArg_andNSRectArg_of_("world", ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokecharPtrArg_andNSRectArg_of_("foobar", ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokecharPtrArg_andNSRectArg_of_("foobar", ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcallNSPointAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_andBOOLArg_of_((1, 2), YES, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callNSPointArg_andBOOLArg_of_((1, 2), NO, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callNSPointArg_andBOOLArg_of_((3, 4), YES, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callNSPointArg_andBOOLArg_of_((3, 4), NO, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], NO)


	def testinvokeNSPointAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_andBOOLArg_of_((1, 2), YES, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeNSPointArg_andBOOLArg_of_((1, 2), NO, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokeNSPointArg_andBOOLArg_of_((3, 4), YES, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeNSPointArg_andBOOLArg_of_((3, 4), NO, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], NO)


	def testcallNSPointAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_andcharArg_of_((1, 2), -128, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callNSPointArg_andcharArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andcharArg_of_((1, 2), 127, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callNSPointArg_andcharArg_of_((3, 4), -128, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callNSPointArg_andcharArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andcharArg_of_((3, 4), 127, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 127)


	def testinvokeNSPointAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_andcharArg_of_((1, 2), -128, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeNSPointArg_andcharArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andcharArg_of_((1, 2), 127, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokeNSPointArg_andcharArg_of_((3, 4), -128, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeNSPointArg_andcharArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andcharArg_of_((3, 4), 127, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 127)


	def testcallNSPointAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_andsignedshortArg_of_((1, 2), -(1<<14), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callNSPointArg_andsignedshortArg_of_((1, 2), -42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callNSPointArg_andsignedshortArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andsignedshortArg_of_((1, 2), 42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSPointArg_andsignedshortArg_of_((1, 2), 1 << 14, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callNSPointArg_andsignedshortArg_of_((3, 4), -(1<<14), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callNSPointArg_andsignedshortArg_of_((3, 4), -42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callNSPointArg_andsignedshortArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andsignedshortArg_of_((3, 4), 42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSPointArg_andsignedshortArg_of_((3, 4), 1 << 14, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1 << 14)


	def testinvokeNSPointAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedshortArg_of_((1, 2), -(1<<14), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedshortArg_of_((1, 2), -42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedshortArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedshortArg_of_((1, 2), 42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedshortArg_of_((1, 2), 1 << 14, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedshortArg_of_((3, 4), -(1<<14), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedshortArg_of_((3, 4), -42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedshortArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedshortArg_of_((3, 4), 42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedshortArg_of_((3, 4), 1 << 14, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1 << 14)


	def testcallNSPointAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_andsignedintArg_of_((1, 2), -(1<<30), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callNSPointArg_andsignedintArg_of_((1, 2), -42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callNSPointArg_andsignedintArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andsignedintArg_of_((1, 2), 42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSPointArg_andsignedintArg_of_((1, 2), 1 << 30, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callNSPointArg_andsignedintArg_of_((3, 4), -(1<<30), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callNSPointArg_andsignedintArg_of_((3, 4), -42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callNSPointArg_andsignedintArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andsignedintArg_of_((3, 4), 42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSPointArg_andsignedintArg_of_((3, 4), 1 << 30, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1 << 30)


	def testinvokeNSPointAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedintArg_of_((1, 2), -(1<<30), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedintArg_of_((1, 2), -42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedintArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedintArg_of_((1, 2), 42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedintArg_of_((1, 2), 1 << 30, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedintArg_of_((3, 4), -(1<<30), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedintArg_of_((3, 4), -42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedintArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedintArg_of_((3, 4), 42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedintArg_of_((3, 4), 1 << 30, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1 << 30)


	def testcallNSPointAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_andsignedlongArg_of_((1, 2), -(1<<30), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callNSPointArg_andsignedlongArg_of_((1, 2), -42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callNSPointArg_andsignedlongArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andsignedlongArg_of_((1, 2), 42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSPointArg_andsignedlongArg_of_((1, 2), 1 << 30, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callNSPointArg_andsignedlongArg_of_((3, 4), -(1<<30), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callNSPointArg_andsignedlongArg_of_((3, 4), -42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callNSPointArg_andsignedlongArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andsignedlongArg_of_((3, 4), 42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSPointArg_andsignedlongArg_of_((3, 4), 1 << 30, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1 << 30)


	def testinvokeNSPointAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlongArg_of_((1, 2), -(1<<30), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlongArg_of_((1, 2), -42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlongArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlongArg_of_((1, 2), 42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlongArg_of_((1, 2), 1 << 30, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlongArg_of_((3, 4), -(1<<30), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlongArg_of_((3, 4), -42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlongArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlongArg_of_((3, 4), 42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlongArg_of_((3, 4), 1 << 30, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1 << 30)


	def testcallNSPointAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_andsignedlonglongArg_of_((1, 2), -(1L << 60), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callNSPointArg_andsignedlonglongArg_of_((1, 2), -42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callNSPointArg_andsignedlonglongArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andsignedlonglongArg_of_((1, 2), 42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSPointArg_andsignedlonglongArg_of_((1, 2), 1L << 60, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callNSPointArg_andsignedlonglongArg_of_((3, 4), -(1L << 60), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callNSPointArg_andsignedlonglongArg_of_((3, 4), -42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callNSPointArg_andsignedlonglongArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andsignedlonglongArg_of_((3, 4), 42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSPointArg_andsignedlonglongArg_of_((3, 4), 1L << 60, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1L << 60)


	def testinvokeNSPointAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlonglongArg_of_((1, 2), -(1L << 60), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlonglongArg_of_((1, 2), -42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlonglongArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlonglongArg_of_((1, 2), 42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlonglongArg_of_((1, 2), 1L << 60, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlonglongArg_of_((3, 4), -(1L << 60), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlonglongArg_of_((3, 4), -42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlonglongArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlonglongArg_of_((3, 4), 42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSPointArg_andsignedlonglongArg_of_((3, 4), 1L << 60, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1L << 60)


	def testcallNSPointAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedcharArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedcharArg_of_((1, 2), 128, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedcharArg_of_((1, 2), 255, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedcharArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedcharArg_of_((3, 4), 128, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedcharArg_of_((3, 4), 255, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 255)


	def testinvokeNSPointAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedcharArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedcharArg_of_((1, 2), 128, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedcharArg_of_((1, 2), 255, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedcharArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedcharArg_of_((3, 4), 128, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedcharArg_of_((3, 4), 255, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 255)


	def testcallNSPointAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedshortArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedshortArg_of_((1, 2), 42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedshortArg_of_((1, 2), 1<<14, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedshortArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedshortArg_of_((3, 4), 42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedshortArg_of_((3, 4), 1<<14, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1<<14)


	def testinvokeNSPointAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedshortArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedshortArg_of_((1, 2), 42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedshortArg_of_((1, 2), 1<<14, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedshortArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedshortArg_of_((3, 4), 42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedshortArg_of_((3, 4), 1<<14, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1<<14)


	def testcallNSPointAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedintArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedintArg_of_((1, 2), 42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedintArg_of_((1, 2), 1 << 30, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedintArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedintArg_of_((3, 4), 42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedintArg_of_((3, 4), 1 << 30, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1 << 30)


	def testinvokeNSPointAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedintArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedintArg_of_((1, 2), 42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedintArg_of_((1, 2), 1 << 30, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedintArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedintArg_of_((3, 4), 42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedintArg_of_((3, 4), 1 << 30, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1 << 30)


	def testcallNSPointAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedlongArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedlongArg_of_((1, 2), 42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedlongArg_of_((1, 2), 1L << 30, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedlongArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedlongArg_of_((3, 4), 42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedlongArg_of_((3, 4), 1L << 30, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1L << 30)


	def testinvokeNSPointAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedlongArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedlongArg_of_((1, 2), 42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedlongArg_of_((1, 2), 1L << 30, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedlongArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedlongArg_of_((3, 4), 42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedlongArg_of_((3, 4), 1L << 30, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1L << 30)


	def testcallNSPointAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedlonglongArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedlonglongArg_of_((1, 2), 42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedlonglongArg_of_((1, 2), 1L << 62, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedlonglongArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedlonglongArg_of_((3, 4), 42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSPointArg_andunsignedlonglongArg_of_((3, 4), 1L << 62, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1L << 62)


	def testinvokeNSPointAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedlonglongArg_of_((1, 2), 0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedlonglongArg_of_((1, 2), 42, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedlonglongArg_of_((1, 2), 1L << 62, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedlonglongArg_of_((3, 4), 0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedlonglongArg_of_((3, 4), 42, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSPointArg_andunsignedlonglongArg_of_((3, 4), 1L << 62, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], 1L << 62)


	def testcallNSPointAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_andfloatArg_of_((1, 2), 0.128, o)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callNSPointArg_andfloatArg_of_((1, 2), 1.0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callNSPointArg_andfloatArg_of_((1, 2), 42.0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callNSPointArg_andfloatArg_of_((1, 2), 1e10, o)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callNSPointArg_andfloatArg_of_((3, 4), 0.128, o)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callNSPointArg_andfloatArg_of_((3, 4), 1.0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callNSPointArg_andfloatArg_of_((3, 4), 42.0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callNSPointArg_andfloatArg_of_((3, 4), 1e10, o)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeNSPointAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_andfloatArg_of_((1, 2), 0.128, o)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeNSPointArg_andfloatArg_of_((1, 2), 1.0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeNSPointArg_andfloatArg_of_((1, 2), 42.0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeNSPointArg_andfloatArg_of_((1, 2), 1e10, o)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeNSPointArg_andfloatArg_of_((3, 4), 0.128, o)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeNSPointArg_andfloatArg_of_((3, 4), 1.0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeNSPointArg_andfloatArg_of_((3, 4), 42.0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeNSPointArg_andfloatArg_of_((3, 4), 1e10, o)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 1e10)


	def testcallNSPointAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_anddoubleArg_of_((1, 2), 0.128, o)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callNSPointArg_anddoubleArg_of_((1, 2), 1.0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callNSPointArg_anddoubleArg_of_((1, 2), 42.0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callNSPointArg_anddoubleArg_of_((1, 2), 1e10, o)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callNSPointArg_anddoubleArg_of_((3, 4), 0.128, o)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callNSPointArg_anddoubleArg_of_((3, 4), 1.0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callNSPointArg_anddoubleArg_of_((3, 4), 42.0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callNSPointArg_anddoubleArg_of_((3, 4), 1e10, o)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeNSPointAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_anddoubleArg_of_((1, 2), 0.128, o)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeNSPointArg_anddoubleArg_of_((1, 2), 1.0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeNSPointArg_anddoubleArg_of_((1, 2), 42.0, o)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeNSPointArg_anddoubleArg_of_((1, 2), 1e10, o)
		self.assertEquals(r[0], (1, 2))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeNSPointArg_anddoubleArg_of_((3, 4), 0.128, o)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeNSPointArg_anddoubleArg_of_((3, 4), 1.0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeNSPointArg_anddoubleArg_of_((3, 4), 42.0, o)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeNSPointArg_anddoubleArg_of_((3, 4), 1e10, o)
		self.assertEquals(r[0], (3, 4))
		self.assertAlmostEquals(r[1], 1e10)


	def testcallNSPointAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_andidArg_of_((1, 2), NSPriorDayDesignations, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callNSPointArg_andidArg_of_((3, 4), NSPriorDayDesignations, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokeNSPointAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_andidArg_of_((1, 2), NSPriorDayDesignations, o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokeNSPointArg_andidArg_of_((3, 4), NSPriorDayDesignations, o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcallNSPointAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_andcharPtrArg_of_((1, 2), "hello", o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callNSPointArg_andcharPtrArg_of_((1, 2), "world", o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callNSPointArg_andcharPtrArg_of_((1, 2), "foobar", o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callNSPointArg_andcharPtrArg_of_((3, 4), "hello", o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callNSPointArg_andcharPtrArg_of_((3, 4), "world", o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callNSPointArg_andcharPtrArg_of_((3, 4), "foobar", o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], "foobar")


	def testinvokeNSPointAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_andcharPtrArg_of_((1, 2), "hello", o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeNSPointArg_andcharPtrArg_of_((1, 2), "world", o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeNSPointArg_andcharPtrArg_of_((1, 2), "foobar", o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokeNSPointArg_andcharPtrArg_of_((3, 4), "hello", o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeNSPointArg_andcharPtrArg_of_((3, 4), "world", o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeNSPointArg_andcharPtrArg_of_((3, 4), "foobar", o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], "foobar")


	def testcallNSPointAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_andNSPointArg_of_((1, 2), (1, 2), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callNSPointArg_andNSPointArg_of_((1, 2), (3, 4), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callNSPointArg_andNSPointArg_of_((3, 4), (1, 2), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callNSPointArg_andNSPointArg_of_((3, 4), (3, 4), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], (3, 4))


	def testinvokeNSPointAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_andNSPointArg_of_((1, 2), (1, 2), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeNSPointArg_andNSPointArg_of_((1, 2), (3, 4), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokeNSPointArg_andNSPointArg_of_((3, 4), (1, 2), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeNSPointArg_andNSPointArg_of_((3, 4), (3, 4), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], (3, 4))


	def testcallNSPointAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointArg_andNSRectArg_of_((1, 2), ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callNSPointArg_andNSRectArg_of_((1, 2), ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callNSPointArg_andNSRectArg_of_((3, 4), ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callNSPointArg_andNSRectArg_of_((3, 4), ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokeNSPointAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointArg_andNSRectArg_of_((1, 2), ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeNSPointArg_andNSRectArg_of_((1, 2), ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokeNSPointArg_andNSRectArg_of_((3, 4), ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeNSPointArg_andNSRectArg_of_((3, 4), ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testcallNSRectAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_andBOOLArg_of_(((1, 2), (3, 4)), YES, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callNSRectArg_andBOOLArg_of_(((1, 2), (3, 4)), NO, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.callNSRectArg_andBOOLArg_of_(((7, 8), (9, 10)), YES, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callNSRectArg_andBOOLArg_of_(((7, 8), (9, 10)), NO, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], NO)


	def testinvokeNSRectAndBOOLArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_andBOOLArg_of_(((1, 2), (3, 4)), YES, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeNSRectArg_andBOOLArg_of_(((1, 2), (3, 4)), NO, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], NO)
		r = PyObjC_TestClass2.invokeNSRectArg_andBOOLArg_of_(((7, 8), (9, 10)), YES, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeNSRectArg_andBOOLArg_of_(((7, 8), (9, 10)), NO, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], NO)


	def testcallNSRectAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_andcharArg_of_(((1, 2), (3, 4)), -128, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callNSRectArg_andcharArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andcharArg_of_(((1, 2), (3, 4)), 127, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.callNSRectArg_andcharArg_of_(((7, 8), (9, 10)), -128, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callNSRectArg_andcharArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andcharArg_of_(((7, 8), (9, 10)), 127, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 127)


	def testinvokeNSRectAndcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_andcharArg_of_(((1, 2), (3, 4)), -128, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeNSRectArg_andcharArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andcharArg_of_(((1, 2), (3, 4)), 127, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 127)
		r = PyObjC_TestClass2.invokeNSRectArg_andcharArg_of_(((7, 8), (9, 10)), -128, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokeNSRectArg_andcharArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andcharArg_of_(((7, 8), (9, 10)), 127, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 127)


	def testcallNSRectAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_andsignedshortArg_of_(((1, 2), (3, 4)), -(1<<14), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callNSRectArg_andsignedshortArg_of_(((1, 2), (3, 4)), -42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callNSRectArg_andsignedshortArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andsignedshortArg_of_(((1, 2), (3, 4)), 42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSRectArg_andsignedshortArg_of_(((1, 2), (3, 4)), 1 << 14, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.callNSRectArg_andsignedshortArg_of_(((7, 8), (9, 10)), -(1<<14), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callNSRectArg_andsignedshortArg_of_(((7, 8), (9, 10)), -42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callNSRectArg_andsignedshortArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andsignedshortArg_of_(((7, 8), (9, 10)), 42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSRectArg_andsignedshortArg_of_(((7, 8), (9, 10)), 1 << 14, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1 << 14)


	def testinvokeNSRectAndsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedshortArg_of_(((1, 2), (3, 4)), -(1<<14), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedshortArg_of_(((1, 2), (3, 4)), -42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedshortArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedshortArg_of_(((1, 2), (3, 4)), 42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedshortArg_of_(((1, 2), (3, 4)), 1 << 14, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1 << 14)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedshortArg_of_(((7, 8), (9, 10)), -(1<<14), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedshortArg_of_(((7, 8), (9, 10)), -42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedshortArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedshortArg_of_(((7, 8), (9, 10)), 42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedshortArg_of_(((7, 8), (9, 10)), 1 << 14, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1 << 14)


	def testcallNSRectAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_andsignedintArg_of_(((1, 2), (3, 4)), -(1<<30), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callNSRectArg_andsignedintArg_of_(((1, 2), (3, 4)), -42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callNSRectArg_andsignedintArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andsignedintArg_of_(((1, 2), (3, 4)), 42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSRectArg_andsignedintArg_of_(((1, 2), (3, 4)), 1 << 30, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callNSRectArg_andsignedintArg_of_(((7, 8), (9, 10)), -(1<<30), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callNSRectArg_andsignedintArg_of_(((7, 8), (9, 10)), -42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callNSRectArg_andsignedintArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andsignedintArg_of_(((7, 8), (9, 10)), 42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSRectArg_andsignedintArg_of_(((7, 8), (9, 10)), 1 << 30, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1 << 30)


	def testinvokeNSRectAndsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedintArg_of_(((1, 2), (3, 4)), -(1<<30), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedintArg_of_(((1, 2), (3, 4)), -42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedintArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedintArg_of_(((1, 2), (3, 4)), 42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedintArg_of_(((1, 2), (3, 4)), 1 << 30, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedintArg_of_(((7, 8), (9, 10)), -(1<<30), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedintArg_of_(((7, 8), (9, 10)), -42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedintArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedintArg_of_(((7, 8), (9, 10)), 42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedintArg_of_(((7, 8), (9, 10)), 1 << 30, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1 << 30)


	def testcallNSRectAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_andsignedlongArg_of_(((1, 2), (3, 4)), -(1<<30), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callNSRectArg_andsignedlongArg_of_(((1, 2), (3, 4)), -42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callNSRectArg_andsignedlongArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andsignedlongArg_of_(((1, 2), (3, 4)), 42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSRectArg_andsignedlongArg_of_(((1, 2), (3, 4)), 1 << 30, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callNSRectArg_andsignedlongArg_of_(((7, 8), (9, 10)), -(1<<30), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callNSRectArg_andsignedlongArg_of_(((7, 8), (9, 10)), -42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callNSRectArg_andsignedlongArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andsignedlongArg_of_(((7, 8), (9, 10)), 42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSRectArg_andsignedlongArg_of_(((7, 8), (9, 10)), 1 << 30, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1 << 30)


	def testinvokeNSRectAndsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlongArg_of_(((1, 2), (3, 4)), -(1<<30), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlongArg_of_(((1, 2), (3, 4)), -42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlongArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlongArg_of_(((1, 2), (3, 4)), 42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlongArg_of_(((1, 2), (3, 4)), 1 << 30, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlongArg_of_(((7, 8), (9, 10)), -(1<<30), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlongArg_of_(((7, 8), (9, 10)), -42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlongArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlongArg_of_(((7, 8), (9, 10)), 42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlongArg_of_(((7, 8), (9, 10)), 1 << 30, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1 << 30)


	def testcallNSRectAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_andsignedlonglongArg_of_(((1, 2), (3, 4)), -(1L << 60), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callNSRectArg_andsignedlonglongArg_of_(((1, 2), (3, 4)), -42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callNSRectArg_andsignedlonglongArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andsignedlonglongArg_of_(((1, 2), (3, 4)), 42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSRectArg_andsignedlonglongArg_of_(((1, 2), (3, 4)), 1L << 60, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.callNSRectArg_andsignedlonglongArg_of_(((7, 8), (9, 10)), -(1L << 60), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callNSRectArg_andsignedlonglongArg_of_(((7, 8), (9, 10)), -42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callNSRectArg_andsignedlonglongArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andsignedlonglongArg_of_(((7, 8), (9, 10)), 42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSRectArg_andsignedlonglongArg_of_(((7, 8), (9, 10)), 1L << 60, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1L << 60)


	def testinvokeNSRectAndsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlonglongArg_of_(((1, 2), (3, 4)), -(1L << 60), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlonglongArg_of_(((1, 2), (3, 4)), -42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlonglongArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlonglongArg_of_(((1, 2), (3, 4)), 42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlonglongArg_of_(((1, 2), (3, 4)), 1L << 60, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1L << 60)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlonglongArg_of_(((7, 8), (9, 10)), -(1L << 60), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlonglongArg_of_(((7, 8), (9, 10)), -42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlonglongArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlonglongArg_of_(((7, 8), (9, 10)), 42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSRectArg_andsignedlonglongArg_of_(((7, 8), (9, 10)), 1L << 60, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1L << 60)


	def testcallNSRectAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedcharArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedcharArg_of_(((1, 2), (3, 4)), 128, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedcharArg_of_(((1, 2), (3, 4)), 255, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedcharArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedcharArg_of_(((7, 8), (9, 10)), 128, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedcharArg_of_(((7, 8), (9, 10)), 255, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 255)


	def testinvokeNSRectAndunsignedcharArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedcharArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedcharArg_of_(((1, 2), (3, 4)), 128, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedcharArg_of_(((1, 2), (3, 4)), 255, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 255)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedcharArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedcharArg_of_(((7, 8), (9, 10)), 128, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedcharArg_of_(((7, 8), (9, 10)), 255, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 255)


	def testcallNSRectAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedshortArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedshortArg_of_(((1, 2), (3, 4)), 42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedshortArg_of_(((1, 2), (3, 4)), 1<<14, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedshortArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedshortArg_of_(((7, 8), (9, 10)), 42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedshortArg_of_(((7, 8), (9, 10)), 1<<14, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1<<14)


	def testinvokeNSRectAndunsignedshortArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedshortArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedshortArg_of_(((1, 2), (3, 4)), 42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedshortArg_of_(((1, 2), (3, 4)), 1<<14, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1<<14)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedshortArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedshortArg_of_(((7, 8), (9, 10)), 42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedshortArg_of_(((7, 8), (9, 10)), 1<<14, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1<<14)


	def testcallNSRectAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedintArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedintArg_of_(((1, 2), (3, 4)), 42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedintArg_of_(((1, 2), (3, 4)), 1 << 30, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedintArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedintArg_of_(((7, 8), (9, 10)), 42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedintArg_of_(((7, 8), (9, 10)), 1 << 30, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1 << 30)


	def testinvokeNSRectAndunsignedintArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedintArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedintArg_of_(((1, 2), (3, 4)), 42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedintArg_of_(((1, 2), (3, 4)), 1 << 30, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1 << 30)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedintArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedintArg_of_(((7, 8), (9, 10)), 42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedintArg_of_(((7, 8), (9, 10)), 1 << 30, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1 << 30)


	def testcallNSRectAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedlongArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedlongArg_of_(((1, 2), (3, 4)), 42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedlongArg_of_(((1, 2), (3, 4)), 1L << 30, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedlongArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedlongArg_of_(((7, 8), (9, 10)), 42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedlongArg_of_(((7, 8), (9, 10)), 1L << 30, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1L << 30)


	def testinvokeNSRectAndunsignedlongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedlongArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedlongArg_of_(((1, 2), (3, 4)), 42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedlongArg_of_(((1, 2), (3, 4)), 1L << 30, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1L << 30)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedlongArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedlongArg_of_(((7, 8), (9, 10)), 42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedlongArg_of_(((7, 8), (9, 10)), 1L << 30, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1L << 30)


	def testcallNSRectAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedlonglongArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedlonglongArg_of_(((1, 2), (3, 4)), 42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedlonglongArg_of_(((1, 2), (3, 4)), 1L << 62, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedlonglongArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedlonglongArg_of_(((7, 8), (9, 10)), 42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callNSRectArg_andunsignedlonglongArg_of_(((7, 8), (9, 10)), 1L << 62, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1L << 62)


	def testinvokeNSRectAndunsignedlonglongArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedlonglongArg_of_(((1, 2), (3, 4)), 0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedlonglongArg_of_(((1, 2), (3, 4)), 42, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedlonglongArg_of_(((1, 2), (3, 4)), 1L << 62, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], 1L << 62)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedlonglongArg_of_(((7, 8), (9, 10)), 0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedlonglongArg_of_(((7, 8), (9, 10)), 42, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeNSRectArg_andunsignedlonglongArg_of_(((7, 8), (9, 10)), 1L << 62, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], 1L << 62)


	def testcallNSRectAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_andfloatArg_of_(((1, 2), (3, 4)), 0.128, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callNSRectArg_andfloatArg_of_(((1, 2), (3, 4)), 1.0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callNSRectArg_andfloatArg_of_(((1, 2), (3, 4)), 42.0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callNSRectArg_andfloatArg_of_(((1, 2), (3, 4)), 1e10, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callNSRectArg_andfloatArg_of_(((7, 8), (9, 10)), 0.128, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callNSRectArg_andfloatArg_of_(((7, 8), (9, 10)), 1.0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callNSRectArg_andfloatArg_of_(((7, 8), (9, 10)), 42.0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callNSRectArg_andfloatArg_of_(((7, 8), (9, 10)), 1e10, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeNSRectAndfloatArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_andfloatArg_of_(((1, 2), (3, 4)), 0.128, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeNSRectArg_andfloatArg_of_(((1, 2), (3, 4)), 1.0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeNSRectArg_andfloatArg_of_(((1, 2), (3, 4)), 42.0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeNSRectArg_andfloatArg_of_(((1, 2), (3, 4)), 1e10, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeNSRectArg_andfloatArg_of_(((7, 8), (9, 10)), 0.128, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeNSRectArg_andfloatArg_of_(((7, 8), (9, 10)), 1.0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeNSRectArg_andfloatArg_of_(((7, 8), (9, 10)), 42.0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeNSRectArg_andfloatArg_of_(((7, 8), (9, 10)), 1e10, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 1e10)


	def testcallNSRectAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_anddoubleArg_of_(((1, 2), (3, 4)), 0.128, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callNSRectArg_anddoubleArg_of_(((1, 2), (3, 4)), 1.0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callNSRectArg_anddoubleArg_of_(((1, 2), (3, 4)), 42.0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callNSRectArg_anddoubleArg_of_(((1, 2), (3, 4)), 1e10, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.callNSRectArg_anddoubleArg_of_(((7, 8), (9, 10)), 0.128, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callNSRectArg_anddoubleArg_of_(((7, 8), (9, 10)), 1.0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callNSRectArg_anddoubleArg_of_(((7, 8), (9, 10)), 42.0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callNSRectArg_anddoubleArg_of_(((7, 8), (9, 10)), 1e10, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokeNSRectAnddoubleArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_anddoubleArg_of_(((1, 2), (3, 4)), 0.128, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeNSRectArg_anddoubleArg_of_(((1, 2), (3, 4)), 1.0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeNSRectArg_anddoubleArg_of_(((1, 2), (3, 4)), 42.0, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeNSRectArg_anddoubleArg_of_(((1, 2), (3, 4)), 1e10, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertAlmostEquals(r[1], 1e10)
		r = PyObjC_TestClass2.invokeNSRectArg_anddoubleArg_of_(((7, 8), (9, 10)), 0.128, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokeNSRectArg_anddoubleArg_of_(((7, 8), (9, 10)), 1.0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokeNSRectArg_anddoubleArg_of_(((7, 8), (9, 10)), 42.0, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokeNSRectArg_anddoubleArg_of_(((7, 8), (9, 10)), 1e10, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertAlmostEquals(r[1], 1e10)


	def testcallNSRectAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_andidArg_of_(((1, 2), (3, 4)), NSPriorDayDesignations, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.callNSRectArg_andidArg_of_(((7, 8), (9, 10)), NSPriorDayDesignations, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokeNSRectAndidArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_andidArg_of_(((1, 2), (3, 4)), NSPriorDayDesignations, o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], NSPriorDayDesignations)
		r = PyObjC_TestClass2.invokeNSRectArg_andidArg_of_(((7, 8), (9, 10)), NSPriorDayDesignations, o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcallNSRectAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_andcharPtrArg_of_(((1, 2), (3, 4)), "hello", o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callNSRectArg_andcharPtrArg_of_(((1, 2), (3, 4)), "world", o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callNSRectArg_andcharPtrArg_of_(((1, 2), (3, 4)), "foobar", o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.callNSRectArg_andcharPtrArg_of_(((7, 8), (9, 10)), "hello", o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callNSRectArg_andcharPtrArg_of_(((7, 8), (9, 10)), "world", o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callNSRectArg_andcharPtrArg_of_(((7, 8), (9, 10)), "foobar", o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], "foobar")


	def testinvokeNSRectAndcharPtrArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_andcharPtrArg_of_(((1, 2), (3, 4)), "hello", o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeNSRectArg_andcharPtrArg_of_(((1, 2), (3, 4)), "world", o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeNSRectArg_andcharPtrArg_of_(((1, 2), (3, 4)), "foobar", o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], "foobar")
		r = PyObjC_TestClass2.invokeNSRectArg_andcharPtrArg_of_(((7, 8), (9, 10)), "hello", o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokeNSRectArg_andcharPtrArg_of_(((7, 8), (9, 10)), "world", o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokeNSRectArg_andcharPtrArg_of_(((7, 8), (9, 10)), "foobar", o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], "foobar")


	def testcallNSRectAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_andNSPointArg_of_(((1, 2), (3, 4)), (1, 2), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callNSRectArg_andNSPointArg_of_(((1, 2), (3, 4)), (3, 4), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.callNSRectArg_andNSPointArg_of_(((7, 8), (9, 10)), (1, 2), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callNSRectArg_andNSPointArg_of_(((7, 8), (9, 10)), (3, 4), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], (3, 4))


	def testinvokeNSRectAndNSPointArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_andNSPointArg_of_(((1, 2), (3, 4)), (1, 2), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeNSRectArg_andNSPointArg_of_(((1, 2), (3, 4)), (3, 4), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], (3, 4))
		r = PyObjC_TestClass2.invokeNSRectArg_andNSPointArg_of_(((7, 8), (9, 10)), (1, 2), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeNSRectArg_andNSPointArg_of_(((7, 8), (9, 10)), (3, 4), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], (3, 4))


	def testcallNSRectAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectArg_andNSRectArg_of_(((1, 2), (3, 4)), ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callNSRectArg_andNSRectArg_of_(((1, 2), (3, 4)), ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.callNSRectArg_andNSRectArg_of_(((7, 8), (9, 10)), ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callNSRectArg_andNSRectArg_of_(((7, 8), (9, 10)), ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokeNSRectAndNSRectArg(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectArg_andNSRectArg_of_(((1, 2), (3, 4)), ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeNSRectArg_andNSRectArg_of_(((1, 2), (3, 4)), ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], ((7, 8), (9, 10)))
		r = PyObjC_TestClass2.invokeNSRectArg_andNSRectArg_of_(((7, 8), (9, 10)), ((1, 2), (3, 4)), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeNSRectArg_andNSRectArg_of_(((7, 8), (9, 10)), ((7, 8), (9, 10)), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	# Pass by reference arguments (in)

	def testcallBOOLIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callBOOLInArg_of_(YES, o)
		self.assertEquals(r, YES)
		r = PyObjC_TestClass2.callBOOLInArg_of_(NO, o)
		self.assertEquals(r, NO)


	def testinvokeBOOLIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeBOOLInArg_of_(YES, o)
		self.assertEquals(r, YES)
		r = PyObjC_TestClass2.invokeBOOLInArg_of_(NO, o)
		self.assertEquals(r, NO)


	def testcallcharIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharInArg_of_(-128, o)
		self.assertEquals(r, -128)
		r = PyObjC_TestClass2.callcharInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callcharInArg_of_(127, o)
		self.assertEquals(r, 127)


	def testinvokecharIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharInArg_of_(-128, o)
		self.assertEquals(r, -128)
		r = PyObjC_TestClass2.invokecharInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokecharInArg_of_(127, o)
		self.assertEquals(r, 127)


	def testcallsignedshortIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedshortInArg_of_(-(1<<14), o)
		self.assertEquals(r, -(1<<14))
		r = PyObjC_TestClass2.callsignedshortInArg_of_(-42, o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.callsignedshortInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callsignedshortInArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callsignedshortInArg_of_(1 << 14, o)
		self.assertEquals(r, 1 << 14)


	def testinvokesignedshortIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedshortInArg_of_(-(1<<14), o)
		self.assertEquals(r, -(1<<14))
		r = PyObjC_TestClass2.invokesignedshortInArg_of_(-42, o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.invokesignedshortInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokesignedshortInArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokesignedshortInArg_of_(1 << 14, o)
		self.assertEquals(r, 1 << 14)


	def testcallsignedintIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedintInArg_of_(-(1<<30), o)
		self.assertEquals(r, -(1<<30))
		r = PyObjC_TestClass2.callsignedintInArg_of_(-42, o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.callsignedintInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callsignedintInArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callsignedintInArg_of_(1 << 30, o)
		self.assertEquals(r, 1 << 30)


	def testinvokesignedintIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedintInArg_of_(-(1<<30), o)
		self.assertEquals(r, -(1<<30))
		r = PyObjC_TestClass2.invokesignedintInArg_of_(-42, o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.invokesignedintInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokesignedintInArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokesignedintInArg_of_(1 << 30, o)
		self.assertEquals(r, 1 << 30)


	def testcallsignedlongIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlongInArg_of_(-(1<<30), o)
		self.assertEquals(r, -(1<<30))
		r = PyObjC_TestClass2.callsignedlongInArg_of_(-42, o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.callsignedlongInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callsignedlongInArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callsignedlongInArg_of_(1 << 30, o)
		self.assertEquals(r, 1 << 30)


	def testinvokesignedlongIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlongInArg_of_(-(1<<30), o)
		self.assertEquals(r, -(1<<30))
		r = PyObjC_TestClass2.invokesignedlongInArg_of_(-42, o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.invokesignedlongInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokesignedlongInArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokesignedlongInArg_of_(1 << 30, o)
		self.assertEquals(r, 1 << 30)


	def testcallsignedlonglongIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callsignedlonglongInArg_of_(-(1L << 60), o)
		self.assertEquals(r, -(1L << 60))
		r = PyObjC_TestClass2.callsignedlonglongInArg_of_(-42, o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.callsignedlonglongInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callsignedlonglongInArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callsignedlonglongInArg_of_(1L << 60, o)
		self.assertEquals(r, 1L << 60)


	def testinvokesignedlonglongIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokesignedlonglongInArg_of_(-(1L << 60), o)
		self.assertEquals(r, -(1L << 60))
		r = PyObjC_TestClass2.invokesignedlonglongInArg_of_(-42, o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.invokesignedlonglongInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokesignedlonglongInArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokesignedlonglongInArg_of_(1L << 60, o)
		self.assertEquals(r, 1L << 60)


	def testcallunsignedcharIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedcharInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callunsignedcharInArg_of_(128, o)
		self.assertEquals(r, 128)
		r = PyObjC_TestClass2.callunsignedcharInArg_of_(255, o)
		self.assertEquals(r, 255)


	def testinvokeunsignedcharIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedcharInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokeunsignedcharInArg_of_(128, o)
		self.assertEquals(r, 128)
		r = PyObjC_TestClass2.invokeunsignedcharInArg_of_(255, o)
		self.assertEquals(r, 255)


	def testcallunsignedshortIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedshortInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callunsignedshortInArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callunsignedshortInArg_of_(1<<14, o)
		self.assertEquals(r, 1<<14)


	def testinvokeunsignedshortIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedshortInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokeunsignedshortInArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokeunsignedshortInArg_of_(1<<14, o)
		self.assertEquals(r, 1<<14)


	def testcallunsignedintIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedintInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callunsignedintInArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callunsignedintInArg_of_(1 << 30, o)
		self.assertEquals(r, 1 << 30)


	def testinvokeunsignedintIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedintInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokeunsignedintInArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokeunsignedintInArg_of_(1 << 30, o)
		self.assertEquals(r, 1 << 30)


	def testcallunsignedlongIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlongInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callunsignedlongInArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callunsignedlongInArg_of_(1L << 30, o)
		self.assertEquals(r, 1L << 30)


	def testinvokeunsignedlongIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlongInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokeunsignedlongInArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokeunsignedlongInArg_of_(1L << 30, o)
		self.assertEquals(r, 1L << 30)


	def testcallunsignedlonglongIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callunsignedlonglongInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callunsignedlonglongInArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callunsignedlonglongInArg_of_(1L << 62, o)
		self.assertEquals(r, 1L << 62)


	def testinvokeunsignedlonglongIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeunsignedlonglongInArg_of_(0, o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongInArg_of_(42, o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongInArg_of_(1L << 62, o)
		self.assertEquals(r, 1L << 62)


	def testcallfloatIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callfloatInArg_of_(0.128, o)
		self.assertAlmostEquals(r, 0.128)
		r = PyObjC_TestClass2.callfloatInArg_of_(1.0, o)
		self.assertAlmostEquals(r, 1.0)
		r = PyObjC_TestClass2.callfloatInArg_of_(42.0, o)
		self.assertAlmostEquals(r, 42.0)
		r = PyObjC_TestClass2.callfloatInArg_of_(1e10, o)
		self.assertAlmostEquals(r, 1e10)


	def testinvokefloatIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokefloatInArg_of_(0.128, o)
		self.assertAlmostEquals(r, 0.128)
		r = PyObjC_TestClass2.invokefloatInArg_of_(1.0, o)
		self.assertAlmostEquals(r, 1.0)
		r = PyObjC_TestClass2.invokefloatInArg_of_(42.0, o)
		self.assertAlmostEquals(r, 42.0)
		r = PyObjC_TestClass2.invokefloatInArg_of_(1e10, o)
		self.assertAlmostEquals(r, 1e10)


	def testcalldoubleIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.calldoubleInArg_of_(0.128, o)
		self.assertAlmostEquals(r, 0.128)
		r = PyObjC_TestClass2.calldoubleInArg_of_(1.0, o)
		self.assertAlmostEquals(r, 1.0)
		r = PyObjC_TestClass2.calldoubleInArg_of_(42.0, o)
		self.assertAlmostEquals(r, 42.0)
		r = PyObjC_TestClass2.calldoubleInArg_of_(1e10, o)
		self.assertAlmostEquals(r, 1e10)


	def testinvokedoubleIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokedoubleInArg_of_(0.128, o)
		self.assertAlmostEquals(r, 0.128)
		r = PyObjC_TestClass2.invokedoubleInArg_of_(1.0, o)
		self.assertAlmostEquals(r, 1.0)
		r = PyObjC_TestClass2.invokedoubleInArg_of_(42.0, o)
		self.assertAlmostEquals(r, 42.0)
		r = PyObjC_TestClass2.invokedoubleInArg_of_(1e10, o)
		self.assertAlmostEquals(r, 1e10)


	def testcallidIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callidInArg_of_(NSPriorDayDesignations, o)
		self.assertEquals(r, NSPriorDayDesignations)


	def testinvokeidIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeidInArg_of_(NSPriorDayDesignations, o)
		self.assertEquals(r, NSPriorDayDesignations)


	def testcallcharPtrIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callcharPtrInArg_of_("hello", o)
		self.assertEquals(r, "hello")
		r = PyObjC_TestClass2.callcharPtrInArg_of_("world", o)
		self.assertEquals(r, "world")
		r = PyObjC_TestClass2.callcharPtrInArg_of_("foobar", o)
		self.assertEquals(r, "foobar")


	def testinvokecharPtrIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokecharPtrInArg_of_("hello", o)
		self.assertEquals(r, "hello")
		r = PyObjC_TestClass2.invokecharPtrInArg_of_("world", o)
		self.assertEquals(r, "world")
		r = PyObjC_TestClass2.invokecharPtrInArg_of_("foobar", o)
		self.assertEquals(r, "foobar")


	def testcallNSPointIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSPointInArg_of_((1, 2), o)
		self.assertEquals(r, (1, 2))
		r = PyObjC_TestClass2.callNSPointInArg_of_((3, 4), o)
		self.assertEquals(r, (3, 4))


	def testinvokeNSPointIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSPointInArg_of_((1, 2), o)
		self.assertEquals(r, (1, 2))
		r = PyObjC_TestClass2.invokeNSPointInArg_of_((3, 4), o)
		self.assertEquals(r, (3, 4))


	def testcallNSRectIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.callNSRectInArg_of_(((1, 2), (3, 4)), o)
		self.assertEquals(r, ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callNSRectInArg_of_(((7, 8), (9, 10)), o)
		self.assertEquals(r, ((7, 8), (9, 10)))


	def testinvokeNSRectIn(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		r = PyObjC_TestClass2.invokeNSRectInArg_of_(((1, 2), (3, 4)), o)
		self.assertEquals(r, ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeNSRectInArg_of_(((7, 8), (9, 10)), o)
		self.assertEquals(r, ((7, 8), (9, 10)))


	# Pass by reference arguments (out)

	def testcallBOOLOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callBOOLOutArg_of_(o)
		self.assertEquals(r, YES)
		r = PyObjC_TestClass2.callBOOLOutArg_of_(o)
		self.assertEquals(r, NO)


	def testinvokeBOOLOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeBOOLOutArg_of_(o)
		self.assertEquals(r, YES)
		r = PyObjC_TestClass2.invokeBOOLOutArg_of_(o)
		self.assertEquals(r, NO)


	def testcallcharOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callcharOutArg_of_(o)
		self.assertEquals(r, -128)
		r = PyObjC_TestClass2.callcharOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callcharOutArg_of_(o)
		self.assertEquals(r, 127)


	def testinvokecharOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokecharOutArg_of_(o)
		self.assertEquals(r, -128)
		r = PyObjC_TestClass2.invokecharOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokecharOutArg_of_(o)
		self.assertEquals(r, 127)


	def testcallsignedshortOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callsignedshortOutArg_of_(o)
		self.assertEquals(r, -(1<<14))
		r = PyObjC_TestClass2.callsignedshortOutArg_of_(o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.callsignedshortOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callsignedshortOutArg_of_(o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callsignedshortOutArg_of_(o)
		self.assertEquals(r, 1 << 14)


	def testinvokesignedshortOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokesignedshortOutArg_of_(o)
		self.assertEquals(r, -(1<<14))
		r = PyObjC_TestClass2.invokesignedshortOutArg_of_(o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.invokesignedshortOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokesignedshortOutArg_of_(o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokesignedshortOutArg_of_(o)
		self.assertEquals(r, 1 << 14)


	def testcallsignedintOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callsignedintOutArg_of_(o)
		self.assertEquals(r, -(1<<30))
		r = PyObjC_TestClass2.callsignedintOutArg_of_(o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.callsignedintOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callsignedintOutArg_of_(o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callsignedintOutArg_of_(o)
		self.assertEquals(r, 1 << 30)


	def testinvokesignedintOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokesignedintOutArg_of_(o)
		self.assertEquals(r, -(1<<30))
		r = PyObjC_TestClass2.invokesignedintOutArg_of_(o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.invokesignedintOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokesignedintOutArg_of_(o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokesignedintOutArg_of_(o)
		self.assertEquals(r, 1 << 30)


	def testcallsignedlongOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callsignedlongOutArg_of_(o)
		self.assertEquals(r, -(1<<30))
		r = PyObjC_TestClass2.callsignedlongOutArg_of_(o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.callsignedlongOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callsignedlongOutArg_of_(o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callsignedlongOutArg_of_(o)
		self.assertEquals(r, 1 << 30)


	def testinvokesignedlongOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokesignedlongOutArg_of_(o)
		self.assertEquals(r, -(1<<30))
		r = PyObjC_TestClass2.invokesignedlongOutArg_of_(o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.invokesignedlongOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokesignedlongOutArg_of_(o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokesignedlongOutArg_of_(o)
		self.assertEquals(r, 1 << 30)


	def testcallsignedlonglongOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callsignedlonglongOutArg_of_(o)
		self.assertEquals(r, -(1L << 60))
		r = PyObjC_TestClass2.callsignedlonglongOutArg_of_(o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.callsignedlonglongOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callsignedlonglongOutArg_of_(o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callsignedlonglongOutArg_of_(o)
		self.assertEquals(r, 1L << 60)


	def testinvokesignedlonglongOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokesignedlonglongOutArg_of_(o)
		self.assertEquals(r, -(1L << 60))
		r = PyObjC_TestClass2.invokesignedlonglongOutArg_of_(o)
		self.assertEquals(r, -42)
		r = PyObjC_TestClass2.invokesignedlonglongOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokesignedlonglongOutArg_of_(o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokesignedlonglongOutArg_of_(o)
		self.assertEquals(r, 1L << 60)


	def testcallunsignedcharOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callunsignedcharOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callunsignedcharOutArg_of_(o)
		self.assertEquals(r, 128)
		r = PyObjC_TestClass2.callunsignedcharOutArg_of_(o)
		self.assertEquals(r, 255)


	def testinvokeunsignedcharOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeunsignedcharOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokeunsignedcharOutArg_of_(o)
		self.assertEquals(r, 128)
		r = PyObjC_TestClass2.invokeunsignedcharOutArg_of_(o)
		self.assertEquals(r, 255)


	def testcallunsignedshortOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callunsignedshortOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callunsignedshortOutArg_of_(o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callunsignedshortOutArg_of_(o)
		self.assertEquals(r, 1<<14)


	def testinvokeunsignedshortOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeunsignedshortOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokeunsignedshortOutArg_of_(o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokeunsignedshortOutArg_of_(o)
		self.assertEquals(r, 1<<14)


	def testcallunsignedintOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callunsignedintOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callunsignedintOutArg_of_(o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callunsignedintOutArg_of_(o)
		self.assertEquals(r, 1 << 30)


	def testinvokeunsignedintOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeunsignedintOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokeunsignedintOutArg_of_(o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokeunsignedintOutArg_of_(o)
		self.assertEquals(r, 1 << 30)


	def testcallunsignedlongOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callunsignedlongOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callunsignedlongOutArg_of_(o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callunsignedlongOutArg_of_(o)
		self.assertEquals(r, 1L << 30)


	def testinvokeunsignedlongOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeunsignedlongOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokeunsignedlongOutArg_of_(o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokeunsignedlongOutArg_of_(o)
		self.assertEquals(r, 1L << 30)


	def testcallunsignedlonglongOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callunsignedlonglongOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.callunsignedlonglongOutArg_of_(o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.callunsignedlonglongOutArg_of_(o)
		self.assertEquals(r, 1L << 62)


	def testinvokeunsignedlonglongOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeunsignedlonglongOutArg_of_(o)
		self.assertEquals(r, 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongOutArg_of_(o)
		self.assertEquals(r, 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongOutArg_of_(o)
		self.assertEquals(r, 1L << 62)


	def testcallfloatOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callfloatOutArg_of_(o)
		self.assertAlmostEquals(r, 0.128)
		r = PyObjC_TestClass2.callfloatOutArg_of_(o)
		self.assertAlmostEquals(r, 1.0)
		r = PyObjC_TestClass2.callfloatOutArg_of_(o)
		self.assertAlmostEquals(r, 42.0)
		r = PyObjC_TestClass2.callfloatOutArg_of_(o)
		self.assertAlmostEquals(r, 1e10)


	def testinvokefloatOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokefloatOutArg_of_(o)
		self.assertAlmostEquals(r, 0.128)
		r = PyObjC_TestClass2.invokefloatOutArg_of_(o)
		self.assertAlmostEquals(r, 1.0)
		r = PyObjC_TestClass2.invokefloatOutArg_of_(o)
		self.assertAlmostEquals(r, 42.0)
		r = PyObjC_TestClass2.invokefloatOutArg_of_(o)
		self.assertAlmostEquals(r, 1e10)


	def testcalldoubleOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.calldoubleOutArg_of_(o)
		self.assertAlmostEquals(r, 0.128)
		r = PyObjC_TestClass2.calldoubleOutArg_of_(o)
		self.assertAlmostEquals(r, 1.0)
		r = PyObjC_TestClass2.calldoubleOutArg_of_(o)
		self.assertAlmostEquals(r, 42.0)
		r = PyObjC_TestClass2.calldoubleOutArg_of_(o)
		self.assertAlmostEquals(r, 1e10)


	def testinvokedoubleOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokedoubleOutArg_of_(o)
		self.assertAlmostEquals(r, 0.128)
		r = PyObjC_TestClass2.invokedoubleOutArg_of_(o)
		self.assertAlmostEquals(r, 1.0)
		r = PyObjC_TestClass2.invokedoubleOutArg_of_(o)
		self.assertAlmostEquals(r, 42.0)
		r = PyObjC_TestClass2.invokedoubleOutArg_of_(o)
		self.assertAlmostEquals(r, 1e10)


	def testcallidOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callidOutArg_of_(o)
		self.assertEquals(r, NSPriorDayDesignations)


	def testinvokeidOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeidOutArg_of_(o)
		self.assertEquals(r, NSPriorDayDesignations)


	def testcallcharPtrOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callcharPtrOutArg_of_(o)
		self.assertEquals(r, "hello")
		r = PyObjC_TestClass2.callcharPtrOutArg_of_(o)
		self.assertEquals(r, "world")
		r = PyObjC_TestClass2.callcharPtrOutArg_of_(o)
		self.assertEquals(r, "foobar")


	def testinvokecharPtrOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokecharPtrOutArg_of_(o)
		self.assertEquals(r, "hello")
		r = PyObjC_TestClass2.invokecharPtrOutArg_of_(o)
		self.assertEquals(r, "world")
		r = PyObjC_TestClass2.invokecharPtrOutArg_of_(o)
		self.assertEquals(r, "foobar")


	def testcallNSPointOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callNSPointOutArg_of_(o)
		self.assertEquals(r, (1, 2))
		r = PyObjC_TestClass2.callNSPointOutArg_of_(o)
		self.assertEquals(r, (3, 4))


	def testinvokeNSPointOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeNSPointOutArg_of_(o)
		self.assertEquals(r, (1, 2))
		r = PyObjC_TestClass2.invokeNSPointOutArg_of_(o)
		self.assertEquals(r, (3, 4))


	def testcallNSRectOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callNSRectOutArg_of_(o)
		self.assertEquals(r, ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callNSRectOutArg_of_(o)
		self.assertEquals(r, ((7, 8), (9, 10)))


	def testinvokeNSRectOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeNSRectOutArg_of_(o)
		self.assertEquals(r, ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeNSRectOutArg_of_(o)
		self.assertEquals(r, ((7, 8), (9, 10)))


	# Pass by reference arguments (out)

	def testcallBOOLInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callBOOLInOutArg_of_(NO, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.callBOOLInOutArg_of_(YES, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], NO)


	def testinvokeBOOLInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeBOOLInOutArg_of_(NO, o)
		self.assertEquals(r[0], NO)
		self.assertEquals(r[1], YES)
		r = PyObjC_TestClass2.invokeBOOLInOutArg_of_(YES, o)
		self.assertEquals(r[0], YES)
		self.assertEquals(r[1], NO)


	def testcallcharInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callcharInOutArg_of_(127, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.callcharInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callcharInOutArg_of_(-128, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 127)


	def testinvokecharInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokecharInOutArg_of_(127, o)
		self.assertEquals(r[0], 127)
		self.assertEquals(r[1], -128)
		r = PyObjC_TestClass2.invokecharInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokecharInOutArg_of_(-128, o)
		self.assertEquals(r[0], -128)
		self.assertEquals(r[1], 127)


	def testcallsignedshortInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callsignedshortInOutArg_of_(1 << 14, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.callsignedshortInOutArg_of_(42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedshortInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedshortInOutArg_of_(-42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedshortInOutArg_of_(-(1<<14), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1 << 14)


	def testinvokesignedshortInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokesignedshortInOutArg_of_(1 << 14, o)
		self.assertEquals(r[0], 1 << 14)
		self.assertEquals(r[1], -(1<<14))
		r = PyObjC_TestClass2.invokesignedshortInOutArg_of_(42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedshortInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedshortInOutArg_of_(-42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedshortInOutArg_of_(-(1<<14), o)
		self.assertEquals(r[0], -(1<<14))
		self.assertEquals(r[1], 1 << 14)


	def testcallsignedintInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callsignedintInOutArg_of_(1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedintInOutArg_of_(42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedintInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedintInOutArg_of_(-42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedintInOutArg_of_(-(1<<30), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)


	def testinvokesignedintInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokesignedintInOutArg_of_(1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedintInOutArg_of_(42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedintInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedintInOutArg_of_(-42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedintInOutArg_of_(-(1<<30), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)


	def testcallsignedlongInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callsignedlongInOutArg_of_(1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.callsignedlongInOutArg_of_(42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlongInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlongInOutArg_of_(-42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlongInOutArg_of_(-(1<<30), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)


	def testinvokesignedlongInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokesignedlongInOutArg_of_(1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], -(1<<30))
		r = PyObjC_TestClass2.invokesignedlongInOutArg_of_(42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlongInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlongInOutArg_of_(-42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlongInOutArg_of_(-(1<<30), o)
		self.assertEquals(r[0], -(1<<30))
		self.assertEquals(r[1], 1 << 30)


	def testcallsignedlonglongInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callsignedlonglongInOutArg_of_(1L << 60, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.callsignedlonglongInOutArg_of_(42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.callsignedlonglongInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callsignedlonglongInOutArg_of_(-42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callsignedlonglongInOutArg_of_(-(1L << 60), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1L << 60)


	def testinvokesignedlonglongInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokesignedlonglongInOutArg_of_(1L << 60, o)
		self.assertEquals(r[0], 1L << 60)
		self.assertEquals(r[1], -(1L << 60))
		r = PyObjC_TestClass2.invokesignedlonglongInOutArg_of_(42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], -42)
		r = PyObjC_TestClass2.invokesignedlonglongInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokesignedlonglongInOutArg_of_(-42, o)
		self.assertEquals(r[0], -42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokesignedlonglongInOutArg_of_(-(1L << 60), o)
		self.assertEquals(r[0], -(1L << 60))
		self.assertEquals(r[1], 1L << 60)


	def testcallunsignedcharInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callunsignedcharInOutArg_of_(255, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedcharInOutArg_of_(128, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.callunsignedcharInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)


	def testinvokeunsignedcharInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeunsignedcharInOutArg_of_(255, o)
		self.assertEquals(r[0], 255)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedcharInOutArg_of_(128, o)
		self.assertEquals(r[0], 128)
		self.assertEquals(r[1], 128)
		r = PyObjC_TestClass2.invokeunsignedcharInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 255)


	def testcallunsignedshortInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callunsignedshortInOutArg_of_(1<<14, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedshortInOutArg_of_(42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedshortInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)


	def testinvokeunsignedshortInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeunsignedshortInOutArg_of_(1<<14, o)
		self.assertEquals(r[0], 1<<14)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedshortInOutArg_of_(42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedshortInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1<<14)


	def testcallunsignedintInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callunsignedintInOutArg_of_(1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedintInOutArg_of_(42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedintInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)


	def testinvokeunsignedintInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeunsignedintInOutArg_of_(1 << 30, o)
		self.assertEquals(r[0], 1 << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedintInOutArg_of_(42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedintInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1 << 30)


	def testcallunsignedlongInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callunsignedlongInOutArg_of_(1L << 30, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlongInOutArg_of_(42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlongInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)


	def testinvokeunsignedlongInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeunsignedlongInOutArg_of_(1L << 30, o)
		self.assertEquals(r[0], 1L << 30)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlongInOutArg_of_(42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlongInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 30)


	def testcallunsignedlonglongInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callunsignedlonglongInOutArg_of_(1L << 62, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.callunsignedlonglongInOutArg_of_(42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.callunsignedlonglongInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)


	def testinvokeunsignedlonglongInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeunsignedlonglongInOutArg_of_(1L << 62, o)
		self.assertEquals(r[0], 1L << 62)
		self.assertEquals(r[1], 0)
		r = PyObjC_TestClass2.invokeunsignedlonglongInOutArg_of_(42, o)
		self.assertEquals(r[0], 42)
		self.assertEquals(r[1], 42)
		r = PyObjC_TestClass2.invokeunsignedlonglongInOutArg_of_(0, o)
		self.assertEquals(r[0], 0)
		self.assertEquals(r[1], 1L << 62)


	def testcallfloatInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callfloatInOutArg_of_(1e10, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.callfloatInOutArg_of_(42.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.callfloatInOutArg_of_(1.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.callfloatInOutArg_of_(0.128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokefloatInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokefloatInOutArg_of_(1e10, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokefloatInOutArg_of_(42.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokefloatInOutArg_of_(1.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokefloatInOutArg_of_(0.128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)


	def testcalldoubleInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.calldoubleInOutArg_of_(1e10, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.calldoubleInOutArg_of_(42.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.calldoubleInOutArg_of_(1.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.calldoubleInOutArg_of_(0.128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)


	def testinvokedoubleInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokedoubleInOutArg_of_(1e10, o)
		self.assertAlmostEquals(r[0], 1e10)
		self.assertAlmostEquals(r[1], 0.128)
		r = PyObjC_TestClass2.invokedoubleInOutArg_of_(42.0, o)
		self.assertAlmostEquals(r[0], 42.0)
		self.assertAlmostEquals(r[1], 1.0)
		r = PyObjC_TestClass2.invokedoubleInOutArg_of_(1.0, o)
		self.assertAlmostEquals(r[0], 1.0)
		self.assertAlmostEquals(r[1], 42.0)
		r = PyObjC_TestClass2.invokedoubleInOutArg_of_(0.128, o)
		self.assertAlmostEquals(r[0], 0.128)
		self.assertAlmostEquals(r[1], 1e10)


	def testcallidInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callidInOutArg_of_(NSPriorDayDesignations, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testinvokeidInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeidInOutArg_of_(NSPriorDayDesignations, o)
		self.assertEquals(r[0], NSPriorDayDesignations)
		self.assertEquals(r[1], NSPriorDayDesignations)


	def testcallcharPtrInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callcharPtrInOutArg_of_("foobar", o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.callcharPtrInOutArg_of_("world", o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.callcharPtrInOutArg_of_("hello", o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], "foobar")


	def testinvokecharPtrInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokecharPtrInOutArg_of_("foobar", o)
		self.assertEquals(r[0], "foobar")
		self.assertEquals(r[1], "hello")
		r = PyObjC_TestClass2.invokecharPtrInOutArg_of_("world", o)
		self.assertEquals(r[0], "world")
		self.assertEquals(r[1], "world")
		r = PyObjC_TestClass2.invokecharPtrInOutArg_of_("hello", o)
		self.assertEquals(r[0], "hello")
		self.assertEquals(r[1], "foobar")


	def testcallNSPointInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callNSPointInOutArg_of_((3, 4), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.callNSPointInOutArg_of_((1, 2), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], (3, 4))


	def testinvokeNSPointInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeNSPointInOutArg_of_((3, 4), o)
		self.assertEquals(r[0], (3, 4))
		self.assertEquals(r[1], (1, 2))
		r = PyObjC_TestClass2.invokeNSPointInOutArg_of_((1, 2), o)
		self.assertEquals(r[0], (1, 2))
		self.assertEquals(r[1], (3, 4))


	def testcallNSRectInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.callNSRectInOutArg_of_(((7, 8), (9, 10)), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.callNSRectInOutArg_of_(((1, 2), (3, 4)), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], ((7, 8), (9, 10)))


	def testinvokeNSRectInOut(self):
		o = Python_TestClass.alloc().init()
		self.assert_(o is not None)
		o.reset()
		r = PyObjC_TestClass2.invokeNSRectInOutArg_of_(((7, 8), (9, 10)), o)
		self.assertEquals(r[0], ((7, 8), (9, 10)))
		self.assertEquals(r[1], ((1, 2), (3, 4)))
		r = PyObjC_TestClass2.invokeNSRectInOutArg_of_(((1, 2), (3, 4)), o)
		self.assertEquals(r[0], ((1, 2), (3, 4)))
		self.assertEquals(r[1], ((7, 8), (9, 10)))



if __name__ == "__main__":
    unittest.main()
