casting long long to NSUInteger does not seem right