code: function (bid) {
      if (!isValidSize(bid.params.size)) {
        return false;
      }
  
      if (!includesSize(bid.sizes, bid.params.size)) {
        return false;
      }
  
      if (bid.hasOwnProperty('mediaType') && bid.mediaType !== 'banner') {
        return false;
      }
  
      if (bid.hasOwnProperty('mediaTypes') && !utils.deepAccess(bid, 'mediaTypes.banner.sizes')) {
        return false;
      }
  
      if (typeof bid.params.siteId !== 'string' && typeof bid.params.siteId !== 'number') {
        return false;
      }
  
      const hasBidFloor = bid.params.hasOwnProperty('bidFloor');
      const hasBidFloorCur = bid.params.hasOwnProperty('bidFloorCur');
  
      if (hasBidFloor || hasBidFloorCur) {
        return hasBidFloor && hasBidFloorCur &&
          isValidBidFloorParams(bid.params.bidFloor, bid.params.bidFloorCur);
      }
  
      return true;
    }
docs: Determines whether or not the given bid request is valid.
  
  @param  {object}  bid The bid to validate.
  @return {boolean}     True if this is a valid bid, and false otherwise.