code: function mergeHandlerOpts(from, to) {
    if (from) {
      if ((from.useLambdaProxy === true || from.useLambdaProxy === false) &&
        to.useLambdaProxy !== true && to.useLambdaProxy !== false) {
        to.useLambdaProxy = from.useLambdaProxy;
      }
      if (from.defaultHeaders) {
        to.defaultHeaders = to.defaultHeaders ?
          merge(from.defaultHeaders, to.defaultHeaders, noReplace) :
          copy(from.defaultHeaders, deep);
      }
      if (from.allowedHttpStatusCodes && !to.allowedHttpStatusCodes) {
        to.allowedHttpStatusCodes = from.allowedHttpStatusCodes;
      }
      if (from.toErrorResponse && !to.toErrorResponse) {
        to.toErrorResponse = from.toErrorResponse;
      }
      if (from.postConfigure && !to.postConfigure) {
        to.postConfigure = from.postConfigure;
      }
      if (from.preSuccessCallback && !to.preSuccessCallback) {
        to.preSuccessCallback = from.preSuccessCallback;
      }
      if (from.preFailureCallback && !to.preFailureCallback) {
        to.preFailureCallback = from.preFailureCallback;
      }
    }
    return to;
  }
docs: Copies the relevant handler-related values from the given `from` handler opts to the given `to` handler opts, but
  ONLY if the same options or settings do NOT already exist in the `to` handler opts.
  @param {HandlerSettings|HandlerOptions|Object|undefined} [from] - the source handler configuration
  @param {HandlerSettings|HandlerOptions} to - the destination handler configuration