more sytanically correct objective-c