code: function(args) {
      if (args.length < 1 || !isPlainObject(args[0])) {
        return {};
      }
  
      if (!utils.isOptionsHash(args[0])) {
        return args.shift();
      }
  
      var argKeys = Object.keys(args[0]);
  
      var optionKeysInArgs = argKeys.filter(function(key) {
        return OPTIONS_KEYS.indexOf(key) > -1;
      });
  
      // In some cases options may be the provided as the first argument.
      // Here we're detecting a case where there are two distinct arguments
      // (the first being args and the second options) and with known
      // option keys in the first so that we can warn the user about it.
      if (optionKeysInArgs.length > 0 && optionKeysInArgs.length !== argKeys.length) {
        emitWarning(
          'Options found in arguments (' + optionKeysInArgs.join(', ') + '). Did you mean to pass an options ' +
          'object? See https://github.com/stripe/stripe-node/wiki/Passing-Options.'
        );
      }
  
      return {};
    }
docs: Return the data argument from a list of arguments