3 args (2 data args, 1 callback) limit for performance.