changed from modern Objective-C so we can get a compile on Mavericks