function(cb, param) {
            return function() {
                var args = Array.prototype.slice.call(arguments, 1);

                if(typeof param !== 'undefined') {
                    args.unshift(param);
                } else if (arguments.length === 1) {
                    args.unshift(arguments[0]);
                }

                args.unshift(null);
                cb.apply(null, args);
            };
        }
function(cb, param) {
            return function() {
                var args = Array.prototype.slice.call(arguments, 1);

                if(typeof param !== 'undefined') {
                    args.unshift(param);
                } else if (arguments.length === 1) {
                    args.unshift(arguments[0]);
                }

                args.unshift(null);
                cb.apply(null, args);
            };
        }
function ( cb , param ) { return function ( ) { var args = Array . prototype . slice . call ( arguments , 1 ) ; if ( typeof param !== 'undefined' ) { args . unshift ( param ) ; } else if ( arguments . length === 1 ) { args . unshift ( arguments [ 0 ] ) ; } args . unshift ( null ) ; cb . apply ( null , args ) ; } ; }
helper function for asyncjs
helper function for asyncjs